This is fixed by the following two commits:

  commit 8acfe468b0384e834a303f08ebc4953d72fb690a
  Author: David S. Miller <[email protected]>
  Date:   Thu Oct 28 11:41:55 2010 -0700

    net: Limit socket I/O iovec total length to INT_MAX.
    
    This helps protect us from overflow issues down in the
    individual protocol sendmsg/recvmsg handlers.  Once
    we hit INT_MAX we truncate out the rest of the iovec
    by setting the iov_len members to zero.
    
    This works because:
    
    1) For SOCK_STREAM and SOCK_SEQPACKET sockets, partial
       writes are allowed and the application will just continue
       with another write to send the rest of the data.
    
    2) For datagram oriented sockets, where there must be a
       one-to-one correspondance between write() calls and
       packets on the wire, INT_MAX is going to be far larger
       than the packet size limit the protocol is going to
       check for and signal with -EMSGSIZE.
    
    Based upon a patch by Linus Torvalds.
    
    Signed-off-by: David S. Miller <[email protected]>

  commit 253eacc070b114c2ec1f81b067d2fed7305467b0
  Author: Linus Torvalds <[email protected]>
  Date:   Sat Oct 30 16:43:10 2010 -0700

    net: Truncate recvfrom and sendto length to INT_MAX.
    
    Signed-off-by: Linus Torvalds <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/711855

Title:
  CVE-2010-4160

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to