diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/util/gnunet-service-resolver.c | 1 | ||||
-rw-r--r-- | src/util/server_tc.c | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/util/gnunet-service-resolver.c b/src/util/gnunet-service-resolver.c index 5739571ae..306cf9cec 100644 --- a/src/util/gnunet-service-resolver.c +++ b/src/util/gnunet-service-resolver.c | |||
@@ -168,6 +168,7 @@ get_ip_as_string (struct GNUNET_SERVER_Client *client, | |||
168 | if (salen < sizeof (struct sockaddr)) | 168 | if (salen < sizeof (struct sockaddr)) |
169 | { | 169 | { |
170 | GNUNET_break (0); | 170 | GNUNET_break (0); |
171 | GNUNET_SERVER_receive_done (client, GNUNET_SYSERR); | ||
171 | return; | 172 | return; |
172 | } | 173 | } |
173 | now = GNUNET_TIME_absolute_get (); | 174 | now = GNUNET_TIME_absolute_get (); |
diff --git a/src/util/server_tc.c b/src/util/server_tc.c index 7514b0cd3..b7158dadb 100644 --- a/src/util/server_tc.c +++ b/src/util/server_tc.c | |||
@@ -82,6 +82,7 @@ transmit_response (void *cls, size_t size, void *buf) | |||
82 | if (buf == NULL) | 82 | if (buf == NULL) |
83 | { | 83 | { |
84 | GNUNET_SERVER_receive_done (tc->client, GNUNET_SYSERR); | 84 | GNUNET_SERVER_receive_done (tc->client, GNUNET_SYSERR); |
85 | GNUNET_SERVER_client_drop (tc->client); | ||
85 | GNUNET_free_non_null (tc->buf); | 86 | GNUNET_free_non_null (tc->buf); |
86 | GNUNET_free (tc); | 87 | GNUNET_free (tc); |
87 | return 0; | 88 | return 0; |
@@ -95,6 +96,7 @@ transmit_response (void *cls, size_t size, void *buf) | |||
95 | if (tc->total == tc->off) | 96 | if (tc->total == tc->off) |
96 | { | 97 | { |
97 | GNUNET_SERVER_receive_done (tc->client, GNUNET_OK); | 98 | GNUNET_SERVER_receive_done (tc->client, GNUNET_OK); |
99 | GNUNET_SERVER_client_drop (tc->client); | ||
98 | GNUNET_free_non_null (tc->buf); | 100 | GNUNET_free_non_null (tc->buf); |
99 | GNUNET_free (tc); | 101 | GNUNET_free (tc); |
100 | } | 102 | } |
@@ -111,6 +113,7 @@ transmit_response (void *cls, size_t size, void *buf) | |||
111 | { | 113 | { |
112 | GNUNET_break (0); | 114 | GNUNET_break (0); |
113 | GNUNET_SERVER_receive_done (tc->client, GNUNET_SYSERR); | 115 | GNUNET_SERVER_receive_done (tc->client, GNUNET_SYSERR); |
116 | GNUNET_SERVER_client_drop (tc->client); | ||
114 | GNUNET_free_non_null (tc->buf); | 117 | GNUNET_free_non_null (tc->buf); |
115 | GNUNET_free (tc); | 118 | GNUNET_free (tc); |
116 | } | 119 | } |
@@ -133,6 +136,7 @@ GNUNET_SERVER_transmit_context_create (struct GNUNET_SERVER_Client *client) | |||
133 | 136 | ||
134 | GNUNET_assert (client != NULL); | 137 | GNUNET_assert (client != NULL); |
135 | tc = GNUNET_malloc (sizeof (struct GNUNET_SERVER_TransmitContext)); | 138 | tc = GNUNET_malloc (sizeof (struct GNUNET_SERVER_TransmitContext)); |
139 | GNUNET_SERVER_client_keep (client); | ||
136 | tc->client = client; | 140 | tc->client = client; |
137 | return tc; | 141 | return tc; |
138 | } | 142 | } |
@@ -213,6 +217,7 @@ GNUNET_SERVER_transmit_context_run (struct GNUNET_SERVER_TransmitContext *tc, | |||
213 | { | 217 | { |
214 | GNUNET_break (0); | 218 | GNUNET_break (0); |
215 | GNUNET_SERVER_receive_done (tc->client, GNUNET_SYSERR); | 219 | GNUNET_SERVER_receive_done (tc->client, GNUNET_SYSERR); |
220 | GNUNET_SERVER_client_drop (tc->client); | ||
216 | GNUNET_free_non_null (tc->buf); | 221 | GNUNET_free_non_null (tc->buf); |
217 | GNUNET_free (tc); | 222 | GNUNET_free (tc); |
218 | } | 223 | } |