diff -up dhcp-4.2.2/common/lpf.c.orig dhcp-4.2.2/common/lpf.c --- dhcp-4.2.2/common/lpf.c.orig 2011-09-19 11:18:09.000000000 +0200 +++ dhcp-4.2.2/common/lpf.c 2011-09-19 11:18:26.371540946 +0200 @@ -602,6 +602,8 @@ static unsigned char * get_ib_hw_addr(ch return NULL; for (ifa = ifaddrs; ifa != NULL; ifa = ifa->ifa_next) { + if (ifa->ifa_addr == NULL) + continue; if (ifa->ifa_addr->sa_family != AF_PACKET) continue; if (ifa->ifa_flags & IFF_LOOPBACK) @@ -635,6 +637,9 @@ get_hw_addr(struct interface_info *info) for (ifa = ifaddrs; ifa != NULL; ifa = ifa->ifa_next) { + if (ifa->ifa_addr == NULL) + continue; + if (ifa->ifa_addr->sa_family != AF_PACKET) continue;