Compare commits
2 Commits
Author | SHA256 | Date | |
---|---|---|---|
|
412dab52ba | ||
|
473419fb53 |
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5cae0e8075f8a1755f16ca290eb44e6b3545d3f292af4da65ecffe897de636ff
|
||||
size 1170057
|
@ -1,11 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQFGBAABCAAwFiEEv0VLfXa2m9eKuaRpnZrqdyxjcZ8FAmQrvoQSHHBhdWx1c0Bv
|
||||
emxhYnMub3JnAAoJEJ2a6ncsY3Gfx+YH/3DJdp8pCZDaONwBADpWc9ttGAusH3k6
|
||||
fsOntaWKumy5HyJIF7h/ArDvYiAUeO3rgSckZS9o94u3OfkDxP4uf9AnGWBPzCir
|
||||
CAwUes6JIP23IHAI5uLnSqo72lGtsRNbh95H8PALobKGN/Im+CTi2j6FIx+Nnf2f
|
||||
6GRSJuw+OSRDzp+rJb1osAoUyuMnRpogXuQAAAeKJAHFDC+98vInQhDmwcu7wNWP
|
||||
rhR1PrviW8nIsikwRQQptCQNC35DVI3IYUg3L1o8Y2LU1ofF3gYtX7lDF7IthqLM
|
||||
pUPy+ddE8AsOiHOnKKIxzH9YFy9/xABQmtFLRJDAT24BHe1BCTyqniI=
|
||||
=4tVk
|
||||
-----END PGP SIGNATURE-----
|
3
ppp-2.5.2.tar.gz
Normal file
3
ppp-2.5.2.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:47da358de54a10cb10bf6ff2cf9b1c03c0d3555518f6182e8f701b8e55733cb2
|
||||
size 973132
|
11
ppp-2.5.2.tar.gz.asc
Normal file
11
ppp-2.5.2.tar.gz.asc
Normal file
@ -0,0 +1,11 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEzBAABCAAdFiEEv0VLfXa2m9eKuaRpnZrqdyxjcZ8FAmdze4gACgkQnZrqdyxj
|
||||
cZ+crgf+IA+VDraa4/0+cnlvI/meqgia/K9nQG9JXt7cLouqNqwJyNV4j5RO8WxO
|
||||
x/iI2l7UMTMxYs3iRgm7GJwUTlt5m7jtV3pR9h1Vpu1Zco4POmCsL5dB8GLA4F2l
|
||||
AYvSTiK68rVCFsBurlqvL1ZTvXVHScKKFSbn8YjFHMJ5i3UHyCElaK2H2Bhpzqtx
|
||||
8+t4yaI0+N+M7xwiT+CZym+xWi02uhZS+dSUmHpMrEL7zQKEQE83aVY9sazo9Q4Y
|
||||
gKJ/TwTDnZQ/QqXraY7LlOSKxrzRQ3KyW6bJJlCE2sM3vW7TXXlYsy7OyLZmYAm5
|
||||
oJoo4hC03pxz6ycIqSPMax/A0BUfTA==
|
||||
=5RCg
|
||||
-----END PGP SIGNATURE-----
|
@ -1,29 +0,0 @@
|
||||
--- scripts/redialer.orig
|
||||
+++ scripts/redialer
|
||||
@@ -31,7 +31,7 @@ PASSWORD=my_password
|
||||
# Function to initialize the modem and ensure that it is in command
|
||||
# state. This may not be needed, but it doesn't hurt.
|
||||
#
|
||||
-function initialize
|
||||
+initialize()
|
||||
{
|
||||
chat -v TIMEOUT 3 '' AT 'OK-+++\c-OK'
|
||||
return
|
||||
@@ -41,7 +41,7 @@ function initialize
|
||||
#
|
||||
# Script to dial a telephone
|
||||
#
|
||||
-function callnumber
|
||||
+callnumber()
|
||||
{
|
||||
chat -v \
|
||||
ABORT '\nBUSY\r' \
|
||||
@@ -66,7 +66,7 @@ chat -v \
|
||||
#
|
||||
# Script to dial any telephone number
|
||||
#
|
||||
-function callall
|
||||
+callall()
|
||||
{
|
||||
# echo "dialing attempt number: $1" >/dev/console
|
||||
callnumber $PHONE1
|
@ -1,6 +1,6 @@
|
||||
--- pppd/auth.c.orig
|
||||
+++ pppd/auth.c
|
||||
@@ -2184,9 +2184,10 @@ check_access(FILE *f, char *filename)
|
||||
@@ -2202,9 +2202,10 @@ check_access(FILE *f, char *filename)
|
||||
|
||||
if (fstat(fileno(f), &sbuf) < 0) {
|
||||
warn("cannot stat secret file %s: %m", filename);
|
||||
@ -16,7 +16,7 @@
|
||||
|
||||
--- pppd/lcp.c.orig
|
||||
+++ pppd/lcp.c
|
||||
@@ -2243,7 +2243,7 @@ lcp_received_echo_reply (fsm *f, int id,
|
||||
@@ -2330,7 +2330,7 @@ lcp_received_echo_reply (fsm *f, int id,
|
||||
if (lcp_gotoptions[f->unit].neg_magicnumber
|
||||
&& magic == lcp_gotoptions[f->unit].magicnumber) {
|
||||
warn("appear to have received our own echo-reply!");
|
||||
@ -24,10 +24,10 @@
|
||||
+ /* M$-Software did get this wrong so we also accept those packets. */
|
||||
}
|
||||
|
||||
/* Reset the number of outstanding echo frames */
|
||||
if (lcp_rtt_file_fd && len >= 16) {
|
||||
--- pppd/pppd-private.h.orig
|
||||
+++ pppd/pppd-private.h
|
||||
@@ -545,15 +545,7 @@ int parse_dotted_ip(char *, u_int32_t *)
|
||||
@@ -552,15 +552,7 @@ int parse_dotted_ip(char *, u_int32_t *)
|
||||
#define DEBUGCHAP 1
|
||||
#endif
|
||||
|
||||
|
@ -1,453 +0,0 @@
|
||||
From b0e7307b3569a5dad0f2606d2736cc8317851598 Mon Sep 17 00:00:00 2001
|
||||
From: Dominique Martinet <dominique.martinet@atmark-techno.com>
|
||||
Date: Wed, 30 Aug 2023 11:46:01 +0900
|
||||
Subject: [PATCH 1/2] utils: add mkdir_recursive
|
||||
|
||||
This will be used in the next commit.
|
||||
|
||||
A test file for utils has also been added to check mkdir works as
|
||||
intended.
|
||||
|
||||
Signed-off-by: Dominique Martinet <dominique.martinet@atmark-techno.com>
|
||||
---
|
||||
pppd/Makefile.am | 6 ++
|
||||
pppd/pppd-private.h | 1 +
|
||||
pppd/utils.c | 82 ++++++++++++++++++++++++++
|
||||
pppd/utils_utest.c | 139 ++++++++++++++++++++++++++++++++++++++++++++
|
||||
4 files changed, 228 insertions(+)
|
||||
create mode 100644 pppd/utils_utest.c
|
||||
|
||||
--- pppd/Makefile.am.orig
|
||||
+++ pppd/Makefile.am
|
||||
@@ -20,6 +20,12 @@ utest_pppcrypt_LDFLAGS =
|
||||
|
||||
check_PROGRAMS += utest_crypto
|
||||
|
||||
+utest_utils_SOURCES = utils.c utils_utest.c
|
||||
+utest_utils_CPPFLAGS = -DUNIT_TEST
|
||||
+utest_utils_LDFLAGS =
|
||||
+
|
||||
+check_PROGRAMS += utest_utils
|
||||
+
|
||||
if WITH_SRP
|
||||
sbin_PROGRAMS += srp-entry
|
||||
dist_man8_MANS += srp-entry.8
|
||||
--- pppd/pppd-private.h.orig
|
||||
+++ pppd/pppd-private.h
|
||||
@@ -437,6 +437,7 @@ int sifproxyarp(int, u_int32_t);
|
||||
int cifproxyarp(int, u_int32_t);
|
||||
/* Delete proxy ARP entry for peer */
|
||||
u_int32_t GetMask(u_int32_t); /* Get appropriate netmask for address */
|
||||
+int mkdir_recursive(const char *); /* Recursively create directory */
|
||||
int lock(char *); /* Create lock file for device */
|
||||
int relock(int); /* Rewrite lock file with new pid */
|
||||
void unlock(void); /* Delete previously-created lock file */
|
||||
--- pppd/utils.c.orig
|
||||
+++ pppd/utils.c
|
||||
@@ -781,6 +781,88 @@ complete_read(int fd, void *buf, size_t
|
||||
}
|
||||
#endif
|
||||
|
||||
+/*
|
||||
+ * mkdir_check - helper for mkdir_recursive, creates a directory
|
||||
+ * but do not error on EEXIST if and only if entry is a directory
|
||||
+ * The caller must check for errno == ENOENT if appropriate.
|
||||
+ */
|
||||
+static int
|
||||
+mkdir_check(const char *path)
|
||||
+{
|
||||
+ struct stat statbuf;
|
||||
+
|
||||
+ if (mkdir(path, 0755) >= 0)
|
||||
+ return 0;
|
||||
+
|
||||
+ if (errno == EEXIST) {
|
||||
+ if (stat(path, &statbuf) < 0)
|
||||
+ /* got raced? */
|
||||
+ return -1;
|
||||
+
|
||||
+ if ((statbuf.st_mode & S_IFMT) == S_IFDIR)
|
||||
+ return 0;
|
||||
+
|
||||
+ /* already exists but not a dir, treat as failure */
|
||||
+ errno = EEXIST;
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ return -1;
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ * mkdir_parent - helper for mkdir_recursive, modifies the string in place
|
||||
+ * Assumes mkdir(path) already failed, so it first creates the parent then
|
||||
+ * full path again.
|
||||
+ */
|
||||
+static int
|
||||
+mkdir_parent(char *path)
|
||||
+{
|
||||
+ char *slash;
|
||||
+ int rc;
|
||||
+
|
||||
+ slash = strrchr(path, '/');
|
||||
+ if (!slash)
|
||||
+ return -1;
|
||||
+
|
||||
+ *slash = 0;
|
||||
+ if (mkdir_check(path) < 0) {
|
||||
+ if (errno != ENOENT) {
|
||||
+ *slash = '/';
|
||||
+ return -1;
|
||||
+ }
|
||||
+ if (mkdir_parent(path) < 0) {
|
||||
+ *slash = '/';
|
||||
+ return -1;
|
||||
+ }
|
||||
+ }
|
||||
+ *slash = '/';
|
||||
+
|
||||
+ return mkdir_check(path);
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ * mkdir_recursive - recursively create directory if it didn't exist
|
||||
+ */
|
||||
+int
|
||||
+mkdir_recursive(const char *path)
|
||||
+{
|
||||
+ char *copy;
|
||||
+ int rc;
|
||||
+
|
||||
+ // optimistically try on full path first to avoid allocation
|
||||
+ if (mkdir_check(path) == 0)
|
||||
+ return 0;
|
||||
+
|
||||
+ copy = strdup(path);
|
||||
+ if (!copy)
|
||||
+ return -1;
|
||||
+
|
||||
+ rc = mkdir_parent(copy);
|
||||
+ free(copy);
|
||||
+ return rc;
|
||||
+}
|
||||
+
|
||||
/* Procedures for locking the serial device using a lock file. */
|
||||
static char lock_file[MAXPATHLEN];
|
||||
|
||||
--- /dev/null
|
||||
+++ pppd/utils_utest.c
|
||||
@@ -0,0 +1,139 @@
|
||||
+#include <fcntl.h>
|
||||
+#include <string.h>
|
||||
+#include <sys/stat.h>
|
||||
+#include <unistd.h>
|
||||
+
|
||||
+#include "pppd-private.h"
|
||||
+
|
||||
+/* globals used in test.c... */
|
||||
+int debug = 1;
|
||||
+int error_count;
|
||||
+int unsuccess;
|
||||
+
|
||||
+/* check if path exists and returns its type */
|
||||
+static int
|
||||
+file_type(char *path)
|
||||
+{
|
||||
+ struct stat statbuf;
|
||||
+
|
||||
+ if (stat(path, &statbuf) < 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ return statbuf.st_mode & S_IFMT;
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+test_simple() {
|
||||
+ if (mkdir_recursive("dir"))
|
||||
+ return -1;
|
||||
+
|
||||
+ if (file_type("dir") != S_IFDIR)
|
||||
+ return -1;
|
||||
+
|
||||
+ rmdir("dir");
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+test_recurse() {
|
||||
+ if (mkdir_recursive("dir/subdir/subsubdir"))
|
||||
+ return -1;
|
||||
+
|
||||
+ if (file_type("dir/subdir/subsubdir") != S_IFDIR)
|
||||
+ return -1;
|
||||
+
|
||||
+ rmdir("dir/subdir/subsubdir");
|
||||
+
|
||||
+ /* try again with partial existence */
|
||||
+ if (mkdir_recursive("dir/subdir/subsubdir"))
|
||||
+ return -1;
|
||||
+
|
||||
+ if (file_type("dir/subdir/subsubdir") != S_IFDIR)
|
||||
+ return -1;
|
||||
+
|
||||
+ rmdir("dir/subdir/subsubdir");
|
||||
+ rmdir("dir/subdir");
|
||||
+ rmdir("dir");
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+test_recurse_multislash() {
|
||||
+ if (mkdir_recursive("dir/subdir///subsubdir"))
|
||||
+ return -1;
|
||||
+
|
||||
+ if (file_type("dir/subdir/subsubdir") != S_IFDIR)
|
||||
+ return -1;
|
||||
+
|
||||
+ rmdir("dir/subdir/subsubdir");
|
||||
+ rmdir("dir/subdir");
|
||||
+
|
||||
+ /* try again with partial existence */
|
||||
+ if (mkdir_recursive("dir/subdir/subsubdir///"))
|
||||
+ return -1;
|
||||
+
|
||||
+ if (file_type("dir/subdir/subsubdir") != S_IFDIR)
|
||||
+ return -1;
|
||||
+
|
||||
+ rmdir("dir/subdir/subsubdir");
|
||||
+ rmdir("dir/subdir");
|
||||
+ rmdir("dir");
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+test_parent_notdir() {
|
||||
+ int fd = open("file", O_CREAT, 0600);
|
||||
+ if (fd < 0)
|
||||
+ return -1;
|
||||
+ close(fd);
|
||||
+
|
||||
+ if (mkdir_recursive("file") == 0)
|
||||
+ return -1;
|
||||
+ if (mkdir_recursive("file/dir") == 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ unlink("file");
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+int
|
||||
+main()
|
||||
+{
|
||||
+ char *base_dir = strdup("/tmp/ppp_utils_utest.XXXXXX");
|
||||
+ int failure = 0;
|
||||
+
|
||||
+ if (mkdtemp(base_dir) == NULL) {
|
||||
+ printf("Could not create test directory, aborting\n");
|
||||
+ return 1;
|
||||
+ }
|
||||
+
|
||||
+ if (chdir(base_dir) < 0) {
|
||||
+ printf("Could not enter newly created test dir, aborting\n");
|
||||
+ return 1;
|
||||
+ }
|
||||
+
|
||||
+ if (test_simple()) {
|
||||
+ printf("Could not create simple directory\n");
|
||||
+ failure++;
|
||||
+ }
|
||||
+
|
||||
+ if (test_recurse()) {
|
||||
+ printf("Could not create recursive directory\n");
|
||||
+ failure++;
|
||||
+ }
|
||||
+
|
||||
+ if (test_recurse_multislash()) {
|
||||
+ printf("Could not create recursive directory with multiple slashes\n");
|
||||
+ failure++;
|
||||
+ }
|
||||
+
|
||||
+ if (test_parent_notdir()) {
|
||||
+ printf("Creating over a file appeared to work?\n");
|
||||
+ failure++;
|
||||
+ }
|
||||
+
|
||||
+ rmdir(base_dir);
|
||||
+ free(base_dir);
|
||||
+ return failure;
|
||||
+}
|
||||
--- pppd/tdb.c.orig
|
||||
+++ pppd/tdb.c
|
||||
@@ -60,8 +60,11 @@
|
||||
#include <sys/mman.h>
|
||||
#include <sys/stat.h>
|
||||
#include <signal.h>
|
||||
+
|
||||
+#include "pppd-private.h"
|
||||
#include "tdb.h"
|
||||
#include "spinlock.h"
|
||||
+#include "pathnames.h"
|
||||
|
||||
#define TDB_MAGIC_FOOD "TDB file\n"
|
||||
#define TDB_VERSION (0x26011967 + 6)
|
||||
@@ -1728,7 +1731,12 @@ TDB_CONTEXT *tdb_open_ex(const char *nam
|
||||
goto internal;
|
||||
}
|
||||
|
||||
+again:
|
||||
if ((tdb->fd = open(name, open_flags, mode)) == -1) {
|
||||
+ if ((open_flags & O_CREAT) && errno == ENOENT &&
|
||||
+ mkdir_recursive(PPP_PATH_VARRUN) == 0)
|
||||
+ goto again;
|
||||
+
|
||||
TDB_LOG((tdb, 5, "tdb_open_ex: could not open file %s: %s\n",
|
||||
name, strerror(errno)));
|
||||
goto fail; /* errno set by open(2) */
|
||||
--- pppd/Makefile.in.orig
|
||||
+++ pppd/Makefile.in
|
||||
@@ -92,8 +92,8 @@ POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
sbin_PROGRAMS = pppd$(EXEEXT) $(am__EXEEXT_4)
|
||||
-check_PROGRAMS = utest_crypto$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
|
||||
- $(am__EXEEXT_3)
|
||||
+check_PROGRAMS = utest_crypto$(EXEEXT) utest_utils$(EXEEXT) \
|
||||
+ $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3)
|
||||
@WITH_SRP_TRUE@am__append_1 = srp-entry
|
||||
@WITH_SRP_TRUE@am__append_2 = srp-entry.8
|
||||
@PPP_WITH_SYSTEM_CA_PATH_TRUE@am__append_3 = -DSYSTEM_CA_PATH='"@SYSTEM_CA_PATH@"'
|
||||
@@ -258,6 +258,13 @@ utest_pppcrypt_LINK = $(LIBTOOL) $(AM_V_
|
||||
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
|
||||
$(AM_CFLAGS) $(CFLAGS) $(utest_pppcrypt_LDFLAGS) $(LDFLAGS) -o \
|
||||
$@
|
||||
+am_utest_utils_OBJECTS = utest_utils-utils.$(OBJEXT) \
|
||||
+ utest_utils-utils_utest.$(OBJEXT)
|
||||
+utest_utils_OBJECTS = $(am_utest_utils_OBJECTS)
|
||||
+utest_utils_LDADD = $(LDADD)
|
||||
+utest_utils_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
+ $(utest_utils_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
@@ -300,7 +307,9 @@ am__depfiles_remade = ./$(DEPDIR)/libppp
|
||||
./$(DEPDIR)/utest_crypto-crypto.Po \
|
||||
./$(DEPDIR)/utest_peap-mppe.Po ./$(DEPDIR)/utest_peap-peap.Po \
|
||||
./$(DEPDIR)/utest_peap-utils.Po \
|
||||
- ./$(DEPDIR)/utest_pppcrypt-crypto_ms.Po
|
||||
+ ./$(DEPDIR)/utest_pppcrypt-crypto_ms.Po \
|
||||
+ ./$(DEPDIR)/utest_utils-utils.Po \
|
||||
+ ./$(DEPDIR)/utest_utils-utils_utest.Po
|
||||
am__mv = mv -f
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
@@ -323,11 +332,11 @@ am__v_CCLD_1 =
|
||||
SOURCES = $(libppp_crypto_la_SOURCES) $(pppd_SOURCES) \
|
||||
$(srp_entry_SOURCES) $(utest_chap_SOURCES) \
|
||||
$(utest_crypto_SOURCES) $(utest_peap_SOURCES) \
|
||||
- $(utest_pppcrypt_SOURCES)
|
||||
+ $(utest_pppcrypt_SOURCES) $(utest_utils_SOURCES)
|
||||
DIST_SOURCES = $(libppp_crypto_la_SOURCES) $(am__pppd_SOURCES_DIST) \
|
||||
$(am__srp_entry_SOURCES_DIST) $(utest_chap_SOURCES) \
|
||||
$(utest_crypto_SOURCES) $(utest_peap_SOURCES) \
|
||||
- $(utest_pppcrypt_SOURCES)
|
||||
+ $(utest_pppcrypt_SOURCES) $(utest_utils_SOURCES)
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
@@ -733,6 +742,9 @@ utest_crypto_LDFLAGS =
|
||||
utest_pppcrypt_SOURCES = crypto_ms.c
|
||||
utest_pppcrypt_CPPFLAGS = -DUNIT_TEST_MSCRYPTO
|
||||
utest_pppcrypt_LDFLAGS =
|
||||
+utest_utils_SOURCES = utils.c utils_utest.c
|
||||
+utest_utils_CPPFLAGS = -DUNIT_TEST
|
||||
+utest_utils_LDFLAGS =
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = pppd.pc
|
||||
pppd_includedir = $(includedir)/pppd
|
||||
@@ -955,6 +967,10 @@ utest_pppcrypt$(EXEEXT): $(utest_pppcryp
|
||||
@rm -f utest_pppcrypt$(EXEEXT)
|
||||
$(AM_V_CCLD)$(utest_pppcrypt_LINK) $(utest_pppcrypt_OBJECTS) $(utest_pppcrypt_LDADD) $(LIBS)
|
||||
|
||||
+utest_utils$(EXEEXT): $(utest_utils_OBJECTS) $(utest_utils_DEPENDENCIES) $(EXTRA_utest_utils_DEPENDENCIES)
|
||||
+ @rm -f utest_utils$(EXEEXT)
|
||||
+ $(AM_V_CCLD)$(utest_utils_LINK) $(utest_utils_OBJECTS) $(utest_utils_LDADD) $(LIBS)
|
||||
+
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
@@ -1006,6 +1022,8 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utest_peap-peap.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utest_peap-utils.Po@am__quote@ # am--include-marker
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utest_pppcrypt-crypto_ms.Po@am__quote@ # am--include-marker
|
||||
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utest_utils-utils.Po@am__quote@ # am--include-marker
|
||||
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utest_utils-utils_utest.Po@am__quote@ # am--include-marker
|
||||
|
||||
$(am__depfiles_remade):
|
||||
@$(MKDIR_P) $(@D)
|
||||
@@ -1629,6 +1647,34 @@ utest_pppcrypt-crypto_ms.obj: crypto_ms.
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_pppcrypt_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o utest_pppcrypt-crypto_ms.obj `if test -f 'crypto_ms.c'; then $(CYGPATH_W) 'crypto_ms.c'; else $(CYGPATH_W) '$(srcdir)/crypto_ms.c'; fi`
|
||||
|
||||
+utest_utils-utils.o: utils.c
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT utest_utils-utils.o -MD -MP -MF $(DEPDIR)/utest_utils-utils.Tpo -c -o utest_utils-utils.o `test -f 'utils.c' || echo '$(srcdir)/'`utils.c
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/utest_utils-utils.Tpo $(DEPDIR)/utest_utils-utils.Po
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils.c' object='utest_utils-utils.o' libtool=no @AMDEPBACKSLASH@
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o utest_utils-utils.o `test -f 'utils.c' || echo '$(srcdir)/'`utils.c
|
||||
+
|
||||
+utest_utils-utils.obj: utils.c
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT utest_utils-utils.obj -MD -MP -MF $(DEPDIR)/utest_utils-utils.Tpo -c -o utest_utils-utils.obj `if test -f 'utils.c'; then $(CYGPATH_W) 'utils.c'; else $(CYGPATH_W) '$(srcdir)/utils.c'; fi`
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/utest_utils-utils.Tpo $(DEPDIR)/utest_utils-utils.Po
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils.c' object='utest_utils-utils.obj' libtool=no @AMDEPBACKSLASH@
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o utest_utils-utils.obj `if test -f 'utils.c'; then $(CYGPATH_W) 'utils.c'; else $(CYGPATH_W) '$(srcdir)/utils.c'; fi`
|
||||
+
|
||||
+utest_utils-utils_utest.o: utils_utest.c
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT utest_utils-utils_utest.o -MD -MP -MF $(DEPDIR)/utest_utils-utils_utest.Tpo -c -o utest_utils-utils_utest.o `test -f 'utils_utest.c' || echo '$(srcdir)/'`utils_utest.c
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/utest_utils-utils_utest.Tpo $(DEPDIR)/utest_utils-utils_utest.Po
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils_utest.c' object='utest_utils-utils_utest.o' libtool=no @AMDEPBACKSLASH@
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o utest_utils-utils_utest.o `test -f 'utils_utest.c' || echo '$(srcdir)/'`utils_utest.c
|
||||
+
|
||||
+utest_utils-utils_utest.obj: utils_utest.c
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT utest_utils-utils_utest.obj -MD -MP -MF $(DEPDIR)/utest_utils-utils_utest.Tpo -c -o utest_utils-utils_utest.obj `if test -f 'utils_utest.c'; then $(CYGPATH_W) 'utils_utest.c'; else $(CYGPATH_W) '$(srcdir)/utils_utest.c'; fi`
|
||||
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/utest_utils-utils_utest.Tpo $(DEPDIR)/utest_utils-utils_utest.Po
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='utils_utest.c' object='utest_utils-utils_utest.obj' libtool=no @AMDEPBACKSLASH@
|
||||
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(utest_utils_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o utest_utils-utils_utest.obj `if test -f 'utils_utest.c'; then $(CYGPATH_W) 'utils_utest.c'; else $(CYGPATH_W) '$(srcdir)/utils_utest.c'; fi`
|
||||
+
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
@@ -1918,6 +1964,13 @@ utest_crypto.log: utest_crypto$(EXEEXT)
|
||||
--log-file $$b.log --trs-file $$b.trs \
|
||||
$(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||
"$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||
+utest_utils.log: utest_utils$(EXEEXT)
|
||||
+ @p='utest_utils$(EXEEXT)'; \
|
||||
+ b='utest_utils'; \
|
||||
+ $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
|
||||
+ --log-file $$b.log --trs-file $$b.trs \
|
||||
+ $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
|
||||
+ "$$tst" $(AM_TESTS_FD_REDIRECT)
|
||||
utest_chap.log: utest_chap$(EXEEXT)
|
||||
@p='utest_chap$(EXEEXT)'; \
|
||||
b='utest_chap'; \
|
||||
@@ -2080,6 +2133,8 @@ distclean: distclean-am
|
||||
-rm -f ./$(DEPDIR)/utest_peap-peap.Po
|
||||
-rm -f ./$(DEPDIR)/utest_peap-utils.Po
|
||||
-rm -f ./$(DEPDIR)/utest_pppcrypt-crypto_ms.Po
|
||||
+ -rm -f ./$(DEPDIR)/utest_utils-utils.Po
|
||||
+ -rm -f ./$(DEPDIR)/utest_utils-utils_utest.Po
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-hdr distclean-tags
|
||||
@@ -2171,6 +2226,8 @@ maintainer-clean: maintainer-clean-am
|
||||
-rm -f ./$(DEPDIR)/utest_peap-peap.Po
|
||||
-rm -f ./$(DEPDIR)/utest_peap-utils.Po
|
||||
-rm -f ./$(DEPDIR)/utest_pppcrypt-crypto_ms.Po
|
||||
+ -rm -f ./$(DEPDIR)/utest_utils-utils.Po
|
||||
+ -rm -f ./$(DEPDIR)/utest_utils-utils_utest.Po
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
@ -1,34 +0,0 @@
|
||||
From 091e69b4e612427eeb95410dbc73eff10ea5dadb Mon Sep 17 00:00:00 2001
|
||||
From: Mike Gilbert <floppym@gentoo.org>
|
||||
Date: Mon, 26 Jun 2023 01:17:16 -0400
|
||||
Subject: [PATCH] Ensure there is a '/' between PPP_PATH_VARRUN and the PID
|
||||
filename (#427)
|
||||
|
||||
Bug: https://bugs.gentoo.org/907311
|
||||
|
||||
Fixes: 66a8c74c3f73 ("Let ./configure control the paths for pppd", 2022-07-30)
|
||||
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
|
||||
---
|
||||
pppd/main.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
--- pppd/main.c.orig
|
||||
+++ pppd/main.c
|
||||
@@ -888,7 +888,7 @@ create_pidfile(int pid)
|
||||
{
|
||||
FILE *pidfile;
|
||||
|
||||
- slprintf(pidfilename, sizeof(pidfilename), "%s%s.pid",
|
||||
+ slprintf(pidfilename, sizeof(pidfilename), "%s/%s.pid",
|
||||
PPP_PATH_VARRUN, ifname);
|
||||
if ((pidfile = fopen(pidfilename, "w")) != NULL) {
|
||||
fprintf(pidfile, "%d\n", pid);
|
||||
@@ -907,7 +907,7 @@ create_linkpidfile(int pid)
|
||||
if (linkname[0] == 0)
|
||||
return;
|
||||
ppp_script_setenv("LINKNAME", linkname, 1);
|
||||
- slprintf(linkpidfile, sizeof(linkpidfile), "%sppp-%s.pid",
|
||||
+ slprintf(linkpidfile, sizeof(linkpidfile), "%s/ppp-%s.pid",
|
||||
PPP_PATH_VARRUN, linkname);
|
||||
if ((pidfile = fopen(linkpidfile, "w")) != NULL) {
|
||||
fprintf(pidfile, "%d\n", pid);
|
@ -22,12 +22,15 @@ Move the resolv.conf written by pppd to /var/run [bnc#401648]
|
||||
|
||||
--- pppd/ipcp.c.orig
|
||||
+++ pppd/ipcp.c
|
||||
@@ -2151,10 +2151,13 @@ static void
|
||||
@@ -2155,13 +2155,16 @@ static void
|
||||
create_resolv(u_int32_t peerdns1, u_int32_t peerdns2)
|
||||
{
|
||||
FILE *f;
|
||||
+ char rcfilename[PATH_MAX];
|
||||
|
||||
if (noresolvconf)
|
||||
return;
|
||||
|
||||
- f = fopen(PPP_PATH_RESOLV, "w");
|
||||
+ slprintf(rcfilename, sizeof(rcfilename), "%s.%s", PPP_PATH_RESOLV, ifname);
|
||||
+
|
||||
@ -38,7 +41,7 @@ Move the resolv.conf written by pppd to /var/run [bnc#401648]
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2165,7 +2168,7 @@ create_resolv(u_int32_t peerdns1, u_int3
|
||||
@@ -2172,7 +2175,7 @@ create_resolv(u_int32_t peerdns1, u_int3
|
||||
fprintf(f, "nameserver %s\n", ip_ntoa(peerdns2));
|
||||
|
||||
if (ferror(f))
|
||||
@ -54,20 +57,18 @@ Move the resolv.conf written by pppd to /var/run [bnc#401648]
|
||||
#define PPP_PATH_TTYOPT PPP_PATH_CONFDIR "/options."
|
||||
#define PPP_PATH_PEERFILES PPP_PATH_CONFDIR "/peers/"
|
||||
-#define PPP_PATH_RESOLV PPP_PATH_CONFDIR "/resolv.conf"
|
||||
+#define PPP_PATH_RESOLV PPP_PATH_VARRUN "/ppp_resolv.conf"
|
||||
|
||||
#define PPP_PATH_CONNERRS PPP_PATH_VARLOG "/connect-errors"
|
||||
+#define PPP_PATH_RESOLV PPP_PATH_VARRUN "/ppp/resolv.conf"
|
||||
|
||||
#define PPP_PATH_NET_INIT PPP_PATH_CONFDIR "/net-init"
|
||||
#define PPP_PATH_NET_PREUP PPP_PATH_CONFDIR "/net-pre-up"
|
||||
--- pppd/pppd.8.orig
|
||||
+++ pppd/pppd.8
|
||||
@@ -1189,8 +1189,8 @@ Ask the peer for up to 2 DNS server addr
|
||||
@@ -1199,7 +1199,7 @@ Ask the peer for up to 2 DNS server addr
|
||||
by the peer (if any) are passed to the /etc/ppp/ip\-up script in the
|
||||
environment variables DNS1 and DNS2, and the environment variable
|
||||
USEPEERDNS will be set to 1. In addition, pppd will create an
|
||||
-/etc/ppp/resolv.conf file containing one or two nameserver lines with
|
||||
-the address(es) supplied by the peer.
|
||||
+/run/ppp_resolv.conf.$INTERFACE file containing one or two nameserver
|
||||
+lines with the address(es) supplied by the peer.
|
||||
+/run/ppp/resolv.conf.$INTERFACE file containing one or two nameserver lines with
|
||||
the address(es) supplied by the peer (unless the \fInoresolvconf\fR
|
||||
option is given).
|
||||
.TP
|
||||
.B usepeerwins
|
||||
Ask the peer for up to 2 WINS server addresses. The addresses supplied
|
||||
|
39
ppp.changes
39
ppp.changes
@ -1,3 +1,42 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 19 13:29:35 UTC 2025 - Reinhard Max <max@suse.com>
|
||||
|
||||
- Update to version 2.5.2:
|
||||
* Some old and probably unused code has been removed, notably
|
||||
the pppgetpass program and the passprompt plugin, and some of
|
||||
the files in the sample and scripts directories.
|
||||
* If a remote number has been set, it is available to scripts in
|
||||
the REMOTENUMBER environment variable.
|
||||
* Various other bug fixes and minor enhancements.
|
||||
- Obsoleted patches:
|
||||
* ppp-fix-bashisms.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 17 11:29:31 UTC 2024 - Reinhard Max <max@suse.com>
|
||||
|
||||
- Update to version 2.5.1:
|
||||
* Pppd can now measure and log the round-trip time (RTT) of LCP
|
||||
echo-requests and record them in a binary file structured as a
|
||||
circular buffer. Other programs or scripts can examine the
|
||||
file and provide real-time statistics on link latency.
|
||||
This is enabled by a new "lcp-rtt-file" option.
|
||||
* New scripts net-init, net-pre-up and net-down are executed in
|
||||
the process of bringing the network interface up and down.
|
||||
They provide additional, more deterministic ways for pppd to
|
||||
interact with the rest of the networking configuration.
|
||||
* New options have been added to allow the system administrator
|
||||
to set the location of various scripts and secrets files.
|
||||
* A new "noresolvconf" option tells pppd not to write the
|
||||
/etc/ppp/resolv.conf file; DNS server addresses, if obtained
|
||||
from the peer, are still passed to scripts in the environment.
|
||||
* Pppd will now create the directory for the TDB connection
|
||||
database if it doesn't already exist.
|
||||
- Obsoleted patches:
|
||||
* ppp-mkdir-run.patch
|
||||
* ppp-pidfiles.patch
|
||||
- Drop the ppp_ prefix from /run/ppp_resolv.conf* and put it under
|
||||
/run/ppp like the other generated files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 19 10:10:49 UTC 2024 - Jiri Bohac <jbohac@suse.com>
|
||||
|
||||
|
12
ppp.spec
12
ppp.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package ppp
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -18,7 +18,7 @@
|
||||
|
||||
%define _group dialout
|
||||
Name: ppp
|
||||
Version: 2.5.0
|
||||
Version: 2.5.2
|
||||
Release: 0
|
||||
Summary: The Point to Point Protocol for Linux
|
||||
License: BSD-3-Clause AND LGPL-2.1-or-later AND GPL-2.0-or-later
|
||||
@ -50,14 +50,10 @@ Source17: %{name}.keyring
|
||||
Patch0: ppp-smpppd.patch
|
||||
# PATCH-FIX-UPSTREAM ppp-var_run_resolv_conf.patch -- Move resolv.conf to /var/run
|
||||
Patch3: ppp-var_run_resolv_conf.patch
|
||||
# PATCH-FIX-UPSTREAM ppp-fix-bashisms.patch -- Remove bashism from posix shell interpreted script https://github.com/ppp-project/ppp/issues/348
|
||||
Patch4: ppp-fix-bashisms.patch
|
||||
# PATCH-FIX-UPSTREAM ppp-fork-fix.patch -- fix safe_fork to not close needed file descriptors
|
||||
Patch5: ppp-fork-fix.patch
|
||||
# misc tiny stuff
|
||||
Patch6: ppp-misc.patch
|
||||
Patch7: ppp-mkdir-run.patch
|
||||
Patch8: ppp-pidfiles.patch
|
||||
|
||||
# Of cause any other compatible libc would work, like musl, but 2.24 required for SOL_NETLINK
|
||||
BuildRequires: glibc-devel >= 2.24
|
||||
@ -106,7 +102,6 @@ you can disable unnecessary or disable everything.
|
||||
%prep
|
||||
%autosetup -p0
|
||||
|
||||
sed -i -e '1s/local\///' scripts/secure-card
|
||||
find scripts -type f | xargs chmod a-x
|
||||
find -type f -name '*.orig' | xargs rm -f
|
||||
|
||||
@ -123,6 +118,9 @@ find -type f -name '*.orig' | xargs rm -f
|
||||
|
||||
%install
|
||||
make install DESTDIR=%{buildroot}
|
||||
for f in %{buildroot}%{_sysconfdir}/ppp/*.example; do
|
||||
mv $f ${f%.example}
|
||||
done
|
||||
install -dm 750 %{buildroot}%{_sysconfdir}/ppp
|
||||
install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/ppp/options
|
||||
install -m 644 %{SOURCE6} %{buildroot}%{_sysconfdir}/ppp/filters
|
||||
|
Loading…
x
Reference in New Issue
Block a user