From 73c0239162acc5bdfcfb57c42e3030c5c08d1923 Mon Sep 17 00:00:00 2001 From: Allan Stephens Date: Tue, 24 May 2011 13:20:09 -0400 Subject: [PATCH] --- yaml --- r: 255913 b: refs/heads/master c: 017dac31dc8a25ad45421715d88c3869e299fd35 h: refs/heads/master i: 255911: a1d60146f4c17f3d67e208d446e10c389438df5d v: v3 --- [refs] | 2 +- trunk/net/tipc/port.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index f02fe0bb3a17..f2d10129f9df 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 76d12527f74ad1b42b068252fdd2056c8ae48a99 +refs/heads/master: 017dac31dc8a25ad45421715d88c3869e299fd35 diff --git a/trunk/net/tipc/port.c b/trunk/net/tipc/port.c index 756e64cbff96..70ecdfdf6e3a 100644 --- a/trunk/net/tipc/port.c +++ b/trunk/net/tipc/port.c @@ -360,6 +360,7 @@ int tipc_reject_msg(struct sk_buff *buf, u32 err) int hdr_sz; u32 imp = msg_importance(msg); u32 data_sz = msg_data_sz(msg); + u32 src_node; if (data_sz > MAX_REJECT_SIZE) data_sz = MAX_REJECT_SIZE; @@ -416,7 +417,11 @@ int tipc_reject_msg(struct sk_buff *buf, u32 err) /* send returned message & dispose of rejected message */ - tipc_net_route_msg(rbuf); + src_node = msg_prevnode(msg); + if (src_node == tipc_own_addr) + tipc_port_recv_msg(rbuf); + else + tipc_link_send(rbuf, src_node, msg_link_selector(rmsg)); exit: buf_discard(buf); return data_sz;