DISPATCH-365 - Don't handle inter-router link detaches on non inter-router 
connections.


Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/a7ef3297
Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/a7ef3297
Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/a7ef3297

Branch: refs/heads/0.6.x
Commit: a7ef32971f591fabf01ee81ef15125711bf24334
Parents: 922bae1
Author: Ted Ross <[email protected]>
Authored: Tue Jun 7 14:31:36 2016 -0400
Committer: Ted Ross <[email protected]>
Committed: Mon Jun 13 17:23:13 2016 -0400

----------------------------------------------------------------------
 src/router_core/connections.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/a7ef3297/src/router_core/connections.c
----------------------------------------------------------------------
diff --git a/src/router_core/connections.c b/src/router_core/connections.c
index cedf115..b352d92 100644
--- a/src/router_core/connections.c
+++ b/src/router_core/connections.c
@@ -1295,13 +1295,16 @@ static void qdr_link_inbound_detach_CT(qdr_core_t 
*core, qdr_action_t *action, b
             break;
 
         case QD_LINK_CONTROL:
-            qdr_del_link_ref(&core->hello_addr->rlinks, link, 
QDR_LINK_LIST_CLASS_ADDRESS);
-            core->control_links_by_mask_bit[conn->mask_bit] = 0;
-            qdr_post_link_lost_CT(core, conn->mask_bit);
+            if (conn->role == QDR_ROLE_INTER_ROUTER) {
+                qdr_del_link_ref(&core->hello_addr->rlinks, link, 
QDR_LINK_LIST_CLASS_ADDRESS);
+                core->control_links_by_mask_bit[conn->mask_bit] = 0;
+                qdr_post_link_lost_CT(core, conn->mask_bit);
+            }
             break;
 
         case QD_LINK_ROUTER:
-            core->data_links_by_mask_bit[conn->mask_bit] = 0;
+            if (conn->role == QDR_ROLE_INTER_ROUTER)
+                core->data_links_by_mask_bit[conn->mask_bit] = 0;
             break;
         }
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to