diff options
Diffstat (limited to 'net/tipc/socket.c')
-rw-r--r-- | net/tipc/socket.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/tipc/socket.c b/net/tipc/socket.c index bcb3314ef164..c19fc4a228a8 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c | |||
@@ -1236,7 +1236,8 @@ static u32 filter_rcv(struct sock *sk, struct sk_buff *buf) | |||
1236 | if (msg_mcast(msg)) | 1236 | if (msg_mcast(msg)) |
1237 | return TIPC_ERR_NO_PORT; | 1237 | return TIPC_ERR_NO_PORT; |
1238 | if (sock->state == SS_CONNECTED) { | 1238 | if (sock->state == SS_CONNECTED) { |
1239 | if (!msg_connected(msg)) | 1239 | if (!msg_connected(msg) || |
1240 | !tipc_port_peer_msg(tipc_sk_port(sk), msg)) | ||
1240 | return TIPC_ERR_NO_PORT; | 1241 | return TIPC_ERR_NO_PORT; |
1241 | } else if (sock->state == SS_CONNECTING) { | 1242 | } else if (sock->state == SS_CONNECTING) { |
1242 | if (!msg_connected(msg) && (msg_errcode(msg) == 0)) | 1243 | if (!msg_connected(msg) && (msg_errcode(msg) == 0)) |