blob: 16ac0132485c64767e6b6959fcbfbaa0615e0795 [file] [log] [blame]
#! /bin/sh
. /etc/utils.sh
GHN_DIR="/tmp/ghn"
GHN_MAC_ADDR_FILE="${GHN_DIR}/mac_addr"
case "$1" in
start|"")
platform=$(cat /etc/platform)
if ! startswith "$platform" "GFLT4"; then
exit 0
fi
# Create Ghn directory and mac_addr file
mkdir -p "$GHN_DIR"
HNVRAM_MAC=$(hnvram -q -r MAC_ADDR_PON)
if [ -z "$HNVRAM_MAC" ]; then
echo "S45ghn: hnvram G.hn mac_addr is empty!"
exit 1
fi
echo "$HNVRAM_MAC" >"$GHN_MAC_ADDR_FILE"
# Bring up eth1 interface to ghn
ip link set up dev eth1
# ghn defaults to 10.10.1.69, we want to be on the same subnet
ip addr add 10.10.1.2/24 dev eth1
if ! read-ghn-local "NODE.GENERAL.ENABLE" 1>/dev/null; then
echo "S45ghn: Failed to read stats from G.hn: $HNVRAM_MAC"
exit 1
fi
# Periodically grab GHN stats and write to file
babysit 60 ghn-periodic-stats 2>&1 | logos ghn-periodic-stats &
;;
stop)
pkillwait -f ghn-periodic-stats
ip addr del 10.10.1.2/24 dev eth1
ip link set down dev eth1
rm -rf "$GHN_DIR"
;;
restart)
$0 stop; $0 start
;;
*)
echo "Usage: S45ghn {start|stop|restart}" >&2
exit 1
;;
esac