NAME

pmx-config - Inspect and modify configuration options


SYNOPSIS

 pmx-config                   print summary of F<pmx.conf> options
 pmx-config --full            print all configuration options
 pmx-config foo               print value of option 'foo'
 pmx-config foo new_value     set value of option 'foo'
 pmx-config --edit            edit pmx.conf
 pmx-config --edit foo        edit F<pmx.d/foo.conf>


DESCRIPTION

The pmx-config command is used to inspect and modify configuration options. It can also be used to edit the configuration files.

Relevant PureMessage configuration files and a description of the fields they contain are found in the sections that follow. Configuration files not listed are internal to the PureMessage system and should not be altered.

Inspecting and Modifying Configuration Options

The quickest way to view the PureMessage configuration is to type pmx-config. This outputs a summary of your PureMessage configuration that should look something like this:

 Milters:
    Policy
 Defaults:
    _cached_from              = "/opt/pmx6/etc/pmx.conf.cache"
    admin                     = "PureMessage Admin <postmaster\@<ServerName>.<Domain>.com>"
    args                      = []
    async_release             = 1
    avoid_message_splitting   = 0
    block_size                = 4096
    blocklist                 = {
  Policy => {
        blocklist_log => "/opt/pmx6/var/log/blocklist_log",
        port => "inet:4466\@localhost",
        refresh_interval => 60,
      },
      }
    buffer_size               = 1_000_000
    clone                     = 0
    concurrency_limit         = 3
    concurrency_limit_action  = "tempfail"
    debug_level               = 9
    group                     = 1009
    internal-hosts            = []
    language                  = "en"
    listen_queue_size         = 0
    log_dir                   = "/opt/pmx6/var/log"
    log_to                    = "/opt/pmx6/var/log/pmx_log"
    log_utc                   = 0
    mail_sender               = "smtp:localhost:10026"
    max_pooled_procs          = 3
    max_proto_data_size       = 65_535
    max_threads               = 1
    min_pooled_procs          = 3
    perl_args                 = []
    pmx_conf                  = "/opt/pmx6/etc/pmx.conf"
    pmx_d                     = "/opt/pmx6/etc/pmx.d"
    pmx_db                    = "postgres"
    pmx_prd_store             = "pmx_quarantine"
    pmx_resources_store       = "pmx_quarantine"
    pooled_proc_connect_limit = 20000 
    pooled_proc_idle_limit    = 300
    prefix                    = "/opt/pmx6"
    preload_interpreters      = 3
    quarantine_dir            = "/opt/pmx6/var/qdir"
    quarantine_expire         = {
  archive     => 1,
  archive_dir => "/opt/pmx6/home/archive",
  "exec"      => "",
  expire_time => 1_209_600
  }
    quarantine_secret         = "E2GthG3YTRhBrvqj"
    quarantine_type           = "pmdb"
    reinit_limit              = 2048
    relay_from_header         = "received"
    relay_from_index          = 0
    relay_use_header          = 0
    run_dir                   = "/opt/pmx6/var/run"
    stderr                    = "/opt/pmx6/var/log/pmx_err"
    stdout                    = "/opt/pmx6/var/log/pmx_out"
    store                     = {
  pmx_quarantine => {
                     dsn => "dbi:Pg:dbname=pmx_quarantine;port=5432;host=<ServerName>.<Domain>.com",
                    },
  pmx_reports    => {},
  pmx_resources  => {},
  }
    thread_stack_size         = 1024
    time_connection           = 1
    time_message              = 1
    timeout                   = 0
    umask                     = 7
    use_threads               = 0
    user                      = 1011
    warn_limit                = 0

This is a dump of all the configuration options in pmx.conf. If you want to see the entire configuration, you can run pmx-config --full. This shows every configuration option, except it filters out options in the <milter> sections that are the same as those in pmx.conf. For example, if you are running multiple milters, you can override use_threads on a per-milter basis, but pmx-config --full only displays milter#Main.use_threads if it differs from use_threads.

To modify an option, simply run pmx-config option value. For example, to enable PureMessage to use threads, run pmx-config use_threads yes. If you only want to enable threads for the 'Main' milter, use pmx-config milter#Main.use_threads yes.

Specifying Configuration Files

To edit a PureMessage configuration file quickly from any directory, type pmx-config --edit <file>. pmx-config uses these rules to determine which file you want to edit:

  1. If you didn't specify a file, it opens pmx.conf.

    For example, pmx-config edit will edit pmx.conf.

  2. If you specify a NAME, it looks for pmx.d/NAME.conf.

  3. If you specify a PATH/NAME, it looks for pmx.d/PATH.d/NAME.conf.


SEE ALSO

See also ActiveState::Config, perlretut


COPYRIGHT

Copyright (C) 2000-2009 Sophos Group. All rights reserved. Sophos and PureMessage are trademarks of Sophos Plc and Sophos Group.