From bee9a02b062e1869f2a0f6f6e6b0739f7cb2174d Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Tue, 3 Feb 2015 12:33:04 +0000 Subject: do signal disconnect to transport service, even if specific address is in_destroy --- src/ats/ats_api_scheduling.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/ats') diff --git a/src/ats/ats_api_scheduling.c b/src/ats/ats_api_scheduling.c index 3bd4cddc7..297dcbf8b 100644 --- a/src/ats/ats_api_scheduling.c +++ b/src/ats/ats_api_scheduling.c @@ -481,7 +481,18 @@ process_ats_address_suggestion_message (void *cls, return; if (GNUNET_YES == ar->in_destroy) { - /* ignore suggestion, as this address is dying */ + /* ignore suggestion, as this address is dying, unless BW is 0, + in that case signal 'disconnect' via BW 0 */ + if ( (0 == ntohl (m->bandwidth_out.value__)) && + (0 == ntohl (m->bandwidth_in.value__)) ) + { + sh->suggest_cb (sh->suggest_cb_cls, + &m->peer, + NULL, + NULL, + m->bandwidth_out, + m->bandwidth_in); + } return; } if ( (NULL == ar->session) && -- cgit v1.2.3