AnonSec Team
Server IP : 10.1.204.1  /  Your IP : 216.73.216.250
Web Server : Apache/2.4.66 (Debian)
System : Linux madang-bd97cb958-x26ms 6.8.0-78-generic #78-Ubuntu SMP PREEMPT_DYNAMIC Tue Aug 12 11:28:09 UTC 2025 aarch64
User : root ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : ON  |  Python : OFF
Directory (0755) :  /sbin/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //sbin/add-shell
#!/bin/sh -e

if test $# -eq 0
then
        echo "usage: $0 shellname [shellname ...]"
        exit 1
fi

file="$DPKG_ROOT/etc/shells"
# I want this to be GUARANTEED to be on the same filesystem as $file
tmpfile="${file}.tmp"

set -o noclobber

cleanup() {
	rm -f "$tmpfile"
}
trap cleanup EXIT

if ! cat "$file" > "$tmpfile"
then
        cat 1>&2 <<EOF
Either another instance of $0 is running, or it was previously interrupted.
Please examine ${tmpfile} to see if it should be moved onto ${file}.
EOF
        exit 1
fi

for i
do
        REALDIR="$(dirname "$(realpath -m "$i")")/$(basename "$i")"
        for j in "$i" "$REALDIR"
        do
                if ! grep -q "^${j}$" "$tmpfile"
                then
                        echo "$j" >> "$tmpfile"
                fi
        done
done

chmod --reference="${file}" "${tmpfile}" || chmod $(stat -c %a "${file}") "${tmpfile}"
chown --reference="${file}" "${tmpfile}" || chown $(stat -c %U "${file}") "${tmpfile}"

mv -Z "${tmpfile}" "${file}" || mv "${tmpfile}" "${file}"

trap "" EXIT
exit 0

AnonSec - 2021