소스 검색

ppp: allow to set PPP interface name via config

allows to set PPP interface name manually via new
network interface option pppname.
If not set, default naming will be used (e.g. pppoe-eth0)

Signed-off-by: Ulrich Weber <[email protected]>

SVN-Revision: 40933
John Crispin 11 년 전
부모
커밋
9b595fcd4b
1개의 변경된 파일4개의 추가작업 그리고 2개의 파일을 삭제
  1. 4 2
      package/network/services/ppp/files/ppp.sh

+ 4 - 2
package/network/services/ppp/files/ppp.sh

@@ -19,12 +19,13 @@ ppp_generic_init_config() {
 	proto_config_add_boolean ipv6
 	proto_config_add_boolean authfail
 	proto_config_add_int mtu
+	proto_config_add_string pppname
 }
 
 ppp_generic_setup() {
 	local config="$1"; shift
 
-	json_get_vars ipv6 demand keepalive username password pppd_options
+	json_get_vars ipv6 demand keepalive username password pppd_options pppname
 	[ "$ipv6" = 1 ] || ipv6=""
 	if [ "${demand:-0}" -gt 0 ]; then
 		demand="precompiled-active-filter /etc/ppp/filter demand idle $demand"
@@ -33,6 +34,7 @@ ppp_generic_setup() {
 	fi
 
 	[ -n "$mtu" ] || json_get_var mtu mtu
+	[ -n "$pppname" ] || pppname="${proto:-ppp}-$config"
 
 	local interval="${keepalive##*[, ]}"
 	[ "$interval" != "$keepalive" ] || interval=5
@@ -41,7 +43,7 @@ ppp_generic_setup() {
 
 	proto_run_command "$config" /usr/sbin/pppd \
 		nodetach ipparam "$config" \
-		ifname "${proto:-ppp}-$config" \
+		ifname "$pppname" \
 		${keepalive:+lcp-echo-interval $interval lcp-echo-failure ${keepalive%%[, ]*}} \
 		${ipv6:++ipv6} \
 		nodefaultroute \