/*
* 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);
}