diff -ubd ../../nmap-4.20/libdnet-stripped/src/addr-util.c src/addr-util.c --- ../../nmap-4.20/libdnet-stripped/src/addr-util.c 2005-08-08 04:02:16.000000000 +0000 +++ src/addr-util.c 2006-12-08 06:52:58.000000000 +0000 @@ -182,6 +182,7 @@ return (NULL); best.base = cur.base = -1; + best.len = cur.len = 0; /* * Algorithm borrowed from Vixie's inet_pton6() */ diff -ubd ../../nmap-4.20/libdnet-stripped/src/intf.c src/intf.c --- ../../nmap-4.20/libdnet-stripped/src/intf.c 2006-06-10 00:12:03.000000000 +0000 +++ src/intf.c 2006-12-08 06:39:48.000000000 +0000 @@ -623,7 +623,7 @@ return (-1); n = sizeof(sin); - if (getsockname(intf->fd, (struct sockaddr *)&sin, &n) < 0) + if (getsockname(intf->fd, (struct sockaddr *)&sin, (socklen_t *)&n) < 0) return (-1); addr_ston((struct sockaddr *)&sin, &entry->intf_addr); diff -ubd ../../nmap-4.20/libdnet-stripped/src/ip.c src/ip.c --- ../../nmap-4.20/libdnet-stripped/src/ip.c 2005-01-25 21:30:40.000000000 +0000 +++ src/ip.c 2006-12-08 06:43:15.000000000 +0000 @@ -40,7 +40,7 @@ #endif #ifdef SO_SNDBUF len = sizeof(n); - if (getsockopt(i->fd, SOL_SOCKET, SO_SNDBUF, &n, &len) < 0) + if (getsockopt(i->fd, SOL_SOCKET, SO_SNDBUF, &n, (socklen_t *)&len) < 0) return (ip_close(i)); for (n += 128; n < 1048576; n += 128) {