aboutsummaryrefslogtreecommitdiff
path: root/src/util
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2016-09-26 16:07:30 +0000
committerChristian Grothoff <christian@grothoff.org>2016-09-26 16:07:30 +0000
commit736ff56bade57c6b2e5f6b593d2f79e10d6e6705 (patch)
treec2a89721181344eba70b529478846e58d2ad2232 /src/util
parentea5dba2343416eb8f049eb55accf05b6b56d8d10 (diff)
downloadgnunet-736ff56bade57c6b2e5f6b593d2f79e10d6e6705.tar.gz
gnunet-736ff56bade57c6b2e5f6b593d2f79e10d6e6705.zip
-do not crash with NPE if bind fails
Diffstat (limited to 'src/util')
-rw-r--r--src/util/service_new.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/util/service_new.c b/src/util/service_new.c
index 0b9e8fd82..c15d98161 100644
--- a/src/util/service_new.c
+++ b/src/util/service_new.c
@@ -1275,7 +1275,13 @@ setup_service (struct GNUNET_SERVICE_Handle *sh)
1275 slc->sh = sh; 1275 slc->sh = sh;
1276 slc->listen_socket = open_listen_socket (addrs[i], 1276 slc->listen_socket = open_listen_socket (addrs[i],
1277 addrlens[i]); 1277 addrlens[i]);
1278 GNUNET_break (NULL != slc->listen_socket); 1278 if (NULL == slc->listen_socket)
1279 {
1280 GNUNET_log_strerror (GNUNET_ERROR_TYPE_ERROR,
1281 "bind");
1282 GNUNET_free (slc);
1283 continue;
1284 }
1279 GNUNET_CONTAINER_DLL_insert (sh->slc_head, 1285 GNUNET_CONTAINER_DLL_insert (sh->slc_head,
1280 sh->slc_tail, 1286 sh->slc_tail,
1281 slc); 1287 slc);
@@ -1283,12 +1289,12 @@ setup_service (struct GNUNET_SERVICE_Handle *sh)
1283 } 1289 }
1284 1290
1285 sh->require_found = tolerant ? GNUNET_NO : GNUNET_YES; 1291 sh->require_found = tolerant ? GNUNET_NO : GNUNET_YES;
1286 sh->match_uid = 1292 sh->match_uid
1287 GNUNET_CONFIGURATION_get_value_yesno (sh->cfg, 1293 = GNUNET_CONFIGURATION_get_value_yesno (sh->cfg,
1288 sh->service_name, 1294 sh->service_name,
1289 "UNIX_MATCH_UID"); 1295 "UNIX_MATCH_UID");
1290 sh->match_gid = 1296 sh->match_gid
1291 GNUNET_CONFIGURATION_get_value_yesno (sh->cfg, 1297 = GNUNET_CONFIGURATION_get_value_yesno (sh->cfg,
1292 sh->service_name, 1298 sh->service_name,
1293 "UNIX_MATCH_GID"); 1299 "UNIX_MATCH_GID");
1294 process_acl4 (&sh->v4_denied, 1300 process_acl4 (&sh->v4_denied,