Disable default configuration in routersetup config file, use defaults in main scripts
[grml-network.git] / sbin / grml-sniff
index 3722c6a..d854f5d 100755 (executable)
@@ -16,22 +16,28 @@ usage_info()
    einfo "Configure via $CONFIG_FILE - see man 8 grml-sniff" ; eend 0
 }
 
-if ! [ -r "$CONFIG_FILE" ] ; then
-  eerror "$CONFIG_FILE could not be read."
-  exit 1
-fi
-
-. "$CONFIG_FILE"
-
-if [ -z "$BRIDGE_DEVICES" ] ; then
-   eerror "Bridge devices (\$BRIDGE_DEVICES) not set in $CONFIG_FILE"
-   exit 1
+if [ -r "$CONFIG_FILE" ] ; then
+  . "$CONFIG_FILE"
+else
+  ewarn "Could not read $CONFIG_FILE"
 fi
 
+# defaults if unconfigured
 [ -n "$BRCTL" ]          || BRCTL='brctl'
 [ -n "$BRIDGE_NAME" ]    || BRIDGE_NAME='br0'
 [ -n "$BRIDGE_DEVICES" ] || BRIDGE_DEVICES='eth0 eth1'
 
+check_devs() {
+  for dev in $BRIDGE_DEVICES ; do
+    ip link show dev "$dev" >/dev/null 2>&1 || return 1
+ done
+}
+
+if ! check_devs ; then
+  eerror "BRIDGE_DEVICES $BRIDGE_DEVICES do not seem to exist." >&2
+  exit 1
+fi
+
 check4progs $BRCTL || exit 1
 
 case "$1" in