1 #!/bin/sh /etc/rc.common
2 # Copyright (C) 2015 OpenWrt.org
8 CONFIG
=/var
/etc
/pptpd.conf
9 CHAP_SECRETS
=/var
/etc
/chap-secrets
10 OPTIONS_PPTP
=/var
/etc
/options.pptpd
12 validate_login_section
() {
13 uci_load_validate pptpd login
"$1" "$2" \
19 validate_pptpd_section
() {
20 uci_load_validate pptpd service
"$1" "$2" \
24 'mppe:list(string):required no40 no56 stateless' \
30 echo "validation failed"
34 [ -n "$username" ] ||
return 0
35 [ -n "$password" ] ||
return 0
36 [ -n "$remoteip" ] || remoteip
=*
38 echo "$username pptp-server $password $remoteip" >> $CHAP_SECRETS
43 echo "validation failed"
47 [ "$enabled" -eq 0 ] && return 1
50 cp /etc
/pptpd.conf
$CONFIG
51 cp /etc
/ppp
/options.pptpd
$OPTIONS_PPTP
53 [ -n "$localip" ] && echo "localip $localip" >> $CONFIG
54 [ -n "$remoteip" ] && echo "remoteip $remoteip" >> $CONFIG
55 [ "$logwtmp" -eq 1 ] && echo "logwtmp" >> $CONFIG
57 echo "mppe $(echo $mppe | sed -e 's/\s/,/g')" >> $OPTIONS_PPTP
64 validate_pptpd_section pptpd setup_config ||
return
65 config_foreach validate_login_section login setup_login
67 ln -sfn $CHAP_SECRETS /etc
/ppp
/chap-secrets
70 procd_set_param
command $BIN -c $CONFIG --fg -o $OPTIONS_PPTP
75 procd_add_reload_trigger
"pptpd"
78 validate_pptpd_section
79 validate_login_section