MINI SHELL

Server : Apache/2.2.2 (Fedora)
System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686
User : apache ( 48)
PHP Version : 5.2.9
Disable Function : NONE
Directory :  /proc/self/root/usr/libexec/webmin/sendmail/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/usr/libexec/webmin/sendmail/save_file.cgi
#!/usr/bin/perl
# save_file.cgi
# Save a manually edited file

require './sendmail-lib.pl';
&error_setup($text{'file_err'});
$access{'manual'} || &error($text{'file_ecannot'});
&ReadParseMime();
$conf = &get_sendmailcf();
if ($in{'mode'} eq 'aliases') {
	require './aliases-lib.pl';
	$file = &aliases_file($conf)->[$in{'idx'}];
	$return = "list_aliases.cgi";
	$post = "newaliases";
	$access{'amode'} == 1 && $access{'aedit_1'} && $access{'aedit_2'} &&
	    $access{'aedit_3'} && $access{'aedit_4'} && $access{'aedit_5'} &&
	    $access{'amax'} == 0 && $access{'apath'} eq '/' ||
	    &error($text{'file_ealiases'});
	$log = "alias";
	}
elsif ($in{'mode'} eq 'virtusers') {
	require './virtusers-lib.pl';
	$file = &virtusers_file($conf);
	($vdbm, $vdbmtype) = &virtusers_dbm($conf);
	$return = "list_virtusers.cgi";
	$post = "$config{'makemap_path'} $vdbmtype $vdbm <$file";
	$access{'vmode'} == 1 && $access{'vedit_0'} && $access{'vedit_1'} &&
	    $access{'vedit_2'} && $access{'vmax'} == 0 ||
	    &error($text{'file_evirtusers'});
	$log = "virtuser";
	}
elsif ($in{'mode'} eq 'mailers') {
	require './mailers-lib.pl';
	$file = &mailers_file($conf);
	($mdbm, $mdbmtype) = &mailers_dbm($conf);
	$return = "list_mailers.cgi";
	$post = "$config{'makemap_path'} $mdbmtype $mdbm <$file";
	$access{'mailers'} || &error($text{'file_emailers'});
	$log = "mailer";
	}
elsif ($in{'mode'} eq 'generics') {
	require './generics-lib.pl';
	$file = &generics_file($conf);
	($gdbm, $gdbmtype) = &generics_dbm($conf);
	$return = "list_generics.cgi";
	$post = "$config{'makemap_path'} $gdbmtype $gdbm <$file";
	$access{'omode'} == 1 || &error($text{'file_egenerics'});
	$log = "generic";
	}
elsif ($in{'mode'} eq 'domains') {
	require './domain-lib.pl';
	$file = &domains_file($conf);
	($ddbm, $ddbmtype) = &domains_dbm($conf);
	$return = "list_domains.cgi";
	$post = "$config{'makemap_path'} $ddbmtype $ddbm <$file";
	$access{'domains'} || &error($text{'file_edomains'});
	$log = "domain";
	}
elsif ($in{'mode'} eq 'access') {
	require './access-lib.pl';
	$file = &access_file($conf);
	($adbm, $adbmtype) = &access_dbm($conf);
	$return = "list_access.cgi";
	$post = "$config{'makemap_path'} $adbmtype $adbm <$file";
	$access{'access'} || &error($text{'file_eaccess'});
	$log = "access";
	}
else { &error($text{'file_emode'}); }

$in{'text'} =~ s/\r//g;
&open_lock_tempfile(FILE, ">$file");
&print_tempfile(FILE, $in{'text'});
&close_tempfile(FILE);
&webmin_log("manual", $log, $file);

&system_logged("$post >/dev/null 2>&1") if ($post);
&redirect($return);


Anon7 - 2021