Refresh patches

This commit is contained in:
Chris Hofstaedtler
2025-08-26 22:58:37 +02:00
parent 1e58713e0a
commit d689ba2dfe
9 changed files with 26 additions and 88 deletions

View File

@@ -8,10 +8,10 @@ Bug: http://bugs.debian.org/1100563
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/useradd.c b/src/useradd.c
index dc65618..25a5920 100644
index 9da533a..2f5df5f 100644
--- a/src/useradd.c
+++ b/src/useradd.c
@@ -2382,14 +2382,21 @@ static void create_mail (void)
@@ -2372,14 +2372,21 @@ static void create_mail (void)
#endif
}

View File

@@ -17,10 +17,10 @@ configuration files shipped in Debian (debian/default/useradd).
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/man/useradd.8.xml b/man/useradd.8.xml
index eda1fef..38f2c68 100644
index fd9ff69..69126ee 100644
--- a/man/useradd.8.xml
+++ b/man/useradd.8.xml
@@ -248,7 +248,7 @@
@@ -262,7 +262,7 @@
command line), useradd will set the primary group of the new
user to the value specified by the <option>GROUP</option>
variable in <filename>/etc/default/useradd</filename>, or
@@ -30,10 +30,10 @@ index eda1fef..38f2c68 100644
</listitem>
</varlistentry>
diff --git a/src/useradd.c b/src/useradd.c
index 6e744b0..dc65618 100644
index 36b9b8f..9da533a 100644
--- a/src/useradd.c
+++ b/src/useradd.c
@@ -97,14 +97,14 @@ static const char Prog[] = "useradd";
@@ -100,14 +100,14 @@ static const char Prog[] = "useradd";
/*
* These defaults are used if there is no defaults file.
*/

View File

@@ -11,7 +11,7 @@ Status wrt upstream: Debian specific patch.
2 files changed, 12 insertions(+)
diff --git a/man/useradd.8.xml b/man/useradd.8.xml
index 38f2c68..9009d83 100644
index 69126ee..e198028 100644
--- a/man/useradd.8.xml
+++ b/man/useradd.8.xml
@@ -82,6 +82,12 @@

View File

@@ -12,7 +12,7 @@ Fixes: #166793
3 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/lib/commonio.c b/lib/commonio.c
index fc8ad7a..24a3230 100644
index 7304ec0..6b13f4a 100644
--- a/lib/commonio.c
+++ b/lib/commonio.c
@@ -21,6 +21,7 @@
@@ -23,7 +23,7 @@ index fc8ad7a..24a3230 100644
#include "alloc/malloc.h"
#include "alloc/reallocf.h"
@@ -944,12 +945,23 @@ int commonio_close (struct commonio_db *db)
@@ -949,12 +950,23 @@ int commonio_close (struct commonio_db *db)
if (errors)
goto fail;
} else {
@@ -48,10 +48,10 @@ index fc8ad7a..24a3230 100644
if (SNPRINTF(buf, "%s+", db->filename) == -1)
diff --git a/lib/sgroupio.c b/lib/sgroupio.c
index 9805761..e3c0458 100644
index ef82976..53e7ecd 100644
--- a/lib/sgroupio.c
+++ b/lib/sgroupio.c
@@ -210,7 +210,7 @@ static struct commonio_db gshadow_db = {
@@ -211,7 +211,7 @@ static struct commonio_db gshadow_db = {
#ifdef WITH_SELINUX
NULL, /* scontext */
#endif
@@ -61,10 +61,10 @@ index 9805761..e3c0458 100644
0, /* st_gid */
NULL, /* head */
diff --git a/lib/shadowio.c b/lib/shadowio.c
index d2c3b47..53dac0b 100644
index 8b1c1d2..395d0c8 100644
--- a/lib/shadowio.c
+++ b/lib/shadowio.c
@@ -85,7 +85,7 @@ static struct commonio_db shadow_db = {
@@ -87,7 +87,7 @@ static struct commonio_db shadow_db = {
#ifdef WITH_SELINUX
NULL, /* scontext */
#endif /* WITH_SELINUX */

View File

@@ -11,10 +11,10 @@ Upstream PR 1158 will remove them, probably in the forky timeframe.
4 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/src/newusers.c b/src/newusers.c
index e3685ef..16abd81 100644
index 38cbddd..710c3e9 100644
--- a/src/newusers.c
+++ b/src/newusers.c
@@ -127,7 +127,7 @@ static void usage (int status)
@@ -128,7 +128,7 @@ static void usage (int status)
"\n"
"Options:\n"),
Prog);
@@ -23,7 +23,7 @@ index e3685ef..16abd81 100644
#ifndef USE_PAM
(void) fprintf (usageout,
_(" -c, --crypt-method METHOD the crypt method (one of %s)\n"),
@@ -660,6 +660,9 @@ static void process_flags (int argc, char **argv)
@@ -661,6 +661,9 @@ static void process_flags (int argc, char **argv)
switch (c) {
case 'b':
allow_bad_names = true;
@@ -34,10 +34,10 @@ index e3685ef..16abd81 100644
#ifndef USE_PAM
case 'c':
diff --git a/src/pwck.c b/src/pwck.c
index b485a5a..e20be0f 100644
index 6272839..a970e74 100644
--- a/src/pwck.c
+++ b/src/pwck.c
@@ -133,7 +133,7 @@ usage (int status)
@@ -134,7 +134,7 @@ usage (int status)
"Options:\n"),
Prog);
}
@@ -46,7 +46,7 @@ index b485a5a..e20be0f 100644
(void) fputs (_(" -h, --help display this help message and exit\n"), usageout);
(void) fputs (_(" -q, --quiet report errors only\n"), usageout);
(void) fputs (_(" -r, --read-only display errors and warnings\n"
@@ -175,6 +175,9 @@ static void process_flags (int argc, char **argv)
@@ -176,6 +176,9 @@ static void process_flags (int argc, char **argv)
switch (c) {
case 'b':
allow_bad_names = true;
@@ -57,10 +57,10 @@ index b485a5a..e20be0f 100644
case 'h':
usage (E_SUCCESS);
diff --git a/src/useradd.c b/src/useradd.c
index 25a5920..7e9dbce 100644
index 2f5df5f..73bf307 100644
--- a/src/useradd.c
+++ b/src/useradd.c
@@ -879,7 +879,7 @@ static void usage (int status)
@@ -874,7 +874,7 @@ static void usage (int status)
"\n"
"Options:\n"),
Prog, Prog, Prog);
@@ -69,7 +69,7 @@ index 25a5920..7e9dbce 100644
(void) fputs (_(" -b, --base-dir BASE_DIR base directory for the home directory of the\n"
" new account\n"), usageout);
#ifdef WITH_BTRFS
@@ -1202,6 +1202,9 @@ static void process_flags (int argc, char **argv)
@@ -1197,6 +1197,9 @@ static void process_flags (int argc, char **argv)
break;
case 201:
allow_bad_names = true;
@@ -80,10 +80,10 @@ index 25a5920..7e9dbce 100644
case 'c':
if (!VALID (optarg)) {
diff --git a/src/usermod.c b/src/usermod.c
index 22113da..9030883 100644
index a0f4d7d..2e04b09 100644
--- a/src/usermod.c
+++ b/src/usermod.c
@@ -383,7 +383,7 @@ usage (int status)
@@ -384,7 +384,7 @@ usage (int status)
(void) fputs (_(" -a, --append append the user to the supplemental GROUPS\n"
" mentioned by the -G option without removing\n"
" the user from other groups\n"), usageout);
@@ -92,7 +92,7 @@ index 22113da..9030883 100644
(void) fputs (_(" -c, --comment COMMENT new value of the GECOS field\n"), usageout);
(void) fputs (_(" -d, --home HOME_DIR new home directory for the user account\n"), usageout);
(void) fputs (_(" -e, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE\n"), usageout);
@@ -1054,6 +1054,9 @@ process_flags(int argc, char **argv)
@@ -1052,6 +1052,9 @@ process_flags(int argc, char **argv)
break;
case 'b':
allow_bad_names = true;

View File

@@ -9,7 +9,7 @@ Reported as https://github.com/shadow-maint/shadow/issues/1229
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 571e20d..c9cd472 100644
index bacce98..8746683 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,7 +18,7 @@ AC_SUBST([LIBSUBID_ABI], [libsubid_abi])

View File

@@ -9,5 +9,3 @@ debian/Define-LOGIN_NAME_MAX-on-HURD.patch
debian/Stop-building-programs-we-do-not-install.patch
debian/Warn-when-badname-and-variants-are-given.patch
debian/configure.ac-align-exec_prefix-with-prefix.patch
upstream/Accept-usr-sbin-nologin-as-an-alternate-to-sbin-nologin.patch
upstream/Add-LOGIN_ENV_SAFELIST-to-FOREIGNDEFS.patch

View File

@@ -1,36 +0,0 @@
From: Chris Hofstaedtler <zeha@debian.org>
Date: Fri, 28 Mar 2025 12:12:13 +0100
Subject: Accept /usr/sbin/nologin as an alternate to /sbin/nologin
Noticed by adduser's autopkgtests, thanks: Marc Haber
Link: https://github.com/shadow-maint/shadow/pull/1246
---
src/useradd.c | 1 +
src/usermod.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/src/useradd.c b/src/useradd.c
index 7e9dbce..0653d1d 100644
--- a/src/useradd.c
+++ b/src/useradd.c
@@ -1380,6 +1380,7 @@ static void process_flags (int argc, char **argv)
if (!streq(optarg, "")
&& '*' != optarg[0]
&& !streq(optarg, "/sbin/nologin")
+ && !streq(optarg, "/usr/sbin/nologin")
&& ( stat(optarg, &st) != 0
|| S_ISDIR(st.st_mode)
|| access(optarg, X_OK) != 0)) {
diff --git a/src/usermod.c b/src/usermod.c
index 9030883..4156ce5 100644
--- a/src/usermod.c
+++ b/src/usermod.c
@@ -1179,6 +1179,7 @@ process_flags(int argc, char **argv)
if (!streq(optarg, "")
&& '*' != optarg[0]
&& !streq(optarg, "/sbin/nologin")
+ && !streq(optarg, "/usr/sbin/nologin")
&& ( stat(optarg, &st) != 0
|| S_ISDIR(st.st_mode)
|| access(optarg, X_OK) != 0)) {

View File

@@ -1,24 +0,0 @@
From: Stanislav Brabec <sbrabec@suse.cz>
Date: Wed, 9 Apr 2025 02:03:10 +0200
Subject: Add LOGIN_ENV_SAFELIST to FOREIGNDEFS
util-linux-2.41 introduced new variable: LOGIN_ENV_SAFELIST.
Add it to known login.defs variables.
Signed-off-by: Stanislav Brabec <sbrabec@suse.cz>
---
lib/getdef.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/getdef.c b/lib/getdef.c
index e354d89..8883a29 100644
--- a/lib/getdef.c
+++ b/lib/getdef.c
@@ -76,6 +76,7 @@ struct itemdef {
#define FOREIGNDEFS \
{"ALWAYS_SET_PATH", NULL}, \
{"ENV_ROOTPATH", NULL}, \
+ {"LOGIN_ENV_SAFELIST", NULL}, \
{"LOGIN_KEEP_USERNAME", NULL}, \
{"LOGIN_PLAIN_PROMPT", NULL}, \
{"MOTD_FIRSTONLY", NULL}, \