X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=Documentation%2Fpublic-inbox-daemon.pod;h=f77fc3a9f732e44c738946edb95ee3b972256713;hb=refs%2Fheads%2Fmaster;hp=42beda69927d5104769145eeac01d5cb8c5a04ef;hpb=66c6699142d95cce9e5c9d49e0498161a776cc22;p=public-inbox.git diff --git a/Documentation/public-inbox-daemon.pod b/Documentation/public-inbox-daemon.pod index 42beda69..81a79a10 100644 --- a/Documentation/public-inbox-daemon.pod +++ b/Documentation/public-inbox-daemon.pod @@ -4,16 +4,18 @@ public-inbox-daemon - common usage for public-inbox network daemons =head1 SYNOPSIS + public-inbox-netd public-inbox-httpd + public-inbox-imapd public-inbox-nntpd + public-inbox-pop3d =head1 DESCRIPTION This manual describes common options and behavior for public-inbox network daemons. Network daemons for public-inbox -provide read-only NNTP and HTTP access to public-inboxes. Write -access to a public-inbox repository will never be required to -run these. +provide read-only IMAP, HTTP, NNTP and POP3 access to public-inboxes. +Write access to a public-inbox will never be required to run these. These daemons are implemented with a common core using non-blocking sockets and optimized for fairness; even with @@ -25,40 +27,61 @@ breaking existing connections during software upgrades. These daemons may also utilize multiple pre-forked worker processes to take advantage of multiple CPUs. -Native TLS (Transport Layer Security) support is planned. - =head1 OPTIONS =over -=item -l, --listen ADDRESS +=item -l [PROTOCOL://]ADDRESS[?opt1=val1,opt2=val2] + +=item --listen [PROTOCOL://]ADDRESS[?opt1=val1,opt2=val2] This takes an absolute path to a Unix socket or HOST:PORT to listen on. For example, to listen to TCP connections on port 119, use: C<-l 0.0.0.0:119>. This may also point to a Unix socket (C<-l /path/to/http.sock>) for a reverse proxy -like L to use. +like L to use. May be specified multiple times to allow listening on multiple sockets. +Unless per-listener options are used (required for +L), this does not need to be specified at +all if relying on L or similar, + +Per-listener options may be specified after C as C +pairs delimited by C<,>. See L for +documentation on the C, C, C, +C, C, and C options available. + Default: server-dependent unless socket activation is used with L or similar (see L). -=item -1, --stdout PATH +=item -1 + +=item --stdout PATH Specify an appendable path to redirect stdout descriptor (1) to. Using this is preferable to setting up the redirect externally (e.g. EE/path/to/log in shell) since it allows SIGUSR1 to be handled (see L below). -Default: /dev/null +C may also be specified on a per-listener basis. -=item -2, --stderr PATH +Default: /dev/null with C<--daemonize>, inherited otherwise + +=item -2 PATH + +=item --stderr PATH Like C<--stdout>, but for the stderr descriptor (2). -=item -W, --worker-processes +C may also be specified on a per-listener basis. + +Default: /dev/null with C<--daemonize>, inherited otherwise + +=item -W + +=item --worker-processes Set the number of worker processes. @@ -73,11 +96,30 @@ the master on crashes. Default: 1 +=item --cert /path/to/cert + +The default TLS certificate for HTTPS, IMAPS, NNTPS, POP3S and/or STARTTLS +support if the C option is not given with C<--listen>. + +Well-known TCP ports automatically get TLS or STARTTLS support +If using systemd-compatible socket activation and a TCP listener +on port well-known ports (563 is inherited, it is automatically +NNTPS when this option is given. When a listener on port 119 is +inherited and this option is given, it automatically gets +STARTTLS support. + +=item --key /path/to/key + +The default TLS certificate key for the default C<--cert> or +per-listener C option. The private key may be +concatenated into the path used by the cert, in which case this +option is not needed. + =back =head1 SIGNALS -Most of our signal handling behavior is copied from L +Most of our signal handling behavior is copied from L and/or L; so it is possible to reuse common scripts for managing them. @@ -95,7 +137,7 @@ See L below. =item SIGHUP Reload config files associated with the process. -(FIXME: not tested for -httpd, yet) +(Note: broken for L only in E= 1.6) =item SIGTTIN @@ -133,6 +175,18 @@ See L Used by systemd (and compatible) installations for socket activation. See L and L. +=item PERL_INLINE_DIRECTORY + +Pointing this to point to a writable directory enables the use +of L and L extensions which may provide +platform-specific performance improvements. Currently, this +enables the use of L which speeds up subprocess +spawning with the Linux kernel. + +public-inbox will never enable L automatically without +this environment variable set or C<~/.cache/public-inbox/inline-c> +created by a user. See L and L for more details. + =back =head1 UPGRADING @@ -157,15 +211,16 @@ interrupted and lost. Feedback welcome via plain-text mail to L -The mail archives are hosted at L -and L +The mail archives are hosted at L and +L =head1 COPYRIGHT -Copyright 2013-2016 all contributors L +Copyright all contributors L License: AGPL-3.0+ L =head1 SEE ALSO -L, L +L, L, +L, L, L