new file mode 100644
@@ -0,0 +1,63 @@
+From 99cbf5e269994482edaf64624be8b1c806f9587c Mon Sep 17 00:00:00 2001
+From: Dominique Martinet <asmadeus@codewreck.org>
+Date: Tue, 10 Oct 2023 10:05:50 +0900
+Subject: [PATCH] Revert lock path to /var/lock (#435)
+
+lock dir changed on linux from /var/lock to /run/pppd/lock with
+pppd-2.5.0, which makes pppd fail to start if the distribution does not
+pre-create the directory.
+
+This reverts it back to /var/lock.
+
+The paths for other OS should be identical as LOCALSTATEDIR should be
+/var, but also revert them back as well just in case.
+Since the variable is no longer used remove it from makefiles.
+
+Fixes: 66a8c74c3f73 ("Let ./configure control the paths for pppd")
+Fixes: #419
+
+Signed-off-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
+Co-authored-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
+
+Upstream-Status: Backport [https://github.com/ppp-project/ppp/commit/99cbf5e269994482edaf64624be8b1c806f9587c]
+---
+ pppd/Makefile.am | 2 +-
+ pppd/pathnames.h | 6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/pppd/Makefile.am b/pppd/Makefile.am
+index e5bedf2..7cb3005 100644
+--- a/pppd/Makefile.am
++++ b/pppd/Makefile.am
+@@ -83,7 +83,7 @@ pppd_SOURCES = \
+ upap.c \
+ utils.c
+
+-pppd_CPPFLAGS = -DSYSCONFDIR=\"${sysconfdir}\" -DLOCALSTATEDIR=\"${localstatedir}\" -DPPPD_RUNTIME_DIR='"@PPPD_RUNTIME_DIR@"' -DPPPD_LOGFILE_DIR='"@PPPD_LOGFILE_DIR@"'
++pppd_CPPFLAGS = -DSYSCONFDIR=\"${sysconfdir}\" -DPPPD_RUNTIME_DIR='"@PPPD_RUNTIME_DIR@"' -DPPPD_LOGFILE_DIR='"@PPPD_LOGFILE_DIR@"'
+ pppd_LDFLAGS =
+ pppd_LIBS =
+
+diff --git a/pppd/pathnames.h b/pppd/pathnames.h
+index de2fb68..12609a9 100644
+--- a/pppd/pathnames.h
++++ b/pppd/pathnames.h
+@@ -120,12 +120,12 @@
+ #define PPP_PATH_PPPDB PPP_PATH_VARRUN "/pppd2.tdb"
+
+ #ifdef __linux__
+-#define PPP_PATH_LOCKDIR PPP_PATH_VARRUN "/lock"
++#define PPP_PATH_LOCKDIR "/var/lock"
+ #else
+ #ifdef SVR4
+-#define PPP_PATH_LOCKDIR LOCALSTATEDIR "/spool/locks"
++#define PPP_PATH_LOCKDIR "/var/spool/locks"
+ #else
+-#define PPP_PATH_LOCKDIR LOCALSTATEDIR "/spool/lock"
++#define PPP_PATH_LOCKDIR "/var/spool/lock"
+ #endif
+ #endif
+
+--
+2.43.0
+
@@ -23,6 +23,7 @@ SRC_URI = "https://download.samba.org/pub/${BPN}/${BP}.tar.gz \
file://ppp_on_boot \
file://provider \
file://ppp@.service \
+ file://0001-Revert-lock-path-to-var-lock-435.patch \
"
SRC_URI[sha256sum] = "5cae0e8075f8a1755f16ca290eb44e6b3545d3f292af4da65ecffe897de636ff"
ppp version 2.5.0 fails to run properly if an expected /run/pppd/lock directory does not exist, which is not usually created in a yocto built OS. Backport the patch from upstream version 2.5.1 that fixes the issue by reverting back to /var/lock. The related github issue upstream was: "lock directory moved in ppp-2.5.0 #419" [1] Link: https://github.com/ppp-project/ppp/issues/419 Signed-off-by: Johannes Schneider <johannes.schneider@leica-geosystems.com> --- ...001-Revert-lock-path-to-var-lock-435.patch | 63 +++++++++++++++++++ meta/recipes-connectivity/ppp/ppp_2.5.0.bb | 1 + 2 files changed, 64 insertions(+) create mode 100644 meta/recipes-connectivity/ppp/ppp/0001-Revert-lock-path-to-var-lock-435.patch