1 #!/bin/sh /etc/rc.common
2 # Copyright (C) 2006-2011 OpenWrt.org
9 local interface server_interfaces client_interfaces both_interfaces
10 config_get server_interfaces
"$cfg" server_interface
11 config_get client_interfaces
"$cfg" client_interface
12 config_get both_interfaces
"$cfg" both_interfaces
13 for interface
in $server_interfaces; do
14 append interfaces
"$interface" "|"
16 for interface
in $client_interfaces; do
17 append interfaces
"$interface" "|"
19 for interface
in $both_interfaces; do
20 append interfaces
"$interface" "|"
24 pppoe_relay_instance
() {
26 local interface server_interfaces client_interfaces both_interfaces maxsessions timeout OPTIONS
27 config_get server_interfaces
"$cfg" server_interface
28 config_get client_interfaces
"$cfg" client_interface
29 config_get both_interfaces
"$cfg" both_interfaces
30 config_get maxsessions
"$cfg" maxsesssions
31 config_get timeout
"$cfg" timeout
32 config_get_bool use_non_uci_config
"$cfg" use_non_uci_config
0
34 if [ "$use_non_uci_config" -gt 0 ]; then
35 .
/etc
/default
/pppoe-relay
37 [ -z "${server_interfaces}${client_interfaces}${both_interfaces}" ] && return 1
38 for interface
in $server_interfaces; do
39 append OPTIONS
"-S $interface"
41 for interface
in $client_interfaces; do
42 append OPTIONS
"-C $interface"
44 for interface
in $both_interfaces; do
45 append OPTIONS
"-B $interface"
47 [ -n "$maxsesssions" ] && append OPTIONS
"-n $maxsesssions"
48 [ -n "$timeout" ] && append OPTIONS
"-i $timeout"
52 procd_set_param
command /usr
/sbin
/pppoe-relay
-F
53 procd_append_param
command $OPTIONS
58 local use_non_uci_config
61 config_foreach pppoe_relay_instance pppoe_relay
68 config_foreach pppoe_triggers pppoe_relay
70 procd_add_reload_trigger
"pppoe"
71 procd_add_interface_trigger
"$interfaces"