aboutsummaryrefslogtreecommitdiffstats
path: root/vlib-api/vlibsocket
diff options
context:
space:
mode:
Diffstat (limited to 'vlib-api/vlibsocket')
-rw-r--r--vlib-api/vlibsocket/sockclnt_vlib.c1
-rw-r--r--vlib-api/vlibsocket/socksvr_vlib.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/vlib-api/vlibsocket/sockclnt_vlib.c b/vlib-api/vlibsocket/sockclnt_vlib.c
index 4ae274c2..e8d749c5 100644
--- a/vlib-api/vlibsocket/sockclnt_vlib.c
+++ b/vlib-api/vlibsocket/sockclnt_vlib.c
@@ -107,6 +107,7 @@ sockclnt_open_index (char *client_name, char *hostname, int port)
if (connect (sockfd, (const void *) &serv_addr, sizeof (serv_addr)) < 0)
{
clib_unix_warning ("Connect failure to (%s, %d)", hostname, port);
+ close(sockfd);
return ~0;
}
diff --git a/vlib-api/vlibsocket/socksvr_vlib.c b/vlib-api/vlibsocket/socksvr_vlib.c
index 91c6bfde..eb8dd334 100644
--- a/vlib-api/vlibsocket/socksvr_vlib.c
+++ b/vlib-api/vlibsocket/socksvr_vlib.c
@@ -602,6 +602,7 @@ socksvr_api_init (vlib_main_t * vm)
if (bind (sockfd, (struct sockaddr *) &serv_addr, sizeof (serv_addr)) < 0)
{
+ close (sockfd);
return clib_error_return_unix (0, "bind");
}