mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +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
|
if [ -n "$rusers" ]; then
|
||||||
local tuple oIFS="$IFS"
|
local tuple oIFS="$IFS"
|
||||||
for tuple in $rusers; do
|
for tuple in $rusers; do
|
||||||
local uid gid uname gname
|
local uid gid uname gname addngroups addngroup addngname addngid
|
||||||
|
|
||||||
IFS=":"
|
IFS=":"
|
||||||
set -- $tuple; uname="$1"; gname="$2"
|
set -- $tuple; uname="$1"; gname="$2"; addngroups="$3"
|
||||||
IFS="="
|
IFS="="
|
||||||
set -- $uname; uname="$1"; uid="$2"
|
set -- $uname; uname="$1"; uid="$2"
|
||||||
set -- $gname; gname="$1"; gid="$2"
|
set -- $gname; gname="$1"; gid="$2"
|
||||||
@ -232,7 +232,24 @@ add_group_and_user() {
|
|||||||
group_add_user "$gname" "$uname"
|
group_add_user "$gname" "$uname"
|
||||||
fi
|
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
|
done
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@ -245,11 +262,6 @@ default_postinst() {
|
|||||||
|
|
||||||
add_group_and_user "${pkgname}"
|
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
|
if [ -d "$root/rootfs-overlay" ]; then
|
||||||
cp -R $root/rootfs-overlay/. $root/
|
cp -R $root/rootfs-overlay/. $root/
|
||||||
rm -fR $root/rootfs-overlay/
|
rm -fR $root/rootfs-overlay/
|
||||||
@ -275,6 +287,11 @@ default_postinst() {
|
|||||||
rm -f /tmp/luci-indexcache
|
rm -f /tmp/luci-indexcache
|
||||||
fi
|
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)"
|
local shell="$(command -v bash)"
|
||||||
for i in $(grep -s "^/etc/init.d/" "$root$filelist"); do
|
for i in $(grep -s "^/etc/init.d/" "$root$filelist"); do
|
||||||
if [ -n "$root" ]; then
|
if [ -n "$root" ]; then
|
||||||
@ -314,13 +331,19 @@ find_mtd_part() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
find_mmc_part() {
|
find_mmc_part() {
|
||||||
local DEVNAME PARTNAME
|
local DEVNAME PARTNAME ROOTDEV
|
||||||
|
|
||||||
if grep -q "$1" /proc/mtd; then
|
if grep -q "$1" /proc/mtd; then
|
||||||
echo "" && return 0
|
echo "" && return 0
|
||||||
fi
|
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="$(grep PARTNAME ${DEVNAME}/uevent | cut -f2 -d'=')"
|
||||||
[ "$PARTNAME" = "$1" ] && echo "/dev/$(basename $DEVNAME)" && return 0
|
[ "$PARTNAME" = "$1" ] && echo "/dev/$(basename $DEVNAME)" && return 0
|
||||||
done
|
done
|
||||||
@ -348,7 +371,7 @@ group_add_next() {
|
|||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
gids=$(cut -d: -f3 ${IPKG_INSTROOT}/etc/group)
|
gids=$(cut -d: -f3 ${IPKG_INSTROOT}/etc/group)
|
||||||
gid=65536
|
gid=32768
|
||||||
while echo "$gids" | grep -q "^$gid$"; do
|
while echo "$gids" | grep -q "^$gid$"; do
|
||||||
gid=$((gid + 1))
|
gid=$((gid + 1))
|
||||||
done
|
done
|
||||||
@ -363,6 +386,9 @@ group_add_user() {
|
|||||||
echo "$grp" | grep -q ":$" && delim=""
|
echo "$grp" | grep -q ":$" && delim=""
|
||||||
[ -n "$IPKG_INSTROOT" ] || lock /var/lock/passwd
|
[ -n "$IPKG_INSTROOT" ] || lock /var/lock/passwd
|
||||||
sed -i "s/$grp/$grp$delim$2/g" ${IPKG_INSTROOT}/etc/group
|
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
|
[ -n "$IPKG_INSTROOT" ] || lock -u /var/lock/passwd
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -376,7 +402,7 @@ user_add() {
|
|||||||
local rc
|
local rc
|
||||||
[ -z "$uid" ] && {
|
[ -z "$uid" ] && {
|
||||||
uids=$(cut -d: -f3 ${IPKG_INSTROOT}/etc/passwd)
|
uids=$(cut -d: -f3 ${IPKG_INSTROOT}/etc/passwd)
|
||||||
uid=65536
|
uid=32768
|
||||||
while echo "$uids" | grep -q "^$uid$"; do
|
while echo "$uids" | grep -q "^$uid$"; do
|
||||||
uid=$((uid + 1))
|
uid=$((uid + 1))
|
||||||
done
|
done
|
||||||
|
Loading…
Reference in New Issue
Block a user