Mercurial > hg > dhcpcd
changeset 2717:84d3fb71b565 draft
Fix a compile problem on Linux with IPv6 disabled.
| author | Roy Marples <roy@marples.name> |
|---|---|
| date | Sat, 27 Sep 2014 07:37:15 +0000 |
| parents | cb99895aeffb |
| children | 4ab6ccff388c |
| files | if-linux.c |
| diffstat | 1 files changed, 12 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/if-linux.c Sat Sep 27 02:22:34 2014 +0000 +++ b/if-linux.c Sat Sep 27 07:37:15 2014 +0000 @@ -436,13 +436,18 @@ rta = (struct rtattr *)(void *)((char *)rtm +NLMSG_ALIGN(sizeof(*rtm))); len = NLMSG_PAYLOAD(nlm, sizeof(*rtm)); - memset(&rt, 0, sizeof(rt)); - rt.dest.s_addr = INADDR_ANY; - rt.net.s_addr = INADDR_ANY; - rt.gate.s_addr = INADDR_ANY; +#ifdef INET + if (rtm->rtm_family == AF_INET) + memset(&rt, 0, sizeof(rt)); +#endif +#ifdef INET6 + if (rtm->rtm_family == AF_INET6) + memset(&rt6, 0, sizeof(rt6)); +#endif metric = 0; while (RTA_OK(rta, len)) { switch (rtm->rtm_family) { +#ifdef INET case AF_INET: switch (rta->rta_type) { case RTA_DST: @@ -459,6 +464,8 @@ break; } break; +#endif +#ifdef INET6 case AF_INET6: switch (rta->rta_type) { case RTA_DST: @@ -475,6 +482,7 @@ break; } break; +#endif } switch (rta->rta_type) { case RTA_PRIORITY:
