You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
# Find suitable PAM config file
|
|
|
|
|
|
|
|
rules="$1"
|
|
|
|
srcdir="$2"
|
|
|
|
outfile="$3"
|
|
|
|
|
|
|
|
service="xrdp-sesman"
|
|
|
|
pamdir="/etc/pam.d"
|
|
|
|
|
|
|
|
guess_rules ()
|
|
|
|
{
|
|
|
|
if test -s "$pamdir/password-auth"; then
|
|
|
|
rules="redhat"
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test -s "$pamdir/common-account"; then
|
|
|
|
if grep "^@include" "$pamdir/passwd" >/dev/null 2>&1; then
|
|
|
|
rules="debian"
|
|
|
|
else
|
|
|
|
rules="suse"
|
|
|
|
fi
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test ! -f "$pamdir/system-auth" -a -s "$pamdir/system"; then
|
|
|
|
rules="freebsd"
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test -s "$pamdir/authorization"; then
|
|
|
|
rules="macos"
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
rules="unix"
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
if test "$rules" = "auto"; then
|
|
|
|
guess_rules
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test -s "$srcdir/$service.$rules"; then
|
|
|
|
ln -nsf "$srcdir/$service.$rules" "$outfile"
|
|
|
|
else
|
|
|
|
echo "Cannot find $srcdir/$service.$rules"
|
|
|
|
exit 1
|
|
|
|
fi
|