| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
|
|
| |
* Simplify pathgen(), just use the subdirs of the cache dir.
* Simplify URI paths, just use show/<manpath>/<filename>.
* Drop struct paths, just use plain strings.
* Garbage collect unused headers.
|
|
|
|
| |
First committed to wrong branch, sorry.
|
| |
|
|
|
|
|
|
| |
single .so request, do not read the file pointed to, but instead
let mparse_result() provide the file name pointed to as a return
value. To be used by makewhatis(8) in the future.
|
| |
|
| |
|
|
|
|
| |
on SmartOS and sent these additional patches, thanks!
|
|
|
|
|
|
| |
Consistently use the PATH_MAX since it is specified by POSIX,
while MAXPATHLEN is not.
In preparation for using this at a few more places.
|
|
|
|
|
|
|
|
|
|
| |
default value for the mdoc(7) .Os macro.
Needed for man.cgi on the OpenBSD website.
Problem with man.cgi first noticed by deraadt@;
beck@ and deraadt@ agree with the way to solve the issue.
"Please check them in and I'll look into them later!" kristaps@
|
| |
|
| |
|
|
|
|
| |
we can do this in the frontend.
|
| |
|
|
|
|
| |
to do so.
|
| |
|
|
|
|
| |
man.cgi.
|
|
|
|
|
| |
and repeat them in the search bar. This is handy. While here, make the
QUERY_STRING parser a bit simpler.
|
|
|
|
|
| |
bytes. This cuts down a little in index size and allows for cleaner
extraction of information.
|
|
|
|
|
|
|
| |
prefix. This means that an index in, say, /usr/share/man will point to
man1/foo.1 instead of /usr/share/man/man1/foo.1. Not only does this
save a lot of space, it also allows manual trees to be moved around
without any side effects to the mandocdb(8) databases.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- include search bar above result page (I relent: it's annoying to
follow three links then press back three times to get a search page);
- make man.cgi.css into man-cgi.css so Apache isn't confused by two
handlers (css, cgi);
- finally consolidate example.style.css to be under the div.mandoc css
selector;
- put catman pages under div.catman;
- put search bar under div#mancgi;
- reflect this properly in the bundled CSS files.
|
| |
|
|
|
|
|
| |
including various tweaks to the whatis(8) manual;
ok kristaps@
|
|
|
|
|
|
| |
Also allow for a CSS_DIR to specify alternate CSS locations.
Finally, some clutter as I assume that "css" and "progname" are already
HTML-safe.
|
| |
|
|
|
|
|
| |
specified, write them out using a SELECT box. Else write nothing (the
manroot will still be checked if it's specified).
|
|
|
|
|
|
|
|
| |
reserved for paths within a manroot). This functionality is bare-bones:
right now, the default manroot is the first one scanned from the cache
directory. At some point this will be sexy and smooth, but it's easy to
upgrade functionality by modifying pathgen() and so forth. If a manroot
isn't parsed from the "manpath=", results are always empty.
|
|
|
|
| |
just uses the first manroot by default.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Deprecate kvals (key/value pairs for QUERY_STRING values). Since there's
only one place that uses this, kval_parse (now http_parse()) dumps directly
into struct query, which is more high-level.
- Put query values directly into struct req.
- The biggest difference is dynamic support for multiple "manroots". A
"manroot" is a path with an "etc/catman.conf" file. When the cgi starts,
it (prefix) recurses through its CACHE_DIR searching for "etc" directories.
When one's found, it sees if a catman.conf file exists. This is marked
as a manroot and appended to a list. The name of a manroot is the path
without slashes (e.g., OpenBSD/4.9 -> "OpenBSD 4.9").
Right now "manroot" isn't enabled. The first manroot is chosen as the
real one. I'll add the interface to it in the next checkins, but it'll be
quite simple.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
query mode.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
man.cgi should sort in the first place -- it wasn't before.
Revert uppercasing of man.cgi title.
|
|
|
|
|
| |
complicated than this. Also make the title be printed out in caps as it
is in apropos(1) and whatis(1).
|
|
|
|
|
|
| |
needs work because specifying an arch with "arch=i386" will return results
that don't have an arch specified. I think this is weird, but it will need
to be supported if we want backwards compatibility.
|
|
|
|
|
|
|
| |
expression text) be whatis. This is a much nicer default than apropos,
which can be scary. While here, fix the cat.css location (erroneously
put in the response page instead of the catman page) and add bits for
a default style-sheet.
|
|
|
|
| |
Also, set a custom CSS for man.cgi catman files.
|
|
|
|
|
|
|
|
|
|
|
|
| |
and properly handles some funny troff-isms we've exposed. I originally
wanted to use man2html.c (found on W3's website with no known author)
but the code is dodgy. This will need some more work (links, etc.) but
does a decent job thusfar.
Note: I think it's better style NOT to use <pre>, and instead have each
line employ <BR> afterward. This allows browsers to break the lines if
necessary. This can be changed trivially (replacing the newline and pre
tags with the <BR> and new tag).
|
|
|
|
|
|
|
| |
Also make catman's man.conf be generated as catman.conf to avoid clobbering
a real man.conf file.
Finally, add a placeholder catman() function to man.cgi for preformatted
manuals in the cache.
|
|
|
|
| |
formatting manpages is now linked into man.cgi.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(1) Insecure. This means that we're operating over the full file-system
with access to mandoc(1). In this mode, mandocdb entries are formatted
on-the-fly. The $INSECURE environment variable must be passed to
man.cgi for this mode to work.
(2) Secure. Manuals are assumed to be pre-formatted in a cache directory,
which may be set with $CACHE_DIR but default to /cache/man.cgi.
This mode works with manup(8), which updates the cached pages from
outside of the jail. man.cgi simply locates the manual file and
outputs it to stdout.
|
|
|
|
|
|
|
| |
In other words, if you smash this into a cgi-bin directory, it will Just
Work for your system's manuals (it of course needs access to mandoc(1) and
your file-system, hence "non-jailed").
The notion of a jailed case is much more subtle and being worked on now.
|
|
|
|
|
|
|
| |
submitted to tech@ on 16/11/2011, 01:39. It has been updated to account
for the logical-operator functions and to avoid keeping a live pointer into
the DBT value, which is not guaranteed to be consistent across calls into
the bdb library.
|
|
|
|
|
|
|
|
|
|
| |
set of keywords already exists is a bad idea, so reuse the mdoc(7)
macro names as apropos(1) search types. This is a gain in brevity
as well. Some time ago, kristaps@ agreed in principle.
The search type bit field constants are used by both mandocdb(8) and
apropos(1) and should better stay in sync, so give them their own
header file.
|