diff --git a/ip/ipaddress.c b/ip/ipaddress.c index 1b8ab783..7acbd32e 100644 --- a/ip/ipaddress.c +++ b/ip/ipaddress.c @@ -2247,7 +2247,10 @@ static int ipaddr_modify(int cmd, int flags, int argc, char **argv) if (set_lifetime(&preferred_lft, *argv)) invarg("preferred_lft value", *argv); } else if (strcmp(*argv, "home") == 0) { - ifa_flags |= IFA_F_HOMEADDRESS; + if (req.ifa.ifa_family == AF_INET6) + ifa_flags |= IFA_F_HOMEADDRESS; + else + fprintf(stderr, "Warning: home option can be set only for IPv6 addresses\n"); } else if (strcmp(*argv, "nodad") == 0) { if (req.ifa.ifa_family == AF_INET6) ifa_flags |= IFA_F_NODAD;