#!/usr/local/bin/perl # edit_pam.cgi # Display the modules for some PAM service require './pam-lib.pl'; &ReadParse(); &ui_print_header(undef, $text{'edit_title'}, ""); @pams = &get_pam_config(); $pam = $pams[$in{'idx'}]; print "\n"; print "\n"; print "
$text{'edit_header'}
\n"; print "\n"; $t = $text{'desc_'.$pam->{'name'}}; print "\n"; print "\n"; foreach $t ('auth', 'account', 'session', 'password') { print "\n"; } print "\n"; print "
$text{'edit_name'}",&html_escape($pam->{'name'})," ", $pam->{'desc'} ? "($pam->{'desc'})" : $t ? "($t)" : "","
\n"; print "
\n"; print "\n"; print "\n"; print "
",$text{"edit_header_$t"},"
\n"; local @mods = grep { $_->{'type'} eq $t } @{$pam->{'mods'}}; print "\n"; if (@mods) { print " ", " ", " ", " ", "\n"; } else { print "\n"; } foreach $m (@mods) { local $mn = $m->{'module'}; $mn =~ s/^.*\///; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; } print "
$text{'edit_mod'}$text{'edit_desc'}$text{'edit_control'}$text{'edit_args'}$text{'edit_move'}
$text{'edit_none'}", "
{'index'}'>$mn",$text{$mn} ? $text{$mn} : "
","
",$text{'control_'.$m->{'control'}},"",$m->{'args'} ? $m->{'args'} : "
","
"; if ($m eq $mods[$#mods]) { print ""; } else { print "{'index'}&down=1'>"; } if ($m eq $mods[0]) { print ""; } else { print "{'index'}&up=1'>"; } print "
\n"; print "\n"; print "\n"; print "\n"; print "
\n"; print "\n"; print "\n"; print "\n"; &ui_print_footer("", $text{'index_return'});