Kristaps points out that the current HTTP/1.1 draft standard (RFC
authorschwarze <schwarze@openbsd.org>
Mon, 21 Jul 2014 15:44:22 +0000 (15:44 +0000)
committerschwarze <schwarze@openbsd.org>
Mon, 21 Jul 2014 15:44:22 +0000 (15:44 +0000)
commit00a198b4ed34faa68e54b833d481a052dddd210e
tree6d533cf3d8e3f9dbc988bd077c4539bf70e8069a
parent64a7bf49d45a2e8ebec1cb3555e00c0aeb55a7db
Kristaps points out that the current HTTP/1.1 draft standard (RFC
2616) requires the Location: response-header field to be an absolute
URI (14.30), and only the most recent proposed standard (RFC 7231),
which is barely a month old, allows a relative Location: (7.1.2).
While most modern browsers appear to support relative Location:
headers, some may not, and it's maybe a bit early to rely on relative
Location: headers.

I'm not going back to the HTTP_HOST or SERVER_NAME CGI variables,
though.  While some CGI programs certainly require those, in which
case both the CGI programmer and the web server admin have to be
very careful to keep the system secure and reliable, man.cgi(8)
does not really need them.  We always know at compile time which
domain we are running for, and for man.cgi(8), security and reliability
are definitely much more important than flexibility.  So make HTTP_HOST
a compile-time definition for now.
usr.bin/mandoc/cgi.c
usr.bin/mandoc/cgi.h.example
usr.bin/mandoc/man.cgi.8