1
0
Fork 0
remarkable-linux/net/rxrpc
David Howells 85924b81ec rxrpc: Fix send in rxrpc_send_data_packet()
[ Upstream commit 93c62c45ed ]

All the kernel_sendmsg() calls in rxrpc_send_data_packet() need to send
both parts of the iov[] buffer, but one of them does not.  Fix it so that
it does.

Without this, short IPv6 rxrpc DATA packets may be seen that have the rxrpc
header included, but no payload.

Fixes: 5a924b8951 ("rxrpc: Don't store the rxrpc header in the Tx queue sk_buffs")
Reported-by: Marc Dionne <marc.dionne@auristor.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-03-11 16:21:32 +01:00
..
Kconfig rxrpc: Add config to inject packet loss 2016-09-17 11:24:04 +01:00
Makefile rxrpc: Split sendmsg from packet transmission code 2016-09-04 21:41:39 +01:00
af_rxrpc.c rxrpc: Accesses of rxrpc_local::service need to be RCU managed 2016-10-06 08:11:48 +01:00
ar-internal.h rxrpc: Need to produce an ACK for service op if op takes a long time 2016-10-06 08:11:50 +01:00
call_accept.c rxrpc: Fix warning by splitting rxrpc_send_call_packet() 2016-10-06 08:11:49 +01:00
call_event.c rxrpc: Need to produce an ACK for service op if op takes a long time 2016-10-06 08:11:50 +01:00
call_object.c rxrpc: Fix checker warning by not passing always-zero value to ERR_PTR() 2016-10-13 08:39:52 +01:00
conn_client.c rxrpc: When activating client conn channels, do state check inside lock 2016-09-29 22:57:47 +01:00
conn_event.c rxrpc: Ignore BUSY packets on old calls 2017-12-20 10:07:25 +01:00
conn_object.c rxrpc: Don't store the rxrpc header in the Tx queue sk_buffs 2016-09-22 01:23:50 +01:00
conn_service.c rxrpc: Add connection tracepoint and client conn state tracepoint 2016-09-17 11:24:03 +01:00
input.c rxrpc: Wake up the transmitter if Rx window size increases on the peer 2017-12-20 10:07:19 +01:00
insecure.c rxrpc: Rewrite the data and ack handling code 2016-09-08 11:10:12 +01:00
key.c rxrpc: Fix several cases where a padded len isn't checked in ticket decode 2017-06-29 13:00:31 +02:00
local_event.c rxrpc: The offset field in struct rxrpc_skb_priv is unnecessary 2016-09-30 14:39:28 +01:00
local_object.c rxrpc: Reduce the rxrpc_local::services list to a pointer 2016-09-29 22:57:47 +01:00
misc.c rxrpc: Need to produce an ACK for service op if op takes a long time 2016-10-06 08:11:50 +01:00
output.c rxrpc: Fix send in rxrpc_send_data_packet() 2018-03-11 16:21:32 +01:00
peer_event.c rxrpc: Add per-peer RTT tracker 2016-09-22 01:26:25 +01:00
peer_object.c rxrpc: Fix checking of error from ip6_route_output() 2016-10-13 08:43:17 +01:00
proc.c rxrpc: Add IPv6 support 2016-09-13 23:09:13 +01:00
recvmsg.c rxrpc: Need to produce an ACK for service op if op takes a long time 2016-10-06 08:11:50 +01:00
rxkad.c rxrpc: Fix warning by splitting rxrpc_send_call_packet() 2016-10-06 08:11:49 +01:00
security.c rxrpc: Reduce the rxrpc_local::services list to a pointer 2016-09-29 22:57:47 +01:00
sendmsg.c rxrpc: Need to produce an ACK for service op if op takes a long time 2016-10-06 08:11:50 +01:00
skbuff.c rxrpc: Make Tx loss-injection go through normal return and adjust tracing 2016-09-29 22:37:15 +01:00
sysctl.c rxrpc: Keep the call timeouts as ktimes rather than jiffies 2016-09-30 14:40:11 +01:00
utils.c rxrpc: Make IPv6 support conditional on CONFIG_IPV6 2016-09-17 03:58:45 -04:00