The program passthrough server provides basic inetd functionality. Basically it can accept connections and pass this connection to the standard input (stdin) and standard output (stdout) handles of programs. Depending on the platform (operating system) the user is able to configure different methods how this can be achieved.
This server has different types of configuration options specifying its behaviour. Some of them are mandatory and some are optional. The very least to configure is the program to be started when a new connection is made.
binary (string, no default)
This parameter specifies the program to execute when a new connection has been accepted. The parameter is mandatory and must be a fully qualified file name (including path).
directory (string, no default)
This will be the working directory of the executed program. If you omit this parameter the server uses the current directory (the directory is not changed).
user (string, no default)
If you omit this parameter no user or group will be set for the started program. Otherwise you need to specify this information in the format ‘user[.group]’. If the group is omitted the user’s primary group will be used.
argv (string array, no default)
This list of character strings is going to be the program’s argument list
(command line). If the first list item (which is argv and the program’s
name) is left blank it defaults to the name specified in the
do-fork (boolean, default: true)
This flag specifies the method used to pass the connection to the program.
If it is true the server uses the Unix’ish
method. Otherwise it will pass the data through a unnamed pair of
sockets [ or two pairs of anonymous pipes ].
single-threaded (boolean, default: true)
This parameter applies to servers bound to UDP and ICMP port configurations only. For programs which process all incoming packets and eventually time out, the program is said to be ‘single-threaded’ and should use a true value here. If a program gets a packet and can receive further packets, it is said to be a ‘multi-threaded’ program, and should use a false value.
thread-frequency (integer, default: 40)
thread-frequency parameter specifies the maximum number
of program instances that may be spawned from the server within an interval
of 60 seconds.