diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-11-25 16:10:58 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-11-25 16:10:58 +0000 |
commit | 4101d1d0fc562994b2c96516c252902393002bfb (patch) | |
tree | 4bcc43f8000cd8e06bf1ac4ff5ca8dc34ef53451 /src/core/gnunet-service-core_clients.c | |
parent | c1c2b82310ea6f9e7cee367bf1202aae82df6d60 (diff) | |
download | gnunet-4101d1d0fc562994b2c96516c252902393002bfb.tar.gz gnunet-4101d1d0fc562994b2c96516c252902393002bfb.zip |
fixing mantis 1961
Diffstat (limited to 'src/core/gnunet-service-core_clients.c')
-rw-r--r-- | src/core/gnunet-service-core_clients.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/core/gnunet-service-core_clients.c b/src/core/gnunet-service-core_clients.c index 98a55bef9..5d06af640 100644 --- a/src/core/gnunet-service-core_clients.c +++ b/src/core/gnunet-service-core_clients.c | |||
@@ -606,15 +606,24 @@ GSC_CLIENTS_solicit_request (struct GSC_ClientActiveRequest *car) | |||
606 | struct SendMessageReady smr; | 606 | struct SendMessageReady smr; |
607 | 607 | ||
608 | c = car->client_handle; | 608 | c = car->client_handle; |
609 | if (GNUNET_YES != | ||
610 | GNUNET_CONTAINER_multihashmap_contains (c->connectmap, | ||
611 | &car-> | ||
612 | target.hashPubKey)) | ||
613 | { | ||
614 | /* connection has gone down since, drop request */ | ||
615 | GNUNET_assert (0 != | ||
616 | memcmp (&car->target, &GSC_my_identity, | ||
617 | sizeof (struct GNUNET_PeerIdentity))); | ||
618 | GSC_SESSIONS_dequeue_request (car); | ||
619 | GSC_CLIENTS_reject_request (car); | ||
620 | return; | ||
621 | } | ||
609 | smr.header.size = htons (sizeof (struct SendMessageReady)); | 622 | smr.header.size = htons (sizeof (struct SendMessageReady)); |
610 | smr.header.type = htons (GNUNET_MESSAGE_TYPE_CORE_SEND_READY); | 623 | smr.header.type = htons (GNUNET_MESSAGE_TYPE_CORE_SEND_READY); |
611 | smr.size = htons (car->msize); | 624 | smr.size = htons (car->msize); |
612 | smr.smr_id = car->smr_id; | 625 | smr.smr_id = car->smr_id; |
613 | smr.peer = car->target; | 626 | smr.peer = car->target; |
614 | GNUNET_assert (GNUNET_YES == | ||
615 | GNUNET_CONTAINER_multihashmap_contains (c->connectmap, | ||
616 | &car-> | ||
617 | target.hashPubKey)); | ||
618 | send_to_client (c, &smr.header, GNUNET_NO); | 627 | send_to_client (c, &smr.header, GNUNET_NO); |
619 | } | 628 | } |
620 | 629 | ||