#!/bin/sh
 #
-# molly-guard -- wrapper script to prevent erroneous shutdowns via SSH
+# 30-ask-hostname - request the user to type in the hostname of the local host
 #
 # Copyright © martin f. krafft <madduck@madduck.net>
 # Released under the terms of the Artistic Licence 2.0
 
 ME=molly-guard
 
-ALWAYS_MOLLY=${ALWAYS_MOLLY:-"0"}
-[ -f /etc/default/${ME} ] && . /etc/default/${ME}
+[ -f "$MOLLYGUARD_SETTINGS" ] && . "$MOLLYGUARD_SETTINGS"
 
-CMD=$1; shift
 PRETEND_SSH=0
 for arg in "$@"; do
   case "$arg" in
-    (*-help)
-      usage 2>&1
-      eval $EXEC --help 2>&1
-      exit 1
-      ;;
     (*-pretend-ssh) PRETEND_SSH=1;;
   esac
 done
 
 # require an interactive terminal connected to stdin
-test -t 0                    || exit 0
+if ! test -t 0; then
+  echo "E: $ME: not connected to a terminal."
+  exit 1
+fi
 
 # we've been asked to always protect this host
-if [ ${ALWAYS_MOLLY} -eq 1 ]; then
-  echo "W: $ME: ${CMD} is always molly-guarded on this server."
+if [ ${ALWAYS_QUERY_HOSTNAME:-0} -eq 1 ]; then
+  echo "I: $ME: $MOLLYGUARD_CMD is always molly-guarded on this system."
 else
   # only run if we are being called over SSH, that is if the current terminal
   # was created by sshd.
   if ! pgrep -f "^sshd.+${PTS#/dev/}[[:space:]]*$" >/dev/null \
     && [ -z "${SSH_CONNECTION:-}" ]; then
       if [ $PRETEND_SSH -eq 1 ]; then
-        echo "I: this is not an SSH session, but --pretend-ssh was given..."
+        echo "I: $ME: this is not an SSH session, but --pretend-ssh was given..."
       else
         exit 0
       fi
   fi
 fi
 
-
 HOSTNAME="$(hostname --short)"
 
 sigh()
 {
-  echo "Good thing I asked; I won't $CMD $HOSTNAME ..."
+  echo "Good thing I asked; I won't $MOLLYGUARD_CMD $HOSTNAME ..."
   exit 1
 }
 
 trap 'echo;sigh' 1 2 3 9 10 12 15
 
-echo -n "Please type in hostname of the machine to $CMD: "
+echo -n "Please type in hostname of the machine to $MOLLYGUARD_CMD: "
 read HOSTNAME_USER || :
 
 [ "$HOSTNAME_USER" = "$HOSTNAME" ] || sigh