From 8b40a98967d2099a268775b719b0b54d96646500 Mon Sep 17 00:00:00 2001 From: Allan Stephens Date: Sun, 25 Jun 2006 23:45:24 -0700 Subject: [PATCH] --- yaml --- r: 30405 b: refs/heads/master c: 3546c7508d7e97fd855f8ac37afdd09622fa5ce1 h: refs/heads/master i: 30403: 52e5a32fc1d262cea9e6ed5e5d277aea83cd1326 v: v3 --- [refs] | 2 +- trunk/net/tipc/socket.c | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 486c1207a43e..d4d22bdb1792 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3388007bc4d662e50c2c01a7fb1fa2c31cea98ad +refs/heads/master: 3546c7508d7e97fd855f8ac37afdd09622fa5ce1 diff --git a/trunk/net/tipc/socket.c b/trunk/net/tipc/socket.c index 98550b90a730..361dc342f377 100644 --- a/trunk/net/tipc/socket.c +++ b/trunk/net/tipc/socket.c @@ -731,6 +731,7 @@ static int anc_data_recv(struct msghdr *m, struct tipc_msg *msg, u32 anc_data[3]; u32 err; u32 dest_type; + int has_name; int res; if (likely(m->msg_controllen == 0)) @@ -755,24 +756,27 @@ static int anc_data_recv(struct msghdr *m, struct tipc_msg *msg, dest_type = msg ? msg_type(msg) : TIPC_DIRECT_MSG; switch (dest_type) { case TIPC_NAMED_MSG: + has_name = 1; anc_data[0] = msg_nametype(msg); anc_data[1] = msg_namelower(msg); anc_data[2] = msg_namelower(msg); break; case TIPC_MCAST_MSG: + has_name = 1; anc_data[0] = msg_nametype(msg); anc_data[1] = msg_namelower(msg); anc_data[2] = msg_nameupper(msg); break; case TIPC_CONN_MSG: + has_name = (tport->conn_type != 0); anc_data[0] = tport->conn_type; anc_data[1] = tport->conn_instance; anc_data[2] = tport->conn_instance; break; default: - anc_data[0] = 0; + has_name = 0; } - if (anc_data[0] && + if (has_name && (res = put_cmsg(m, SOL_SOCKET, TIPC_DESTNAME, 12, anc_data))) return res;