/* * Here are the routines of man2html that output a HREF string. ## mutated for cLIeNUX */ #include #include #include #include /* tolower() */ #include /* strlen() */ #include "defs.h" /* * Either the user is non-local (or local, but using httpd), * in which case we use http:/cgi-bin, or the user is local * and uses lynx, and we use lynxcgi:/home/httpd/cgi-bin. */ static char *man2htmlpath = ""; /* default */ static char *cgibase_format = "http://%s"; /* host.domain:port */ static char *cgibase_ll_format = "lynxcgi:%s"; /* directory */ static char *cgibase = "file:/help/man/"; /* default */ /* * Separator between URL and argument string. * * With http:/a/b?c+d+e the script is called * with PATH_INFO=/a/b and QUERY_STRING=c+d+e and args $1=c, $2=d, $3=e. * With lynxcgi:?c+d+e no PATH_INFO is possible. */ static char sep = '/'; /* or '?' */ void set_separator(char s) { sep = s; } void set_lynxcgibase(char *s) { int n = strlen(cgibase_ll_format) + strlen(s); char *t = (char *) xmalloc(n); sprintf(t, cgibase_ll_format, s); cgibase = t; } void set_cgibase(char *s) { int n = strlen(cgibase_format) + strlen(s); char *t = (char *) xmalloc(n); sprintf(t, cgibase_format, s); cgibase = t; } void set_man2htmlpath(char *s) { man2htmlpath = xstrdup(s); } static char *signature = "
\n" "This document was created by\n" "man2html,\n" "using the manual pages.
\n" "%s\n"; #define TIMEFORMAT "%T GMT, %B %d, %Y" #define TIMEBUFSZ 500 void print_sig() {} /* ## nah. char timebuf[TIMEBUFSZ]; struct tm *timetm; time_t clock; timebuf[0] = 0; #ifdef TIMEFORMAT sprintf(timebuf, "Time: "); clock=time(NULL); timetm=gmtime(&clock); strftime(timebuf+6, TIMEBUFSZ-6, TIMEFORMAT, timetm); timebuf[TIMEBUFSZ-1] = 0; #endif printf(signature, cgibase, man2htmlpath, timebuf); } */ void include_file_html(char *g) { printf("%s>", g,g); } void man_page_html(char *sec, char *h) { if (!h); /* printf("Return to Main Contents", cgibase, man2htmlpath); else if (!sec) printf("%s", cgibase, man2htmlpath, sep, h, h); */ else printf("%s", cgibase, h, sec, h); } void ftp_html(char *f) { printf("%s", f, f); } void www_html(char *f) { printf("%s", f, f); } void mailto_html(char *g) { printf("%s", g, g); } void url_html(char *g) { printf("%s", g, g); }