%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 49.231.201.246 / Your IP : 216.73.216.248 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/webmin/ipsec/ |
Upload File : |
#!/usr/bin/perl # Create, update or delete a secret key require './ipsec-lib.pl'; &ReadParse(); @secs = &list_secrets(); if ($in{'new'}) { $sec = { 'type' => $in{'type'} }; } else { $sec = $secs[$in{'idx'}]; } if ($in{'delete'}) { # Just kill this key @secs > 1 || &error($text{'secret_elast'}); &lock_file($config{'secrets'}); &delete_secret($sec); &unlock_file($config{'secrets'}); &webmin_log("delete", "secret", undef, { 'name' => $sec->{'name'} }); } else { # Validate inputs &error_setup($text{'secret_err'}); $in{'name_def'} || $in{'name'} =~ /\S/ || &error($text{'secret_ename'}); $oldname = $sec->{'name'}; $sec->{'name'} = $in{'name_def'} ? "" : $in{'name'}; if (lc($sec->{'type'}) eq 'psk') { $in{'pass'} || &error($text{'secret_epass'}); $sec->{'value'} = "\"$in{'pass'}\""; } elsif (lc($sec->{'type'}) eq 'rsa') { $sec->{'value'} = "{\n"; @rsa_in = map { $_ =~ /^rsa_(\S+)/ ? ( $1 ) : ( ) } keys(%in); foreach $p (&unique(@rsa_attribs, @rsa_in)) { $k = "rsa_$p"; next if (!defined($in{$k})); $in{$k} =~ s/\s//g; $in{$k} =~ /\S/ || &error(&text('secret_ersa', $p)); $sec->{'value'} .= "\t".$p.": ".$in{$k}."\n"; } $sec->{'value'} .= "\t}"; } # Update or create &lock_file($config{'secrets'}); if ($in{'new'}) { &create_secret($sec); $logname = $sec->{'name'}; } else { &modify_secret($sec); $logname = $oldname; } &unlock_file($config{'secrets'}); &webmin_log($in{'new'} ? "create" : "modify", "secret", undef, { 'name' => $logname }); } &redirect("list_secrets.cgi");