X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=usr_sbin%2Fgrml-hostname;h=ade8631e240056bb1f666c115bf8369a83e11d2e;hb=f29c425ad79cbe31fca61397cbd3d97347f32cd7;hp=b529d1772107c632ef79b92b46880a7b0ca907c6;hpb=9375a86c1fe0f2936a7ff20f46aa98a4d5f1ffb3;p=grml-scripts.git diff --git a/usr_sbin/grml-hostname b/usr_sbin/grml-hostname index b529d17..ade8631 100755 --- a/usr_sbin/grml-hostname +++ b/usr_sbin/grml-hostname @@ -37,6 +37,20 @@ else retval=0 fi +# stupid + simplified checking for valid hostname (according to RFC 952) +VALIDATE=$(echo "$NEW_HOSTNAME" | tr --delete '[:alnum:]-') +if [ -n "$VALIDATE" ] ; then + if [ -z "$NONINTERACTIVE" ] ; then + dialog --title "${PN}" \ + --msgbox "Error: invalid characters specified in hostname: '$VALIDATE' can not be used inside hostnames." \ + 0 0 + exec "$0" + else + echo "Error: invalid characters specified in hostname: '$VALIDATE' can not be used inside hostnames." >&2 + exit 1 + fi +fi + case $retval in 0) echo "$NEW_HOSTNAME" > /etc/hostname @@ -61,7 +75,7 @@ Configuration of myhostname in /etc/postfix/main.cf has been adjusted as well. D /etc/init.d/avahi-daemon restart fi - /etc/init.d/hostname.sh + hostname "$NEW_HOSTNAME" if [ -z "$NONINTERACTIVE" ] ; then dialog --stdout --title "${PN}" --msgbox "Setting hostname to $NEW_HOSTNAME was successful.$POSTFIX" 0 0