#!/usr/bin/perl # edit_service.cgi # Show a form for editing or creating a user-defined require './itsecur-lib.pl'; &can_use_error("services"); &ReadParse(); if ($in{'new'}) { &header($text{'service_title1'}, "", undef, undef, undef, undef, &apply_button()); } else { &header($text{'service_title2'}, "", undef, undef, undef, undef, &apply_button()); @services = &list_services(); #$service = $services[$in{'idx'}]; if (defined($in{'idx'})) { $service = $services[$in{'idx'}]; } else { ($service) = grep { $_->{'name'} eq $in{'name'} } @services; $in{'idx'} = $services->{'index'}; } } print "
\n"; print "
\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "
$text{'service_header'}
\n"; # Show service name input print "\n"; printf "\n", $service->{'name'}; # Show protocols and ports print "\n"; print "\n"; # Show member services print "\n"; print "\n"; print "
$text{'service_name'}
$text{'service_ports'}\n"; print " ", "\n"; for($i=0; $i<@{$service->{'protos'}}+6; $i++) { print "\n"; print "\n"; printf "\n", $i, $service->{'ports'}->[$i]; print "\n"; } print "
$text{'service_proto'}$text{'service_port'}
",&protocol_input( "proto_$i", $service->{'protos'}->[$i]),"
$text{'service_members'}",&service_input("others", join(",", @{$service->{'others'}}), 0, 1),"
\n"; if ($in{'new'}) { print "\n"; } else { print "\n"; print "\n"; } print "
\n"; &can_edit_disable("services"); print "
\n"; &footer("list_services.cgi", $text{'services_return'});