diff -r b363f8ef6dcb -r 9b4bbbae3a98 openpkg/aux.usrgrp.sh
--- a/openpkg/aux.usrgrp.sh Tue Jul 31 12:27:54 2012 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,222 +0,0 @@
-#!/bin/sh
-##
-## usrgrp.sh -- user/group name/id determination
-## Copyright (c) 2000-2007 OpenPKG Foundation e.V.
-## Copyright (c) 2000-2007 Ralf S. Engelschall
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
-## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-
-# command line parameters (defaults)
-help=0
-usr=''; grp=''
-susr=''; sgrp=''
-musr=''; mgrp=''
-rusr=''; rgrp=''
-nusr=''; ngrp=''
-suid=''; sgid=''
-muid=''; mgid=''
-ruid=''; rgid=''
-nuid=''; ngid=''
-
-# parse command line options
-for opt
-do
- case $opt in
- -*=*) arg=`echo "$opt" | sed 's/^[-_a-zA-Z0-9]*=//'` ;;
- *) arg='' ;;
- esac
- case $opt in
- -h | --help ) help=1 ;;
- --usr=* | --user=* ) usr=$arg ;;
- --grp=* | --group=* ) grp=$arg ;;
- --susr=* ) susr=$arg ;;
- --sgrp=* ) sgrp=$arg ;;
- --musr=* ) musr=$arg ;;
- --mgrp=* ) mgrp=$arg ;;
- --rusr=* ) rusr=$arg ;;
- --rgrp=* ) rgrp=$arg ;;
- --nusr=* ) nusr=$arg ;;
- --ngrp=* ) ngrp=$arg ;;
- --suid=* ) suid=$arg ;;
- --sgid=* ) sgid=$arg ;;
- --muid=* ) muid=$arg ;;
- --mgid=* ) mgid=$arg ;;
- --ruid=* ) ruid=$arg ;;
- --rgid=* ) rgid=$arg ;;
- --nuid=* ) nuid=$arg ;;
- --ngid=* ) ngid=$arg ;;
- * ) help=1 ;;
- esac
-done
-if [ ".$help" = .1 ]; then
- echo "Usage: sh $0 [-h|--help]" 2>&1
- echo " [--[smrn]?usr=] [--[smrn]?grp=]" 2>&1
- echo " [--[smrn]uid=] [--[smrn]gid=]" 2>&1
- exit 1
-fi
-
-# determine cusr/cgrp
-cusr=`(id -un) 2>/dev/null ||\
- (id | sed -e 's;^[^(]*(\([^)]*\)).*;\1;') 2>/dev/null ||\
- (whoami) 2>/dev/null ||\
- (who am i | cut "-d " -f1) 2>/dev/null ||\
- echo $LOGNAME`
-cgid=`(id -g $cusr) 2>/dev/null ||\
- ((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; niscat group; nidump group .) 2>/dev/null | grep "^[^:]*:[^:]*:${cgid}:" |\
- sed -n -e '1p' | awk -F: '{ print $1; }')`
-[ ".$cgrp" = . ] && cgrp="$cusr"
-
-# determine OpenPKG susr/sgrp
-if [ ".$susr" = . ]; then
- if [ ".$usr" = . ]; then
- susr="$cusr"
- else
- susr="root"
- fi
-fi
-if [ ".$sgrp" = . ]; then
- sgrp=`(id -gn $susr) 2>/dev/null`
- if [ ".$sgrp" = . ]; then
- 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; niscat group; nidump group .) 2>/dev/null |\
- grep "^[^:]*:[^:]*:${sgid}:" | sed -n -e '1p' | awk -F: '{ print $1; }'`
- fi
- if [ ".$sgrp" = . ]; then
- sgrp="wheel"
- fi
- fi
-fi
-
-# determine OpenPKG musr/mgrp
-if [ ".$musr" = . ]; then
- musr="$usr"
-fi
-if [ ".$musr" = . ]; then
- musr="$cusr"
-fi
-if [ ".$mgrp" = . ]; then
- mgrp=`(id -gn $musr) 2>/dev/null`
- if [ ".$mgrp" = . ]; then
- 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; niscat group; nidump group .) 2>/dev/null |\
- grep "^[^:]*:[^:]*:${mgid}:" | sed -n -e '1p' | awk -F: '{ print $1; }'`
- fi
- if [ ".$mgrp" = . ]; then
- mgrp="$grp"
- fi
- if [ ".$mgrp" = . ]; then
- mgrp="$cgrp"
- fi
- fi
-fi
-
-# determine OpenPKG rusr/rgrp
-if [ ".$rusr" = . ]; then
- rusr="${usr}-r"
-fi
-if [ ".$rusr" = ".-r" ]; then
- rusr="$cusr"
-fi
-if [ ".$rgrp" = . ]; then
- rgrp=`(id -gn $rusr) 2>/dev/null`
- if [ ".$rgrp" = . ]; then
- 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; nismatch group; nidump group .) 2>/dev/null |\
- grep "^[^:]*:[^:]*:${rgid}:" | sed -n -e '1p' | awk -F: '{ print $1; }'`
- fi
- if [ ".$rgrp" = . ]; then
- rgrp="${grp}-r"
- fi
- if [ ".$rgrp" = ".-r" ]; then
- rgrp="$cgrp"
- fi
- fi
-fi
-
-# determine OpenPKG nusr/ngrp
-if [ ".$nusr" = . ]; then
- nusr="${usr}-n"
-fi
-if [ ".$nusr" = ".-n" ]; then
- nusr="$cusr"
-fi
-if [ ".$ngrp" = . ]; then
- ngrp=`(id -gn $nusr) 2>/dev/null`
- if [ ".$ngrp" = . ]; then
- 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; niscat group; nidump group .) 2>/dev/null |\
- grep "^[^:]*:[^:]*:${ngid}:" | sed -n -e '1p' | awk -F: '{ print $1; }'`
- fi
- if [ ".$ngrp" = . ]; then
- ngrp="${grp}-n"
- fi
- if [ ".$ngrp" = ".-n" ]; then
- ngrp="$cgrp"
- fi
- fi
-fi
-
-# determine OpenPKG suid/sgid
-# (currently not necessary)
-
-# determine OpenPKG muid/mgid
-# (currently not necessary)
-
-# determine OpenPKG ruid/rgid
-# (currently not necessary)
-
-# determine OpenPKG nuid/ngid
-# (currently not necessary)
-
-# print results
-output=""
-for var in \
- susr sgrp \
- musr mgrp \
- rusr rgrp \
- nusr ngrp \
- suid sgid \
- muid mgid \
- ruid rgid \
- nuid ngid; do
- eval "val=\"\$$var\""
- if [ ".$output" = . ]; then
- output="$var=\"$val\""
- else
- output="$output; $var=\"$val\""
- fi
-done
-echo $output
-