Subject: [PATCH 26/32] [TIPC] Fixed memory leak in tipc_link_send() when destination is unreachable

From: Per Liden <[email-masked]>
Date: Thu, 22 Jun 2006 15:59:39 +0200

From: Allan Stephens <[email-masked]>

Signed-off-by: Allan Stephens <[email-masked]>
Signed-off-by: Per Liden <[email-masked]>
---
 net/tipc/link.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/net/tipc/link.c b/net/tipc/link.c
index ba7d3f1..ff40c91 100644
--- a/net/tipc/link.c
+++ b/net/tipc/link.c
@@ -1135,9 +1135,13 @@ int tipc_link_send(struct sk_buff *buf, 
 	if (n_ptr) {
 		tipc_node_lock(n_ptr);
 		l_ptr = n_ptr->active_links[selector & 1];
-		dbg("tipc_link_send: found link %x for dest %x\n", l_ptr, dest);
 		if (l_ptr) {
+			dbg("tipc_link_send: found link %x for dest %x\n", l_ptr, dest);
 			res = tipc_link_send_buf(l_ptr, buf);
+		} else {
+			dbg("Attempt to send msg to unreachable node:\n");
+			msg_dbg(buf_msg(buf),">>>");
+			buf_discard(buf);
 		}
 		tipc_node_unlock(n_ptr);
 	} else {
-- 
1.4.0