summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/net/if_ppp.c10
-rw-r--r--sys/net/route.c4
2 files changed, 11 insertions, 3 deletions
diff --git a/sys/net/if_ppp.c b/sys/net/if_ppp.c
index e9f513425ff..6e5ff27f1e3 100644
--- a/sys/net/if_ppp.c
+++ b/sys/net/if_ppp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ppp.c,v 1.27 2002/03/14 01:27:09 millert Exp $ */
+/* $OpenBSD: if_ppp.c,v 1.28 2002/06/11 04:27:40 art Exp $ */
/* $NetBSD: if_ppp.c,v 1.39 1997/05/17 21:11:59 christos Exp $ */
/*
@@ -271,6 +271,8 @@ pppdealloc(sc)
{
struct mbuf *m;
+ splassert(IPL_SOFTNET);
+
if_down(&sc->sc_if);
sc->sc_if.if_flags &= ~(IFF_UP|IFF_RUNNING);
sc->sc_devp = NULL;
@@ -821,6 +823,8 @@ ppp_requeue(sc)
enum NPmode mode;
int error;
+ splassert(IPL_SOFTNET);
+
for (mpp = &sc->sc_npqueue; (m = *mpp) != NULL; ) {
switch (PPP_PROTOCOL(mtod(m, u_char *))) {
case PPP_IP:
@@ -1031,8 +1035,10 @@ pppintr()
int i, s, s2;
struct mbuf *m;
+ splassert(IPL_SOFTNET);
+
sc = ppp_softc;
- s = splsoftnet();
+ s = splsoftnet(); /* XXX - what's the point of this? see comment above */
for (i = 0; i < NPPP; ++i, ++sc) {
if (!(sc->sc_flags & SC_TBUSY)
&& (IFQ_IS_EMPTY(&sc->sc_if.if_snd) == 0 || sc->sc_fastq.ifq_head)) {
diff --git a/sys/net/route.c b/sys/net/route.c
index 1a56c56c865..ae3e42c023b 100644
--- a/sys/net/route.c
+++ b/sys/net/route.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: route.c,v 1.31 2002/06/07 18:30:11 art Exp $ */
+/* $OpenBSD: route.c,v 1.32 2002/06/11 04:27:40 art Exp $ */
/* $NetBSD: route.c,v 1.14 1996/02/13 22:00:46 christos Exp $ */
/*
@@ -360,6 +360,8 @@ rtredirect(dst, gateway, netmask, flags, src, rtp)
struct rt_addrinfo info;
struct ifaddr *ifa;
+ splassert(IPL_SOFTNET);
+
/* verify the gateway is directly reachable */
if ((ifa = ifa_ifwithnet(gateway)) == NULL) {
error = ENETUNREACH;