#!/usr/bin/perl # save_options.cgi # Save PPP server options require './pptp-server-lib.pl'; $access{'options'} || &error($text{'options_ecannot'}); &error_setup($text{'options_err'}); &ReadParse(); $conf = &get_config(); $option = &find_conf("option", $conf); $option ||= $config{'ppp_options'}; &lock_file($option); @opts = &parse_ppp_options($option); # Validate inputs $in{'mtu_def'} || $in{'mtu'} =~ /^\d+$/ || &error($text{'options_emtu'}); $in{'mru_def'} || $in{'mru'} =~ /^\d+$/ || &error($text{'options_emru'}); $in{'name_def'} || $in{'name'} =~ /^[A-Za-z0-9\.\-]+$/ || &error($text{'options_ename'}); # Save options &save_ppp_option(\@opts, $option, "proxyarp", $in{'proxyarp'} ? { 'name' => 'proxyarp' } : undef); &save_ppp_option(\@opts, $option, "lock", $in{'lock'} ? { 'name' => 'lock' } : undef); &save_ppp_option(\@opts, $option, "mtu", $in{'mtu_def'} ? undef : { 'name' => 'mtu', 'value' => $in{'mtu'} }); &save_ppp_option(\@opts, $option, "mru", $in{'mru_def'} ? undef : { 'name' => 'mru', 'value' => $in{'mru'} }); if ($in{'auth'} == 0) { &save_ppp_option(\@opts, $option, "auth", undef); &save_ppp_option(\@opts, $option, "noauth", undef); } elsif ($in{'auth'} == 1) { &save_ppp_option(\@opts, $option, "auth", undef); &save_ppp_option(\@opts, $option, "noauth", { 'name' => 'noauth' }); } else { &save_ppp_option(\@opts, $option, "noauth", undef); &save_ppp_option(\@opts, $option, "auth", { 'name' => 'auth' }); } &parse_auth("pap"); &parse_auth("chap"); &save_ppp_option(\@opts, $option, "login", $in{'login'} ? { 'name' => 'login' } : undef); &save_ppp_option(\@opts, $option, "name", $in{'name_def'} ? undef : { 'name' => 'name', 'value' => $in{'name'} }); &foreign_require("pptp-client", "pptp-client-lib.pl"); &pptp_client::parse_mppe_options(\@opts, $option); if (&pptp_client::mppe_support() == 1) { &parse_auth("mschap"); &parse_auth("mschap-v2"); } else { &parse_auth("chapms"); &parse_auth("chapms-v2"); } # All done &flush_file_lines(); &unlock_file($option); &webmin_log("options", undef, undef, \%in); &redirect(""); # parse_auth(name) sub parse_auth { local $a = $_[0]; if ($in{$a} == 2) { &save_ppp_option(\@opts, $option, "require-$a", { 'name' => "require-$a" }); &save_ppp_option(\@opts, $option, "refuse-$a", undef); } elsif ($in{$a} == 1) { &save_ppp_option(\@opts, $option, "require-$a", undef); &save_ppp_option(\@opts, $option, "refuse-$a", undef); } else { &save_ppp_option(\@opts, $option, "require-$a", undef); &save_ppp_option(\@opts, $option, "refuse-$a", { 'name' => "refuse-$a" }); } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
help | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
CHANGELOG | File | 213 B | 0644 |
|
acl_security.pl | File | 521 B | 0755 |
|
apply.cgi | File | 283 B | 0755 |
|
backup_config.pl | File | 743 B | 0755 |
|
config | File | 148 B | 0644 |
|
config-debian-linux | File | 254 B | 0644 |
|
config-mandrake-linux | File | 206 B | 0644 |
|
config-open-linux | File | 224 B | 0644 |
|
config-openSUSE-Linux-15.0-ALL | File | 210 B | 0644 |
|
config-suse-linux | File | 214 B | 0644 |
|
config-syno-linux | File | 148 B | 0644 |
|
config-trustix-linux | File | 214 B | 0644 |
|
config-united-linux | File | 214 B | 0644 |
|
config.info | File | 445 B | 0644 |
|
config.info.ca | File | 509 B | 0644 |
|
config.info.de | File | 501 B | 0644 |
|
config.info.es | File | 479 B | 0644 |
|
config.info.fr | File | 0 B | 0644 |
|
config.info.nl | File | 504 B | 0644 |
|
config.info.no | File | 483 B | 0644 |
|
config.info.pt_BR | File | 528 B | 0644 |
|
defaultacl | File | 50 B | 0644 |
|
delete_secrets.cgi | File | 524 B | 0755 |
|
disc.cgi | File | 507 B | 0755 |
|
edit_conf.cgi | File | 2.9 KB | 0755 |
|
edit_options.cgi | File | 4.44 KB | 0755 |
|
edit_secret.cgi | File | 2.99 KB | 0755 |
|
index.cgi | File | 2.72 KB | 0755 |
|
install_check.pl | File | 441 B | 0755 |
|
list_conns.cgi | File | 1.1 KB | 0755 |
|
list_secrets.cgi | File | 1.76 KB | 0755 |
|
log_parser.pl | File | 479 B | 0755 |
|
module.info | File | 216 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 138 B | 0644 |
|
module.info.ar | File | 0 B | 0644 |
|
module.info.ar.auto | File | 188 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 190 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 238 B | 0644 |
|
module.info.ca | File | 151 B | 0644 |
|
module.info.ca.auto | File | 14 B | 0644 |
|
module.info.cs | File | 24 B | 0644 |
|
module.info.cs.auto | File | 135 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 155 B | 0644 |
|
module.info.de | File | 0 B | 0644 |
|
module.info.de.auto | File | 168 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 259 B | 0644 |
|
module.info.es | File | 26 B | 0644 |
|
module.info.es.auto | File | 133 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 152 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 233 B | 0644 |
|
module.info.fi | File | 0 B | 0644 |
|
module.info.fi.auto | File | 160 B | 0644 |
|
module.info.fr | File | 0 B | 0644 |
|
module.info.fr.auto | File | 167 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 166 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 157 B | 0644 |
|
module.info.hu | File | 0 B | 0644 |
|
module.info.hu.auto | File | 160 B | 0644 |
|
module.info.it | File | 0 B | 0644 |
|
module.info.it.auto | File | 152 B | 0644 |
|
module.info.ja | File | 0 B | 0644 |
|
module.info.ja.auto | File | 199 B | 0644 |
|
module.info.ko | File | 0 B | 0644 |
|
module.info.ko.auto | File | 166 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 168 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 153 B | 0644 |
|
module.info.ms | File | 136 B | 0644 |
|
module.info.ms.auto | File | 14 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 164 B | 0644 |
|
module.info.nl | File | 24 B | 0644 |
|
module.info.nl.auto | File | 126 B | 0644 |
|
module.info.no | File | 24 B | 0644 |
|
module.info.no.auto | File | 131 B | 0644 |
|
module.info.pl | File | 0 B | 0644 |
|
module.info.pl.auto | File | 143 B | 0644 |
|
module.info.pt | File | 0 B | 0644 |
|
module.info.pt.auto | File | 158 B | 0644 |
|
module.info.pt_BR | File | 29 B | 0644 |
|
module.info.pt_BR.auto | File | 138 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 162 B | 0644 |
|
module.info.ru | File | 0 B | 0644 |
|
module.info.ru.auto | File | 228 B | 0644 |
|
module.info.sk | File | 0 B | 0644 |
|
module.info.sk.auto | File | 165 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 145 B | 0644 |
|
module.info.sv | File | 0 B | 0644 |
|
module.info.sv.auto | File | 146 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 314 B | 0644 |
|
module.info.tr | File | 0 B | 0644 |
|
module.info.tr.auto | File | 161 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 200 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 286 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 190 B | 0644 |
|
module.info.zh | File | 0 B | 0644 |
|
module.info.zh.auto | File | 136 B | 0644 |
|
module.info.zh_TW | File | 0 B | 0644 |
|
module.info.zh_TW.auto | File | 145 B | 0644 |
|
pptp-server-lib.pl | File | 6.15 KB | 0755 |
|
save_conf.cgi | File | 1.55 KB | 0755 |
|
save_options.cgi | File | 2.56 KB | 0755 |
|
save_secret.cgi | File | 1.48 KB | 0755 |
|
secrets-lib.pl | File | 1.64 KB | 0755 |
|
start.cgi | File | 413 B | 0755 |
|
stop.cgi | File | 456 B | 0755 |
|