Browse Source

tipc: Add sanity check to detect rejection of non-payload messages

Introduces an internal sanity check to ensure that the only undeliverable
messages TIPC attempts to return to their origin are application payload
messages.

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Allan Stephens 14 years ago
parent
commit
76d12527f7
1 changed files with 6 additions and 0 deletions
  1. 6 0
      net/tipc/port.c

+ 6 - 0
net/tipc/port.c

@@ -367,6 +367,12 @@ int tipc_reject_msg(struct sk_buff *buf, u32 err)
 		imp++;
 
 	/* discard rejected message if it shouldn't be returned to sender */
+
+	if (WARN(!msg_isdata(msg),
+		 "attempt to reject message with user=%u", msg_user(msg))) {
+		dump_stack();
+		goto exit;
+	}
 	if (msg_errcode(msg) || msg_dest_droppable(msg))
 		goto exit;