diff options
author | Allan Stephens <allan.stephens@windriver.com> | 2011-04-18 10:08:22 -0400 |
---|---|---|
committer | Paul Gortmaker <paul.gortmaker@windriver.com> | 2011-05-10 16:03:51 -0400 |
commit | 7462b9e9f69aa6c5e2fded65d3b03df4ed08ff45 (patch) | |
tree | 8f730ab75bad31fe0384eeec2bde2a2fb429d26e /net/tipc/port.c | |
parent | 53b94364a7c96d3b2276cb2bbbecfb269bc9f0fc (diff) |
tipc: Fix problem with bundled multicast message
Set the destination node and destination port fields of an outgoing
multicast message header to zero; this is necessary to ensure that
the receiving node can route the message properly if it was packed
into a bundle due to link congestion. (Previously, there was a chance
that the receiving node would send the unbundled message to a random
node & port, rather than processing the message itself.)
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.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/tipc/port.c b/net/tipc/port.c index c2229c4b18ef..ac64037514f3 100644 --- a/net/tipc/port.c +++ b/net/tipc/port.c | |||
@@ -92,6 +92,8 @@ int tipc_multicast(u32 ref, struct tipc_name_seq const *seq, | |||
92 | hdr = &oport->phdr; | 92 | hdr = &oport->phdr; |
93 | msg_set_type(hdr, TIPC_MCAST_MSG); | 93 | msg_set_type(hdr, TIPC_MCAST_MSG); |
94 | msg_set_lookup_scope(hdr, TIPC_CLUSTER_SCOPE); | 94 | msg_set_lookup_scope(hdr, TIPC_CLUSTER_SCOPE); |
95 | msg_set_destport(hdr, 0); | ||
96 | msg_set_destnode(hdr, 0); | ||
95 | msg_set_nametype(hdr, seq->type); | 97 | msg_set_nametype(hdr, seq->type); |
96 | msg_set_namelower(hdr, seq->lower); | 98 | msg_set_namelower(hdr, seq->lower); |
97 | msg_set_nameupper(hdr, seq->upper); | 99 | msg_set_nameupper(hdr, seq->upper); |