X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Flibcollectdclient%2Fnetwork.c;h=7b98497c5fb8a6082c384e5a20d971b423963899;hb=8dfaf98cde62e42d4c245400c68ae9c825a2fe68;hp=c390a1ce7cada8de9b029cb5d088de05ad0c8c3e;hpb=649eff4e6f96ba72d693c1442acaa62abdf965e0;p=collectd.git diff --git a/src/libcollectdclient/network.c b/src/libcollectdclient/network.c index c390a1ce..7b98497c 100644 --- a/src/libcollectdclient/network.c +++ b/src/libcollectdclient/network.c @@ -89,6 +89,7 @@ static int server_close_socket (lcc_server_t *srv) /* {{{ */ return (0); close (srv->fd); + srv->fd = -1; free (srv->sa); srv->sa = NULL; srv->sa_len = 0; @@ -107,12 +108,6 @@ static void int_server_destroy (lcc_server_t *srv) /* {{{ */ next = srv->next; - if (srv->fd >= 0) - { - close (srv->fd); - srv->fd = -1; - } - free (srv->node); free (srv->service); free (srv->username); @@ -393,7 +388,7 @@ int lcc_server_set_ttl (lcc_server_t *srv, uint8_t ttl) /* {{{ */ int lcc_server_set_interface (lcc_server_t *srv, char const *interface) /* {{{ */ { - int if_index; + unsigned int if_index; int status; if ((srv == NULL) || (interface == NULL)) @@ -421,7 +416,7 @@ int lcc_server_set_interface (lcc_server_t *srv, char const *interface) /* {{{ * memset (&mreq, 0, sizeof (mreq)); mreq.imr_multiaddr.s_addr = addr->sin_addr.s_addr; mreq.imr_address.s_addr = ntohl (INADDR_ANY); - mreq.imr_ifindex = if_index; + mreq.imr_ifindex = (int) if_index; #else struct ip_mreq mreq; @@ -457,8 +452,8 @@ int lcc_server_set_interface (lcc_server_t *srv, char const *interface) /* {{{ * /* else: Not a multicast interface. */ #if defined(SO_BINDTODEVICE) - status = setsockopt (srv->fd, SOL_SOCKET, SO_BINDTODEVICE, - interface, strlen (interface) + 1); + status = setsockopt (srv->fd, SOL_SOCKET, SO_BINDTODEVICE, interface, + (socklen_t) (strlen (interface) + 1)); if (status != 0) return (-1); #endif