Skip to contentSkip to conversation

shadow: upgrade from 4.1.4.3 to 4.2.1

PATCH In review Chen Qi 2 participants 6 messages Jun 30, 2014 – Jul 4, 2014

lore
Share & tools
lore

Chen Qi

author
#0 lore raw

cover shadow: upgrade from 4.1.4.3 to 4.2.1

The following changes since commit 5e1560b98680c79c979b8f9325f9f9997f9fd438:

dbus: don't override EXTRA_OECONF (2014-06-18 11:11:37 +0100)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib ChenQi/shadow-4.2.1
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=ChenQi/shadow-4.2.1

Chen Qi (1):
shadow: upgrade from 4.1.4.3 to 4.2.1

 .../shadow/files/add_root_cmd_groupmems.patch      |   75 --
 .../shadow/files/add_root_cmd_options.patch        | 1384 --------------------
 .../allow-for-setting-password-in-clear-text.patch |  215 ++-
 ...fix-unexpected-open-failure-in-chroot-env.patch |   46 +
 .../shadow/files/fix-etc-gshadow-reading.patch     |   36 -
 ...installation-failure-with-subids-disabled.patch |   28 +
 .../shadow-4.1.4.2-env-reset-keep-locale.patch     |   31 -
 .../files/shadow-4.1.4.2-groupmod-pam-check.patch  |   36 -
 .../files/shadow-4.1.4.2-su_no_sanitize_env.patch  |   31 -
 .../shadow/files/shadow.automake-1.11.patch        |  106 --
 .../files/shadow_fix_for_automake-1.12.patch       |   23 -
 .../files/slackware_fix_for_glib-2.17_crypt.patch  |   63 -
 meta/recipes-extended/shadow/files/useradd.patch   |   17 -
 ...-compilation-failure-with-subids-disabled.patch |   33 +
 ...uretty_4.1.4.3.bb => shadow-securetty_4.2.1.bb} |    0
 ...-sysroot_4.1.4.3.bb => shadow-sysroot_4.2.1.bb} |    0
 meta/recipes-extended/shadow/shadow.inc            |   35 +-
 .../shadow/{shadow_4.1.4.3.bb => shadow_4.2.1.bb}  |    0
 18 files changed, 223 insertions(+), 1936 deletions(-)
 delete mode 100644 meta/recipes-extended/shadow/files/add_root_cmd_groupmems.patch
 delete mode 100644 meta/recipes-extended/shadow/files/add_root_cmd_options.patch
 create mode 100644 meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch
 delete mode 100644 meta/recipes-extended/shadow/files/fix-etc-gshadow-reading.patch
 create mode 100644 meta/recipes-extended/shadow/files/fix-installation-failure-with-subids-disabled.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow-4.1.4.2-env-reset-keep-locale.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow-4.1.4.2-groupmod-pam-check.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow-4.1.4.2-su_no_sanitize_env.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow.automake-1.11.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow_fix_for_automake-1.12.patch
 delete mode 100644 meta/recipes-extended/shadow/files/slackware_fix_for_glib-2.17_crypt.patch
 delete mode 100644 meta/recipes-extended/shadow/files/useradd.patch
 create mode 100644 meta/recipes-extended/shadow/files/usermod-fix-compilation-failure-with-subids-disabled.patch
 rename meta/recipes-extended/shadow/{shadow-securetty_4.1.4.3.bb => shadow-securetty_4.2.1.bb} (100%)
 rename meta/recipes-extended/shadow/{shadow-sysroot_4.1.4.3.bb => shadow-sysroot_4.2.1.bb} (100%)
 rename meta/recipes-extended/shadow/{shadow_4.1.4.3.bb => shadow_4.2.1.bb} (100%)
Signature · 1 line
1.7.9.5
author
#1 lore raw

PATCH 1/1 shadow: upgrade from 4.1.4.3 to 4.2.1

Upgrade shadow from 4.1.4.3 to 4.2.1.

Changes during this upgrade are as following.

1. Remove the "merged" patches. These patches are either merged or the same functionality has been implemented upstream.

add_root_cmd_groupmems.patch
add_root_cmd_options.patch
fix-etc-gshadow-reading.patch
shadow-4.1.4.2-env-reset-keep-locale.patch
shadow-4.1.4.2-groupmod-pam-check.patch
shadow-4.1.4.2-su_no_sanitize_env.patch
shadow.automake-1.11.patch
shadow_fix_for_automake-1.12.patch
useradd.patch

2. Remove the unneeded patch.
The following patch has been removed because the logic in the related codes of the new version has been changed. In specific, the codes now can handle the 'NULL' return value. So there's no need for the following patch.

slackware_fix_for_glib-2.17_crypt.patch

3. Teak the current patch to match the new version.

allow-for-setting-password-in-clear-text.patch

4. Add a patch to fix compilation failure.

usermod-fix-compilation-failure-with-subids-disabled.patch

5. Add a patch to fix the installation failure.

fix-installation-failure-with-subids-disabled.patch

5. Add a patch to fix the failure at rootfs time if extrausers is inherited.

commonio.c-fix-unexpected-open-failure-in-chroot-env.patch

6. Fix the bad section in the recipe.

7. Disable the new subids feature in the new version as it doesn't support cross compilation for now.

8. Modify the pkg_postinst to exit 1' if the pwconv' or `grpconv' fails. Also, fix the arguments to use '--root $D' instead of '--root=$D'.

---
 .../shadow/files/add_root_cmd_groupmems.patch      |   75 --
 .../shadow/files/add_root_cmd_options.patch        | 1384 --------------------
 .../allow-for-setting-password-in-clear-text.patch |  215 ++-
 ...fix-unexpected-open-failure-in-chroot-env.patch |   46 +
 .../shadow/files/fix-etc-gshadow-reading.patch     |   36 -
 ...installation-failure-with-subids-disabled.patch |   28 +
 .../shadow-4.1.4.2-env-reset-keep-locale.patch     |   31 -
 .../files/shadow-4.1.4.2-groupmod-pam-check.patch  |   36 -
 .../files/shadow-4.1.4.2-su_no_sanitize_env.patch  |   31 -
 .../shadow/files/shadow.automake-1.11.patch        |  106 --
 .../files/shadow_fix_for_automake-1.12.patch       |   23 -
 .../files/slackware_fix_for_glib-2.17_crypt.patch  |   63 -
 meta/recipes-extended/shadow/files/useradd.patch   |   17 -
 ...-compilation-failure-with-subids-disabled.patch |   33 +
 ...uretty_4.1.4.3.bb => shadow-securetty_4.2.1.bb} |    0
 ...-sysroot_4.1.4.3.bb => shadow-sysroot_4.2.1.bb} |    0
 meta/recipes-extended/shadow/shadow.inc            |   35 +-
 .../shadow/{shadow_4.1.4.3.bb => shadow_4.2.1.bb}  |    0
 18 files changed, 223 insertions(+), 1936 deletions(-)
 delete mode 100644 meta/recipes-extended/shadow/files/add_root_cmd_groupmems.patch
 delete mode 100644 meta/recipes-extended/shadow/files/add_root_cmd_options.patch
 create mode 100644 meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch
 delete mode 100644 meta/recipes-extended/shadow/files/fix-etc-gshadow-reading.patch
 create mode 100644 meta/recipes-extended/shadow/files/fix-installation-failure-with-subids-disabled.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow-4.1.4.2-env-reset-keep-locale.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow-4.1.4.2-groupmod-pam-check.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow-4.1.4.2-su_no_sanitize_env.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow.automake-1.11.patch
 delete mode 100644 meta/recipes-extended/shadow/files/shadow_fix_for_automake-1.12.patch
 delete mode 100644 meta/recipes-extended/shadow/files/slackware_fix_for_glib-2.17_crypt.patch
 delete mode 100644 meta/recipes-extended/shadow/files/useradd.patch
 create mode 100644 meta/recipes-extended/shadow/files/usermod-fix-compilation-failure-with-subids-disabled.patch
 rename meta/recipes-extended/shadow/{shadow-securetty_4.1.4.3.bb => shadow-securetty_4.2.1.bb} (100%)
 rename meta/recipes-extended/shadow/{shadow-sysroot_4.1.4.3.bb => shadow-sysroot_4.2.1.bb} (100%)
 rename meta/recipes-extended/shadow/{shadow_4.1.4.3.bb => shadow_4.2.1.bb} (100%)
meta/recipes-extended/shadow/files/add_root_cmd_groupmems.patch deleted +0 -75
deleted file mode 100644
index 4044496..0000000
@@ -1,75 +0,0 @@
-Add a --root command option to groupmems utility.
-
-This option allows the utility to be chrooted when run under pseudo.
-
-Signed-off-by: Mikhail Durnev <[email protected]>
-
-diff -Naur old/src/groupmems.c new/src/groupmems.c
---- old/src/groupmems.c	2011-02-13 11:58:16.000000000 -0600
-+++ new/src/groupmems.c	2013-05-30 04:45:38.000000000 -0500
-@@ -60,6 +60,7 @@
- #define EXIT_MEMBER_EXISTS	7	/* member of group already exists */
- #define EXIT_INVALID_USER	8	/* specified user does not exist */
- #define EXIT_INVALID_GROUP	9	/* specified group does not exist */
-+#define EXIT_BAD_ARG		10	/* invalid argument to option */
-
- /*
-  * Global variables
-@@ -79,6 +80,7 @@
- static bool is_shadowgrp;
- static bool sgr_locked = false;
- #endif
-+static const char *newroot = "";
-
- /* local function prototypes */
- static char *whoami (void);
-@@ -368,6 +370,7 @@
-	                "Options:\n"
-	                "  -g, --group groupname         change groupname instead of the user's group\n"
-	                "                                (root only)\n"
-+	                "  -R, --root CHROOT_DIR         directory to chroot into\n"
-	                "\n"
-	                "Actions:\n"
-	                "  -a, --add username            add username to the members of the group\n"
-@@ -391,10 +394,11 @@
-		{"group", required_argument, NULL, 'g'},
-		{"list", no_argument, NULL, 'l'},
-		{"purge", no_argument, NULL, 'p'},
-+		{"root", required_argument, NULL, 'R'},
-		{NULL, 0, NULL, '\0'}
-	};
-
--	while ((arg = getopt_long (argc, argv, "a:d:g:lp", long_options,
-+	while ((arg = getopt_long (argc, argv, "a:d:g:lpR:", long_options,
-	                           &option_index)) != EOF) {
-		switch (arg) {
-		case 'a':
-@@ -416,6 +420,28 @@
-			purge = true;
-			++exclusive;
-			break;
-+		case 'R':
-+			if ('/' != optarg[0]) {
-+				fprintf (stderr,
-+					 _("%s: invalid chroot path '%s'\n"),
-+					Prog, optarg);
-+				exit (EXIT_BAD_ARG);
-+			}
-+			newroot = optarg;
-+
-+			if (access (newroot, F_OK) != 0) {
-+				fprintf(stderr,
-+					_("%s: chroot directory %s does not exist\n"),
-+					Prog, newroot);
-+				exit (EXIT_BAD_ARG);
-+			}
-+			if ( chroot(newroot) != 0 ) {
-+				fprintf(stderr,
-+					_("%s: unable to chroot to directory %s\n"),
-+					Prog, newroot);
-+				exit (EXIT_BAD_ARG);
-+			}
-+			break;
-		default:
-			usage ();
-		}
meta/recipes-extended/shadow/files/add_root_cmd_options.patch deleted +0 -1384

1,384 lines not on this page · raw message

meta/recipes-extended/shadow/files/allow-for-setting-password-in-clear-text.patch +104 -111

301 lines not on this page · raw message

meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch new file +46 -0

46 lines not on this page · raw message

meta/recipes-extended/shadow/files/fix-etc-gshadow-reading.patch deleted +0 -36
deleted file mode 100644
index 80ebdc2..0000000
@@ -1,36 +0,0 @@
-shadow: Fix parsing of gshadow entries
-
-Upstream-Status: Backport [http://anonscm.debian.org/viewvc/pkg-shadow?view=revision&revision=3096]
-
-newgrp command does not function properly.
-Even with the valid password, it outputs: "'Invalid password'"
-
-Signed-off-by: Roy.Li <[email protected]>
-
-2010-02-14  Michael Bunk  <[email protected]>
-
-	* NEWS, lib/gshadow.c: Fix parsing of gshadow entries.
-
-diff -urpN a/lib/gshadow.c b/lib/gshadow.c
---- a/lib/gshadow.c	2013-07-11 10:18:15.745450428 +0800
-+++ b/lib/gshadow.c	2013-07-11 10:17:30.465450280 +0800
-@@ -222,6 +222,7 @@ void endsgent (void)
- 		if (NULL == buf) {
- 			return NULL;
- 		}
-+		buflen = BUFSIZ;
- 	}
- 
- 	if (NULL == fp) {
-@@ -229,9 +230,9 @@ void endsgent (void)
- 	}
- 
- #ifdef	USE_NIS
--	while (fgetsx (buf, (int) sizeof buf, fp) == buf)
-+	while (fgetsx (buf, (int) buflen, fp) == buf)
- #else
--	if (fgetsx (buf, (int) sizeof buf, fp) == buf)
-+	if (fgetsx (buf, (int) buflen, fp) == buf)
- #endif
- 	{
- 		while (   ((cp = strrchr (buf, '\n')) == NULL)
meta/recipes-extended/shadow/files/fix-installation-failure-with-subids-disabled.patch new file +28 -0
new file mode 100644
index 0000000..aca5252
@@ -0,0 +1,28 @@
+From 384f8c0b4800eb910a975ab9bd3b8bd2e1d89269 Mon Sep 17 00:00:00 2001
+From: Chen Qi <[email protected]>
+Date: Tue, 27 May 2014 14:23:56 +0800
+Subject: [PATCH] fix installation failure with subids disabled
+
+---
+ src/Makefile.am |    5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 25e288d..076f8ef 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -52,7 +52,10 @@ usbin_PROGRAMS = \
+ noinst_PROGRAMS = id sulogin
+ 
+ suidbins       = su
+-suidubins      = chage chfn chsh expiry gpasswd newgrp passwd newuidmap newgidmap
++suidubins      = chage chfn chsh expiry gpasswd newgrp passwd
++if ENABLE_SUBIDS
++suidubins += newgidmap newuidmap
++endif
+ if ACCT_TOOLS_SETUID
+ 	suidubins += chage chgpasswd chpasswd groupadd groupdel groupmod newusers useradd userdel usermod
+ endif
+-- 
+1.7.9.5
+
meta/recipes-extended/shadow/files/shadow-4.1.4.2-env-reset-keep-locale.patch deleted +0 -31
deleted file mode 100644
index 6514746..0000000
@@ -1,31 +0,0 @@
-# commit message copied from openembedded:
-#    commit 246c80637b135f3a113d319b163422f98174ee6c
-#    Author: Khem Raj <[email protected]>
-#    Date:   Wed Jun 9 13:37:03 2010 -0700
-#
-#    shadow-4.1.4.2: Add patches to support dots in login id.
-#    
-#    Signed-off-by: Khem Raj <[email protected]>
-#
-# comment added by Kevin Tian <[email protected]>, 2010-08-11
-
-http://bugs.gentoo.org/283725
-https://alioth.debian.org/tracker/index.php?func=detail&aid=311740&group_id=30580&atid=411480
-
-Upstream-Status: Pending
-
-Signed-off-by: Scott Garman <[email protected]>
-
-Index: shadow-4.1.4.2/libmisc/env.c
-===================================================================
---- shadow-4.1.4.2.orig/libmisc/env.c	2009-04-27 13:07:56.000000000 -0700
-+++ shadow-4.1.4.2/libmisc/env.c	2010-06-03 17:44:51.456408474 -0700
-@@ -251,7 +251,7 @@ void sanitize_env (void)
- 			if (strncmp (*cur, *bad, strlen (*bad)) != 0) {
- 				continue;
- 			}
--			if (strchr (*cur, '/') != NULL) {
-+			if (strchr (*cur, '/') == NULL) {
- 				continue;	/* OK */
- 			}
- 			for (move = cur; NULL != *move; move++) {
meta/recipes-extended/shadow/files/shadow-4.1.4.2-groupmod-pam-check.patch deleted +0 -36
deleted file mode 100644
index 640200b..0000000
@@ -1,36 +0,0 @@
-# commit message copied from openembedded:
-#    commit 246c80637b135f3a113d319b163422f98174ee6c
-#    Author: Khem Raj <[email protected]>
-#    Date:   Wed Jun 9 13:37:03 2010 -0700
-#
-#    shadow-4.1.4.2: Add patches to support dots in login id.
-#    
-#    Signed-off-by: Khem Raj <[email protected]>
-#
-# comment added by Kevin Tian <[email protected]>, 2010-08-11
-
-http://bugs.gentoo.org/300790
-http://lists.alioth.debian.org/pipermail/pkg-shadow-devel/2009-November/007850.html
-
-2009-11-05  Nicolas François  <[email protected]>
-
-	* NEWS, src/groupmod.c: Fixed groupmod when configured with
-	--enable-account-tools-setuid.
-
-Upstream-Status: Pending
-
-Signed-off-by: Scott Garman <[email protected]>
-
-Index: shadow-4.1.4.2/src/groupmod.c
-===================================================================
---- shadow-4.1.4.2.orig/src/groupmod.c	2009-06-05 15:16:58.000000000 -0700
-+++ shadow-4.1.4.2/src/groupmod.c	2010-06-03 17:45:43.828952613 -0700
-@@ -720,7 +720,7 @@ int main (int argc, char **argv)
- 	{
- 		struct passwd *pampw;
- 		pampw = getpwuid (getuid ()); /* local, no need for xgetpwuid */
--		if (NULL == pamh) {
-+		if (NULL == pampw) {
- 			fprintf (stderr,
- 			         _("%s: Cannot determine your user name.\n"),
- 			         Prog);
meta/recipes-extended/shadow/files/shadow-4.1.4.2-su_no_sanitize_env.patch deleted +0 -31
deleted file mode 100644
index 0dc4d75..0000000
@@ -1,31 +0,0 @@
-# commit message copied from openembedded:
-#    commit 246c80637b135f3a113d319b163422f98174ee6c
-#    Author: Khem Raj <[email protected]>
-#    Date:   Wed Jun 9 13:37:03 2010 -0700
-#
-#    shadow-4.1.4.2: Add patches to support dots in login id.
-#    
-#    Signed-off-by: Khem Raj <[email protected]>
-#
-# comment added by Kevin Tian <[email protected]>, 2010-08-11
-
-http://bugs.gentoo.org/show_bug.cgi?id=301957
-https://alioth.debian.org/scm/browser.php?group_id=30580
-
-Upstream-Status: Pending
-
-Signed-off-by: Scott Garman <[email protected]>
-
-Index: shadow-4.1.4.2/src/su.c
-===================================================================
---- shadow-4.1.4.2.orig/src/su.c	2009-07-23 13:38:56.000000000 -0700
-+++ shadow-4.1.4.2/src/su.c	2010-06-03 17:46:47.718944010 -0700
-@@ -378,7 +378,7 @@ int main (int argc, char **argv)
- #endif
- #endif				/* !USE_PAM */
- 
--	sanitize_env ();
-+	/* sanitize_env (); */
- 
- 	(void) setlocale (LC_ALL, "");
- 	(void) bindtextdomain (PACKAGE, LOCALEDIR);
meta/recipes-extended/shadow/files/shadow.automake-1.11.patch deleted +0 -106

106 lines not on this page · raw message

meta/recipes-extended/shadow/files/shadow_fix_for_automake-1.12.patch deleted +0 -23
deleted file mode 100644
index 6a27ed3..0000000
@@ -1,23 +0,0 @@
-Upstream-Status: pending
-
-Automake 1.12 has deprecated automatic de-ANSI-fication support
-
-This patch avoids this issue with automake 1.12:
-
-| configure.in:22: error: automatic de-ANSI-fication support has been removed
-
-Signed-Off-By: Nitin A Kamble <[email protected]>
-2012/05/02
-
-Index: shadow-4.1.4.3/configure.in
-===================================================================
---- shadow-4.1.4.3.orig/configure.in
-+++ shadow-4.1.4.3/configure.in
-@@ -19,7 +19,6 @@ AC_PROG_CC
- AC_ISC_POSIX
- AC_PROG_LN_S
- AC_PROG_YACC
--AM_C_PROTOTYPES
- AM_PROG_LIBTOOL
- 
- dnl Checks for libraries.
meta/recipes-extended/shadow/files/slackware_fix_for_glib-2.17_crypt.patch deleted +0 -63

63 lines not on this page · raw message

meta/recipes-extended/shadow/files/useradd.patch deleted +0 -17
deleted file mode 100644
index ff5016c..0000000
@@ -1,17 +0,0 @@
-Work around a bug introduced with the --root option which was causing
-all other arguments to be ignored.
-
-Upstream-Status: inappropriate
-Signed-off-by: Phil Blundell <[email protected]>
-
---- a/src/useradd.c~	2011-09-01 15:36:40.398234861 +0100
-+++ b/src/useradd.c	2011-09-01 17:29:00.782004133 +0100
-@@ -1957,6 +1957,8 @@
- 
- 	get_defaults ();
- 
-+	optind = 1;
-+
- 	process_flags (argc, argv);
- 
- #ifdef ACCT_TOOLS_SETUID
meta/recipes-extended/shadow/files/usermod-fix-compilation-failure-with-subids-disabled.patch new file +33 -0
new file mode 100644
index 0000000..37dc153
@@ -0,0 +1,33 @@
+Upstream-Status: Pending
+
+usermod: fix compilation failure with subids disabled
+
+Signed-off-by: Chen Qi <[email protected]>
+---
+ src/usermod.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/usermod.c b/src/usermod.c
+index e7d4351..685b50a 100644
+--- a/src/usermod.c
++++ b/src/usermod.c
+@@ -1360,7 +1360,7 @@ static void process_flags (int argc, char **argv)
+ 		         Prog, (unsigned long) user_newid);
+ 		exit (E_UID_IN_USE);
+ 	}
+-
++#ifdef ENABLE_SUBIDS
+ 	if (   (vflg || Vflg)
+ 	    && !is_sub_uid) {
+ 		fprintf (stderr,
+@@ -1376,6 +1376,7 @@ static void process_flags (int argc, char **argv)
+ 		         Prog, sub_gid_dbname (), "-w", "-W");
+ 		exit (E_USAGE);
+ 	}
++#endif
+ }
+ 
+ /*
+-- 
+1.7.9.5
+
meta/recipes-extended/shadow/shadow-securetty_4.2.1.bb renamed from meta/recipes-extended/shadow/shadow-securetty_4.1.4.3.bb +0 -0
similarity index 100%
rename from meta/recipes-extended/shadow/shadow-securetty_4.1.4.3.bb
rename to meta/recipes-extended/shadow/shadow-securetty_4.2.1.bb
meta/recipes-extended/shadow/shadow-sysroot_4.2.1.bb renamed from meta/recipes-extended/shadow/shadow-sysroot_4.1.4.3.bb +0 -0
similarity index 100%
rename from meta/recipes-extended/shadow/shadow-sysroot_4.1.4.3.bb
rename to meta/recipes-extended/shadow/shadow-sysroot_4.2.1.bb
meta/recipes-extended/shadow/shadow.inc +12 -23
index 6848e05..9e5c0b9 100644
@@ -1,50 +1,38 @@
 SUMMARY = "Tools to change and administer password and group data"
 HOMEPAGE = "http://pkg-shadow.alioth.debian.org"
 BUGTRACKER = "https://alioth.debian.org/tracker/?group_id=30580"
-SECTION = "base utils"
+SECTION = "base/utils"
 LICENSE = "BSD | Artistic-1.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=08c553a87d4e51bbed50b20e0adcaede \
+LIC_FILES_CHKSUM = "file://COPYING;md5=ed80ff1c2b40843cf5768e5229cf16e5 \
                     file://src/passwd.c;beginline=8;endline=30;md5=d83888ea14ae61951982d77125947661"
 
 DEPENDS = "shadow-native"
 DEPENDS_class-native = ""
 DEPENDS_class-nativesdk = ""
 
-SRC_URI = "http://pkg-shadow.alioth.debian.org/releases/${BPN}-${PV}.tar.bz2 \
-           file://shadow.automake-1.11.patch \
-           file://shadow_fix_for_automake-1.12.patch \
+SRC_URI = "http://pkg-shadow.alioth.debian.org/releases/${BPN}-${PV}.tar.xz \
            file://shadow-4.1.3-dots-in-usernames.patch \
-           file://shadow-4.1.4.2-env-reset-keep-locale.patch \
+           file://usermod-fix-compilation-failure-with-subids-disabled.patch \
+           file://fix-installation-failure-with-subids-disabled.patch \
            ${@bb.utils.contains('PACKAGECONFIG', 'pam', '${PAM_SRC_URI}', '', d)} \
            "
 
 SRC_URI_append_class-target = " \
            file://login_defs_pam.sed \
-           file://shadow-4.1.4.2-groupmod-pam-check.patch \
-           file://shadow-4.1.4.2-su_no_sanitize_env.patch \
            file://shadow-update-pam-conf.patch \
-           file://slackware_fix_for_glib-2.17_crypt.patch \
-           file://fix-etc-gshadow-reading.patch \
            "
 
 SRC_URI_append_class-native = " \
-           file://add_root_cmd_options.patch \
            file://disable-syslog.patch \
-           file://useradd.patch \
-           file://add_root_cmd_groupmems.patch \
            file://allow-for-setting-password-in-clear-text.patch \
+           file://commonio.c-fix-unexpected-open-failure-in-chroot-env.patch \
            "
 SRC_URI_append_class-nativesdk = " \
-           file://add_root_cmd_options.patch \
            file://disable-syslog.patch \
-           file://useradd.patch \
-           file://add_root_cmd_groupmems.patch \
            "
 
-SRC_URI[md5sum] = "b8608d8294ac88974f27b20f991c0e79"
-SRC_URI[sha256sum] = "633f5bb4ea0c88c55f3642c97f9d25cbef74f82e0b4cf8d54e7ad6f9f9caa778"
-
-PR = "r14"
+SRC_URI[md5sum] = "2bfafe7d4962682d31b5eba65dba4fc8"
+SRC_URI[sha256sum] = "3b0893d1476766868cd88920f4f1231c4795652aa407569faff802bcda0f3d41"
 
 # Additional Policy files for PAM
 PAM_SRC_URI = "file://pam.d/chfn \
@@ -61,6 +49,7 @@ EXTRA_OECONF += "--without-audit \
                  --without-libcrack \
                  --without-selinux \
                  --with-group-name-max-length=24 \
+                 --enable-subordinate-ids=no \
                  ${NSCDOPT}"
 
 NSCDOPT = ""
@@ -166,11 +155,11 @@ ALTERNATIVE_LINK_NAME[su] = "${base_bindir}/su"
 
 pkg_postinst_${PN} () {
 	if [ "x$D" != "x" ]; then
-	  rootarg="--root=$D"
+	  rootarg="--root $D"
 	else
 	  rootarg=""
 	fi
 
-	pwconv $rootarg
-	grpconv $rootarg
+	pwconv $rootarg || exit 1
+	grpconv $rootarg || exit 1
 }
meta/recipes-extended/shadow/shadow_4.2.1.bb renamed from meta/recipes-extended/shadow/shadow_4.1.4.3.bb +0 -0
similarity index 100%
rename from meta/recipes-extended/shadow/shadow_4.1.4.3.bb
rename to meta/recipes-extended/shadow/shadow_4.2.1.bb
Signature · 1 line
1.7.9.5
#2 lore raw
Quoted 41 lines · Chen Qi

Upgrade shadow from 4.1.4.3 to 4.2.1.

Changes during this upgrade are as following.

1. Remove the "merged" patches. These patches are either merged or the same functionality has been implemented upstream.

   add_root_cmd_groupmems.patch
   add_root_cmd_options.patch
   fix-etc-gshadow-reading.patch
   shadow-4.1.4.2-env-reset-keep-locale.patch
   shadow-4.1.4.2-groupmod-pam-check.patch
   shadow-4.1.4.2-su_no_sanitize_env.patch
   shadow.automake-1.11.patch
   shadow_fix_for_automake-1.12.patch
   useradd.patch

2. Remove the unneeded patch.
The following patch has been removed because the logic in the related codes of the new version has been changed. In specific, the codes now can handle the 'NULL' return value. So there's no need for the following patch.

   slackware_fix_for_glib-2.17_crypt.patch

3. Teak the current patch to match the new version.

allow-for-setting-password-in-clear-text.patch

4. Add a patch to fix compilation failure.

usermod-fix-compilation-failure-with-subids-disabled.patch

5. Add a patch to fix the installation failure.

fix-installation-failure-with-subids-disabled.patch

5. Add a patch to fix the failure at rootfs time if extrausers is inherited.

commonio.c-fix-unexpected-open-failure-in-chroot-env.patch

Quoted 7 lines

6. Fix the bad section in the recipe.

7. Disable the new subids feature in the new version as it doesn't support cross compilation for now.

8. Modify the pkg_postinst to exit 1' if the pwconv' or `grpconv' fails. Also, fix the arguments to use '--root $D' instead of '--root=$D'.

I think this introduces the following issue:

https://autobuilder.yoctoproject.org/main/builders/nightly-qa-logrotate/builds/154/steps/BuildImages/logs/stdio

since the shutdown group is probably now installed in the core?

Cheers,

Richard

#3 lore raw
Quoted 47 lines · Richard Purdie
Quoted 46 lines · Chen Qi

Upgrade shadow from 4.1.4.3 to 4.2.1.

Changes during this upgrade are as following.

1. Remove the "merged" patches. These patches are either merged or the same functionality has been implemented upstream.

   add_root_cmd_groupmems.patch
   add_root_cmd_options.patch
   fix-etc-gshadow-reading.patch
   shadow-4.1.4.2-env-reset-keep-locale.patch
   shadow-4.1.4.2-groupmod-pam-check.patch
   shadow-4.1.4.2-su_no_sanitize_env.patch
   shadow.automake-1.11.patch
   shadow_fix_for_automake-1.12.patch
   useradd.patch

2. Remove the unneeded patch.
The following patch has been removed because the logic in the related codes of the new version has been changed. In specific, the codes now can handle the 'NULL' return value. So there's no need for the following patch.

   slackware_fix_for_glib-2.17_crypt.patch

3. Teak the current patch to match the new version.

allow-for-setting-password-in-clear-text.patch

4. Add a patch to fix compilation failure.

usermod-fix-compilation-failure-with-subids-disabled.patch

5. Add a patch to fix the installation failure.

fix-installation-failure-with-subids-disabled.patch

5. Add a patch to fix the failure at rootfs time if extrausers is inherited.

commonio.c-fix-unexpected-open-failure-in-chroot-env.patch

6. Fix the bad section in the recipe.

7. Disable the new subids feature in the new version as it doesn't support cross compilation for now.

Quoted 6 lines
Quoted 2 lines

8. Modify the pkg_postinst to exit 1' if the pwconv' or `grpconv' fails. Also, fix the arguments to use '--root $D' instead of '--root=$D'.

I think this introduces the following issue:

https://autobuilder.yoctoproject.org/main/builders/nightly-qa-logrotate/builds/154/steps/BuildImages/logs/stdio

https://autobuilder.yoctoproject.org/main/builders/build-appliance/builds/158/steps/BuildImages_1/logs/stdio

and there are other failures similar to the xuser-account do_install failure. I suspect these reproduce best on builds from scratch.

Cheers,

Richard

#4 lore raw
Quoted 51 lines · Richard Purdie
Quoted 50 lines · Richard Purdie
Quoted 48 lines · Chen Qi

Upgrade shadow from 4.1.4.3 to 4.2.1.

Changes during this upgrade are as following.

1. Remove the "merged" patches. These patches are either merged or the same functionality has been implemented upstream.

   add_root_cmd_groupmems.patch
   add_root_cmd_options.patch
   fix-etc-gshadow-reading.patch
   shadow-4.1.4.2-env-reset-keep-locale.patch
   shadow-4.1.4.2-groupmod-pam-check.patch
   shadow-4.1.4.2-su_no_sanitize_env.patch
   shadow.automake-1.11.patch
   shadow_fix_for_automake-1.12.patch
   useradd.patch

2. Remove the unneeded patch.
The following patch has been removed because the logic in the related codes of the new version has been changed. In specific, the codes now can handle the 'NULL' return value. So there's no need for the following patch.

   slackware_fix_for_glib-2.17_crypt.patch

3. Teak the current patch to match the new version.

allow-for-setting-password-in-clear-text.patch

4. Add a patch to fix compilation failure.

usermod-fix-compilation-failure-with-subids-disabled.patch

5. Add a patch to fix the installation failure.

fix-installation-failure-with-subids-disabled.patch

5. Add a patch to fix the failure at rootfs time if extrausers is inherited.

commonio.c-fix-unexpected-open-failure-in-chroot-env.patch

6. Fix the bad section in the recipe.

7. Disable the new subids feature in the new version as it doesn't support cross compilation for now.

8. Modify the pkg_postinst to exit 1' if the pwconv' or `grpconv' fails. Also, fix the arguments to use '--root $D' instead of '--root=$D'.

Quoted 8 lines
Quoted 3 lines

I think this introduces the following issue:

https://autobuilder.yoctoproject.org/main/builders/nightly-qa-logrotate/builds/154/steps/BuildImages/logs/stdio

https://autobuilder.yoctoproject.org/main/builders/build-appliance/builds/158/steps/BuildImages_1/logs/stdio

and there are other failures similar to the xuser-account do_install failure. I suspect these reproduce best on builds from scratch.

For the do_install failure, the ${STAGING_DIR_TARGET}/home directory has to exist. If it does from a previous build, the xuser-account will build correctly. If home/ doesn't exist it will fail with the error. Its similar to a "mkdir" verses "mkdir -p" issue.

I don't know what the second build-appliance failure is due to.

Cheers,

Richard

author
#5 lore raw
Quoted 63 lines · Richard Purdie
Quoted 50 lines · Richard Purdie
Quoted 49 lines · Richard Purdie
Quoted 48 lines · Chen Qi

Upgrade shadow from 4.1.4.3 to 4.2.1.

Changes during this upgrade are as following.

1. Remove the "merged" patches. These patches are either merged or

    the same functionality has been implemented upstream.

    add_root_cmd_groupmems.patch
    add_root_cmd_options.patch
    fix-etc-gshadow-reading.patch
    shadow-4.1.4.2-env-reset-keep-locale.patch
    shadow-4.1.4.2-groupmod-pam-check.patch
    shadow-4.1.4.2-su_no_sanitize_env.patch
    shadow.automake-1.11.patch
    shadow_fix_for_automake-1.12.patch
    useradd.patch

2. Remove the unneeded patch.
The following patch has been removed because the logic in the related codes of the new version has been changed. In specific, the codes now can handle the 'NULL' return value. So there's no need for the following patch.

slackware_fix_for_glib-2.17_crypt.patch

3. Teak the current patch to match the new version.

allow-for-setting-password-in-clear-text.patch

4. Add a patch to fix compilation failure.

usermod-fix-compilation-failure-with-subids-disabled.patch

5. Add a patch to fix the installation failure.

fix-installation-failure-with-subids-disabled.patch

5. Add a patch to fix the failure at rootfs time if extrausers is inherited.

commonio.c-fix-unexpected-open-failure-in-chroot-env.patch

6. Fix the bad section in the recipe.

7. Disable the new subids feature in the new version as it doesn't support cross compilation for now.

8. Modify the pkg_postinst to exit 1' if the pwconv' or `grpconv' fails. Also, fix the arguments to use '--root $D' instead of '--root=$D'.

Quoted 7 lines
Quoted 3 lines

I think this introduces the following issue:

https://autobuilder.yoctoproject.org/main/builders/nightly-qa-logrotate/builds/154/steps/BuildImages/logs/stdio

https://autobuilder.yoctoproject.org/main/builders/build-appliance/builds/158/steps/BuildImages_1/logs/stdio

and there are other failures similar to the xuser-account do_install failure. I suspect these reproduce best on builds from scratch.

For the do_install failure, the ${STAGING_DIR_TARGET}/home directory has to exist. If it does from a previous build, the xuser-account will build correctly. If home/ doesn't exist it will fail with the error. Its similar to a "mkdir" verses "mkdir -p" issue.

Quoted 10 lines

I don't know what the second build-appliance failure is due to.

Cheers,

Richard

Thanks!

I'm looking into the problems now.

Best Regards,
Chen Qi