[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1285667238.3154.0.camel@edumazet-laptop>
Date: Tue, 28 Sep 2010 11:47:18 +0200
From: Eric Dumazet <eric.dumazet@...il.com>
To: Kumar A Sanghvi <kumar.sanghvi@...ricsson.com>
Cc: netdev@...r.kernel.org, davem@...emloft.net,
remi.denis-courmont@...ia.com, gulshan.karmani@...ricsson.com,
Linus Walleij <linus.walleij@...ricsson.com>
Subject: Re: [PATCH] Phonet: Correct header retrieval after pskb_may_pull
Le mardi 28 septembre 2010 à 14:40 +0530, Kumar A Sanghvi a écrit :
> From: Kumar Sanghvi <kumar.sanghvi@...ricsson.com>
>
> Retrieve the header after doing pskb_may_pull since, pskb_may_pull
> could change the buffer structure.
>
> This is based on the comment given by Eric Dumazet on Phonet
> Pipe controller patch for a similar problem.
>
> Signed-off-by: Kumar Sanghvi <kumar.sanghvi@...ricsson.com>
> Acked-by: Linus Walleij <linus.walleij@...ricsson.com>
> ---
> net/phonet/pep.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/net/phonet/pep.c b/net/phonet/pep.c
> index 7bf23cf..9746c6d 100644
> --- a/net/phonet/pep.c
> +++ b/net/phonet/pep.c
> @@ -507,12 +507,13 @@ static void pipe_grant_credits(struct sock *sk)
> static int pipe_rcv_status(struct sock *sk, struct sk_buff *skb)
> {
> struct pep_sock *pn = pep_sk(sk);
> - struct pnpipehdr *hdr = pnp_hdr(skb);
> + struct pnpipehdr *hdr;
> int wake = 0;
>
> if (!pskb_may_pull(skb, sizeof(*hdr) + 4))
> return -EINVAL;
>
> + hdr = pnp_hdr(skb);
> if (hdr->data[0] != PN_PEP_TYPE_COMMON) {
> LIMIT_NETDEBUG(KERN_DEBUG"Phonet unknown PEP type: %u\n",
> (unsigned)hdr->data[0]);
Acked-by: Eric Dumazet <eric.dumazet@...il.com>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists