GNU Dico Manual (split by node):   Section:   Chapter:FastBack: Dicod   Up: Configuration   FastForward: Modules   Contents: Table of ContentsIndex: Concept Index

4.3.2 Server Settings

Server settings control how dicod is executed on the server machine.

Configuration: user string

Run with the privileges of this user. Dicod does not require root privileges, so it is recommended to always use this statement when running dicod in daemon mode (see Daemon Mode). The argument is either a user name, or UID prefixed with a plus sign.

Example:

user nobody;
Configuration: group list

If user is given, dicod will drop all supplementary groups and switch to the principal group of that user. Sometimes, however, it may be necessary to retain one or more supplementary groups. For example, this might be necessary to access dictionary databases. The group statement retains the supplementary groups listed in list. Each group can be specified either by its name or by its GID number, prefixed with ‘+’, e.g.:

user nobody;
group (man, dict, +88);

This statement is ignored if user statement is not present or if dicod is running in inetd mode. See Inetd Mode.

Configuration: mode enum

Sets server operation mode. The argument is one of:

daemon

Run in daemon mode. See Daemon Mode, for a detailed description.

inetd

Run in inetd mode. See Inetd Mode, for a detailed description.

This statement is overridden by the --inetd command line option. See --inetd.

Configuration: listen list;

Specify the IP addresses and ports to listen on in daemon mode. By default, dicod will listen on port 2628 on all existing interfaces. Use the listen statement to abridge the list of interfaces to listen on, or to change the port number.

Elements of list can have the following forms:

host:port

Specifies an IP (version 4 or 6) socket to listen on. The host part is either an IPv4 in “dotted-quad” notation, or an IPv6 address in square brackets, or a host name. In the latter case, dicod will listen on all IP addresses corresponding to its ‘A’ or ‘AAAADNS records.

The port part is either a numeric port number or a symbolic service name which is found in /etc/services file.

Either of the two parts may be omitted. If host is omitted, dicod will listen on all interfaces. If port is omitted, it defaults to 2628. In this case the colon may be omitted, too.

Examples:

listen dict.example.org:2628;
listen 198.51.100.10;
listen [2001:DB8::11];
listen :2628;
inet://host:port
inet4://host:port

Listen on IPv4 socket. The host is either an IP address or a host name. In the latter case, dicod will start listening on all IP addresses from the ‘A’ records for this host.

Either host or port (but not both) can be omitted. Missing host defaults to IPv4 addresses on all available network interfaces, and missing port defaults to 2628.

Example:

listen inet4://198.51.100.10;
inet6://host:port

Listen on IPv6 socket. The host is either an IPv6 address in square brackets, or a host name. In the latter case, dicod will start listening on all IP addresses from the ‘AAAA’ records for this host.

Either host or port (but not both) can be omitted. Missing host defaults to IPv6 addresses on all available network interfaces, and missing port defaults to 2628.

Example:

listen inet6://[2001:DB8::11];
filename
unix://filename

Specifies the name of a UNIX socket to listen on. Filename must be an absolute file name of the socket.

Configuration: pidfile string

Store PID of the master process in this file. Default is localstatedir/run/dicod.pid. Notice that the access bits of this default directory may be insufficient for dicod to write there after dropping root privileges (see user statement). One solution to this is to create a subdirectory with the same owner as given by user statement and to point the PID file there:

pidfile /var/run/dict/dicod.pid;

Another solution is to make PID directory group-writable and to add the owner group to the group statement (see group statement).

Configuration: max-children number

Sets maximum number of sub-processes that can run simultaneously. This is equivalent to the number of clients that can simultaneously use the server. The default is 64 sub-processes.

Configuration: inactivity-timeout number

Set inactivity timeout to the number of seconds. The server disconnects automatically if the remote client has not sent any command within this number of seconds. Setting timeout to 0 disables inactivity timeout (the default).

This statement along with max-children allows you to control the server load.

Configuration: shutdown-timeout number

When the master server is shutting down, wait this number of seconds for all children to terminate. Default is 5 seconds.

Configuration: identity-check boolean

Enable identification check using AUTH protocol (RFC 1413). The received user name or UID can be shown in access log using the %l conversion (see Access Log).

Configuration: ident-keyfile string

Use encryption keys from the named file to decrypt AUTH replies encrypted using DES.

Configuration: ident-timeout number

Set timeout for AUTH input/output operation to number of seconds. Default timeout is 3 seconds.

GNU Dico Manual (split by node):   Section:   Chapter:FastBack: Dicod   Up: Configuration   FastForward: Modules   Contents: Table of ContentsIndex: Concept Index