summaryrefslogtreecommitdiff
path: root/accel-pptpd/ppp
diff options
context:
space:
mode:
Diffstat (limited to 'accel-pptpd/ppp')
-rw-r--r--accel-pptpd/ppp/ppp_lcp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/accel-pptpd/ppp/ppp_lcp.c b/accel-pptpd/ppp/ppp_lcp.c
index 8c539a7..0906ad0 100644
--- a/accel-pptpd/ppp/ppp_lcp.c
+++ b/accel-pptpd/ppp/ppp_lcp.c
@@ -176,7 +176,10 @@ static void lcp_layer_finished(struct ppp_fsm_t *fsm)
stop_echo(lcp);
if (lcp->started) {
lcp->started = 0;
- ppp_layer_finished(lcp->ppp, &lcp->ld);
+ if (lcp->ppp->terminating)
+ ppp_layer_finished(lcp->ppp, &lcp->ld);
+ else
+ ppp_terminate(lcp->ppp, TERM_NAS_ERROR, 1);
} else
ppp_terminate(lcp->ppp, TERM_NAS_ERROR, 1);
}