PREIN
/bin/sh
if [ -n "`/usr/bin/getgid radius`" ]; then
if [ "`/usr/bin/getgid radius`" != "29" ]; then
echo "Error: group radius doesn't have gid=29. Correct this before installing freeradius." 1>&2
exit 1
fi
else
echo "Adding group radius GID=29."
/usr/sbin/groupadd -g 29 -r radius 1>&2 || exit $?
[ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i group || :
fi;
if [ -n "`/bin/id -u radius 2>/dev/null`" ]; then
if [ "`/bin/id -u radius`" != "29" ]; then
echo "Error: user radius doesn't have uid=29. Correct this before installing freeradius." 1>&2
exit 1
fi
else
echo "Adding user radius UID=29."
/usr/sbin/useradd \
\
-u 29 \
-r \
-d /var \
-s /bin/false \
-c "freeradius"\
-g radius \
-M \
\
radius 1>&2 || exit $?
[ ! -x /usr/sbin/nscd ] || /usr/sbin/nscd -i passwd || :
fi;
# TODO: should be in trigger instead.
# upgrade from previous versions of the package, where radius' gid was "nobody"
if [ "`id -g radius`" = "99" ]; then
usermod -g 29 radius
chown radius:radius /var/log/freeradius/*.log >/dev/null 2>&1 || :
chown radius:radius /var/log/freeradius/radacct/* >/dev/null 2>&1 || :
fi
PREUN
/bin/sh
if [ "$1" = "0" ]; then
{
if [ -f /var/lock/subsys/freeradius ]; then
/sbin/service freeradius stop 1>&2 || :;
fi }; /sbin/chkconfig --del freeradius
fi
POSTIN
/bin/sh
/sbin/chkconfig --add freeradius
{
skip_auto_restart() {
[ -f /etc/sysconfig/rpm ] && . /etc/sysconfig/rpm
[ -f /etc/sysconfig/freeradius ] && . /etc/sysconfig/freeradius
echo ${RPM_SKIP_AUTO_RESTART:-no}
};
if [ $(skip_auto_restart) = no ]; then
if [ -f /var/lock/subsys/freeradius ]; then
/sbin/service freeradius restart 1>&2 || :;
else
echo 'Run "/sbin/service freeradius start" to start freeradius daemon.'
fi
fi };
POSTUN
/bin/sh
if [ "$1" = "0" ]; then
/usr/lib/rpm/user_group.sh user del radius
/usr/lib/rpm/user_group.sh group del radius
fi