Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Gentoo Alt (http://www.linux-archive.org/gentoo-alt/)
-   -   eutils.eclass useradd/groupadd using incorrect flags for Solaris prefix (http://www.linux-archive.org/gentoo-alt/424462-eutils-eclass-useradd-groupadd-using-incorrect-flags-solaris-prefix.html)

velociraptor 09-08-2010 03:22 PM

eutils.eclass useradd/groupadd using incorrect flags for Solaris prefix
 
I ran into this while building nginx-0.8.49 (built fine, but had to
fetch dev-libs/geoip-1.4.6 by hand and then run eapify, as the fetch
urls for tinderbox are broken; didn't investigate that further).

In my utils.eclass version: # $Header:
/var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.348 2010/07/11
17:29:10 betelgeuse Exp $

groupadd for ~x86-solaris fell through to groupadd -r which isn't an
option on Solaris. Likewise, useradd is falling through the cases to
*, which uses useradd -r, also not valid on Solaris. I thought this
had been fixed earlier, as I recall reporting the useradd issue when I
first tried to bootstrap prefix under Solaris.

I fixed with the following patch:

--- orig.eutils.eclass 2010-09-08 08:07:32.083592361 -0700
+++ eutils.eclass 2010-09-08 08:07:58.191086901 -0700
@@ -711,7 +711,7 @@
fi
;;

- *-openbsd*)
+ *-openbsd*|*-solaris*)
if [[ -z $@ ]] ; then
useradd -u ${euid} -s ${eshell}
-d ${ehome} -c "Added by portage for ${PN}"
@@ -851,7 +851,7 @@
pw groupadd ${egroup} -g ${egid} || die "enewgroup failed"
;;

- *-netbsd*)
+ *-netbsd*|*-solaris*)
case ${egid} in
*[!0-9]*) # Non numeric
for ((egid = 101; egid <= 999; egid++)); do

My eutils.eclass isn't the latest, though, so I doubt that will apply
cleanly. I also haven't tested extensively, but worked fine for
uid/gid 101 and /bin/false home dir. Kind of ironic that we still see
BSD-isms in a SysV derived OS.

Regards--
=Nadine=


All times are GMT. The time now is 04:06 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.