mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 14:23:38 +00:00
base-files: simplify restorecon logic
This commit is contained in:
parent
8527c75281
commit
9f40de14ca
@ -209,10 +209,10 @@ add_group_and_user() {
|
||||
if [ -n "$rusers" ]; then
|
||||
local tuple oIFS="$IFS"
|
||||
for tuple in $rusers; do
|
||||
local uid gid uname gname
|
||||
local uid gid uname gname addngroups addngroup addngname addngid
|
||||
|
||||
IFS=":"
|
||||
set -- $tuple; uname="$1"; gname="$2"
|
||||
set -- $tuple; uname="$1"; gname="$2"; addngroups="$3"
|
||||
IFS="="
|
||||
set -- $uname; uname="$1"; uid="$2"
|
||||
set -- $gname; gname="$1"; gid="$2"
|
||||
@ -232,7 +232,24 @@ add_group_and_user() {
|
||||
group_add_user "$gname" "$uname"
|
||||
fi
|
||||
|
||||
unset uid gid uname gname
|
||||
if [ -n "$uname" ] && [ -n "$addngroups" ]; then
|
||||
oIFS="$IFS"
|
||||
IFS=","
|
||||
for addngroup in $addngroups ; do
|
||||
IFS="="
|
||||
set -- $addngroup; addngname="$1"; addngid="$2"
|
||||
if [ -n "$addngid" ]; then
|
||||
group_exists "$addngname" || group_add "$addngname" "$addngid"
|
||||
else
|
||||
group_add_next "$addngname"
|
||||
fi
|
||||
|
||||
group_add_user "$addngname" "$uname"
|
||||
done
|
||||
IFS="$oIFS"
|
||||
fi
|
||||
|
||||
unset uid gid uname gname addngroups addngroup addngname addngid
|
||||
done
|
||||
fi
|
||||
}
|
||||
@ -245,11 +262,6 @@ default_postinst() {
|
||||
|
||||
add_group_and_user "${pkgname}"
|
||||
|
||||
if [ -f "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" ]; then
|
||||
( . "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" )
|
||||
ret=$?
|
||||
fi
|
||||
|
||||
if [ -d "$root/rootfs-overlay" ]; then
|
||||
cp -R $root/rootfs-overlay/. $root/
|
||||
rm -fR $root/rootfs-overlay/
|
||||
@ -275,6 +287,11 @@ default_postinst() {
|
||||
rm -f /tmp/luci-indexcache
|
||||
fi
|
||||
|
||||
if [ -f "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" ]; then
|
||||
( . "$root/usr/lib/opkg/info/${pkgname}.postinst-pkg" )
|
||||
ret=$?
|
||||
fi
|
||||
|
||||
local shell="$(command -v bash)"
|
||||
for i in $(grep -s "^/etc/init.d/" "$root$filelist"); do
|
||||
if [ -n "$root" ]; then
|
||||
@ -314,13 +331,19 @@ find_mtd_part() {
|
||||
}
|
||||
|
||||
find_mmc_part() {
|
||||
local DEVNAME PARTNAME
|
||||
local DEVNAME PARTNAME ROOTDEV
|
||||
|
||||
if grep -q "$1" /proc/mtd; then
|
||||
echo "" && return 0
|
||||
fi
|
||||
|
||||
for DEVNAME in /sys/block/mmcblk*/mmcblk*p*; do
|
||||
if [ -n "$2" ]; then
|
||||
ROOTDEV="$2"
|
||||
else
|
||||
ROOTDEV="mmcblk*"
|
||||
fi
|
||||
|
||||
for DEVNAME in /sys/block/$ROOTDEV/mmcblk*p*; do
|
||||
PARTNAME="$(grep PARTNAME ${DEVNAME}/uevent | cut -f2 -d'=')"
|
||||
[ "$PARTNAME" = "$1" ] && echo "/dev/$(basename $DEVNAME)" && return 0
|
||||
done
|
||||
@ -348,7 +371,7 @@ group_add_next() {
|
||||
return
|
||||
fi
|
||||
gids=$(cut -d: -f3 ${IPKG_INSTROOT}/etc/group)
|
||||
gid=65536
|
||||
gid=32768
|
||||
while echo "$gids" | grep -q "^$gid$"; do
|
||||
gid=$((gid + 1))
|
||||
done
|
||||
@ -363,6 +386,9 @@ group_add_user() {
|
||||
echo "$grp" | grep -q ":$" && delim=""
|
||||
[ -n "$IPKG_INSTROOT" ] || lock /var/lock/passwd
|
||||
sed -i "s/$grp/$grp$delim$2/g" ${IPKG_INSTROOT}/etc/group
|
||||
if [ -z "$IPKG_INSTROOT" ] && [ -x /usr/sbin/selinuxenabled ] && selinuxenabled; then
|
||||
restorecon /etc/group
|
||||
fi
|
||||
[ -n "$IPKG_INSTROOT" ] || lock -u /var/lock/passwd
|
||||
}
|
||||
|
||||
@ -376,7 +402,7 @@ user_add() {
|
||||
local rc
|
||||
[ -z "$uid" ] && {
|
||||
uids=$(cut -d: -f3 ${IPKG_INSTROOT}/etc/passwd)
|
||||
uid=65536
|
||||
uid=32768
|
||||
while echo "$uids" | grep -q "^$uid$"; do
|
||||
uid=$((uid + 1))
|
||||
done
|
||||
|
Loading…
Reference in New Issue
Block a user