linux/net
Pavel Emelyanov fc0d753641 unix: Support peeking offset for stream sockets
The same here -- we can protect the sk_peek_off manipulations with
the unix_sk->readlock mutex.

The peeking of data from a stream socket is done in the datagram style,
i.e. even if there's enough room for more data in the user buffer, only
the head skb's data is copied in there. This feature is preserved when
peeking data from a given offset -- the data is read till the nearest
skb's boundary.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-02-21 15:03:58 -05:00
..
9p virtio: rename virtqueue_add_buf_gfp to virtqueue_add_buf 2012-01-12 15:44:42 +10:30
802
8021q
appletalk
atm atm: clip: Convert over to dst_neigh_lookup(). 2012-02-01 17:23:11 -05:00
ax25
batman-adv batman-adv: use eth_hw_addr_random() instead of random_ether_addr() 2012-02-17 15:58:06 -05:00
bluetooth bluetooth: hci: Fix type of "enable_hs" to bool. 2012-01-22 15:08:46 -05:00
bridge net: use eth_hw_addr_random() and reset addr_assign_type 2012-02-15 15:34:17 -05:00
caif caif: remove duplicate initialization 2012-02-07 13:39:37 -05:00
can
ceph Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client 2012-02-02 15:47:33 -08:00
core sock: Introduce the SO_PEEK_OFF sock option 2012-02-21 15:03:48 -05:00
dcb
dccp inet_diag: Rename inet_diag_req into inet_diag_req_v2 2012-01-11 12:56:06 -08:00
decnet decnet: remove unused variable from dn_output() 2012-02-05 17:44:55 -05:00
dns_resolver
dsa
econet
ethernet eth: reset addr_assign_type if eth_mac_addr() called 2012-02-13 00:46:41 -05:00
ieee802154
ipv4 datagram: Add offset argument to __skb_recv_datagram 2012-02-21 14:58:57 -05:00
ipv6 datagram: Add offset argument to __skb_recv_datagram 2012-02-21 14:58:57 -05:00
ipx
irda
iucv af_iucv: allow retrieval of maximum message size 2012-02-08 18:50:19 -05:00
key
l2tp net: replace random_ether_addr() with eth_hw_addr_random() 2012-02-15 15:34:16 -05:00
lapb
llc llc: Fix race condition in llc_ui_recvmsg 2012-01-24 15:33:19 -05:00
mac80211 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-02-19 16:03:15 -05:00
netfilter Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-01-17 22:26:41 -08:00
netlabel net: reintroduce missing rcu_assign_pointer() calls 2012-01-12 12:26:56 -08:00
netlink net: Deinline __nlmsg_put and genlmsg_put. -7k code on i386 defconfig. 2012-01-30 15:22:06 -05:00
netrom
nfc nfc: NULL vs zero in nci_activate_target() 2012-01-27 14:57:04 -05:00
openvswitch net: use eth_hw_addr_random() and reset addr_assign_type 2012-02-15 15:34:17 -05:00
packet
phonet net: reintroduce missing rcu_assign_pointer() calls 2012-01-12 12:26:56 -08:00
rds rds: Make rds_sock_lock BH rather than IRQ safe. 2012-01-24 17:03:44 -05:00
rfkill
rose
rxrpc RxRPC: Fix kcalloc parameters swapped 2012-02-14 14:41:55 -05:00
sched net_sched: sch_plug: plug_qdisc_ops is static 2012-02-13 16:04:40 -05:00
sctp Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-01-08 13:21:22 -08:00
sunrpc SUNRPC: Fix machine creds in generic_create_cred and generic_match 2012-01-23 14:03:46 -08:00
tipc tipc: Minor optimization to rejection of connection-based messages 2012-02-06 16:59:19 -05:00
unix unix: Support peeking offset for stream sockets 2012-02-21 15:03:58 -05:00
wanrouter
wimax
wireless nl80211: add support for mcs masks 2012-01-30 15:48:25 -05:00
x25
xfrm Merge branch 'for-linus' of git://selinuxproject.org/~jmorris/linux-security 2012-01-14 18:36:33 -08:00
compat.c
Kconfig
Makefile
nonet.c
socket.c net: reintroduce missing rcu_assign_pointer() calls 2012-01-12 12:26:56 -08:00
sysctl_net.c