[ Avaa Bypassed ]




Upload:

Command:

www-data@3.133.149.165: ~ $
#!/usr/bin/perl
# chooser.cgi
# Outputs HTML for a frame-based svc chooser

require './smf-lib.pl';

&init_config();
&ReadParse();

# type specifies svc, inst or both
$type = "both";
if (defined($in{'type'})) {
	$type = $in{'type'};
	}
if ((defined($in{'add'})) && ($in{'add'})) {
	# Only use last fmri by default
	$in{'fmri'} =~ s/\s+$//;
	if ($in{'fmri'} =~ /\n(.*)$/) {
		$in{'fmri'} = $1;
		}
	}
$fmri = $in{'fmri'};
if ($fmri =~ /^svc\:\/([^\:]*)\:*(.*)$/) {
	# fmri entered is valid
	$svc = $1;
	$inst = $2;
	}
else {
	$fmri = "svc:/";
	$svc = "";
	$inst = "";
	}
$add = int($in{'add'});

$frame = $in{'frame'};
if ($frame eq "" ) {
	$frame = 0;
}

if ($in{'frame'} == 0) {
	# base frame
	&PrintHeader();
	if ($in{'type'} eq "svc")
		{ print "<title>$text{'svc_chooser_titlesvc'}</title>\n"; }
	elsif ($in{'type'} eq "inst")
		{ print "<title>$text{'svc_chooser_titleinst'}</title>\n";}
	else
		{ print "<title>$text{'svc_chooser_titleboth'}</title>\n";}

	print "<frameset rows='*,50'>\n";
	print "<frame marginwidth=10 marginheight=10 name=topframe ",
	    "src=\"@{[&get_webprefix()]}/svc_chooser.cgi?frame=1&fmri=$fmri&add=$add&type=$type\">\n";
	print "<frame marginwidth=10 marginheight=10 name=bottomframe ",
	    "src=\"@{[&get_webprefix()]}/svc_chooser.cgi?frame=2&add=$add&fmri=$fmri&type=$type\" ",
	    "scrolling=no>\n";
	print "</frameset>\n";
	}
elsif ($in{'frame'} == 1) {
	# List of svcs
	&header();
	print <<EOF;
<script>
function svcclick(fmri, inst, expand, isvalid)
{
if ((inst == "") || (inst == ":")) {
	selected_fmri = fmri;
	}
else {
	selected_fmri = fmri+inst;
	}
curr = top.bottomframe.document.forms[0].fmri.value;
if (isvalid ==1) {
	top.bottomframe.document.forms[0].fmri.value = selected_fmri;
	}
if (expand == 1) {
	location ="svc_chooser.cgi?frame=1&add=$add&type=$type&fmri="+fmri+inst;
	}
}

</script>
EOF
	print "<b>", &text('svc_chooser_fmri', $fmri),"</b>\n";
	print "<table>\n";
	# filter fmris via fmri var
	@list = &svcs_listing("$fmri", "-sFMRI");
	foreach $f_hash (@list) {
		$full_fmri = $f_hash->{"FMRI"};
		if ($full_fmri =~ /^$fmri([^\/:]+[\/\:]*).*$/) {
			$elt = "$1";
			# check if its an instance, if so add colon
			if ($fmri =~ /.*\:$/) {
				$elt = ":$elt";
				}
			push(@flist, "$elt");
			}
		}
	@fmris = &unique(@flist);
	$uplevel = $fmri;
	if ($uplevel =~ /^svc\:\/.+$/) {
		$uplevel =~ /^svc\:\/(([^\/\:]+[\:\/])*)[^\/\:]+[\/]*[\:]*$/;
		$uplevel = "svc:/$1";
		unshift(@fmris, $uplevel);
		}
	foreach $f (@fmris) {
		print "<tr>\n";
		# determine img type
		if ($f eq $uplevel) {
			$img = "images/uplevel.gif";
			$link =
		  "<a href='javascript:svcclick(\"$uplevel\",\"\",1,0)'>";
		} elsif ($f =~ /^.*\/$/) {
			$img = "images/nextlevel.gif";
			$link =
		  "<a href='javascript:svcclick(\"$fmri$f\",\"\",1,0)'>";
		} elsif ($f =~ /^\:.*/) {
			# at instance level...
			# remove leading ":"
			$f =~ s/^\:(\S+)$/$1/;
			$img = "images/instance.gif";
			$link =
		  "<a href='javascript:svcclick(\"$fmri\",\"$f\",0,1)'>";
		} else {
			# service
			$img = "images/service.gif";
			# remove final ":" if present
			$f =~ s/^([^\:]+)\:$/$1/;
			$inst = ":";
			if ($type eq "svc") {
				# cannot click to instance level!
				# remove final ":" if present
				$isvalid = 1;
				$expand = 0;
			} elsif ($type eq "inst") {
				# cannot select svc...
				$isvalid = 0;
				$expand = 1;
			} else {
				# both valid
				$isvalid = 1;
				$expand = 1;
				}
			$link =
  "<a href='javascript:svcclick(\"$fmri$f\",\"$inst\",$expand,$isvalid)'>";
			}
		print
	"<td>$link<img border=0 width=30 height=30 src=$img></a></td>\n";
		print "<td>$link$f</a></td>\n";
		print "</tr>\n";
		}
	print "</table></td></tr></table>\n";
	&footer();
	}
elsif ($in{'frame'} == 2) {
	# Current fmri and OK/cancel buttons
	&header();
	print <<EOF;
<script>
function fmrichosen()
{
if ($add == 0) {
	top.opener.ifield.value = document.forms[0].fmri.value;
	}
else {
	if (top.opener.ifield.value != "") {
		top.opener.ifield.value += " ";
		}
	top.opener.ifield.value += document.forms[0].fmri.value;
	}
top.close();
}
</script>
EOF
	print "<table width=100%><tr><td>\n";
	print "<form onSubmit='fmrichosen(); return false'>\n";
	print
	 "<input name=fmri size=45 value=\"\">\n";
	print
	 "<input type=\"submit\" value=\"$text{'svc_chooser_ok'}\">\n";
	print "</form>\n";
	print "</td><td>\n";
	print "<form>";
	print
"<input type=\"button\" onClick='top.close()' value=\"$text{'svc_chooser_cancel'}\">";
	print "</form>";
	print "</td></tr></table></form>\n";
	&footer();
	}

Filemanager

Name Type Size Permission Actions
help Folder 0755
images Folder 0755
lang Folder 0755
config-solaris File 20 B 0644
config.info File 73 B 0644
config.info.ca File 80 B 0644
config.info.de File 98 B 0644
config.info.nl File 88 B 0644
dep_viewer.cgi File 3.22 KB 0755
dependency_template.xml File 140 B 0644
dependent_template.xml File 138 B 0644
exec_template.xml File 143 B 0644
index.cgi File 4.91 KB 0755
instance_template.xml File 60 B 0644
instance_template_end.xml File 12 B 0644
instance_viewer.cgi File 1.13 KB 0755
log_viewer.cgi File 1.33 KB 0755
manpage_template.xml File 88 B 0644
module.info File 201 B 0644
module.info.af File 0 B 0644
module.info.af.auto File 156 B 0644
module.info.ar File 0 B 0644
module.info.ar.auto File 162 B 0644
module.info.be File 0 B 0644
module.info.be.auto File 181 B 0644
module.info.bg File 0 B 0644
module.info.bg.auto File 234 B 0644
module.info.ca File 146 B 0644
module.info.ca.auto File 12 B 0644
module.info.cs File 0 B 0644
module.info.cs.auto File 144 B 0644
module.info.da File 0 B 0644
module.info.da.auto File 144 B 0644
module.info.de File 0 B 0644
module.info.de.auto File 164 B 0644
module.info.el File 0 B 0644
module.info.el.auto File 266 B 0644
module.info.es File 0 B 0644
module.info.es.auto File 165 B 0644
module.info.eu File 0 B 0644
module.info.eu.auto File 141 B 0644
module.info.fa File 0 B 0644
module.info.fa.auto File 153 B 0644
module.info.fi File 0 B 0644
module.info.fi.auto File 143 B 0644
module.info.fr File 0 B 0644
module.info.fr.auto File 169 B 0644
module.info.he File 0 B 0644
module.info.he.auto File 159 B 0644
module.info.hr File 0 B 0644
module.info.hr.auto File 122 B 0644
module.info.hu File 0 B 0644
module.info.hu.auto File 180 B 0644
module.info.it File 0 B 0644
module.info.it.auto File 167 B 0644
module.info.ja File 0 B 0644
module.info.ja.auto File 154 B 0644
module.info.ko File 0 B 0644
module.info.ko.auto File 141 B 0644
module.info.lt File 0 B 0644
module.info.lt.auto File 151 B 0644
module.info.lv File 0 B 0644
module.info.lv.auto File 166 B 0644
module.info.ms File 0 B 0644
module.info.ms.auto File 163 B 0644
module.info.mt File 0 B 0644
module.info.mt.auto File 183 B 0644
module.info.nl File 51 B 0644
module.info.nl.auto File 99 B 0644
module.info.no File 0 B 0644
module.info.no.auto File 148 B 0644
module.info.pl File 0 B 0644
module.info.pl.auto File 149 B 0644
module.info.pt File 0 B 0644
module.info.pt.auto File 149 B 0644
module.info.pt_BR File 0 B 0644
module.info.pt_BR.auto File 158 B 0644
module.info.ro File 0 B 0644
module.info.ro.auto File 179 B 0644
module.info.ru File 0 B 0644
module.info.ru.auto File 193 B 0644
module.info.sk File 0 B 0644
module.info.sk.auto File 147 B 0644
module.info.sl File 0 B 0644
module.info.sl.auto File 119 B 0644
module.info.sv File 0 B 0644
module.info.sv.auto File 149 B 0644
module.info.th File 0 B 0644
module.info.th.auto File 290 B 0644
module.info.tr File 0 B 0644
module.info.tr.auto File 153 B 0644
module.info.uk File 0 B 0644
module.info.uk.auto File 189 B 0644
module.info.ur File 0 B 0644
module.info.ur.auto File 225 B 0644
module.info.vi File 0 B 0644
module.info.vi.auto File 180 B 0644
module.info.zh File 0 B 0644
module.info.zh.auto File 116 B 0644
module.info.zh_TW File 0 B 0644
module.info.zh_TW.auto File 125 B 0644
path_chooser.cgi File 3.27 KB 0755
property_editor.cgi File 4.42 KB 0755
property_group_editor.cgi File 3.74 KB 0755
property_group_template.xml File 74 B 0644
property_group_template_end.xml File 18 B 0644
property_template.xml File 67 B 0644
restarter_template.xml File 41 B 0644
search_instance.cgi File 1.45 KB 0755
service_template.xml File 225 B 0644
service_template_end.xml File 29 B 0644
smf-lib.pl File 27.22 KB 0755
smfwizard_dependency.cgi File 2 KB 0755
smfwizard_dependent.cgi File 1.97 KB 0755
smfwizard_exec.cgi File 1.55 KB 0755
smfwizard_instance.cgi File 764 B 0755
smfwizard_manpage.cgi File 897 B 0755
smfwizard_process_submit.cgi File 359 B 0755
smfwizard_property.cgi File 1.46 KB 0755
smfwizard_property_group.cgi File 1020 B 0755
smfwizard_restarter.cgi File 601 B 0755
smfwizard_service.cgi File 852 B 0755
smfwizard_template.cgi File 790 B 0755
svc_chooser.cgi File 4.41 KB 0755
svc_chooser_test.cgi File 759 B 0755
template_template.xml File 187 B 0644
template_template_end.xml File 28 B 0644
wizard.pl File 20.12 KB 0755
wizardtest.cgi File 767 B 0755