summaryrefslogtreecommitdiff
path: root/sys/netinet/ip_carp.c
diff options
context:
space:
mode:
authorRyan Thomas McBride <mcbride@cvs.openbsd.org>2004-01-13 07:23:44 +0000
committerRyan Thomas McBride <mcbride@cvs.openbsd.org>2004-01-13 07:23:44 +0000
commitcacb077d44ac0181730e812949af020568cae2d4 (patch)
tree4e68b0ba6ce84a6cc2e86563e3a506f7ddb4fafc /sys/netinet/ip_carp.c
parent59a37825f5aa0c680b995ba70c2ced62b9f45b0e (diff)
Add and remove IPv6 routes so when we're MASTER, we can connect to the
common address.
Diffstat (limited to 'sys/netinet/ip_carp.c')
-rw-r--r--sys/netinet/ip_carp.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c
index ca0a5eb2f1e..70bd39c1a14 100644
--- a/sys/netinet/ip_carp.c
+++ b/sys/netinet/ip_carp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ip_carp.c,v 1.32 2003/12/10 07:22:43 itojun Exp $ */
+/* $OpenBSD: ip_carp.c,v 1.33 2004/01/13 07:23:43 mcbride Exp $ */
/*
* Copyright (c) 2002 Michael Shalayeff. All rights reserved.
@@ -263,6 +263,12 @@ carp_setroute(struct carp_softc *sc, int cmd)
TAILQ_FOREACH(ifa, &sc->sc_ac.ac_if.if_addrlist, ifa_list) {
if (ifa->ifa_addr->sa_family == AF_INET)
rtinit(ifa, cmd, RTF_UP | RTF_HOST);
+ if (ifa->ifa_addr->sa_family == AF_INET6) {
+ if (cmd == RTM_ADD)
+ in6_ifaddloop(ifa);
+ else
+ in6_ifremloop(ifa);
+ }
}
splx(s);
}