mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
startmsg is a new rc.subr(8) function function to be used instead of
echo(1) when for boot messages. It replaces the often forgotten
check_startmsgs && echo ...
with
startmsg ...
No functional change intended.
I adjusted the commit message and did some final clean-ups of the patch
before committing.
PR: 255207
Reported by: Jose Luis Duran <jlduran@gmail.com>
Reviewed by: imp, 0mp
Approved by: imp (src)
Differential Revision: https://reviews.freebsd.org/D34514
58 lines
1.2 KiB
Bash
Executable file
58 lines
1.2 KiB
Bash
Executable file
#!/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}
|
|
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"
|