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  non-
16       local  IPC (such as TCP sockets).  The command´s standard input, output
17       and error streams are connected directly to the communication endpoint.
18
19       This daemon expects to be run from the master(8) process manager.
20

COMMAND ATTRIBUTE SYNTAX

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

BUGS

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

DIAGNOSTICS

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

SECURITY

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

CONFIGURATION PARAMETERS

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

RESOURCE AND RATE CONTROL

69       transport_time_limit ($command_time_limit)
70              The amount of time the command is allowed to run  before  it  is
71              terminated.
72
73              Postfix  2.4  and later support a suffix that specifies the time
74              unit: s (seconds), m (minutes), h (hours), d (days), w  (weeks).
75              The default time unit is seconds.
76

MISCELLANEOUS

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

SEE ALSO

124       postconf(5), configuration parameters
125       master(8), process manager
126       syslogd(8), system logging
127

LICENSE

129       The Secure Mailer license must be distributed with this software.
130

AUTHOR(S)

132       Wietse Venema
133       IBM T.J. Watson Research
134       P.O. Box 704
135       Yorktown Heights, NY 10598, USA
136
137
138
139                                                                      SPAWN(8)
Impressum