lkml.org 
[lkml]   [2012]   [May]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] net: sock: validate data_len before allocating skb in sock_alloc_send_pskb()
From
From: Eric Dumazet <eric.dumazet@gmail.com>
Date: Wed, 30 May 2012 08:46:23 +0200

> Why doing this test in the while (1) block, it should be done before the
> loop...
>
> Or even in the caller, note net/unix/af_unix.c does this right.
>
> if (len > SKB_MAX_ALLOC)
> data_len = min_t(size_t,
> len - SKB_MAX_ALLOC,
> MAX_SKB_FRAGS * PAGE_SIZE);
>
> skb = sock_alloc_send_pskb(sk, len - data_len, data_len,
> msg->msg_flags & MSG_DONTWAIT, &err);

My impression is that the callers should be fixed to. It makes no sense
to penalize the call sites that get this right.

And yes, if we do check it in sock_alloc_send_pskb() it should be done
at function entry, not inside the loop.


\
 
 \ /
  Last update: 2012-05-30 09:41    [W:0.106 / U:1.624 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site