X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd.socket.xml;h=ae8497e8ab4c3a9b399f9f9999a44a9d56e0997c;hp=47ad91374808b0904dd17ab86ff65aa891254285;hb=0eb59ccfe619cbc4b42ef8ff02b52971994dfe05;hpb=2292707df5dda00662d0b4905c14aa4fa8d1f1fa diff --git a/man/systemd.socket.xml b/man/systemd.socket.xml index 47ad91374..ae8497e8a 100644 --- a/man/systemd.socket.xml +++ b/man/systemd.socket.xml @@ -9,16 +9,16 @@ Copyright 2010 Lennart Poettering systemd is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. systemd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. + Lesser General Public License for more details. - You should have received a copy of the GNU General Public License + You should have received a copy of the GNU Lesser General Public License along with systemd; If not, see . --> @@ -44,7 +44,7 @@ systemd.socket - systemd socket configuration files + Socket unit configuration @@ -76,7 +76,10 @@ , and commands are executed - in. + in, and in + systemd.kill5 + which define the way the processes are + terminated. For each socket file a matching service file (see @@ -113,6 +116,17 @@ Socket units may be used to implement on-demand starting of services, as well as parallelized starting of services. + + Note that the daemon software configured for + socket activation with socket units needs to be able + to accept sockets from systemd, either via systemd's + native socket passing interface (see + sd_listen_fds3 + for details) or via the traditional + inetd8-style + socket passing (i.e. sockets passed in via STDIN and + STDOUT, using StandardInput=socket + in the service file). @@ -123,7 +137,9 @@ supervises. A number of options that may be used in this section are shared with other unit types. These options are documented in - systemd.exec5. The + systemd.exec5 + and + systemd.kill5. The options specific to the [Socket] section of socket units are the following: @@ -134,9 +150,9 @@ ListenSequentialPacket= Specifies an address to listen on for a stream - (SOCK_STREAM), datagram (SOCK_DGRAM) - resp. sequential packet - (SOCK_SEQPACKET) socket. The address + (SOCK_STREAM), datagram (SOCK_DGRAM), + or sequential packet + (SOCK_SEQPACKET) socket, respectively. The address can be written in various formats: If the address starts with a @@ -145,7 +161,7 @@ family. If the address starts with an - ampersand (@) it is read as abstract + at symbol (@) it is read as abstract namespace socket in the AF_UNIX family. The @ is replaced with a NUL character before binding. For details @@ -154,8 +170,13 @@ If the address string is a single number it is read as port - number to listen on for both IPv4 and - IPv6. + number to listen on via + IPv6. Depending on the value of + BindIPv6Only= (see below) this + might result in the service being + available via both IPv6 and IPv4 (default) or + just via IPv6. + If the address string is a string in the format v.w.x.y:z it is @@ -165,7 +186,12 @@ If the address string is a string in the format [x]:y it is read - as IPv6 address x on a port y. + as IPv6 address x on a port y. Note + that this might make the service + available via IPv4, too, depending on + the BindIPv6Only= + setting (see below). + Note that SOCK_SEQPACKET (i.e. ListenSequentialPacket=) @@ -201,12 +227,57 @@ Specifies a file system FIFO to listen on. This expects an absolute file system path as - argument. Behaviour otherwise is very + argument. Behavior otherwise is very similar to the ListenDatagram= directive above. + + ListenSpecial= + Specifies a special + file in the file system to listen + on. This expects an absolute file + system path as argument. Behavior + otherwise is very similar to the + ListenFIFO= + directive above. Use this to open + character device nodes as well as + special files in + /proc and + /sys. + + + + ListenNetlink= + Specifies a Netlink + family to create a socket for to + listen on. This expects a short string + referring to the AF_NETLINK family + name (such as audit + or kobject-uevent) + as argument, optionally suffixed by a + whitespace followed by a multicast + group integer. Behavior otherwise is + very similar to the + ListenDatagram= + directive above. + + + + ListenMessageQueue= + Specifies a POSIX + message queue name to listen on. This + expects a valid message queue name + (i.e. beginning with /). Behavior + otherwise is very similar to the + ListenFIFO= + directive above. On Linux message + queue descriptors are actually file + descriptors and can be inherited + between processes. + + BindIPv6Only= Takes a one of @@ -225,7 +296,10 @@ default, surprise!) the system wide default setting is used, as controlled by - /proc/sys/net/ipv6/bindv6only. + /proc/sys/net/ipv6/bindv6only, + which in turn defaults to the + equivalent of + . @@ -360,9 +434,9 @@ SendBuffer= Takes an integer argument controlling the receive - resp. send buffer sizes of this - socket. This controls the SO_RCVBUF - resp. SO_SNDBUF socket options (see + or send buffer sizes of this + socket, respectively. This controls the SO_RCVBUF + and SO_SNDBUF socket options (see socket7 for details.). @@ -410,6 +484,26 @@ for details. + + SmackLabel= + SmackLabelIPIn= + SmackLabelIPOut= + Takes a string + value. Controls the extended + attributes + security.SMACK64, + security.SMACK64IPIN + and + security.SMACK64IPOUT, + respectively, i.e. the security label + of the FIFO, or the security label for + the incoming or outgoing connections + of the socket, respectively. See + Smack.txt + for details. + + PipeSize= Takes an integer @@ -420,6 +514,19 @@ for details. + + MessageQueueMaxMessages=, + MessageQueueMessageSize= + These two settings + take integer values and control the + mq_maxmsg field or the mq_msgsize field, respectively, when + creating the message queue. Note that + either none or both of these variables + need to be set. See + mq_setattr3 + for details. + + FreeBind= Takes a boolean @@ -437,6 +544,46 @@ address. Defaults to . + + Transparent= + Takes a boolean + value. Controls the IP_TRANSPARENT + socket option. Defaults to + . + + + + Broadcast= + Takes a boolean + value. This controls the SO_BROADCAST + socket option, which allows broadcast + datagrams to be sent from this + socket. Defaults to + . + + + + PassCredentials= + Takes a boolean + value. This controls the SO_PASSCRED + socket option, which allows AF_UNIX sockets to + receive the credentials of the sending + process in an ancillary message. + Defaults to + . + + + + PassSecurity= + Takes a boolean + value. This controls the SO_PASSSEC + socket option, which allows AF_UNIX + sockets to receive the security + context of the sending process in an + ancillary message. Defaults to + . + + TCPCongestion= Takes a string @@ -454,9 +601,9 @@ ExecStartPost= Takes one or more command lines, which are executed - before (resp. after) the listening + before or after the listening sockets/FIFOs are created and - bound. The first token of the command + bound, respectively. The first token of the command line must be an absolute file name, then followed by arguments for the process. Multiple command lines may be @@ -470,9 +617,9 @@ ExecStopPre= ExecStopPost= Additional commands - that are executed before (resp. after) + that are executed before or after the listening sockets/FIFOs are closed - and removed. Multiple command lines + and removed, respectively. Multiple command lines may be specified following the same scheme as used for ExecStartPre= of @@ -494,37 +641,12 @@ will be terminated forcibly via SIGTERM, and after another delay of this time with SIGKILL. (See - below.) + in systemd.kill5.) Takes a unit-less value in seconds, or a time span value such as "5min 20s". Pass 0 to disable the timeout logic. Defaults to - 60s. - - - - KillMode= - Specifies how - processes of this socket unit shall be - killed. One of - , - , - , - . - - This option is mostly equivalent - to the - option of service files. See - systemd.service5 - for details. - - - - KillSignal= - Specifies which signal - to use when killing a process of this - socket. Defaults to SIGTERM. - + 90s. @@ -539,6 +661,13 @@ + + Check + systemd.exec5 + and + systemd.kill5 + for more settings. + @@ -548,6 +677,7 @@ systemctl8, systemd.unit5, systemd.exec5, + systemd.kill5, systemd.service5