summaryrefslogtreecommitdiffstats
path: root/net/rxrpc/ar-input.c
diff options
context:
space:
mode:
authorWillem de Bruijn <willemb@google.com>2016-04-07 17:44:59 +0200
committerDavid S. Miller <davem@davemloft.net>2016-04-11 21:31:33 +0200
commit4d0fc73ebe94ac984a187f21fbf4f3a1ac846f5a (patch)
treea36049a8905dbcbbd5e047e47d48682a1d9c7fef /net/rxrpc/ar-input.c
parentsunrpc: do not pull udp headers on receive (diff)
downloadlinux-4d0fc73ebe94ac984a187f21fbf4f3a1ac846f5a.tar.xz
linux-4d0fc73ebe94ac984a187f21fbf4f3a1ac846f5a.zip
rxrpc: do not pull udp headers on receive
Commit e6afc8ace6dd modified the udp receive path by pulling the udp header before queuing an skbuff onto the receive queue. Rxrpc also calls skb_recv_datagram to dequeue an skb from a udp socket. Modify this receive path to also no longer expect udp headers. Fixes: e6afc8ace6dd ("udp: remove headers from UDP packets before queueing") Signed-off-by: Willem de Bruijn <willemb@google.com> Tested-by: Thierry Reding <treding@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rxrpc/ar-input.c')
-rw-r--r--net/rxrpc/ar-input.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/rxrpc/ar-input.c b/net/rxrpc/ar-input.c
index 63ed75c40e29..4824a827d10d 100644
--- a/net/rxrpc/ar-input.c
+++ b/net/rxrpc/ar-input.c
@@ -612,9 +612,9 @@ int rxrpc_extract_header(struct rxrpc_skb_priv *sp, struct sk_buff *skb)
struct rxrpc_wire_header whdr;
/* dig out the RxRPC connection details */
- if (skb_copy_bits(skb, sizeof(struct udphdr), &whdr, sizeof(whdr)) < 0)
+ if (skb_copy_bits(skb, 0, &whdr, sizeof(whdr)) < 0)
return -EBADMSG;
- if (!pskb_pull(skb, sizeof(struct udphdr) + sizeof(whdr)))
+ if (!pskb_pull(skb, sizeof(whdr)))
BUG();
memset(sp, 0, sizeof(*sp));