diff options
author | Dmitry Kozlov <xeb@mail.ru> | 2015-11-23 11:30:35 +0300 |
---|---|---|
committer | Dmitry Kozlov <xeb@mail.ru> | 2015-11-23 11:30:35 +0300 |
commit | 44ba310b79265b0417bd236b4a661801e9d4f892 (patch) | |
tree | 94afebfc0e12ac8de28cda9fc10043d782812dc3 /accel-pppd/ppp/ppp_lcp.c | |
parent | 22b51c9cdff9e5a0e44697a0b45f23dc6e742001 (diff) | |
download | accel-ppp-44ba310b79265b0417bd236b4a661801e9d4f892.tar.gz accel-ppp-44ba310b79265b0417bd236b4a661801e9d4f892.zip |
ppp: do not send double ConfAck when LCP is started
Diffstat (limited to 'accel-pppd/ppp/ppp_lcp.c')
-rw-r--r-- | accel-pppd/ppp/ppp_lcp.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/accel-pppd/ppp/ppp_lcp.c b/accel-pppd/ppp/ppp_lcp.c index 2641cf34..107e29e5 100644 --- a/accel-pppd/ppp/ppp_lcp.c +++ b/accel-pppd/ppp/ppp_lcp.c @@ -792,9 +792,11 @@ static void lcp_recv(struct ppp_handler_t*h) case CONFREQ: r = lcp_recv_conf_req(lcp, (uint8_t*)(hdr + 1), ntohs(hdr->len) - PPP_HDRLEN); if (lcp->started) { - if (r == LCP_OPT_ACK) + if (r == LCP_OPT_ACK) { send_conf_ack(&lcp->fsm); - else + lcp_free_conf_req(lcp); + break; + } else r = LCP_OPT_FAIL; } switch(r) { |