POP3 Configuration

The POP3 service is controlled by a configuration block in the config.xml. The pop3server tag defines the boundaries of the configuration block. It encloses all the relevant configuration for the POP3 server. The behavior of the POP service is controlled by the attributes and children of this tag.

This tag has an optional boolean attribute - enabled - that defines whether the service is active or not. The value defaults to "true" if not present.

The standard children of the pop3server tag are:

  • port - This is an optional integer value. This value is the port on which this POP3 server is configured to listen.If the tag or value is omitted, the value will default to the standard POP3 port, 110.
  • bind - This is an optional value. If present, this value is a string describing the IP address to which this service should be bound. If the tag or value is absent then the service will bind to all network interfaces for the machine.
  • useTLS - This is an optional boolean value. If this value is true, then the "ssl" server socket factory is used to generate the server socket for this service. If it is false, the "plain" server socket factory is used. In either case this behavior is overridden by the serverSocketType tag which is described under the expert configuration options.
  • handler - This is an artifact preserved for backwards compatibility. This tag was used to group related parameters. It should disappear in future versions.
    • helloName - This is a required tag with an optional body that defines the server name used in the initial service greeting. The tag may have an optional attribute - autodetect. If the autodetect attribute is present and true, the service will use the local hostname returned by the Java libraries. If autodetect is absent or false, the body of the tag will be used. In this case, if no body is present, the value "localhost" will be used.
    • connectionTimeout - This is an optional tag with an integer body.

There are a few additional children of the pop3server tag that are appropriate for advanced configurations. These should only be used by expert administrators. All tags in this group are optional.

  • serverSocketFactory - This is an optional tag with a string body. If the tag is present, the body must be the name of one of the server socket factories specified in the socket manager block. Any other value will result in an error. If present, this tag overrides the useTLS tag.
  • threadGroup - This is an optional tag with a string body. If the tag is present, the body must be the name of one of the thread groups specified in the thread manager block. Any other value will result in an error. This tag is best used to fine tune thread allocation between the services.
  • connectionLimit - The connectionLimit parameter specifies the maximum number of client connections that this service will allow. If no value is specified, the value defaults to that specified in the connectionmanager block. A value of 0 means that there is no limit imposed by the service, although resource limitations imposed by other components (i.e. max # of threads) may serve to limit the number of open connections.