Skip to contentSkip to conversation

rpm: backport configure fix for multiple users/groups with ID 0

PATCH New Mike Crowe 1 participant 1 message Jan 15, 2018

lore
Share & tools
lore

Mike Crowe

author
#0 lore raw

PATCH v2 1/1 rpm: backport configure fix for multiple users/groups with ID 0

Backport upstream configure fix for hosts that have multiple users with UID 0 or groups with GID 0.

---
 ...ure-cope-with-multiple-users-groups-with-.patch | 43 ++++++++++++++++++++++
 meta/recipes-devtools/rpm/rpm_4.14.0.bb            |  1 +
 2 files changed, 44 insertions(+)
 create mode 100644 meta/recipes-devtools/rpm/files/0001-Make-configure-cope-with-multiple-users-groups-with-.patch
meta/recipes-devtools/rpm/files/0001-Make-configure-cope-with-multiple-users-groups-with-.patch new file +43 -0
new file mode 100644
index 0000000000..31024bd7e8
@@ -0,0 +1,43 @@
+Upstream-Status: Backport [https://github.com/rpm-software-management/rpm/commit/a3652af66fa2a1f272d771323fee019f23d350f5]
+
+From 68a7b60f89419e53a4bd3c412f816f0576ffd8c4 Mon Sep 17 00:00:00 2001
+From: Mike Crowe <[email protected]>
+Date: Thu, 4 Jan 2018 14:39:51 +0000
+Subject: [PATCH] Make configure cope with multiple users/groups with ID 0
+
+If /etc/passwd contains multiple users with UID 0 then user_with_uid0 will
+contain a line feed which results in config.h containing:
+
+ #define UID_0_USER "root
+
+(i.e. without a closing quote.)
+
+The same problem occurs with /etc/group.
+
+Let's only emit the first match in each case so that there is only ever a
+single result.
+
+Signed-off-by: Mike Crowe <[email protected]>
+
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index ab8ca4f54..5259ad243 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -996,8 +996,8 @@ if test "$with_dmalloc" = yes ; then
+   LIBS="$LIBS -ldmalloc"
+ fi
+ 
+-user_with_uid0=$(awk -F: '$3==0 {print $1}' /etc/passwd)
+-group_with_gid0=$(awk -F: '$3==0 {print $1}' /etc/group)
++user_with_uid0=$(awk -F: '$3==0 {print $1;exit}' /etc/passwd)
++group_with_gid0=$(awk -F: '$3==0 {print $1;exit}' /etc/group)
+ AC_DEFINE_UNQUOTED([UID_0_USER],["$user_with_uid0"],[Get the user name having userid 0])
+ AC_DEFINE_UNQUOTED([GID_0_GROUP],["$group_with_gid0"],[Get the group name having groupid 0])
+ 
+-- 
+2.11.0
+
meta/recipes-devtools/rpm/rpm_4.14.0.bb +1 -0
index e4e9c3e634..aa2579e3bf 100644
@@ -40,6 +40,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.14.x \
            file://0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch \
            file://0004-build-pack.c-remove-static-local-variables-from-buil.patch \
            file://0001-perl-disable-auto-reqs.patch \
+           file://0001-Make-configure-cope-with-multiple-users-groups-with-.patch \
            "
 
 PE = "1"
Signature · 1 line
2.11.0