summaryrefslogtreecommitdiff
path: root/sys/dev/ic
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2006-12-13 17:13:02 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2006-12-13 17:13:02 +0000
commit71ab4e39db7417fd9798bd979679533c9de3a6b8 (patch)
tree908d5a93cfcb21509a4edd4aa05f31e9d78514e0 /sys/dev/ic
parentabc4df4c231afa71d26c3c7b3769d9f75907ead8 (diff)
insufficient testing, martin, please do not be a moron
Diffstat (limited to 'sys/dev/ic')
-rw-r--r--sys/dev/ic/fxp.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/sys/dev/ic/fxp.c b/sys/dev/ic/fxp.c
index bf28075906c..66b8cdd4c27 100644
--- a/sys/dev/ic/fxp.c
+++ b/sys/dev/ic/fxp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: fxp.c,v 1.82 2006/12/13 09:49:59 martin Exp $ */
+/* $OpenBSD: fxp.c,v 1.83 2006/12/13 17:13:01 deraadt Exp $ */
/* $NetBSD: if_fxp.c,v 1.2 1997/06/05 02:01:55 thorpej Exp $ */
/*
@@ -1651,12 +1651,18 @@ fxp_ioctl(struct ifnet *ifp, u_long command, caddr_t data)
switch (command) {
case SIOCSIFADDR:
ifp->if_flags |= IFF_UP;
- if (!(ifp->if_flags & IFF_RUNNING))
- fxp_init(sc);
+
+ switch (ifa->ifa_addr->sa_family) {
#ifdef INET
- if (ifa->ifa_addr->sa_family == AF_INET)
+ case AF_INET:
+ fxp_init(sc);
arp_ifinit(&sc->sc_arpcom, ifa);
+ break;
#endif
+ default:
+ fxp_init(sc);
+ break;
+ }
break;
case SIOCSIFMTU: