motd revision 121068
178344Sobrien#!/bin/sh 278344Sobrien# 378344Sobrien# $NetBSD: motd,v 1.5 2000/09/19 13:04:38 lukem Exp $ 498184Sgordon# $FreeBSD: head/etc/rc.d/motd 121068 2003-10-13 08:44:07Z dougb $ 578344Sobrien# 678344Sobrien 778344Sobrien# PROVIDE: motd 878344Sobrien# REQUIRE: mountcritremote 998184Sgordon# BEFORE: LOGIN 1098184Sgordon# KEYWORD: FreeBSD NetBSD 1178344Sobrien 1278344Sobrien. /etc/rc.subr 1378344Sobrien 1478344Sobrienname="motd" 1578344Sobrienrcvar="update_motd" 1678344Sobrienstart_cmd="motd_start" 1778344Sobrienstop_cmd=":" 1878344Sobrien 19121068SdougbPERMS="644" 2098184Sgordon 2178344Sobrienmotd_start() 2278344Sobrien{ 2378344Sobrien # Update kernel info in /etc/motd 2478344Sobrien # Must be done *before* interactive logins are possible 2578344Sobrien # to prevent possible race conditions. 2678344Sobrien # 27121068Sdougb echo -n 'Updating motd' 2878344Sobrien if [ ! -f /etc/motd ]; then 2998184Sgordon install -c -o root -g wheel -m ${PERMS} /dev/null /etc/motd 3078344Sobrien fi 3198184Sgordon 32121068Sdougb if [ ! -w /etc/motd ]; then 33121068Sdougb echo ' ... /etc/motd is not writable, update failed.' 34121068Sdougb return 35121068Sdougb fi 36121068Sdougb 37121068Sdougb T=`mktemp -t motd` 38121068Sdougb uname -v | sed -e 's,^\([^#]*\) #\(.* [1-2][0-9][0-9][0-9]\).*/\([^\]*\) $,\1 (\3) #\2,' > ${T} 39121068Sdougb awk '{if (NR == 1) {if ($1 == "FreeBSD") {next} else {print "\n"$0}} else {print}}' < /etc/motd >> ${T} 40121068Sdougb 4198184Sgordon cmp -s $T /etc/motd || { 4298184Sgordon cp $T /etc/motd 4398184Sgordon chmod ${PERMS} /etc/motd 4498184Sgordon } 4578344Sobrien rm -f $T 46121068Sdougb 47121068Sdougb echo . 4878344Sobrien} 4978344Sobrien 5078344Sobrienload_rc_config $name 5178344Sobrienrun_rc_command "$1" 52