-
Notifications
You must be signed in to change notification settings - Fork 326
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add "ipcp-accept-remote" pppd option #1148
Add "ipcp-accept-remote" pppd option #1148
Conversation
b9b8263
to
4374f01
Compare
@adrienverge Would you mind having a look? PPP ≥ 2.5.0 requires |
4374f01
to
0e31bb1
Compare
Thanks @DimitriPapadopoulos, it looks like a good solution. However, the commit message and the in-code comments contradict themselves: it's pppd ≥ 2.5.0 that requires this option to avoid this error, right? Not pppd < 2.5.0. PS: Also I think we should write "pppd" (the software, with "d" as daemon), not "PPP" (the protocol). |
0e31bb1
to
a467a93
Compare
Changed PPP → pppd, thank you for that. I slightly reworded the code comments and the commit message for clarity (?):
|
pppd ≥ 2.5.0 requires this option to avoid this error: Peer refused to agree to his IP address It makes sense to let the remote decide for the remote IP address. Unfortunately, pppd < 2.5.0 does not like this option. It doesn't make any sense to me.
a467a93
to
dde4adc
Compare
Also, I could try to detect macOS and disable "ipcp-accept-remote" by default, instead of enabling it by default as on Linux. The rationale is that current macOS systems do not ship pppd ≥ 2.5.0, while many recent Linux distributions do ship pppd ≥ 2.5.0. However, that seems fragile over time, and I don't really have time for this. I'll try to reach to the Homebrew packagers before the next release, so that they can add configure option |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK I understand clearly now! Thanks, the new code comments are crystal-clear.
I'll try to reach to the Homebrew packagers before the next release, so that they can add configure option --enable-legacy-pppd in their formula.
Good idea. Better let the packagers handle system-specific tweaks (while waiting for pppd ≥ 2.5.0 to be packaged on MacOS).
@adrienverge After thinking a little bit more about it, I have modified this change in #1153:
This leaves the choice to packagers to build openfortivpn with End-users are free to change the default chosen by packagers, using runtime option |
Thanks for the clear explanation @DimitriPapadopoulos. It would have been nice to keep the code base simpler with only a choice at compilation-time (for systems that have pppd version x vs. y), but being able to change the default choice at runtime is indeed more flexible. |
I would also prefer the simpler solution, but I fear it will break platforms such as macOS where packagers may target multiple versions of macOS, past ones with pppd < 2.5.0 and possibly new ones with pppd ≥ 2.5.0 in the future. This way, end-users will be to work around either default setting chosen by the packagers. |
PPP ≥ 2.5.0 requires this option to avoid this error:
It makes sense to let the remote decide for the remote IP address.
Unfortunately, PPP < 2.5.0 does not like this option. Of course, it doesn't make any sense.
Fixes #1076.