|
|
|
@ -760,6 +760,7 @@ int route_bgp_process_nodeinfo(struct ROUTE_BGP* bgp, struct ETCP_CONN* from, co |
|
|
|
if (need_alloc) { |
|
|
|
if (need_alloc) { |
|
|
|
if (nodeinfo1) { |
|
|
|
if (nodeinfo1) { |
|
|
|
queue_remove_data(bgp->nodes, &nodeinfo1->ll); |
|
|
|
queue_remove_data(bgp->nodes, &nodeinfo1->ll); |
|
|
|
|
|
|
|
queue_free(paths); |
|
|
|
queue_entry_free(&nodeinfo1->ll); |
|
|
|
queue_entry_free(&nodeinfo1->ll); |
|
|
|
} |
|
|
|
} |
|
|
|
nodeinfo1 = (struct NODEINFO_Q*)queue_entry_new(new_data_size); |
|
|
|
nodeinfo1 = (struct NODEINFO_Q*)queue_entry_new(new_data_size); |
|
|
|
@ -904,6 +905,8 @@ void route_bgp_send_nodeinfo(struct NODEINFO_Q* node, struct ETCP_CONN* conn) { |
|
|
|
int ret = etcp_send(conn, e); |
|
|
|
int ret = etcp_send(conn, e); |
|
|
|
if (ret != 0) { |
|
|
|
if (ret != 0) { |
|
|
|
DEBUG_ERROR(DEBUG_CATEGORY_BGP, "etcp_send NODEINFO failed: %d", ret); |
|
|
|
DEBUG_ERROR(DEBUG_CATEGORY_BGP, "etcp_send NODEINFO failed: %d", ret); |
|
|
|
|
|
|
|
u_free(p); |
|
|
|
|
|
|
|
queue_entry_free(e); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|