#!/bin/sh
#
# Die Banner-Datei soll beim Login via ssh einen Ueberblick ueber das System geben.
# Die Botschaft enthaelt die Firmware-Version, sowie relevante Ereignisse (reboot, olsr-Neustarts).
#
# Dieses Skript wird nur ein einziges Mal nach einem Upgrade oder der Erstinstallation ausgefuehrt:
#   http://wiki.openwrt.org/doc/uci#defaults
#


# shellcheck source=opennet/packages/on-core/files/usr/lib/opennet/on-helper.sh
. "${IPKG_INSTROOT:-}/usr/lib/opennet/on-helper.sh"

BANNER_FILE=/etc/banner
BANNER_MARKER=opennet


remove_old_header() {
	# aktualisieren einer aelteren opennet-Firmware?
	if grep -q "$BANNER_MARKER" "$BANNER_FILE"; then
		# alle Zeilen ab der Markierung loeschen
		sed -i "/$BANNER_MARKER/,\$d" "$BANNER_FILE"
	fi
}


add_firmware_header() {
	local length=54
	local line
	line="- with $BANNER_MARKER firmware $(get_on_firmware_version) -"
	while [ "${#line}" -lt "$length" ]; do
		# abwechselnd vorn und hinten Zeichen hinzufuegen
		line="$line-"
		[ "${#line}" -lt "$length" ] && line="-$line"
	done
	# fuehrendes Minus entfernen
	echo " ${line#-}"
	echo " -----------------------------------------------------"
}

remove_old_header
add_firmware_header >>"$BANNER_FILE"

