X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Ffd_device.c;h=205b628b6736f7c9a4992c7c1c5a5fdd4b395e4f;hb=1545909dcb3ac618754486f4ccd4d8f237d64bb7;hp=0da82591cca8876351b13e83c0ae7998b0564cd1;hpb=0345a1468613e1ba4a4aa6dbbef44a26f1eb42d9;p=tinc diff --git a/src/fd_device.c b/src/fd_device.c index 0da82591..205b628b 100644 --- a/src/fd_device.c +++ b/src/fd_device.c @@ -31,7 +31,6 @@ #include "logger.h" #include "net.h" #include "route.h" -#include "utils.h" struct unix_socket_addr { size_t size; @@ -116,7 +115,9 @@ end: } static struct unix_socket_addr parse_socket_addr(const char *path) { - struct sockaddr_un socket_addr; + struct sockaddr_un socket_addr = { + .sun_family = AF_UNIX, + }; size_t path_length; if(strlen(path) >= sizeof(socket_addr.sun_path)) { @@ -126,7 +127,6 @@ static struct unix_socket_addr parse_socket_addr(const char *path) { }; } - socket_addr.sun_family = AF_UNIX; strncpy(socket_addr.sun_path, path, sizeof(socket_addr.sun_path)); if(path[0] == '@') { @@ -174,6 +174,10 @@ static bool setup_device(void) { static void close_device(void) { close(device_fd); device_fd = -1; + free(iface); + iface = NULL; + free(device); + device = NULL; } static inline uint16_t get_ip_ethertype(vpn_packet_t *packet) {