relay.hotplug 589 B

123456789101112131415161718192021222324252627282930313233343536
  1. #!/bin/sh
  2. # Break recursion
  3. [ "$PROTO" = "relay" ] && exit 0
  4. include /lib/network
  5. scan_interfaces
  6. restart_relayd() {
  7. local cfg="$1"
  8. local proto
  9. config_get proto "$1" proto
  10. [ "$proto" = "relay" ] || return 0
  11. local net networks
  12. config_get networks "$cfg" network
  13. for net in $networks; do
  14. [ "$net" = "$INTERFACE" ] && {
  15. env -i /sbin/ifup "$cfg" &
  16. return 0
  17. }
  18. done
  19. local ifn ifnames
  20. config_get ifnames "$cfg" ifname
  21. for ifn in $ifnames; do
  22. [ "$ifn" = "$DEVICE" ] && {
  23. env -i /sbin/ifup "$cfg" &
  24. return 0
  25. }
  26. done
  27. }
  28. config_foreach restart_relayd interface