[ Avaa Bypassed ]




Upload:

Command:

www-data@3.137.180.196: ~ $
#!/usr/bin/perl
# save_part.cgi
# Save changes to an existing or new partition

require './fdisk-lib.pl';
&error_setup($text{'save_err'});
&ReadParse();

@dlist = &list_disks_partitions();
$dinfo = $dlist[$in{'disk'}];
&can_edit_disk($dinfo->{'device'}) ||
	&error($text{'save_ecannot'});
@plist = @{$dinfo->{'parts'}};
if ($in{'delete'} && $in{'confirm'}) {
	# deleting a partition
	$pinfo = $plist[$in{'part'}];
	&delete_partition($dinfo->{'device'}, $pinfo->{'number'});
	&webmin_log("delete", "part", $dinfo->{'device'}, \%in);
	&redirect("edit_disk.cgi?device=$dinfo->{'device'}");
	}
elsif ($in{'delete'}) {
	# Ask the user if he really wants to delete the partition
	&ui_print_header(undef, $text{'delete_title'}, "");

	$pinfo = $plist[$in{'part'}];
	$dname = &mount::device_name($pinfo->{'device'});
	print "<center><form action=save_part.cgi>\n";
	print "<input type=hidden name=disk value='$in{'disk'}'>\n";
	print "<input type=hidden name=part value='$in{'part'}'>\n";
	print "<input type=hidden name=delete value=1>\n";
	print "<b>",&text('delete_rusure', $dname,
			  "<tt>$pinfo->{'device'}</tt>"),"</b><p>\n";
	print "<input type=submit name=confirm value='$text{'delete_ok'}'>\n";
	print "</form></center>\n";

	&ui_print_footer("edit_disk.cgi?device=$dinfo->{'device'}",
			 $text{'disk_return'});
	}
elsif (!$in{'new'}) {
	# Changing existing partition type and label
	$pinfo = $plist[$in{'part'}];
	if ($pinfo->{'edittype'}) {
		&change_type($dinfo->{'device'}, $pinfo->{'number'},
			     $in{'type'});
		$pinfo->{'type'} = $in{'type'};
		}
	if (defined($in{'label'}) && &supports_label($pinfo)) {
		&set_label($pinfo->{'device'}, $in{'label'});
		}
	if (defined($in{'name'}) && &supports_name($dinfo)) {
		&set_name($dinfo, $pinfo, $in{'name'});
		}
	&webmin_log("modify", "part", $dinfo->{'device'}, \%in);
	&redirect("edit_disk.cgi?device=$dinfo->{'device'}");
	}
else {
	# Adding new partition
	$in{start} =~ /^\d+$/ ||
		&error(&text('save_estart', $in{'start'}));
	$in{end} =~ /^\d+$/ ||
		&error(&text('save_eend', $in{'end'}));
	$in{start} >= $in{'min'} ||
		&error(&text('save_emin', $in{'min'}));
	$in{end} <= $in{'max'} ||
		&error(&text('save_emax', $in{'max'}));
	$in{start} < $in{end} ||
		&error($text{'save_eminmax'});

	# Check for partition overlap..
	foreach $pinfo (@plist) {
		if (($in{'start'} >= $pinfo->{'start'} &&
		     $in{'start'} <= $pinfo->{'end'} ||
		     $in{'end'} >= $pinfo->{'start'} &&
		     $in{'end'} <= $pinfo->{'end'}) &&
		     !($in{'new'}==2 && $pinfo->{'extended'})) {
			&error(&text('save_eoverlap', $pinfo->{'number'},
				     $pinfo->{'start'}, $pinfo->{'end'}));
			}
		}
	if ($in{'new'} == 3) {
		&create_extended($dinfo->{'device'}, $in{'newpart'},
				$in{'start'}, $in{'end'});
		&webmin_log("create", "part", $dinfo->{'device'}, \%in);
		}
	else {
		&create_partition($dinfo->{'device'}, $in{'newpart'},
				  $in{'start'}, $in{'end'}, $in{'type'});
		$pinfo = { 'type' => $in{'type'},
			   'number' => $in{'newpart'} };
		if ($in{'label'} && &supports_label($pinfo)) {
			local $dev = $dinfo->{'prefix'}.$in{'newpart'};
			&set_label($dev, $in{'label'});
			}
		if ($in{'name'} && &supports_name($dinfo)) {
			&set_name($dinfo, $pinfo, $in{'name'});
			}
		&webmin_log("create", "part", $dinfo->{'device'}, \%in);
		}
	if (&need_reboot($dinfo)) {
		&ask_reboot($dinfo);
		}
	else {
		&redirect("edit_disk.cgi?device=$dinfo->{'device'}");
		}
	}

# ask_reboot(disk)
# Display a form asking for a reboot
sub ask_reboot
{
&ui_print_header(undef, $text{'reboot_title'}, "");
local $what = &text('select_device', uc($_[0]->{'type'}),
		    uc(substr($_[0]->{'device'}, -1)));
print "<b>",&text('reboot_why', $what),"</b> <p>\n";
print &ui_form_start("reboot.cgi");
print &ui_form_end([ [ undef, $text{'reboot_ok'} ] ]);

&ui_print_footer("", $text{'index_return'});
}


Filemanager

Name Type Size Permission Actions
help Folder 0755
images Folder 0755
lang Folder 0755
CHANGELOG File 1.92 KB 0644
acl_security.pl File 958 B 0755
apply_hdparm.cgi File 1.17 KB 0755
blink.cgi File 384 B 0755
cgi_args.pl File 483 B 0755
config File 13 B 0644
config.info File 144 B 0644
config.info.bg File 235 B 0644
config.info.ca File 167 B 0644
config.info.de File 148 B 0644
config.info.fr File 167 B 0644
config.info.nl File 138 B 0644
config.info.no File 151 B 0644
defaultacl File 26 B 0644
edit_disk.cgi File 4.91 KB 0755
edit_hdparm.cgi File 4.36 KB 0755
edit_part.cgi File 8.26 KB 0755
edit_relabel.cgi File 1.32 KB 0755
fdisk-lib.pl File 48.16 KB 0755
feedback_files.pl File 115 B 0755
fsck.cgi File 604 B 0755
fsck_form.cgi File 700 B 0755
index.cgi File 2.41 KB 0755
log_parser.pl File 1.53 KB 0755
make_tags.pl File 210 B 0755
mkfs.cgi File 820 B 0755
mkfs_form.cgi File 832 B 0755
module.info File 238 B 0644
module.info.af File 0 B 0644
module.info.af.auto File 153 B 0644
module.info.ar File 0 B 0644
module.info.ar.auto File 209 B 0644
module.info.be File 0 B 0644
module.info.be.auto File 249 B 0644
module.info.bg File 0 B 0644
module.info.bg.auto File 236 B 0644
module.info.ca File 119 B 0644
module.info.ca.auto File 29 B 0644
module.info.cs File 40 B 0644
module.info.cs.auto File 130 B 0644
module.info.da File 0 B 0644
module.info.da.auto File 149 B 0644
module.info.de File 131 B 0644
module.info.de.auto File 26 B 0644
module.info.el File 0 B 0644
module.info.el.auto File 299 B 0644
module.info.es File 38 B 0644
module.info.es.auto File 112 B 0644
module.info.eu File 0 B 0644
module.info.eu.auto File 146 B 0644
module.info.fa File 0 B 0644
module.info.fa.auto File 233 B 0644
module.info.fi File 0 B 0644
module.info.fi.auto File 149 B 0644
module.info.fr File 35 B 0644
module.info.fr.auto File 133 B 0644
module.info.he File 0 B 0644
module.info.he.auto File 188 B 0644
module.info.hr File 0 B 0644
module.info.hr.auto File 160 B 0644
module.info.hu File 79 B 0644
module.info.hu.auto File 26 B 0644
module.info.it File 0 B 0644
module.info.it.auto File 152 B 0644
module.info.ja File 58 B 0644
module.info.ja.auto File 179 B 0644
module.info.ko File 36 B 0644
module.info.ko.auto File 137 B 0644
module.info.lt File 0 B 0644
module.info.lt.auto File 163 B 0644
module.info.lv File 0 B 0644
module.info.lv.auto File 167 B 0644
module.info.ms File 120 B 0644
module.info.ms.auto File 23 B 0644
module.info.mt File 0 B 0644
module.info.mt.auto File 153 B 0644
module.info.nl File 39 B 0644
module.info.nl.auto File 111 B 0644
module.info.no File 38 B 0644
module.info.no.auto File 112 B 0644
module.info.pl File 38 B 0644
module.info.pl.auto File 120 B 0644
module.info.pt File 37 B 0644
module.info.pt.auto File 116 B 0644
module.info.pt_BR File 0 B 0644
module.info.pt_BR.auto File 162 B 0644
module.info.ro File 0 B 0644
module.info.ro.auto File 157 B 0644
module.info.ru File 60 B 0644
module.info.ru.auto File 185 B 0644
module.info.sk File 0 B 0644
module.info.sk.auto File 166 B 0644
module.info.sl File 0 B 0644
module.info.sl.auto File 155 B 0644
module.info.sv File 28 B 0644
module.info.sv.auto File 116 B 0644
module.info.th File 0 B 0644
module.info.th.auto File 303 B 0644
module.info.tr File 34 B 0644
module.info.tr.auto File 123 B 0644
module.info.uk File 0 B 0644
module.info.uk.auto File 245 B 0644
module.info.ur File 0 B 0644
module.info.ur.auto File 266 B 0644
module.info.vi File 0 B 0644
module.info.vi.auto File 187 B 0644
module.info.zh File 27 B 0644
module.info.zh.auto File 104 B 0644
module.info.zh_TW File 33 B 0644
module.info.zh_TW.auto File 110 B 0644
range.js File 4.7 KB 0644
reboot.cgi File 261 B 0755
relabel.cgi File 417 B 0755
save_part.cgi File 3.75 KB 0755
slider.js File 14.48 KB 0644
timer.js File 2.86 KB 0644
tunefs.cgi File 689 B 0755
tunefs_form.cgi File 722 B 0755
winclassic.css File 1.72 KB 0644