This command creates, or re-creates, a database of Internet e-mail addresses using the vCard information in the Global Address Book room. This procedure is normally run internally when the server determines it necessary, but is also provided as a server command to be used as a troubleshooting/maintenance tool. Only a system Aide can run the command. It returns OK on success or ERROR on failure.

Retrieves or sets various system-wide configuration and policy options. This command is only available to Aides. The sole parameter accepted is a command, which should be either GET or SET. If the GET command succeeds, CONF will return LISTING_FOLLOWS followed by the fields described below, one line at a time. If the SET command succeeds, CONF will return SEND_LISTING and expect the fields described below, one line at a time (don't worry about other fields being added in the future; if a 'short' configuration list is sent, the missing values at the end will be left unchanged on the system). If either command fails for any reason, ERROR is returned.

Name of room to log instant messages to (or a zero-length name for none)

19

c_createax

Access level required to create rooms

20

c_maxmsglen

Maximum message length which may be entered into the system

21

c_min_workers

Minimum number of worker threads

22

c_max_workers

Maximum number of worker threads

23

c_pop3_port

Port number for POP3 service

24

c_smtp_port

Port number for SMTP service

25

c_rfc822_strict_from

Flag (0-3) - strict RFC822 adherence - 0: no from: headers altered; 1: only if not a valid email alias of the user; 2: always the users primary email address; 3: Reject the mail if its not a valid alias

CONF also accepts two additional commands: GETSYS and PUTSYS followed by an arbitrary MIME type (such as application/x-citadel-internet-config) which provides a means of storing generic configuration data in the Global System Configuration room without the need to add extra get/set commands to the server.

Please note that the LDAP-specific configs have no effect on Citadel servers in which LDAP support is not enabled.

The citadel system is designed to let messages vanish once they've been a certain time on the system, and are no longer of interest to user. These commands configure the global configuration. This is available on a per room basis too. For a technical discussion of how this works internally, read this article on How deferred processing works in Citadel.

Nearly all database maintenance involving the removal of deleted or expired items from the database is deferred until off-hours in order to improve the interactive performance of the system. This nightly job is affectionately known as The Dreaded Auto-Purger, and it runs at an hour which is specified in the global system configuration.

If for some reason you want to manually initiate a run of the purger, the TDAP command can be issued. This command will ignore any parameters passed to it, and of course it will fail if the user is not an Aide. If the command is accepted, OK is returned, and the purger will begin running within one minute. If the command is not accepted, ERROR is returned.

This command, accessible only by Aides, supports several utility operations
which examine or manipulate Citadel's SMTP support. The first command argument
is a subcommand telling the server what to do. The following subcommands are supported:

SMTP mx|hostname

(display all MX hosts for 'hostname')

SMTP runqueue

(attempt immediate delivery of all messages in the outbound SMTP queue, ignoring any retry times stored there)

This command, which may only be executed by an Aide, immediately shuts down the server. It is only implemented on servers on which such an operation is possible, such as a multithreaded Citadel engine. It takes one optional integer Parameter, that tells the server to try to come up again with the aid of his watcher process, Though it will do a full shutdown, and do allmost everything except for reparsing its commandline. If the parameter is set to 0 or is ommited the server does not restart. DOWN returns OK if the user is allowed to shut down the server, in which case the client program should expect the connection to be immediately broken.
If the server isn't running deamonized and is ordered to restart he will answer with an apropriate error, so the client can tell the user he should pay attenion to this.

SCDN sets or clears the “scheduled shutdown” flag. Pass this command a 1 or 0 to respectively set or clear the flag. 2 and 3 will do the same, but make the watcher fire up the server again instead of shutting down. When the “scheduled shutdown” flag is set, the server will be shut down when there are no longer any users logged in. Any value other than 0, 1, 2 or 3 will not change the flag, only report its state. No users will be kicked off the system, and in fact the server is still available for new connections. The command returns ERROR if it fails; otherwise, it returns OK followed by a number representing the current state of the flag.

Identical to the DOWN command, except instead of exiting, the server process cleans up and then suspends indefinitely. This could potentially be useful for shutdown scripts that don't want init to automatically respawn another citserver process.