summaryrefslogtreecommitdiff
path: root/sys/netgraph
diff options
context:
space:
mode:
authorArchie Cobbs <archie@FreeBSD.org>2001-04-21 20:43:13 +0000
committerArchie Cobbs <archie@FreeBSD.org>2001-04-21 20:43:13 +0000
commit290f9c1ca18de8cfa8f4d2d59b33ba5f92344ea3 (patch)
tree6f34958df4d9d70443ddbc3b7baafbb7ea8fd2c5 /sys/netgraph
parent20980d672777db8e1f04fce3bf714250725a56e3 (diff)
Notes
Diffstat (limited to 'sys/netgraph')
-rw-r--r--sys/netgraph/ng_pptpgre.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/netgraph/ng_pptpgre.c b/sys/netgraph/ng_pptpgre.c
index b21e324da50c..9d27cf11e66f 100644
--- a/sys/netgraph/ng_pptpgre.c
+++ b/sys/netgraph/ng_pptpgre.c
@@ -784,8 +784,8 @@ ng_pptpgre_recv_ack_timeout(void *arg)
splx(s);
return;
}
- ng_unref(node);
if (arg != a->rackTimerPtr) { /* timer stopped race condition */
+ ng_unref(node);
splx(s);
return;
}
@@ -811,6 +811,7 @@ ng_pptpgre_recv_ack_timeout(void *arg)
priv->recvAck = priv->xmitSeq; /* pretend we got the ack */
a->xmitWin = (a->xmitWin + 1) / 2; /* shrink transmit window */
a->winAck = priv->recvAck + a->xmitWin; /* reset win expand time */
+ ng_unref(node);
splx(s);
}
@@ -863,8 +864,8 @@ ng_pptpgre_send_ack_timeout(void *arg)
splx(s);
return;
}
- ng_unref(node);
if (a->sackTimerPtr != arg) { /* timer stopped race condition */
+ ng_unref(node);
splx(s);
return;
}
@@ -872,6 +873,7 @@ ng_pptpgre_send_ack_timeout(void *arg)
/* Send a frame with an ack but no payload */
ng_pptpgre_xmit(node, NULL, NULL);
+ ng_unref(node);
splx(s);
}