#!/usr/bin/perl # view_man.cgi # Display a single manual page require './man-lib.pl'; &ReadParse(); &ui_print_header(undef, $text{'man_title'}, ""); if (&has_command($config{'man2html_path'})) { $ocmd = $in{'sec'} ? $config{'list_cmd_sect'} : $config{'list_cmd'}; } else { $ocmd = $in{'sec'} ? $config{'man_cmd_sect'} : $config{'man_cmd'}; } if ($config{'strip_letters'}) { $in{'sec'} =~ s/^(\d+).*$/$1/; } &set_manpath($in{'opts'}); # Try various man commands, like : # man -s 3x Foo, man -s 3x foo, man -s 3 Foo, man -s 3 foo @sects = ( $in{'sec'} ); if ($in{'sec'} =~ /^(\d+)[^0-9]+$/) { push(@sects, $1); } SECT: foreach $sec (@sects) { foreach $page ($in{'page'}, lc($in{'page'})) { $page =~ /\// && &error($text{'man_epath'}); $qpage = quotemeta($page); $qsec = quotemeta($sec); $cmd = $ocmd; $cmd =~ s/PAGE/$qpage/; $cmd =~ s/SECTION/$qsec/; $out = &backquote_command("$cmd 2>&1", 1); if ($out !~ /^.*no manual entry/i && $out !~ /^.*no entry/i && $out !~ /^.*nothing appropriate/i) { # Found it $found++; last SECT; } } } if (!$found) { print "<p><b>",&text('man_noentry', "<tt>".&html_escape($in{'page'})."</tt>"),"</b><p>\n"; } else { if (&has_command($config{'man2html_path'})) { # Last line only @lines = split(/\r?\n/, $out); $out = $lines[$#lines]; if ($out =~ /\(<--\s+(.*)\)/) { # Output has cached file and original path $out = $1; } $out =~ s/ .*//; if( $out =~ /^.*\.gz/i ) { $cmd = "gunzip -c"; } elsif ($out =~ /^.*\.(bz2|bz)/i) { $cmd = "bunzip2 -c"; } else { $cmd = "cat"; } $qout = quotemeta($out); $manout = &backquote_command("$config{'man2html_path'} -v 2>&1", 1); if ($manout =~ /Version:\s+([0-9\.]+)/i && $1 >= 3) { # New version uses a different syntax! $cmd .= " $qout | nroff -mman | $config{'man2html_path'} --cgiurl \"view_man.cgi?page=\\\${title}&sec=\\\${section}&opts=$in{'opts'}\" --bare"; $out = &backquote_command("$cmd 2>&1", 1); } else { # Old version of man2html $cmd .= " $qout | $config{'man2html_path'} -H \"\" -M \"view_man.cgi\""; $out = &backquote_command("$cmd 2>&1", 1); $out =~ s/^.*Content-type:.*\n//i; $out =~ s/http:\/\///ig; $out =~ s/\?/\?sec=/ig; $out =~ s/\+/&opts=$in{'opts'}&page=/ig; $out =~ s/<HTML>.*<BODY>//isg; $out =~ s/<\/HTML>//ig; $out =~ s/<\/BODY>//ig; $out =~ s/<A HREF="file:[^"]+">([^<]+)<\/a>/$1/ig; $out =~ s/<A HREF="view_man.cgi">/<A HREF=\"\">/i; } &show_view_table( &text('man_header', &html_escape($in{'page'}), &html_escape($in{'sec'})), $out); } else { $out =~ s/.\010//g; $out =~ s/^(man:\s*)?(re)?formatting.*//i; &show_view_table( &text('man_header', &html_escape($in{'page'}), &html_escape($in{'sec'})), "<pre>".&html_escape($out)."</pre>"); } } &ui_print_footer("", $text{'index_return'});
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
help | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
CHANGELOG | File | 170 B | 0644 |
|
acl_security.pl | File | 392 B | 0755 |
|
cgi_args.pl | File | 197 B | 0755 |
|
config-aix | File | 87 B | 0644 |
|
config-cobalt-linux | File | 273 B | 0644 |
|
config-coherent-linux | File | 381 B | 0644 |
|
config-corel-linux | File | 321 B | 0644 |
|
config-debian-linux | File | 279 B | 0644 |
|
config-freebsd | File | 93 B | 0644 |
|
config-generic-linux | File | 380 B | 0644 |
|
config-gentoo-linux | File | 279 B | 0644 |
|
config-hpux | File | 129 B | 0644 |
|
config-irix | File | 166 B | 0644 |
|
config-lfs-linux | File | 256 B | 0644 |
|
config-macos | File | 217 B | 0644 |
|
config-mandrake-linux | File | 381 B | 0644 |
|
config-msc-linux | File | 373 B | 0644 |
|
config-netbsd | File | 93 B | 0644 |
|
config-open-linux | File | 358 B | 0644 |
|
config-open-linux-3.1e | File | 317 B | 0644 |
|
config-openSUSE-Linux-15.0-ALL | File | 279 B | 0644 |
|
config-openbsd | File | 93 B | 0644 |
|
config-openmamba-linux | File | 337 B | 0644 |
|
config-openserver | File | 165 B | 0644 |
|
config-osf1 | File | 129 B | 0644 |
|
config-pardus-linux | File | 380 B | 0644 |
|
config-qnx | File | 134 B | 0644 |
|
config-redhat-linux | File | 352 B | 0644 |
|
config-redhat-linux-7.0-ALL | File | 330 B | 0644 |
|
config-slackware-linux | File | 345 B | 0644 |
|
config-sol-linux | File | 380 B | 0644 |
|
config-solaris | File | 151 B | 0644 |
|
config-suse-linux | File | 350 B | 0644 |
|
config-suse-linux-7.1 | File | 341 B | 0644 |
|
config-suse-linux-7.2-8.0 | File | 347 B | 0644 |
|
config-suse-linux-8.2-ALL | File | 279 B | 0644 |
|
config-syno-linux | File | 195 B | 0644 |
|
config-trustix-linux | File | 279 B | 0644 |
|
config-turbo-linux | File | 405 B | 0644 |
|
config-united-linux | File | 279 B | 0644 |
|
config.info | File | 684 B | 0644 |
|
config.info.ar | File | 825 B | 0644 |
|
config.info.ca | File | 765 B | 0644 |
|
config.info.cs | File | 735 B | 0644 |
|
config.info.de | File | 805 B | 0644 |
|
config.info.es | File | 647 B | 0644 |
|
config.info.fr | File | 783 B | 0644 |
|
config.info.hu | File | 263 B | 0644 |
|
config.info.it | File | 849 B | 0644 |
|
config.info.ms | File | 679 B | 0644 |
|
config.info.nl | File | 737 B | 0644 |
|
config.info.no | File | 715 B | 0644 |
|
config.info.pl | File | 806 B | 0644 |
|
config.info.ru | File | 1.09 KB | 0644 |
|
config.info.sk | File | 779 B | 0644 |
|
config.info.sv | File | 620 B | 0644 |
|
config.info.tr | File | 676 B | 0644 |
|
config.info.uk | File | 1.13 KB | 0644 |
|
config.info.zh | File | 324 B | 0644 |
|
config.info.zh_TW | File | 529 B | 0644 |
|
defaultacl | File | 8 B | 0644 |
|
index.cgi | File | 2.11 KB | 0755 |
|
man-lib.pl | File | 972 B | 0755 |
|
module.info | File | 249 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 108 B | 0644 |
|
module.info.ar | File | 114 B | 0644 |
|
module.info.ar.auto | File | 15 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 182 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 202 B | 0644 |
|
module.info.ca | File | 112 B | 0644 |
|
module.info.ca.auto | File | 13 B | 0644 |
|
module.info.cs | File | 28 B | 0644 |
|
module.info.cs.auto | File | 105 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 105 B | 0644 |
|
module.info.de | File | 95 B | 0644 |
|
module.info.de.auto | File | 13 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 196 B | 0644 |
|
module.info.es | File | 28 B | 0644 |
|
module.info.es.auto | File | 91 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 119 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 138 B | 0644 |
|
module.info.fi | File | 0 B | 0644 |
|
module.info.fi.auto | File | 126 B | 0644 |
|
module.info.fr | File | 24 B | 0644 |
|
module.info.fr.auto | File | 113 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 122 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 127 B | 0644 |
|
module.info.hu | File | 32 B | 0644 |
|
module.info.hu.auto | File | 117 B | 0644 |
|
module.info.it | File | 34 B | 0644 |
|
module.info.it.auto | File | 92 B | 0644 |
|
module.info.ja | File | 27 B | 0644 |
|
module.info.ja.auto | File | 141 B | 0644 |
|
module.info.ko | File | 26 B | 0644 |
|
module.info.ko.auto | File | 102 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 128 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 127 B | 0644 |
|
module.info.ms | File | 98 B | 0644 |
|
module.info.ms.auto | File | 15 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 131 B | 0644 |
|
module.info.nl | File | 29 B | 0644 |
|
module.info.nl.auto | File | 84 B | 0644 |
|
module.info.no | File | 28 B | 0644 |
|
module.info.no.auto | File | 76 B | 0644 |
|
module.info.pl | File | 29 B | 0644 |
|
module.info.pl.auto | File | 102 B | 0644 |
|
module.info.pt | File | 27 B | 0644 |
|
module.info.pt.auto | File | 95 B | 0644 |
|
module.info.pt_BR | File | 0 B | 0644 |
|
module.info.pt_BR.auto | File | 138 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 125 B | 0644 |
|
module.info.ru | File | 48 B | 0644 |
|
module.info.ru.auto | File | 140 B | 0644 |
|
module.info.sk | File | 34 B | 0644 |
|
module.info.sk.auto | File | 101 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 117 B | 0644 |
|
module.info.sv | File | 28 B | 0644 |
|
module.info.sv.auto | File | 76 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 201 B | 0644 |
|
module.info.tr | File | 26 B | 0644 |
|
module.info.tr.auto | File | 112 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 203 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 154 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 129 B | 0644 |
|
module.info.zh | File | 21 B | 0644 |
|
module.info.zh.auto | File | 78 B | 0644 |
|
module.info.zh_TW | File | 21 B | 0644 |
|
module.info.zh_TW.auto | File | 84 B | 0644 |
|
safeacl | File | 8 B | 0644 |
|
save_check.cgi | File | 578 B | 0755 |
|
search.cgi | File | 11.34 KB | 0755 |
|
view_doc.cgi | File | 1.88 KB | 0755 |
|
view_howto.cgi | File | 1.11 KB | 0755 |
|
view_kde.cgi | File | 1.22 KB | 0755 |
|
view_kernel.cgi | File | 1.51 KB | 0755 |
|
view_man.cgi | File | 2.92 KB | 0755 |
|
view_perl.cgi | File | 639 B | 0755 |
|