diff --git a/sysdep/unix/io.c b/sysdep/unix/io.c index 8f61fc68..cbfb47d5 100644 --- a/sysdep/unix/io.c +++ b/sysdep/unix/io.c @@ -1204,7 +1204,7 @@ sk_setup(sock *s) if (s->iface) { #ifdef SO_BINDTODEVICE - struct ifreq ifr; + struct ifreq ifr = {}; strcpy(ifr.ifr_name, s->iface->name); if (setsockopt(s->fd, SOL_SOCKET, SO_BINDTODEVICE, &ifr, sizeof(ifr)) < 0) ERR("SO_BINDTODEVICE"); @@ -1564,7 +1564,8 @@ sk_sendmsg(sock *s) { struct iovec iov = {s->tbuf, s->tpos - s->tbuf}; byte cmsg_buf[CMSG_TX_SPACE]; - sockaddr dst; + bzero(cmsg_buf, sizeof(cmsg_buf)); + sockaddr dst = {}; sockaddr_fill(&dst, fam_to_af[s->fam], s->daddr, s->iface, s->dport);