diff options
Diffstat (limited to 'libnetutils/ifc_utils.c')
-rw-r--r-- | libnetutils/ifc_utils.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/libnetutils/ifc_utils.c b/libnetutils/ifc_utils.c index 913f51e..7d2a5fb 100644 --- a/libnetutils/ifc_utils.c +++ b/libnetutils/ifc_utils.c @@ -123,7 +123,7 @@ int ifc_init(void) { int ret; if (ifc_ctl_sock == -1) { - ifc_ctl_sock = socket(AF_INET, SOCK_DGRAM, 0); + ifc_ctl_sock = socket(AF_INET, SOCK_DGRAM | SOCK_CLOEXEC, 0); if (ifc_ctl_sock < 0) { printerr("socket() failed: %s\n", strerror(errno)); } @@ -137,7 +137,7 @@ int ifc_init(void) int ifc_init6(void) { if (ifc_ctl_sock6 == -1) { - ifc_ctl_sock6 = socket(AF_INET6, SOCK_DGRAM, 0); + ifc_ctl_sock6 = socket(AF_INET6, SOCK_DGRAM | SOCK_CLOEXEC, 0); if (ifc_ctl_sock6 < 0) { printerr("socket() failed: %s\n", strerror(errno)); } @@ -316,7 +316,7 @@ int ifc_act_on_address(int action, const char *name, const char *address, req.n.nlmsg_len = NLMSG_ALIGN(req.n.nlmsg_len) + RTA_LENGTH(addrlen); memcpy(RTA_DATA(rta), addr, addrlen); - s = socket(PF_NETLINK, SOCK_RAW, NETLINK_ROUTE); + s = socket(PF_NETLINK, SOCK_RAW | SOCK_CLOEXEC, NETLINK_ROUTE); if (send(s, &req, req.n.nlmsg_len, 0) < 0) { close(s); return -errno; @@ -421,7 +421,6 @@ int ifc_clear_addresses(const char *name) { int ifc_set_hwaddr(const char *name, const void *ptr) { - int r; struct ifreq ifr; ifc_init_ifr(name, &ifr); |