summaryrefslogtreecommitdiff
path: root/security/drweb-sendmail/scripts/post-install
diff options
context:
space:
mode:
Diffstat (limited to 'security/drweb-sendmail/scripts/post-install')
-rw-r--r--security/drweb-sendmail/scripts/post-install38
1 files changed, 23 insertions, 15 deletions
diff --git a/security/drweb-sendmail/scripts/post-install b/security/drweb-sendmail/scripts/post-install
index 7e0a5a7d02db..5d88802e161c 100644
--- a/security/drweb-sendmail/scripts/post-install
+++ b/security/drweb-sendmail/scripts/post-install
@@ -1,21 +1,29 @@
#!/bin/sh
ex=0
-if ! id -u drweb > /dev/null 2>&1; then
- echo "You need an account \"drweb\" to install this package."
- echo "Please add it by hand (try \"man vipw\") and try again."
- echo ""
- echo "An example /etc/master.passwd entry is:"
- echo "drweb:*:426:426::0:0:Dr.Web Scanner:/nonexistent:/sbin/nologin"
- echo ""
- ex=1
+USER=drweb
+GROUP=${USER}
+UID=426
+GID=${UID}
+
+if ! pw group show "${GROUP}" 2>/dev/null 1>&2; then
+ if pw groupadd ${GROUP} -g ${GID}; then
+ echo "Added group \"${GROUP}\"."
+ else
+ echo "Adding group \"${GROUP}\" failed..."
+ ex=1
+ fi
fi
-if ! grep -q "^drweb:" /etc/group; then
- echo "You need a group \"drweb\" to install this package."
- echo ""
- echo "An example /etc/group entry is:"
- echo "drweb:*:426:"
- echo ""
- ex=1
+
+if ! pw user show "${USER}" 2>/dev/null 1>&2; then
+ if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \
+ -s "/sbin/nologin" -d "/nonexistent" -c "Dr. Web Scanner"
+ then
+ echo "Added user \"${USER}\"."
+ else
+ echo "Adding user \"${USER}\" failed..."
+ ex=1
+ fi
fi
+
[ "$ex" = "1" ] && exit 1
exit 0