summaryrefslogtreecommitdiff
path: root/accel-pppd/ppp/ppp_auth.c
diff options
context:
space:
mode:
Diffstat (limited to 'accel-pppd/ppp/ppp_auth.c')
-rw-r--r--accel-pppd/ppp/ppp_auth.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/accel-pppd/ppp/ppp_auth.c b/accel-pppd/ppp/ppp_auth.c
index 98675d3..1fb3bcf 100644
--- a/accel-pppd/ppp/ppp_auth.c
+++ b/accel-pppd/ppp/ppp_auth.c
@@ -144,6 +144,16 @@ static int auth_recv_conf_req(struct ppp_lcp_t *lcp, struct lcp_option_t *opt, u
struct auth_data_t *d;
int r;
+ if (auth_opt->started) {
+ if (!auth_opt->auth)
+ return LCP_OPT_REJ;
+
+ if (!ptr || ntohs(opt16->val) != auth_opt->auth->proto)
+ return LCP_OPT_NAK;
+
+ return LCP_OPT_ACK;
+ }
+
if (list_empty(&auth_opt->auth_list))
return LCP_OPT_REJ;