diff --git a/net/tipc/socket.c b/net/tipc/socket.c
index e482b342bfa8a0d6c8686c65fdb24db72b15c3aa..3274ef625dba1b3417405d8537b4b30e919d44d1 100644
--- a/net/tipc/socket.c
+++ b/net/tipc/socket.c
@@ -1333,7 +1333,7 @@ static int __tipc_sendmsg(struct socket *sock, struct msghdr *m, size_t dlen)
 
 	if (unlikely(!dest)) {
 		dest = &tsk->peer;
-		if (!syn || dest->family != AF_TIPC)
+		if (!syn && dest->family != AF_TIPC)
 			return -EDESTADDRREQ;
 	}