summaryrefslogtreecommitdiff
path: root/sys/net
diff options
context:
space:
mode:
authorJun-ichiro itojun Hagino <itojun@cvs.openbsd.org>2001-06-04 23:55:58 +0000
committerJun-ichiro itojun Hagino <itojun@cvs.openbsd.org>2001-06-04 23:55:58 +0000
commit6e5621c22f221013776810629eb5f89fe0adaf07 (patch)
treed61767915c326817ae579ab8e81c27d17b6e9add /sys/net
parentdbc300227bc2abe8a5207a3279a491f6d56201dd (diff)
if_up() requires splnet(). sync with kame
Diffstat (limited to 'sys/net')
-rw-r--r--sys/net/if_gif.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/net/if_gif.c b/sys/net/if_gif.c
index 73c3fafb202..d85af7cad14 100644
--- a/sys/net/if_gif.c
+++ b/sys/net/if_gif.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_gif.c,v 1.14 2001/02/20 13:50:53 itojun Exp $ */
+/* $OpenBSD: if_gif.c,v 1.15 2001/06/04 23:55:57 itojun Exp $ */
/* $KAME: if_gif.c,v 1.43 2001/02/20 08:51:07 itojun Exp $ */
/*
@@ -248,6 +248,7 @@ gif_ioctl(ifp, cmd, data)
struct sockaddr *dst, *src;
struct sockaddr *sa;
int i;
+ int s;
struct gif_softc *sc2;
switch (cmd) {
@@ -409,8 +410,10 @@ gif_ioctl(ifp, cmd, data)
bcopy((caddr_t)dst, (caddr_t)sa, dst->sa_len);
sc->gif_pdst = sa;
- ifp->if_flags |= (IFF_UP | IFF_RUNNING);
+ s = splnet();
+ ifp->if_flags |= IFF_RUNNING;
if_up(ifp); /* send up RTM_IFINFO */
+ splx(s);
error = 0;
break;