From 6a247769216c5d94dd75f69a0ec68faec94a9127 Mon Sep 17 00:00:00 2001 From: Ted Ross Date: Wed, 8 May 2013 12:10:39 +0000 Subject: QPID-4816 - Handle link attach with a null target. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1480244 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/extras/dispatch/src/router_node.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'qpid/extras/dispatch/src/router_node.c') diff --git a/qpid/extras/dispatch/src/router_node.c b/qpid/extras/dispatch/src/router_node.c index 872b8363c9..cc96cd5051 100644 --- a/qpid/extras/dispatch/src/router_node.c +++ b/qpid/extras/dispatch/src/router_node.c @@ -310,6 +310,11 @@ static int router_outgoing_link_handler(void* context, dx_link_t *link) pn_link_t *pn_link = dx_link_pn(link); const char *r_tgt = pn_terminus_get_address(pn_link_remote_target(pn_link)); + if (!r_tgt) { + pn_link_close(pn_link); + return 0; + } + dx_router_link_t *rlink = new_dx_router_link_t(); rlink->link = link; DEQ_INIT(rlink->out_fifo); @@ -391,6 +396,9 @@ static int router_link_detach_handler(void* context, dx_link_t *link, int closed const char *r_tgt = pn_terminus_get_address(pn_link_remote_target(pn_link)); dx_link_item_t *item; + if (!r_tgt) + return 0; + sys_mutex_lock(router->lock); if (pn_link_is_sender(pn_link)) { item = DEQ_HEAD(router->out_links); -- cgit v1.2.1