Server IP : 195.201.23.43 / Your IP : 18.218.96.239 Web Server : Apache System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 User : kdecoratie ( 1041) PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/pap/ |
Upload File : |
# secrets-lib.pl # Common functions for editing a PPP users file # list_secrets() sub list_secrets { local(@rv, $line, $_); open(SEC, "<".$config{'pap_file'}); $line = 0; while(<SEC>) { chop; s/^#.*$//g; @w = &split_words($_); if (@w >= 3) { local(%sec, @ips); $sec{'client'} = $w[0]; $sec{'server'} = $w[1]; $sec{'secret'} = $w[2]; @ips = @w[3..$#w]; $sec{'ips'} = \@ips; $sec{'line'} = $line; $sec{'index'} = scalar(@rv); push(@rv, \%sec); } $line++; } close(SEC); return @rv; } # create_secret(&secret) sub create_secret { &open_tempfile(SEC, ">>$config{'pap_file'}"); &print_tempfile(SEC, &join_words($_[0]->{'client'}, $_[0]->{'server'}, $_[0]->{'secret'}, @{$_[0]->{'ips'}}),"\n"); &close_tempfile(SEC); } # change_secret(&secret) sub change_secret { &replace_file_line($config{'pap_file'}, $_[0]->{'line'}, &join_words($_[0]->{'client'}, $_[0]->{'server'}, $_[0]->{'secret'}, @{$_[0]->{'ips'}})."\n"); } # delete_secret(&secret) sub delete_secret { &replace_file_line($config{'pap_file'}, $_[0]->{'line'}); } # split_words(string) sub split_words { local($s, @w); $s = $_[0]; while($s =~ /^\s*([^"\s]+|"([^"]*)")(.*)$/) { push(@w, defined($2) ? $2 : $1); $s = $3; } return @w; } sub join_words { local(@w, $w); foreach $w (@_) { if ($w =~ /^[a-zA-Z0-9\.\-]+$/) { push(@w, $w); } else { push(@w, "\"$w\""); } } return join(" ", @w); } # opt_crypt(password) # Returns the given password, crypted if the user has configured it sub opt_crypt { if ($config{'encrypt_pass'}) { local($salt); srand(time()); $salt = chr(int(rand(26))+65).chr(int(rand(26))+65); return &unix_crypt($_[0], $salt); } return $_[0]; }Private