<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" 
   "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">

<section id="permissions.parameters" xmlns:xi="http://www.w3.org/2001/XInclude">
    <sectioninfo>
    </sectioninfo>

    <title>Parameters</title>

    <section id="default_allow_file">
	<title><varname>default_allow_file</varname> (string)</title>
	<para>
	    Default allow file used by functions without parameters. If you
	    don't specify full pathname then the directory in which is the main
	    config file is located will be used.
	</para>
	<para>
	    Default value is <quote>permissions.allow</quote>.
	</para>
	<example>
	    <title>Set <varname>default_allow_file</varname> parameter</title>
	    <programlisting>
...
modparam("permissions", "default_allow_file", "/etc/permissions.allow")
...
	    </programlisting>
	</example>
    </section>

    <section id="default_deny_file">
	<title><varname>default_deny_file</varname> (string)</title>
	<para>
	    Default file containing deny rules. The file is used by functions
	    without parameters. If you don't specify full pathname then the
	    directory in which the main config file is located will be used.
	</para>
	<para>
	    Default value is <quote>permissions.deny</quote>.
	</para>
	<example>
	    <title>Set <varname>default_deny_file</varname> parameter</title>
	    <programlisting>
...
modparam("permissions", "default_deny_file", "/etc/permissions.deny")
...
	    </programlisting>
	</example>
	<para>
		If both of the default file parameters are set to "" the module
		does not try to load them.
	</para>
    </section>

    <section id="check_all_branches">
	<title><varname>check_all_branches</varname> (integer)</title>
	<para>
	    If set then allow_routing functions will check Request-URI of all
	    branches (default). If disabled then only Request-URI of the first
	    branch will be checked.
	</para>
	<warning>
	    <para>
		Do not disable this parameter unless you really know what you are doing.
	    </para>
	</warning>
	<para>
	    Default value is 1.
	</para>
	<example>
	    <title>Set <varname>check_all_branches</varname> parameter</title>
	    <programlisting>
...
modparam("permissions", "check_all_branches", 0)
...
	    </programlisting>
	</example>
    </section>

    <section id="allow_suffix">
	<title><varname>allow_suffix</varname> (string)</title>
	<para>
	    Suffix to be appended to basename to create filename of the allow
	    file when version with one parameter of either
	    <function>allow_routing</function> or
	    <function>allow_register</function> is used.
	</para>
	<note>
	    <para>
		Including leading dot.
	    </para>
	</note>
	<para>
	    Default value is ".allow".
	</para>
	<example>
	    <title>Set <varname>allow_suffix</varname> parameter</title>
	    <programlisting>
...
modparam("permissions", "allow_suffix", ".allow")
...
	    </programlisting>
	</example>
    </section>

    <section id="deny_suffix">
	<title><varname>deny_suffix</varname> (string)</title>
	<para>
	    Suffix to be appended to basename to create filename of the deny
	    file when version with one parameter of either
	    <function>allow_routing</function> or
	    <function>allow_register</function> is used.
	</para>
	<note>
	    <para>
		Including leading dot.
	    </para>
	</note>
	<para>
	    Default value is ".deny".
	</para>
	<example>
	    <title>Set <varname>deny_suffix</varname> parameter</title>
	    <programlisting>
...
modparam("permissions", "deny_suffix", ".deny")
...
	    </programlisting>
	</example>
    </section>

    <section id="max_rule_files">
	<title><varname>max_rule_files</varname> (int)</title>
	<para>
		Maximum number of allow/deny file pairs.
	</para>
	<para>
		Default value is 64.
	</para>
    </section>

    <section id="safe_file_load">
	<title><varname>safe_file_load</varname> (int)</title>
	<para>
		Module initialization fails in case of a missing config file if
		safe_file_load is true.
	</para>
	<para>
		Default value is 0 (false).
	</para>
    </section>

    <section id="db_url">
	<title><varname>db_url</varname> (string)</title>
	<para>
		URL of the database to be used.
	</para>
    </section>

    <section id="db_mode">
	<title><varname>db_mode</varname> (int)</title>
	<para>
		Disables/enables database cache.
	</para>
	<para>
		Default value is 0 (cache is disabled)
	</para>
	<para>
		NOTE: ipmatch functions can operate only in cache mode, set db_mode
		to 1 if you want to use them.
	</para>
    </section>

    <section id="ipmatch_table">
	<title><varname>ipmatch_table</varname> (string)</title>
	<para>
		Name of the table containing ipmatch entries.
	</para>
	<para>
		Default value is "ipmatch".
	</para>
    </section>
    
    <section id="declare_ipset">
	<title><varname>declare_ipset</varname> (string)</title>
	<para>
		Declares name of ip set which can be manipulated via RPC commands and 
		tested using <function>ip_is_trusted</function>.
		Identifier must start with letter or underscore.		
	</para>
	<para>
		IP mask may follow equal sign to initialize ipset on startup.
	</para>
    </section>
</section>
