summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarekm72 <35698605+marekm72@users.noreply.github.com>2024-07-28 18:22:09 +0200
committerGitHub <noreply@github.com>2024-07-28 18:22:09 +0200
commit501c7230a278b62cb161acef8a8b29f8ab647fda (patch)
tree3bd8a601377318a33527e82edf87b05db02f1ab2
parent6afbc5075a3cf88a47f01c9051dd0a7fdcb06299 (diff)
downloadaccel-ppp-xebd-501c7230a278b62cb161acef8a8b29f8ab647fda.tar.gz
accel-ppp-xebd-501c7230a278b62cb161acef8a8b29f8ab647fda.zip
Don't terminate whole PPPoE session in response to client IPV6CP TermReq if IPv6 not required
See https://github.com/accel-ppp/accel-ppp/issues/57 for the bug report, please review.
-rw-r--r--accel-pppd/ppp/ppp_ipv6cp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/accel-pppd/ppp/ppp_ipv6cp.c b/accel-pppd/ppp/ppp_ipv6cp.c
index 1194b31..0f4bf79 100644
--- a/accel-pppd/ppp/ppp_ipv6cp.c
+++ b/accel-pppd/ppp/ppp_ipv6cp.c
@@ -738,7 +738,8 @@ static void ipv6cp_recv(struct ppp_handler_t*h)
if (conf_ppp_verbose)
log_ppp_info2("recv [IPV6CP TermReq id=%x]\n", hdr->id);
ppp_fsm_recv_term_req(&ipv6cp->fsm);
- ap_session_terminate(&ipv6cp->ppp->ses, TERM_USER_REQUEST, 0);
+ if (conf_ipv6 == IPV6_REQUIRE)
+ ap_session_terminate(&ipv6cp->ppp->ses, TERM_USER_REQUEST, 0);
break;
case TERMACK:
if (conf_ppp_verbose)