summaryrefslogtreecommitdiff
path: root/accel-pppd/session.c
diff options
context:
space:
mode:
Diffstat (limited to 'accel-pppd/session.c')
-rw-r--r--accel-pppd/session.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/accel-pppd/session.c b/accel-pppd/session.c
index 2f6a4bf..34b44cb 100644
--- a/accel-pppd/session.c
+++ b/accel-pppd/session.c
@@ -150,9 +150,14 @@ void __export ap_session_activate(struct ap_session *ses)
if (ap_shutdown)
return;
- if (ses->ctrl->non_dev_ppp_fixup != NULL)
- if (ses->ctrl->non_dev_ppp_fixup(ses))
- ap_session_terminate(ses, TERM_NAS_ERROR, 0);
+ if (ses->non_dev_ppp_fixup != NULL) {
+ if (!ses->non_dev_ppp_fixup_status) {
+ ses->non_dev_ppp_fixup(ses);
+ return;
+ } else if (ses->non_dev_ppp_fixup_status == 1) {
+ return;
+ }
+ }
ap_session_ifup(ses);