diff options
author | David Howells <dhowells@redhat.com> | 2016-04-07 12:23:44 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-04-11 15:34:41 -0400 |
commit | 6dd050f88d702e2718bd856ea014487563207756 (patch) | |
tree | 75ef4a06ea9ef40f1d75dfbc4252f46218fc5364 | |
parent | 843099cac0dbe421d7c3ea1f8662251fd7065731 (diff) |
rxrpc: Don't assume transport address family and size when using it
Don't assume transport address family and size when using the peer address
to send a packet. Instead, use the start of the transport address rather
than any particular element of the union and use the transport address
length noted inside the sockaddr_rxrpc struct.
This will be necessary when IPv6 support is introduced.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/rxrpc/ar-ack.c | 4 | ||||
-rw-r--r-- | net/rxrpc/ar-connevent.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/net/rxrpc/ar-ack.c b/net/rxrpc/ar-ack.c index d0eb98e1391c..3cd9264806a4 100644 --- a/net/rxrpc/ar-ack.c +++ b/net/rxrpc/ar-ack.c | |||
@@ -833,8 +833,8 @@ void rxrpc_process_call(struct work_struct *work) | |||
833 | 833 | ||
834 | /* there's a good chance we're going to have to send a message, so set | 834 | /* there's a good chance we're going to have to send a message, so set |
835 | * one up in advance */ | 835 | * one up in advance */ |
836 | msg.msg_name = &call->conn->trans->peer->srx.transport.sin; | 836 | msg.msg_name = &call->conn->trans->peer->srx.transport; |
837 | msg.msg_namelen = sizeof(call->conn->trans->peer->srx.transport.sin); | 837 | msg.msg_namelen = call->conn->trans->peer->srx.transport_len; |
838 | msg.msg_control = NULL; | 838 | msg.msg_control = NULL; |
839 | msg.msg_controllen = 0; | 839 | msg.msg_controllen = 0; |
840 | msg.msg_flags = 0; | 840 | msg.msg_flags = 0; |
diff --git a/net/rxrpc/ar-connevent.c b/net/rxrpc/ar-connevent.c index 4dc6ab81fd2f..291522392ac7 100644 --- a/net/rxrpc/ar-connevent.c +++ b/net/rxrpc/ar-connevent.c | |||
@@ -86,8 +86,8 @@ static int rxrpc_abort_connection(struct rxrpc_connection *conn, | |||
86 | 86 | ||
87 | rxrpc_abort_calls(conn, RXRPC_CALL_LOCALLY_ABORTED, abort_code); | 87 | rxrpc_abort_calls(conn, RXRPC_CALL_LOCALLY_ABORTED, abort_code); |
88 | 88 | ||
89 | msg.msg_name = &conn->trans->peer->srx.transport.sin; | 89 | msg.msg_name = &conn->trans->peer->srx.transport; |
90 | msg.msg_namelen = sizeof(conn->trans->peer->srx.transport.sin); | 90 | msg.msg_namelen = conn->trans->peer->srx.transport_len; |
91 | msg.msg_control = NULL; | 91 | msg.msg_control = NULL; |
92 | msg.msg_controllen = 0; | 92 | msg.msg_controllen = 0; |
93 | msg.msg_flags = 0; | 93 | msg.msg_flags = 0; |