diff options
author | Shawn Routhier <sar@isc.org> | 2016-07-28 21:11:24 -0700 |
---|---|---|
committer | Shawn Routhier <sar@isc.org> | 2016-07-28 21:11:24 -0700 |
commit | 21f3982ab38c1fbf61edc59128d4ed0318374006 (patch) | |
tree | 6e718c3365bd7788e060b871aa9a0a4c891ab792 /omapip | |
parent | 6b797e44e97c606494018c5df6e57c9994a3a788 (diff) | |
download | isc-dhcp-21f3982ab38c1fbf61edc59128d4ed0318374006.tar.gz |
[master] When opening a connection, if the socket can't be bound close it.
Diffstat (limited to 'omapip')
-rw-r--r-- | omapip/connection.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/omapip/connection.c b/omapip/connection.c index 58b08c69..abc1ac68 100644 --- a/omapip/connection.c +++ b/omapip/connection.c @@ -150,6 +150,7 @@ isc_result_t omapi_connect_list (omapi_object_t *c, if (local_addr) { /* Only do TCPv4 so far. */ if (local_addr -> addrtype != AF_INET) { + close(obj->socket); omapi_connection_dereference (&obj, MDL); return DHCP_R_INVALIDARG; } @@ -168,6 +169,7 @@ isc_result_t omapi_connect_list (omapi_object_t *c, sizeof local_sin) < 0) { omapi_connection_object_t **objp = &obj; omapi_object_t **o = (omapi_object_t **)objp; + close(obj->socket); omapi_object_dereference(o, MDL); if (errno == EADDRINUSE) return ISC_R_ADDRINUSE; |