diff options
author | Richard Alpe <richard.alpe@ericsson.com> | 2016-06-27 07:34:06 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-06-29 05:17:37 -0400 |
commit | e99429232e3622a7e390c3b540c4971b1ccf75c8 (patch) | |
tree | 0ee8ecb57dc5424e87cbda0c02c651f5b1dfd9c9 /net/tipc | |
parent | 8a01ed70ebe4ddf37a759e8e9b4e8e71fb26b47c (diff) |
tipc: honor msg2addr return value
The UDP msg2addr function tipc_udp_msg2addr() can return -EINVAL which
prior to this patch was unhanded in the caller.
Signed-off-by: Richard Alpe <richard.alpe@ericsson.com>
Acked-by: Jon Maloy <jon.maloy@ericsson.com>
Acked-by: Ying Xue <ying.xue@windriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc')
-rw-r--r-- | net/tipc/discover.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/tipc/discover.c b/net/tipc/discover.c index ad9d477cc242..6b109a808d4c 100644 --- a/net/tipc/discover.c +++ b/net/tipc/discover.c | |||
@@ -135,9 +135,12 @@ void tipc_disc_rcv(struct net *net, struct sk_buff *skb, | |||
135 | u16 caps = msg_node_capabilities(hdr); | 135 | u16 caps = msg_node_capabilities(hdr); |
136 | bool respond = false; | 136 | bool respond = false; |
137 | bool dupl_addr = false; | 137 | bool dupl_addr = false; |
138 | int err; | ||
138 | 139 | ||
139 | bearer->media->msg2addr(bearer, &maddr, msg_media_addr(hdr)); | 140 | err = bearer->media->msg2addr(bearer, &maddr, msg_media_addr(hdr)); |
140 | kfree_skb(skb); | 141 | kfree_skb(skb); |
142 | if (err) | ||
143 | return; | ||
141 | 144 | ||
142 | /* Ensure message from node is valid and communication is permitted */ | 145 | /* Ensure message from node is valid and communication is permitted */ |
143 | if (net_id != tn->net_id) | 146 | if (net_id != tn->net_id) |