summaryrefslogtreecommitdiff
path: root/sys/netatalk
diff options
context:
space:
mode:
authorPhilip Guenthe <guenther@cvs.openbsd.org>2010-09-27 20:16:18 +0000
committerPhilip Guenthe <guenther@cvs.openbsd.org>2010-09-27 20:16:18 +0000
commitd630c25e397247352d682f68c0fcd257cb4774a8 (patch)
tree642280f76edadb3e9478327ad0295b9f718e81a6 /sys/netatalk
parent0376bc0f26edc35790c0eb0b9726a19b51c636e4 (diff)
Unbreak atalk: don't call ifa_add() until the ifa_addr pointer has been set
ok henning@
Diffstat (limited to 'sys/netatalk')
-rw-r--r--sys/netatalk/at_control.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/netatalk/at_control.c b/sys/netatalk/at_control.c
index b43d14a98ce..7c70915179a 100644
--- a/sys/netatalk/at_control.c
+++ b/sys/netatalk/at_control.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: at_control.c,v 1.16 2010/07/02 05:45:25 blambert Exp $ */
+/* $OpenBSD: at_control.c,v 1.17 2010/09/27 20:16:17 guenther Exp $ */
/*
* Copyright (c) 1990,1991 Regents of The University of Michigan.
@@ -190,8 +190,6 @@ at_control( cmd, data, ifp, p )
aa = aa0;
- ifa_add(ifp, (struct ifaddr *)aa);
-
/* FreeBSD found this. Whew */
aa->aa_ifa.ifa_refcnt++;
@@ -208,6 +206,8 @@ at_control( cmd, data, ifp, p )
aa->aa_flags |= AFA_PHASE2;
}
aa->aa_ifp = ifp;
+
+ ifa_add(ifp, (struct ifaddr *)aa);
} else {
at_scrub( ifp, aa );
}