OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 29-Sep-2006 08:54:06
Branch: HEAD Handle: 2006092907540401
Modified files:
openpkg-src/openpkg HISTORY aux.usrgrp.sh aux.wrapsrc.sh openpkg.spec
rpmmacros shtool
Log:
- passwd/group lookups more efficient by performing key-based lookups
instead of full dumps when possible
- upgrade to latest tools
Summary:
Revision Changes Path
1.379 +2 -0 openpkg-src/openpkg/HISTORY
1.17 +24 -24 openpkg-src/openpkg/aux.usrgrp.sh
1.22 +4 -4 openpkg-src/openpkg/aux.wrapsrc.sh
1.528 +40 -12 openpkg-src/openpkg/openpkg.spec
1.78 +8 -8 openpkg-src/openpkg/rpmmacros
1.35 +22 -10 openpkg-src/openpkg/shtool
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/HISTORY
============================================================================
$ cvs diff -u -r1.378 -r1.379 HISTORY
--- openpkg-src/openpkg/HISTORY 28 Sep 2006 15:18:00 -0000 1.378
+++ openpkg-src/openpkg/HISTORY 29 Sep 2006 06:54:04 -0000 1.379
@@ -2,6 +2,8 @@
2006
====
+20060929 make passwd/group lookups more efficient by performing key-based
lookups instead of full dumps when possible
+20060929 upgrade to openpkg-tools 0.8.75
20060928 upgrade to OpenSSL 0.9.8d
20060926 upgrade to openpkg-tools 0.8.74
20060923 upgrade to GNU config 20060923
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/aux.usrgrp.sh
============================================================================
$ cvs diff -u -r1.16 -r1.17 aux.usrgrp.sh
--- openpkg-src/openpkg/aux.usrgrp.sh 1 Jan 2006 13:17:48 -0000 1.16
+++ openpkg-src/openpkg/aux.usrgrp.sh 29 Sep 2006 06:54:04 -0000 1.17
@@ -79,11 +79,11 @@
(who am i | cut "-d " -f1) 2>/dev/null ||\
echo $LOGNAME`
cgid=`(id -g $cusr) 2>/dev/null ||\
- ((getent passwd; cat /etc/passwd; ypcat passwd) 2>/dev/null |\
- grep "^${cusr}:" | sed -n -e '1p' | awk -F: '{ print $4; }')`
+ ((getent passwd "${cusr}"; grep "^${cusr}:" /etc/passwd; ypmatch
"${cusr}" passwd; nismatch "${cusr}" passwd; nidump passwd . | grep
"^${cusr}:") 2>/dev/null |\
+ sed -n -e '1p' | awk -F: '{ print $4; }')`
cgrp=`(id -gn $cusr) 2>/dev/null ||\
- ((getent group; cat /etc/group; ypcat group) 2>/dev/null |\
- grep ":${cgid}:" | sed -n -e '1p' | awk -F: '{ print $1; }')`
+ ((getent group; cat /etc/group; ypcat group; niscat group; nidump
group .) 2>/dev/null | grep "^[^:]*:[^:]*:${cgid}:" |\
+ sed -n -e '1p' | awk -F: '{ print $1; }')`
[ ".$cgrp" = . ] && cgrp="$cusr"
# determine OpenPKG susr/sgrp
@@ -97,12 +97,12 @@
if [ ".$sgrp" = . ]; then
sgrp=`(id -gn $susr) 2>/dev/null`
if [ ".$sgrp" = . ]; then
- tgid=`(getent passwd; cat /etc/passwd; ypcat passwd) 2>/dev/null |\
- grep "^${susr}:" | sed -n -e '1p' | awk -F: '{ print $4; }'`
+ tgid=`(getent passwd "${susr}"; grep "^${susr}:" /etc/passwd;
ypmatch "${susr}" passwd; nismatch "${susr}" passwd; nidump passwd . | grep
"^${susr}:") 2>/dev/null |\
+ sed -n -e '1p' | awk -F: '{ print $4; }'`
if [ ".$tgid" != . ]; then
sgid="${tgid}"
- sgrp=`(getent group; cat /etc/group; ypcat group) 2>/dev/null |\
- grep ":${sgid}:" | sed -n -e '1p' | awk -F: '{ print $1;
}'`
+ sgrp=`(getent group; cat /etc/group; ypcat group; niscat group;
nidump group .) 2>/dev/null |\
+ grep "^[^:]*:[^:]*:${sgid}:" | sed -n -e '1p' | awk -F: '{
print $1; }'`
fi
if [ ".$sgrp" = . ]; then
sgrp="wheel"
@@ -120,12 +120,12 @@
if [ ".$mgrp" = . ]; then
mgrp=`(id -gn $musr) 2>/dev/null`
if [ ".$mgrp" = . ]; then
- tgid=`(getent passwd; cat /etc/passwd; ypcat passwd) 2>/dev/null |\
- grep "^${musr}:" | sed -n -e '1p' | awk -F: '{ print $4; }'`
+ tgid=`(getent passwd "${musr}"; grep "^${musr}:" /etc/passwd;
ypmatch "${musr}" passwd; nismatch "${musr}" passwd; nidump passwd . | grep
"^${musr}:") 2>/dev/null |\
+ sed -n -e '1p' | awk -F: '{ print $4; }'`
if [ ".$tgid" != . ]; then
mgid="${tgid}"
- mgrp=`(getent group; cat /etc/group; ypcat group) 2>/dev/null |\
- grep ":${mgid}:" | sed -n -e '1p' | awk -F: '{ print $1;
}'`
+ mgrp=`(getent group; cat /etc/group; ypcat group; niscat group;
nidump group .) 2>/dev/null |\
+ grep "^[^:]*:[^:]*:${mgid}:" | sed -n -e '1p' | awk -F: '{
print $1; }'`
fi
if [ ".$mgrp" = . ]; then
mgrp="$grp"
@@ -146,12 +146,12 @@
if [ ".$rgrp" = . ]; then
rgrp=`(id -gn $rusr) 2>/dev/null`
if [ ".$rgrp" = . ]; then
- tgid=`(getent passwd; cat /etc/passwd; ypcat passwd) 2>/dev/null |\
- grep "^${rusr}:" | sed -n -e '1p' | awk -F: '{ print $4; }'`
+ tgid=`(getent passwd "${rusr}"; grep "^${rusr}:" /etc/passwd;
ypmatch "${rusr}" passwd; nismatch "${rusr}" passwd; nidump passwd . | grep
"^${rusr}:") 2>/dev/null |\
+ sed -n -e '1p' | awk -F: '{ print $4; }'`
if [ ".$tgid" != . ]; then
rgid="${tgid}"
- rgrp=`(getent group; cat /etc/group; ypcat group) 2>/dev/null |\
- grep ":${rgid}:" | sed -n -e '1p' | awk -F: '{ print $1;
}'`
+ rgrp=`(getent group; cat /etc/group; ypcat group; nismatch
group; nidump group .) 2>/dev/null |\
+ grep "^[^:]*:[^:]*:${rgid}:" | sed -n -e '1p' | awk -F: '{
print $1; }'`
fi
if [ ".$rgrp" = . ]; then
rgrp="${grp}-r"
@@ -172,12 +172,12 @@
if [ ".$ngrp" = . ]; then
ngrp=`(id -gn $nusr) 2>/dev/null`
if [ ".$ngrp" = . ]; then
- tgid=`(getent passwd; cat /etc/passwd; ypcat passwd) 2>/dev/null |\
- grep "^${nusr}:" | sed -n -e '1p' | awk -F: '{ print $4; }'`
+ tgid=`(getent passwd "${nusr}"; grep "^${nusr}:" /etc/passwd;
ypmatch "${nusr}" passwd; nismatch "${nusr}" passwd; nidump passwd . | grep
"^${nusr}:") 2>/dev/null |\
+ sed -n -e '1p' | awk -F: '{ print $4; }'`
if [ ".$tgid" != . ]; then
ngid="${tgid}"
- ngrp=`(getent group; cat /etc/group; ypcat group) 2>/dev/null |\
- grep ":${ngid}:" | sed -n -e '1p' | awk -F: '{ print $1;
}'`
+ ngrp=`(getent group; cat /etc/group; ypcat group; niscat group;
nidump group .) 2>/dev/null |\
+ grep "^[^:]*:[^:]*:${ngid}:" | sed -n -e '1p' | awk -F: '{
print $1; }'`
fi
if [ ".$ngrp" = . ]; then
ngrp="${grp}-n"
@@ -189,16 +189,16 @@
fi
# determine OpenPKG suid/sgid
-# FIXME?! (currently not necessary)
+# (currently not necessary)
# determine OpenPKG muid/mgid
-# FIXME?! (currently not necessary)
+# (currently not necessary)
# determine OpenPKG ruid/rgid
-# FIXME?! (currently not necessary)
+# (currently not necessary)
# determine OpenPKG nuid/ngid
-# FIXME?! (currently not necessary)
+# (currently not necessary)
# print results
output=""
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/aux.wrapsrc.sh
============================================================================
$ cvs diff -u -r1.21 -r1.22 aux.wrapsrc.sh
--- openpkg-src/openpkg/aux.wrapsrc.sh 1 Jan 2006 13:17:48 -0000
1.21
+++ openpkg-src/openpkg/aux.wrapsrc.sh 29 Sep 2006 06:54:04 -0000
1.22
@@ -110,11 +110,11 @@
(who am i | cut "-d " -f1) 2>/dev/null ||\
echo $LOGNAME`
cgid=`(id -g $cusr) 2>/dev/null ||\
- ((getent passwd; cat /etc/passwd; ypcat passwd) 2>/dev/null |\
- grep "^${cusr}:" | sed -n -e '1p' | awk -F: '{ print $4; }')`
+ ((getent passwd "${cusr}"; grep "^${cusr}:" /etc/passwd; ypmatch
"${cusr}" passwd; nismatch "${cusr}" passwd; nidump passwd . | grep
"^${cusr}:") 2>/dev/null |\
+ sed -e 'q' | awk -F: '{ print $4; }')`
cgrp=`(id -gn $cusr) 2>/dev/null ||\
- ((getent group; cat /etc/group; ypcat group) 2>/dev/null |\
- grep ":${cgid}:" | sed -n -e '1p' | awk -F: '{ print $1; }')`
+ ((getent group; cat /etc/group; ypcat group; niscat group; nidump
group .) 2>/dev/null | grep "^[^:]*:[^:]*:${cgid}:" |\
+ sed -e 'q' | awk -F: '{ print $1; }')`
if [ ".$cgrp" = . ]; then
cgrp="$cusr"
fi
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/openpkg.spec
============================================================================
$ cvs diff -u -r1.527 -r1.528 openpkg.spec
--- openpkg-src/openpkg/openpkg.spec 28 Sep 2006 15:18:00 -0000 1.527
+++ openpkg-src/openpkg/openpkg.spec 29 Sep 2006 06:54:04 -0000 1.528
@@ -39,7 +39,7 @@
# o any cc(1)
# the package version/release
-%define V_openpkg 20060928
+%define V_openpkg 20060929
# the used software versions
%define V_rpm 4.2.1
@@ -57,7 +57,7 @@
%define V_registry 0.7.2
%define V_perl 5.8.8
%define V_openssl 0.9.8d
-%define V_tools 0.8.74
+%define V_tools 0.8.75
# package information
Name: openpkg
@@ -1615,8 +1615,12 @@
eval "xuid=\"\$${class}uid\""
eval "xgid=\"\$${class}gid\""
if [ ".$xuid" = . ]; then
- xuid=`(getent passwd; cat /etc/passwd; ypcat passwd; nidump
passwd .) 2>/dev/null |\
- grep "^${xusr}:" | awk -F: '{ print $3; }' | sed -e q`
+ xuid=`(getent passwd "${xusr}"; \
+ grep "^${xusr}:" /etc/passwd; \
+ ypmatch "${xusr}" passwd; \
+ nismatch "${xusr}" passwd; \
+ nidump passwd . | grep "^${xusr}:") 2>/dev/null | \
+ sed -e 'q' | awk -F: '{ print $3; }'`
if [ ".$xuid" = . ]; then
# seek for a reasonably uid/gid pair
xuid=1000
@@ -1624,12 +1628,12 @@
while [ ".$ok" = .0 ]; do
eval "u_exists=\$u_exists_$xuid"
if [ ".$u_exists" = . ]; then
- u_exists=`(getent passwd; cat /etc/passwd; ypcat
passwd; nidump passwd .) 2>/dev/null |\
+ u_exists=`(getent passwd; cat /etc/passwd; ypcat
passwd; niscat passwd; nidump passwd .) 2>/dev/null |\
grep "^[^:]*:[^:]*:$xuid:"`
fi
eval "g_exists=\$g_exists_$xuid"
if [ ".$g_exists" = . ]; then
- g_exists=`(getent group; cat /etc/group; ypcat
group; nidump group .) 2>/dev/null |\
+ g_exists=`(getent group; cat /etc/group; ypcat
group; niscat group; nidump group .) 2>/dev/null |\
grep "^[^:]*:[^:]*:$xuid:"`
fi
if [ ".$u_exists" = . -a ".$g_exists" = . ]; then
@@ -1643,8 +1647,12 @@
fi
fi
if [ ".$xgid" = . ]; then
- xgid=`(getent group; cat /etc/group; ypcat group; nidump group
.) 2>/dev/null |\
- grep "^${xgrp}:" | awk -F: '{ print $3; }' | sed -e q`
+ xgid=`(getent group "${xgrp}"; \
+ grep "^${xgrp}:" /etc/group; \
+ ypmatch "${xgrp}" group; \
+ nismatch "${xgrp}" group; \
+ nidump group . | grep "^${xgrp}:") 2>/dev/null | \
+ sed -e 'q' | awk -F: '{ print $3; }'`
if [ ".$xgid" = . ]; then
xgid="$xuid"
fi
@@ -1682,7 +1690,12 @@
class="$1"; usr="$2"; uid="$3"; grp="$4"; gid="$5"
# check whether user already exists
- exists=`(getent passwd; cat /etc/passwd; ypcat passwd; nidump passwd
.) 2>/dev/null | grep "^$usr:"`
+ exists=`(getent passwd "$usr"; \
+ grep "^$usr:" /etc/passwd; \
+ ypmatch "$usr" passwd; \
+ nismatch "$usr" passwd; \
+ nidump passwd . | grep "^$usr:") 2>/dev/null | \
+ sed -e 'q'`
if [ ".$exists" = . ]; then
if [ ".$cusr" != ".root" ]; then
echo "openpkg:WARNING: skipping creation of OpenPKG $class
user $usr" 1>&2
@@ -1766,7 +1779,12 @@
fi
# check whether group already exists
- exists=`(getent group; cat /etc/group; ypcat group; nidump group .)
2>/dev/null | grep "^$grp:"`
+ exists=`(getent group "$grp"; \
+ grep "^$grp:" /etc/group; \
+ ypmatch "$grp" group; \
+ nismatch "$grp" group; \
+ nidump group . | grep "^$grp:") 2>/dev/null | \
+ sed -e 'q'`
if [ ".$exists" = . ]; then
if [ ".$cusr" != ".root" ]; then
echo "openpkg:WARNING: skipping creation of OpenPKG $class
group $grp" 1>&2
@@ -2459,7 +2477,12 @@
class="$1"; usr="$2"; uid="$3"; grp="$4"; gid="$5"
# check whether user already exists
- exists=`(getent passwd; cat /etc/passwd; ypcat passwd; nidump passwd
.) 2>/dev/null | grep "^$usr:"`
+ exists=`(getent passwd "$usr"; \
+ grep "^$usr:" /etc/passwd; \
+ ypmatch "$usr" passwd; \
+ nismatch "$usr" passwd; \
+ nidump passwd . | grep "^$usr:") 2>/dev/null | \
+ sed -e 'q'`
if [ ".$exists" != . ]; then
if [ ".$cusr" != ".root" ]; then
echo "openpkg:WARNING: skipping deletion of OpenPKG $class
user $usr" 1>&2
@@ -2515,7 +2538,12 @@
fi
# check whether group already exists
- exists=`(getent group; cat /etc/group; ypcat group; nidump group .)
2>/dev/null | grep "^$grp:"`
+ exists=`(getent group "$grp"; \
+ grep "^$grp:" /etc/group; \
+ ypmatch "$grp" group; \
+ nismatch "$grp" group; \
+ nidump group . | grep "^$grp:") 2>/dev/null | \
+ sed -e 'q'`
if [ ".$exists" != . ]; then
if [ ".$cusr" != ".root" ]; then
echo "openpkg:WARNING: skipping deletion of OpenPKG $class
group $grp" 1>&2
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/rpmmacros
============================================================================
$ cvs diff -u -r1.77 -r1.78 rpmmacros
--- openpkg-src/openpkg/rpmmacros 22 Jun 2006 08:51:06 -0000 1.77
+++ openpkg-src/openpkg/rpmmacros 29 Sep 2006 06:54:05 -0000 1.78
@@ -101,26 +101,26 @@
# the *S*uper-user user/group name/id pair
%l_susr @SUSR@
%l_sgrp @SGRP@
-%l_suid %((getent passwd; cat /etc/passwd; ypcat passwd;
nidump passwd .) 2>/dev/null | grep "^%{l_susr}:" | sed -e 'q' | awk -F: '{
print $3; }')
-%l_sgid %((getent group; cat /etc/group; ypcat group;
nidump group .) 2>/dev/null | grep "^%{l_sgrp}:" | sed -e 'q' | awk -F: '{
print $3; }')
+%l_suid %((getent passwd "%{l_susr}"; grep "^%{l_susr}:"
/etc/passwd; ypmatch "%{l_susr}" passwd; nismatch "%{l_susr}" passwd; nidump
passwd . | grep "^%{l_susr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
+%l_sgid %((getent group "%{l_sgrp}"; grep "^%{l_sgrp}:"
/etc/group; ypmatch "%{l_sgrp}" group; nismatch "%{l_sgrp}" group; nidump
group . | grep "^%{l_susr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
# the *M*anagement user/group name/id pair
%l_musr @MUSR@
%l_mgrp @MGRP@
-%l_muid %((getent passwd; cat /etc/passwd; ypcat passwd;
nidump passwd .) 2>/dev/null | grep "^%{l_musr}:" | sed -e 'q' | awk -F: '{
print $3; }')
-%l_mgid %((getent group; cat /etc/group; ypcat group;
nidump group .) 2>/dev/null | grep "^%{l_mgrp}:" | sed -e 'q' | awk -F: '{
print $3; }')
+%l_muid %((getent passwd "%{l_musr}"; grep "^%{l_musr}:"
/etc/passwd; ypmatch "%{l_musr}" passwd; nismatch "%{l_musr}" passwd; nidump
passwd . | grep "^%{l_musr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
+%l_mgid %((getent group "%{l_mgrp}"; grep "^%{l_mgrp}:"
/etc/group; ypmatch "%{l_mgrp}" group; nismatch "%{l_mgrp}" group; nidump
group . | grep "^%{l_musr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
# the *R*restricted user/group name/id pair
%l_rusr @RUSR@
%l_rgrp @RGRP@
-%l_ruid %((getent passwd; cat /etc/passwd; ypcat passwd;
nidump passwd .) 2>/dev/null | grep "^%{l_rusr}:" | sed -e 'q' | awk -F: '{
print $3; }')
-%l_rgid %((getent group; cat /etc/group; ypcat group;
nidump group .) 2>/dev/null | grep "^%{l_rgrp}:" | sed -e 'q' | awk -F: '{
print $3; }')
+%l_ruid %((getent passwd "%{l_rusr}"; grep "^%{l_rusr}:"
/etc/passwd; ypmatch "%{l_rusr}" passwd; nismatch "%{l_rusr}" passwd; nidump
passwd . | grep "^%{l_rusr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
+%l_rgid %((getent group "%{l_rgrp}"; grep "^%{l_rgrp}:"
/etc/group; ypmatch "%{l_rgrp}" group; nismatch "%{l_rgrp}" group; nidump
group . | grep "^%{l_rusr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
# the *N*on-privileged user/group name/id pair
%l_nusr @NUSR@
%l_ngrp @NGRP@
-%l_nuid %((getent passwd; cat /etc/passwd; ypcat passwd;
nidump passwd .) 2>/dev/null | grep "^%{l_nusr}:" | sed -e 'q' | awk -F: '{
print $3; }')
-%l_ngid %((getent group; cat /etc/group; ypcat group;
nidump group .) 2>/dev/null | grep "^%{l_ngrp}:" | sed -e 'q' | awk -F: '{
print $3; }')
+%l_nuid %((getent passwd "%{l_nusr}"; grep "^%{l_nusr}:"
/etc/passwd; ypmatch "%{l_nusr}" passwd; nismatch "%{l_nusr}" passwd; nidump
passwd . | grep "^%{l_nusr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
+%l_ngid %((getent group "%{l_ngrp}"; grep "^%{l_ngrp}:"
/etc/group; ypmatch "%{l_ngrp}" group; nismatch "%{l_ngrp}" group; nidump
group . | grep "^%{l_nusr}:") 2>/dev/null | sed -e 'q' | awk -F: '{ print $3;
}')
# backward compatibility (openpkg < 20020204)
%l_fsusr %{l_musr}
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/openpkg/shtool
============================================================================
$ cvs diff -u -r1.34 -r1.35 shtool
--- openpkg-src/openpkg/shtool 19 Apr 2006 16:45:22 -0000 1.34
+++ openpkg-src/openpkg/shtool 29 Sep 2006 06:54:05 -0000 1.35
@@ -768,11 +768,14 @@
userid=`grep "^${username}:" /etc/passwd 2>/dev/null
| \
sed -e 's/[^:]*:[^:]*://' -e 's/:.*$//'`
if [ ".$userid" = . ]; then
- userid=`(ypcat passwd) 2>/dev/null |
- grep "^${username}:" | \
- sed -e 's/[^:]*:[^:]*://' -e 's/:.*$//'`
+ userid=`(ypmatch "${username}" passwd; nismatch
"${username}" passwd) 2>/dev/null | \
+ sed -e 'q' | sed -e 's/[^:]*:[^:]*://'
-e 's/:.*$//'`
if [ ".$userid" = . ]; then
- userid='?'
+ userid=`(nidump passwd . | grep
"^${username}:") 2>/dev/null | \
+ sed -e 's/[^:]*:[^:]*://' -e
's/:.*$//'`
+ if [ ".$userid" = . ]; then
+ userid='?'
+ fi
fi
fi
fi
@@ -797,10 +800,14 @@
groupid=`grep "^${username}:" /etc/passwd 2>/dev/null | \
sed -e 's/[^:]*:[^:]*:[^:]*://' -e 's/:.*$//'`
if [ ".$groupid" = . ]; then
- groupid=`(ypcat passwd) 2>/dev/null | grep
"^${username}:" | \
- sed -e 's/[^:]*:[^:]*:[^:]*://' -e
's/:.*$//'`
+ groupid=`(ypmatch "${username}" passwd; nismatch
"${username}" passwd) 2>/dev/null | \
+ sed -e 'q' | sed -e
's/[^:]*:[^:]*:[^:]*://' -e 's/:.*$//'`
if [ ".$groupid" = . ]; then
- groupid='?'
+ groupid=`(nidump passwd . | grep
"^${username}:") 2>/dev/null | \
+ sed -e 's/[^:]*:[^:]*:[^:]*://' -e
's/:.*$//'`
+ if [ ".$groupid" = . ]; then
+ groupid='?'
+ fi
fi
fi
fi
@@ -825,11 +832,16 @@
groupname=`grep "^[^:]*:[^:]*:${groupid}:" /etc/group
2>/dev/null | \
sed -e 's/:.*$//'`
if [ ".$groupname" = . ]; then
- groupname=`(ypcat group) 2>/dev/null | \
- grep "^[^:]*:[^:]*:${groupid}:" | \
+ groupname=`(ypcat group; niscat group) 2>/dev/null |
\
+ sed -e 'q' | grep
"^[^:]*:[^:]*:${groupid}:" | \
sed -e 's/:.*$//'`
if [ ".$groupname" = . ]; then
- groupname='?'
+ groupname=`(nidump group .) 2>/dev/null | \
+ grep "^[^:]*:[^:]*:${groupid}:" | \
+ sed -e 's/:.*$//'`
+ if [ ".$groupname" = . ]; then
+ groupname='?'
+ fi
fi
fi
fi
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [email protected]