#!/usr/local/bin/perl # edit_part.cgi # Edit an existing partition require './format-lib.pl'; $access{'view'} && &error($text{'ecannot'}); $d = $ARGV[0]; $p = $ARGV[1]; @dlist = &list_disks(); $dinfo = $dlist[$d]; &can_edit_disk($dinfo->{'device'}) || &error($text{'edit_ecannot'}); &ui_print_header(undef, $text{'edit_title'}, ""); print "
\n"; print "\n"; print "\n"; print "
$text{'edit_header'}
\n"; print "\n"; print "\n"; @plist = &list_partitions($dinfo->{'device'}); $pinfo = $plist[$p]; $new = !$pinfo->{'end'}; $dinfo->{'device'} =~ /c(\d+)t(\d+)d(\d+)/; print "\n"; print "\n"; $dev = $pinfo->{'device'}; print "\n"; print "\n"; print "\n"; printf "\n", $pinfo->{'flag'} =~ /^.m$/ ? "checked" : "", $text{'edit_m'}; print "\n"; printf "\n"; if ($pinfo->{'end'}) { print "\n"; @stat = &device_status($dev); if ($stat[1] eq "meta") { print "\n"; } elsif ($stat[1] eq "metadb") { print "\n"; } elsif (@stat) { local $msg = $stat[2] ? 'edit_mount' : 'edit_umount'; $msg .= 'vm' if ($stat[1] eq 'swap'); print "\n"; } else { print "\n"; } if ($stat[1] !~ /^meta/) { print "\n"; $fs = &filesystem_type($dev); printf "\n", $fs ? &fstype_name($fs) : "None"; } } print "
$text{'edit_location'}$pinfo->{'desc'}
$text{'edit_dev'} $dev
$text{'edit_type'}
$text{'edit_flags'} %s\n", $pinfo->{'flag'} =~ /^w.$/ ? "checked" : "", $text{'edit_w'}; printf " %s
$text{'edit_extent'} - \n", $pinfo->{'end'} ? $pinfo->{'start'} : ""; printf "\n", $pinfo->{'end'} ? $pinfo->{'end'} : ""; print "of $dinfo->{'cyl'}
$text{'edit_stat'}$text{'edit_meta'}
$text{'edit_metadb'}
",&text($msg, "$stat[0]", "$stat[1]"),"
$text{'edit_nouse'}
$text{'edit_fs'}%s

\n"; if (@stat) { print "$text{'edit_inuse'}.\n"; } elsif ($new) { print "\n"; } else { print "\n"; print "\n"; } print "\n"; print "

\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } elsif ($new) { print "\n"; } else { print "\n"; } print "\n"; print "\n"; print "\n"; print "\n"; } elsif ($new) { print "\n"; } elsif (@stat && $stat[2]) { print "\n"; } elsif (!$fs) { print "\n"; } else { print "\n"; } print "\n"; print "\n"; print "\n"; print "\n"; } elsif ($new) { print "\n"; } elsif (@stat && $stat[2]) { print "\n"; } elsif (!$fs) { print "\n"; } elsif ($fs ne "ufs") { print "\n"; } print "\n"; print "
$text{'edit_tasks'}
$text{'edit_newfs'}
\n"; if (!$new && (!@stat || $stat[2] == 0)) { print "\n"; print "
$text{'edit_newdesc1'} $text{'edit_newdesc2'} $text{'edit_newdesc3'}
$text{'edit_fsckfs'}
\n"; if (!$new && (!@stat || $stat[2] == 0) && $fs eq "ufs") { print "\n"; print "
$text{'edit_fsckdesc1'} $text{'edit_fsckdesc2'} $text{'edit_fsckdesc3'} $text{'edit_fsckdesc4'} $text{'edit_fsckdesc5'}
$text{'edit_tunefs'}
\n"; if (!$new && (!@stat || $stat[2] == 0) && $fs eq "ufs") { print "\n"; print "
$text{'edit_tunedesc1'} $text{'edit_tunedesc2'} $text{'edit_tunedesc3'} $text{'edit_tunedesc4'} $text{'edit_tunedesc5'}
\n"; print "
\n"; &ui_print_footer("", $text{'index_return'});