1SPAWN(8)                    System Manager's Manual                   SPAWN(8)
2
3
4

NAME

6       spawn - Postfix external command spawner
7

SYNOPSIS

9       spawn [generic Postfix daemon options] command_attributes...
10

DESCRIPTION

12       The  spawn(8) daemon provides the Postfix equivalent of inetd.  It lis‐
13       tens on a port as specified in the Postfix master.cf file and spawns an
14       external  command whenever a connection is established.  The connection
15       can be made over local  IPC  (such  as  UNIX-domain  sockets)  or  over
16       non-local  IPC  (such  as  TCP sockets).  The command's standard input,
17       output and error streams are connected directly  to  the  communication
18       endpoint.
19
20       This daemon expects to be run from the master(8) process manager.
21

COMMAND ATTRIBUTE SYNTAX

23       The  external command attributes are given in the master.cf file at the
24       end of a service definition.  The syntax is as follows:
25
26       user=username (required)
27
28       user=username:groupname
29              The external command is executed with the rights of  the  speci‐
30              fied  username.   The  software refuses to execute commands with
31              root privileges, or with  the  privileges  of  the  mail  system
32              owner.  If groupname is specified, the corresponding group ID is
33              used instead of the group ID of username.
34
35       argv=command... (required)
36              The command to be executed. This must be specified as  the  last
37              command attribute.  The command is executed directly, i.e. with‐
38              out interpretation of shell meta characters by a  shell  command
39              interpreter.
40

BUGS

42       In  order  to  enforce  standard Postfix process resource controls, the
43       spawn(8) daemon runs only one external command at a time.  As such,  it
44       presents  a  noticeable overhead by wasting precious process resources.
45       The spawn(8) daemon is expected to be replaced by a more structural so‐
46       lution.
47

DIAGNOSTICS

49       The  spawn(8) daemon reports abnormal child exits.  Problems are logged
50       to syslogd(8) or postlogd(8).
51

SECURITY

53       This program needs root privilege in order to execute external commands
54       as the specified user. It is therefore security sensitive.  However the
55       spawn(8) daemon does not talk to the external command and thus  is  not
56       vulnerable to data-driven attacks.
57

CONFIGURATION PARAMETERS

59       Changes  to  main.cf  are picked up automatically as spawn(8) processes
60       run for only a limited amount of time. Use the command "postfix reload"
61       to speed up a change.
62
63       The  text  below provides only a parameter summary. See postconf(5) for
64       more details including examples.
65
66       In the text below, transport is the first field of  the  entry  in  the
67       master.cf file.
68

RESOURCE AND RATE CONTROL

70       transport_time_limit ($command_time_limit)
71              A transport-specific override for the command_time_limit parame‐
72              ter value, where transport is the master.cf name of the  message
73              delivery transport.
74

MISCELLANEOUS

76       config_directory (see 'postconf -d' output)
77              The  default  location of the Postfix main.cf and master.cf con‐
78              figuration files.
79
80       daemon_timeout (18000s)
81              How much time a Postfix daemon process may take to handle a  re‐
82              quest before it is terminated by a built-in watchdog timer.
83
84       export_environment (see 'postconf -d' output)
85              The  list  of  environment variables that a Postfix process will
86              export to non-Postfix processes.
87
88       ipc_timeout (3600s)
89              The time limit for sending or receiving information over an  in‐
90              ternal communication channel.
91
92       mail_owner (postfix)
93              The  UNIX  system  account  that owns the Postfix queue and most
94              Postfix daemon processes.
95
96       max_idle (100s)
97              The maximum amount of time that an idle Postfix  daemon  process
98              waits for an incoming connection before terminating voluntarily.
99
100       max_use (100)
101              The maximal number of incoming connections that a Postfix daemon
102              process will service before terminating voluntarily.
103
104       process_id (read-only)
105              The process ID of a Postfix command or daemon process.
106
107       process_name (read-only)
108              The process name of a Postfix command or daemon process.
109
110       queue_directory (see 'postconf -d' output)
111              The location of the Postfix top-level queue directory.
112
113       syslog_facility (mail)
114              The syslog facility of Postfix logging.
115
116       syslog_name (see 'postconf -d' output)
117              A prefix that  is  prepended  to  the  process  name  in  syslog
118              records, so that, for example, "smtpd" becomes "prefix/smtpd".
119
120       Available in Postfix 3.3 and later:
121
122       service_name (read-only)
123              The master.cf service name of a Postfix daemon process.
124

SEE ALSO

126       postconf(5), configuration parameters
127       master(8), process manager
128       postlogd(8), Postfix logging
129       syslogd(8), system logging
130

LICENSE

132       The Secure Mailer license must be distributed with this software.
133

AUTHOR(S)

135       Wietse Venema
136       IBM T.J. Watson Research
137       P.O. Box 704
138       Yorktown Heights, NY 10598, USA
139
140       Wietse Venema
141       Google, Inc.
142       111 8th Avenue
143       New York, NY 10011, USA
144
145
146
147                                                                      SPAWN(8)
Impressum