INNCONFVAL(1)

NAME
innconfval - Get configuration parameters from configuration files

SYNOPSIS
innconfval [-pstv] [-f file] [-F filetype] [-i innconffile] [parameter ...]

innconfval -C [-i innconffile]

DESCRIPTION
innconfval normally prints the values of the parameters specified on the command line, from inn.conf. By default, it just prints the parameter values, but if -p, -s, or -t are given, it instead prints the parameter and value in the form of a variable assignment in Perl, Bourne shell, or Tcl respectively. If no parameters are specifically requested, innconfval prints out all parameter values (this isn't particularly useful unless one of -p, -s, or -t were specified).

All parameters are taken from inn.conf except for version, which is always the version string of INN.

Use the -f and -F options to specify another configuration file from which to print the values of the parameters.

If given the -C option, innconfval instead checks inn.conf, reporting any problems found to standard error.

OPTIONS

-C  Check inn.conf rather than printing out the values of parameters, and exit with status "0" if no problems are found and with status "1" otherwise.

-f file
    Use file as the source configuration file for the type mentioned in the -F option. If not set, the default configuration file is used (that is to say the file in pathetc named like the type provided with -F). file must be a valid configuration file of that type and will be parsed the same as that type would be.

-F filetype
    filetype must either be "inn.conf" (the default) or "inn-secrets.conf". It defines the type of configuration file to parse.

    For instance, run "innconfval -F inn-secrets.conf canlockuser" to retrieve the canlockuser value from inn-secrets.conf.

    The default path to the configuration file of the requested type will be used, unless -f is given (or a specific source configuration file for inn.conf is set with -i and defines another pathetc location).

-i innconffile
    Use innconffile as the source configuration file for inn.conf rather than inn.conf in pathetc. innconffile must be a valid inn.conf file and will be parsed the same as inn.conf would be.

-p  Print out parameters as Perl assignment statements. The variable name will be the same as the configuration parameter, and string values will be enclosed in single quotes with appropriate escaping. Boolean values will be mapped to the strings "true" or "false". List values will be mapped to an array of strings. NULL values are printed out with the "undef" value.

    Here is an example:

        $enableoverview = 'true';
        @extraoverviewadvertised = ( 'Newsgroups', 'Injection-Info' );
        @extraoverviewhidden = undef;
        $organization = 'Let\'s try nasty "quotes"';
        $maxforks = 10;

    If innconfval is called via the Perl "INN::Config" module, all these variables are properly exported.

-s  Print out parameters as Bourne shell assignment statements. The variable name will be the configuration parameter name in all capitals, and all variables will be exported, if not NULL. String values will be enclosed in single quotes with appropriate escaping, and boolean values will be mapped to "true" or "false". List values will be mapped to a space-separated string representing an array of strings (as Bourne shell does not recognize arrays, contrary to several other shells, an array cannot be returned for interoperability reasons).

    Here is an example:

        ENABLEOVERVIEW=true; export ENABLEOVERVIEW;
        EXTRAOVERVIEWADVERTISED='"Newsgroups" "Injection-Info"';
            export EXTRAOVERVIEWADVERTISED;
        ORGANIZATION='Let'\''s try nasty "quotes"'; export ORGANIZATION;
        MAXFORKS=10; export MAXFORKS;

-t  Print out parameters as Tcl assignment statements. The variable name will be the same as the configuration parameter name but with "inn_" prepended, and string variables will be escaped appropriately. Boolean values will be mapped to the strings "true" or "false". List values will be mapped to an array of strings. NULL values are not printed out.

    Here is an example:

        set inn_enableoverview "true"
        set inn_extraoverviewadvertised { "Newsgroups" "Injection-Info" }
        set inn_organization "Let's try nasty \"quotes\""
        set inn_maxforks 10

-v  Print INN's version and exit. This is equivalent to "innconfval version".

HISTORY
Written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews.

SEE ALSO
inn.conf(5), inn-secrets.conf(5), INN::Config(3pm).