diff --git a/libexec/rc/rc.d/motd b/libexec/rc/rc.d/motd index d9dd60a0f59a..e27cf273741d 100755 --- a/libexec/rc/rc.d/motd +++ b/libexec/rc/rc.d/motd @@ -1,58 +1,59 @@ #!/bin/sh # # $FreeBSD$ # # PROVIDE: motd # REQUIRE: mountcritremote FILESYSTEMS # BEFORE: LOGIN . /etc/rc.subr name="motd" desc="Update /var/run/motd" rcvar="update_motd" start_cmd="motd_start" stop_cmd=":" COMPAT_MOTD="/etc/motd" TARGET="/var/run/motd" TEMPLATE="/etc/motd.template" PERMS="644" motd_start() { # Update kernel info in /var/run/motd # Must be done *before* interactive logins are possible # to prevent possible race conditions. # startmsg -n 'Updating motd:' if [ ! -f "${TEMPLATE}" ]; then # Create missing template from existing regular motd file, if # one exists. if [ -f "${COMPAT_MOTD}" ]; then sed '1{/^FreeBSD.*/{d;};};' "${COMPAT_MOTD}" > "${TEMPLATE}" chmod $PERMS "${TEMPLATE}" rm -f "${COMPAT_MOTD}" else # Otherwise, create an empty template file. install -c -o root -g wheel -m ${PERMS} /dev/null "${TEMPLATE}" fi # Provide compatibility symlink: if [ ! -h "${COMPAT_MOTD}" ]; then ln -sF "${TARGET}" "${COMPAT_MOTD}" fi fi T=`mktemp -t motd` - uname -v | sed -e 's,^\([^#]*\) #\(.* [1-2][0-9][0-9][0-9]\).*/\([^\]*\) $,\1 (\3) #\2,' > ${T} + uname -v | sed -e 's,^\([^#]*\) #\(.* [1-2][0-9][0-9][0-9]\).*/\([^\]*\)$,\1 (\3) #\2,' \ + -e 's,^\([^ ]*\) \([^ ]*\) \([^ ]*\) \([^ ]*\)$,\1 \2 (\4) \3,' > ${T} cat "${TEMPLATE}" >> ${T} install -C -o root -g wheel -m "${PERMS}" "$T" "${TARGET}" rm -f "$T" startmsg '.' } load_rc_config $name run_rc_command "$1"