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]
