manpagez: man pages & more
man Mail::SpamAssassin::Conf::Parser(3)
Home | html | info | man

Mail::SpamAssassin::Conf::Parser(3)




NAME

       Mail::SpamAssassin::Conf::Parser - parse SpamAssassin configuration


SYNOPSIS

         (see Mail::SpamAssassin)


DESCRIPTION

       Mail::SpamAssassin is a module to identify spam using text analysis and
       several internet-based realtime blacklists.

       This class is used internally by SpamAssassin to parse its
       configuration files.  Please refer to the "Mail::SpamAssassin"
       documentation for public interfaces.


STRUCTURE OF A CONFIG BLOCK

       This is the structure of a config-setting block.  Each is a hashref
       which may contain these keys:

       setting
           the name of the setting it modifies, e.g. "required_score". this
           also doubles as the default for 'command' (below). THIS IS
           REQUIRED.

       command
           The command string used in the config file for this setting.
           Optional; 'setting' will be used for the command if this is
           omitted.

       aliases
           An [aryref] of other aliases for the same command.  optional.

       type
           The type of this setting:

                      - $CONF_TYPE_STRING: string
                      - $CONF_TYPE_NUMERIC: numeric value (float or int)
                      - $CONF_TYPE_BOOL: boolean (0/no or 1/yes)
                      - $CONF_TYPE_TEMPLATE: template, like "report"
                      - $CONF_TYPE_ADDRLIST: address list, like "whitelist_from"
                      - $CONF_TYPE_HASH_KEY_VALUE: hash key/value pair,
                        like "describe" or tflags

           If this is set, a 'code' block is assigned based on the type.

           Note that $CONF_TYPE_HASH_KEY_VALUE-type settings require that the
           value be non-empty, otherwise they'll produce a warning message.

       code
           A subroutine to deal with the setting.  Only used if type is not
           set.  ONE OF code OR type IS REQUIRED.  The arguments passed to the
           function are "($self, $key, $value, $line)", where $key is the
           setting (*not* the command), $value is the value string, and $line
           is the entire line.

           There are two special return values that the code subroutine may
           return to signal that there is an error in the configuration:

           $Mail::SpamAssassin::Conf::MISSING_REQUIRED_VALUE -- this setting
           requires that a value be set, but one was not provided.

           $Mail::SpamAssassin::Conf::INVALID_VALUE -- this setting requires a
           value from a set of 'valid' values, but the user provided an
           invalid one.

           Any other values -- including "undef" -- returned from the
           subroutine are considered to mean 'success'.

       default
           The default value for the setting.  may be omitted if the default
           value is a non-scalar type, which should be set in the Conf ctor.
           note for path types: using "__userstate__" is recommended for
           defaults, as it allows Mail::SpamAssassin module users who set that
           configuration setting, to receive the correct values.

       is_priv
           Set to 1 if this setting requires 'allow_user_rules' when run from
           spamd.

       is_admin
           Set to 1 if this setting can only be set in the system-wide config
           when run from spamd.  (All settings can be used by local programs
           run directly by the user.)

       is_frequent
           Set to 1 if this value occurs frequently in the config. this means
           it's looked up first for speed.


METHODS


POD ERRORS

       Hey! The above document had some coding errors, which are explained
       below:

       Around line 118:
           =over is the last thing in the document?!




perl v5.10.0                              Mail::SpamAssassin::Conf::Parser(3)

Mac OS X 10.6Server - Generated Thu Apr 15 06:47:04 CDT 2010
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.