From: Willem de Bruijn <will...@google.com>

Support peeking at a non-zero offset for UDP sockets. Match the
existing behavior on Unix datagram sockets.

1/4 makes the sk_peek_offset functions safe to use outside locks
2/4 removes udp headers before enqueue, to simplify offset arithmetic
3/4 introduces SO_PEEK_OFFSET support
4/4 moves sk->sk_peek_off on read, to match Unix socket semantics.

Willem de Bruijn (2):
  sock: convert sk_peek_offset functions to WRITE_ONCE
  udp: move peek offset on read and peek

samanthakumar (2):
  udp: remove headers from UDP packets before queueing
  udp: enable MSG_PEEK at non-zero offset

 include/linux/skbuff.h |  7 ++++++-
 include/net/sock.h     | 27 ++++++++++++++++-----------
 include/net/udp.h      |  9 +++++++++
 net/core/datagram.c    |  9 ++++++---
 net/core/sock.c        | 28 ++++++++++++++++++++++------
 net/ipv4/af_inet.c     |  1 +
 net/ipv4/udp.c         | 38 ++++++++++++++++++++------------------
 net/ipv6/af_inet6.c    |  1 +
 net/ipv6/udp.c         | 30 ++++++++++++++++--------------
 9 files changed, 97 insertions(+), 53 deletions(-)

-- 
2.8.0.rc3.226.g39d4020

Reply via email to