Server IP : 195.201.23.43 / Your IP : 18.191.239.71 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/sendmail/ |
Upload File : |
#!/usr/bin/perl # save_feature.cgi # Add a new line to the M4 file require './sendmail-lib.pl'; require './features-lib.pl'; &ReadParse(); $features_access || &error($text{'features_ecannot'}); &error_setup($text{'feature_err'}); @features = &list_features(); if ($in{'new'}) { $feature = { 'type' => $in{'type'} }; } else { $feature = $features[$in{'idx'}]; } &lock_file($config{'sendmail_mc'}); if ($in{'delete'}) { # Just delete this entry &delete_feature($feature); } else { # Validate and store inputs if ($feature->{'type'} == 0) { $feature->{'text'} = $in{'text'}; } elsif ($feature->{'type'} == 1) { #local ($same) = grep { $_->{'type'} == 1 && # $_->{'name'} eq $in{'name'} } @features; #$same && ($in{'new'} || $feature->{'name'} ne $in{'name'}) && # &error(&text('feature_efeat', "<tt>$in{'name'}</tt>")); $feature->{'name'} = $in{'name'}; local @v; for($i=0; defined($in{"value_$i"}); $i++) { push(@v, $in{"value_$i"}); } while($v[$#v] eq '' && @v) { pop(@v); } $feature->{'values'} = \@v; } elsif ($feature->{'type'} == 2 || $feature->{'type'} == 3) { local ($same) = grep { ($_->{'type'} == 2 || $_->{'type'} == 3) && $_->{'name'} eq $in{'name'} } @features; $same && ($in{'new'} || $feature->{'name'} ne $in{'name'}) && &error(&text('feature_edef', "<tt>$in{'name'}</tt>")); $feature->{'name'} = $in{'name'}; if ($in{'undef'}) { $feature->{'type'} = 3; } else { $feature->{'type'} = 2; $feature->{'value'} = $in{'value'}; } } elsif ($feature->{'type'} == 4) { local ($same) = grep { $_->{'type'} == 4 && $_->{'mailer'} eq $in{'mailer'} } @features; $same && ($in{'new'} || $feature->{'mailer'} ne $in{'mailer'}) && &error(&text('feature_emailer', "<tt>$in{'mailer'}</tt>")); $feature->{'mailer'} = $in{'mailer'}; } elsif ($feature->{'type'} == 5) { local ($same) = grep { $_->{'type'} == 5 } @features; $same && $in{'new'} && &error(&text('feature_eostype', "<tt>$in{'ostype'}</tt>")); $feature->{'ostype'} = $in{'ostype'}; } # Save or create the entry if ($in{'new'}) { &create_feature($feature); } else { &modify_feature($feature); } } &unlock_file($config{'sendmail_mc'}); &webmin_log($in{'new'} ? 'create' : $in{'delete'} ? 'delete' : 'modify', "feature", undef, $feature); &redirect("list_features.cgi");Private