aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc/port.c
diff options
context:
space:
mode:
authorAllan Stephens <allan.stephens@windriver.com>2011-04-18 10:14:26 -0400
committerPaul Gortmaker <paul.gortmaker@windriver.com>2011-05-10 16:03:52 -0400
commit7f47f5c751c93f2ca9e7f0ef6c0915162ac9e076 (patch)
tree27bbbf7040b38ae1a0925234d7062d8edb77a91e /net/tipc/port.c
parent7462b9e9f69aa6c5e2fded65d3b03df4ed08ff45 (diff)
tipc: Update destination node field on incoming multicast messages
Sets the destination node field of an incoming multicast message to the receiving node's network address before handing off the message to each receiving port. This ensures that, in the event the destination port returns the message to the sender, the sender can identify which node the destination port belonged to. Signed-off-by: Allan Stephens <allan.stephens@windriver.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Diffstat (limited to 'net/tipc/port.c')
-rw-r--r--net/tipc/port.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/tipc/port.c b/net/tipc/port.c
index ac64037514f3..9f2ff12cf436 100644
--- a/net/tipc/port.c
+++ b/net/tipc/port.c
@@ -164,6 +164,7 @@ void tipc_port_recv_mcast(struct sk_buff *buf, struct port_list *dp)
164 /* Deliver a copy of message to each destination port */ 164 /* Deliver a copy of message to each destination port */
165 165
166 if (dp->count != 0) { 166 if (dp->count != 0) {
167 msg_set_destnode(msg, tipc_own_addr);
167 if (dp->count == 1) { 168 if (dp->count == 1) {
168 msg_set_destport(msg, dp->ports[0]); 169 msg_set_destport(msg, dp->ports[0]);
169 tipc_port_recv_msg(buf); 170 tipc_port_recv_msg(buf);