Blame SOURCES/ebtables.systemd

6e3d83
#!/bin/bash
6e3d83
6e3d83
RETVAL=0
6e3d83
6e3d83
initialize() {
6e3d83
  # Initialize $TYPE tables
6e3d83
  echo -n $"  $TYPE tables: "
6e3d83
  if [ -r /etc/sysconfig/ebtables.$TYPE ]; then
6e3d83
    /sbin/ebtables -t $TYPE --atomic-file /etc/sysconfig/ebtables.$TYPE --atomic-commit > /dev/null || RETVAL=1
6e3d83
  else
6e3d83
    echo -n "not configured"
6e3d83
  fi
6e3d83
  if [ $RETVAL -eq 0 ]; then
6e3d83
    echo -n $"[  OK  ]"
6e3d83
    echo -ne "\r"
6e3d83
  else
6e3d83
    echo -n $"[FAILED]"
6e3d83
    echo -ne "\r"
6e3d83
  fi
6e3d83
}
6e3d83
6e3d83
case $1 in
6e3d83
  start)
6e3d83
   # Initialize	filter tables
6e3d83
   TYPE=filter
6e3d83
   initialize
6e3d83
 
6e3d83
   # Initialize NAT tables
6e3d83
   echo
6e3d83
   TYPE=nat
6e3d83
   initialize
6e3d83
6e3d83
   # Initialize broute tables
6e3d83
   echo
6e3d83
   TYPE=broute
6e3d83
   initialize
6e3d83
  ;;
6e3d83
  stop)
6e3d83
    /sbin/ebtables -t filter --init-table || RETVAL=1
6e3d83
    /sbin/ebtables -t nat --init-table || RETVAL=1
6e3d83
    /sbin/ebtables -t broute --init-table || RETVAL=1
6e3d83
6e3d83
    for mod in $(grep -E '^(ebt|ebtable)_' /proc/modules | cut -f1 -d' ') ebtables; do
6e3d83
       /sbin/rmmod $mod || RETVAL=1
6e3d83
    done
6e3d83
6e3d83
    if [ $RETVAL -eq 0 ]; then
6e3d83
      echo -n $"[  OK  ]"
6e3d83
      echo -ne "\r"
6e3d83
    else
6e3d83
      echo -n $"[FAILED]"
6e3d83
      echo -ne "\r"
6e3d83
    fi
6e3d83
  ;;
6e3d83
  save)
6e3d83
    echo -n $"Saving Ethernet bridge filtering (ebtables): "
6e3d83
    /sbin/ebtables -t filter --atomic-file /etc/sysconfig/ebtables.filter --atomic-save || RETVAL=1
6e3d83
    /sbin/ebtables -t nat --atomic-file /etc/sysconfig/ebtables.nat --atomic-save || RETVAL=1
6e3d83
    /sbin/ebtables -t broute --atomic-file /etc/sysconfig/ebtables.broute --atomic-save || RETVAL=1
6e3d83
    if [ $RETVAL -eq 0 ]; then
6e3d83
      echo -n $"[  OK  ]"
6e3d83
      echo -ne "\r"
6e3d83
    else
6e3d83
      echo -n $"[FAILED]"
6e3d83
      echo -ne "\r"
6e3d83
    fi
6e3d83
  ;;
6e3d83
  *)
6e3d83
    echo "usage: ${0##*/} {start|stop|save}" >&2
6e3d83
    exit 1
6e3d83
  ;;
6e3d83
esac
6e3d83
6e3d83
# vim:set ts=2 sw=2 ft=sh et: