This is a minor upgrade that mainly fixes some compilation errors and remove old unused code. The Makefile has been reorganized. Now all package make parameters are passed as configure arguments instead of environment variables. The compilation dependencies remain the same as ppp v2.5.1 and the package size changes are negligible. Change log: https://github.com/ppp-project/ppp/blob/v2.5.2/README#L70 Upstreamed patches: 101-pppd-crypto-fix-build-without-openssl.patch [1] 102-pppd-make-pid-directory-before-create-the-pid-file.patch [2] 103-pppd-crypto-fix-gcc-14-build.patch [3] [1]5f6eabdb66
[2]734bc0438e
[3]ac269dbf7c
Signed-off-by: Shiji Yang <yangshiji66@qq.com> Link: https://github.com/openwrt/openwrt/pull/17477 Signed-off-by: Nick Hainke <vincent@systemli.org>
24 lines
774 B
Diff
24 lines
774 B
Diff
pppd: Do not clobber exit codes on hangup
|
|
|
|
When a modem hangup occurs, pppd unconditionally sets the exit status code
|
|
to EXIT_HANGUP. This patch only sets EXIT_HANGUP if the exit status code is
|
|
not already set to an error value.
|
|
|
|
The motiviation of this patch is to allow applications which remote control
|
|
pppd to react properly on errors, e.g. only redial (relaunch pppd) if there
|
|
was a hangup, but not if the CHAP authentication failed.
|
|
|
|
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
|
|
|
|
--- a/pppd/main.c
|
|
+++ b/pppd/main.c
|
|
@@ -1150,7 +1150,8 @@ get_input(void)
|
|
}
|
|
notice("Modem hangup");
|
|
hungup = 1;
|
|
- code = EXIT_HANGUP;
|
|
+ if (code == EXIT_OK)
|
|
+ code = EXIT_HANGUP;
|
|
need_holdoff = 0;
|
|
lcp_lowerdown(0); /* serial link is no longer available */
|
|
link_terminated(0);
|