|
NAMEmandocd —
server process to format manual pages in batch mode
SYNOPSIS
DESCRIPTIONThemandocd utility formats many manual pages without
requiring
fork(2) and
exec(3)
overhead in between. It does not require listing all the manuals to be
formatted on the command line, and it supports writing each formatted manual
to its own file descriptor.
This server requires that a connected UNIX domain
socket(2)
is already present at
exec(3)
time. Consequently, it cannot be started from the
sh(1)
command line because the shell cannot supply such a socket. Typically, the
socket is created by the parent process using
socketpair(2)
before calling
fork(2)
and
exec(3)
on
The options are as follows:
After exhausting one input file descriptor, all three file descriptors are closed before reading the next dummy byte and control message. When a zero-byte message is read, when the
socket_fd is closed by the parent process, or when an
error occurs, EXIT STATUSThemandocd utility exits 0 on success,
and >0 if an error occurs.
A zero-byte message or a closed socket_fd is considered success. Possible errors include:
Except for memory exhaustion and similar system-level failures,
parsing and formatting errors do not cause SEE ALSOmandoc(1), mandoc(3), catman(8)HISTORYThemandocd utility appeared in version 1.14.1 or the
mandoc toolkit.
AUTHORSThe concept was designed and implemented by Michael Stapelberg <stapelberg@debian.org>. The mandoc(3) glue needed to make it a stand-alone process was added by Ingo Schwarze <schwarze@openbsd.org>.CAVEATSIf the parsed manual pages contain roff(7) .so requests, mandocd needs to
be started with the current working directory set to the root of the manual
page tree. Avoid starting it in directories that contain secret files in any
subdirectories, in particular in the user starting it has read access to these
secret files.
Visit the GSP FreeBSD Man Page Interface. |