X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Futil%2Ftest_server_with_client.c;h=b28b3b69f0705f0c4e82981bca9191e767194b2d;hb=555214089c7045298f23fea9e060ea931804e75f;hp=f22c15300918eff64e884c786536ebcc1cd3a113;hpb=9baabed9a7a45e367458754e7ce6c19b4245f22b;p=oweals%2Fgnunet.git diff --git a/src/util/test_server_with_client.c b/src/util/test_server_with_client.c index f22c15300..b28b3b69f 100644 --- a/src/util/test_server_with_client.c +++ b/src/util/test_server_with_client.c @@ -93,7 +93,7 @@ recv_cb (void *cls, break; case 4: ok++; - GNUNET_CLIENT_disconnect (client); + GNUNET_CLIENT_disconnect (client, GNUNET_YES); GNUNET_SERVER_receive_done (argclient, GNUNET_OK); break; default: @@ -123,6 +123,8 @@ clean_up (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) static void notify_disconnect (void *cls, struct GNUNET_SERVER_Client *client) { + if (client == NULL) + return; GNUNET_assert (ok == 5); ok = 0; GNUNET_SCHEDULER_add_now (sched, @@ -158,7 +160,13 @@ static void task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) { struct sockaddr_in sa; + struct sockaddr * sap[2]; + socklen_t slens[2]; + sap[0] = (struct sockaddr*) &sa; + slens[0] = sizeof (sa); + sap[1] = NULL; + slens[1] = 0; sched = tc->sched; memset (&sa, 0, sizeof (sa)); #if HAVE_SOCKADDR_IN_SIN_LEN @@ -169,8 +177,8 @@ task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) server = GNUNET_SERVER_create (tc->sched, NULL, NULL, - (const struct sockaddr *) &sa, - sizeof (sa), + sap, + slens, 1024, GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_MILLISECONDS, 250),