Why ppp_fsm_recv_term_ack commented out in IPCP and IPV6CP? #203
marekm72
started this conversation in
Development discussions
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Trying to follow the code in an attempt to fix a bug, I see similar code in different ppp protocols, but only those two have it commented out:
accel-ppp/accel-pppd/ppp/ppp_ipv6cp.c
Line 746 in ba4a8e9
RFC says state machine is the same for all protocols yet we have a not explained difference here.
Digging deep in history, it has been that way for as long as accel-ppp is on github, and even longer (yes checked older versions on sourceforge too, back to 2010), I couldn't find the commit where it was commented out, so no idea why. Was that to fix a bug, or just an optimization? The answer could be just in someone's head or some private repo.
I ask because in an attempt to fix a bug where IPV6CP negotiation fails due to buggy peer (Phicomm KE2M) and that closes whole PPPoE session, if I don't close it (want to run just IPv4 in that case) then it is closed anyway 3 seconds later because the IPV6CP timer is not stopped (it would be stopped if the commented out ppp_fsm_recv_term_ack was called). So the fix turns out to not be that simple.
No idea if the original author of the code is still around and remembers what was the story behind it... (not having high hopes, but sometimes people do remember things from many years ago).
I can try to play with it and see if it works if not commented out, but perhaps it was that way for some good reason, I don't want to introduce some subtle new bug that was fixed by that change some 15 years ago.
Beta Was this translation helpful? Give feedback.
All reactions