Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
freedombone-mesh-ethernet 1.34 KiB
#!/bin/bash
#  _____               _           _
# |   __|___ ___ ___ _| |___ _____| |_ ___ ___ ___
# |   __|  _| -_| -_| . | . |     | . | . |   | -_|
# |__|  |_| |___|___|___|___|_|_|_|___|___|_|_|___|
#
#                              Freedom in the Cloud
#
# Daemon which monitors whether ethernet is connected or not
#
# License
# =======
#
# Copyright (C) 2018-2019 Bob Mottram <bob@freedombone.net>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

ETHERNET_ATTACHED=/sys/class/net/eth0/carrier
prev_eth_attached=$(cat $ETHERNET_ATTACHED)

while true
do
    sleep 5
    eth_attached=$(cat $ETHERNET_ATTACHED)
    if [[ "$eth_attached" != "$prev_eth_attached" ]]; then
        /usr/local/bin/batman restart
    fi
    prev_eth_attached=$eth_attached
done

exit 0