aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon/network/socket.c
diff options
context:
space:
mode:
Diffstat (limited to 'Source/charon/network/socket.c')
-rw-r--r--Source/charon/network/socket.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/Source/charon/network/socket.c b/Source/charon/network/socket.c
index c1c66a08f..538d1ca3d 100644
--- a/Source/charon/network/socket.c
+++ b/Source/charon/network/socket.c
@@ -154,7 +154,7 @@ socket_t *socket_create(u_int16_t port)
this->public.destroy = (void(*)(socket_t*))destroy;
this->logger = charon->logger_manager->create_logger(charon->logger_manager, SOCKET, NULL);
-
+
/* create default ipv4 socket */
this->socket_fd = socket(PF_INET, SOCK_DGRAM, 0);
if (this->socket_fd < 0)
@@ -162,7 +162,7 @@ socket_t *socket_create(u_int16_t port)
this->logger->log(this->logger, ERROR, "unable to open socket: %s", strerror(errno));
charon->logger_manager->destroy_logger(charon->logger_manager, this->logger);
allocator_free(this);
- return NULL;
+ charon->kill(charon, "socket could not be opened");
}
/* bind socket to all interfaces */
@@ -174,7 +174,7 @@ socket_t *socket_create(u_int16_t port)
this->logger->log(this->logger, ERROR, "unable to bind socket to port %d: %s", port, strerror(errno));
charon->logger_manager->destroy_logger(charon->logger_manager, this->logger);
allocator_free(this);
- return NULL;
+ charon->kill(charon, "socket could not be opened");
}
return (socket_t*)this;