My new OpenSER server will not load the permissions module.  I built this box from source downloaded from the openser.org site three days ago (openser-1.2.1-tls_src.tar.gz), and populated my PostgreSQL database with the scripts/postgresqldb.sh script included with the source.

 

I’m setting up permissions.so like:

 

loadmodule "permissions.so"

modparam("permissions", "db_url", "postgres://<<snip>>")

modparam("permissions", "db_mode", 0)

modparam("permissions", "trusted_table", "trusted")

modparam("permissions", "ip_addr_col", "src_ip")

modparam("permissions", "default_allow_file", "/usr/local/etc/openser/permissions.allow")

modparam("permissions", "default_deny_file",  "/usr/local/etc/openser/permissions.deny")

 

When I attempt to start openser with the permissions module, I receive the following in the log:

 

Jun 14 19:13:21 gaia /usr/local/sbin/openser[21948]: permissions - initializing

Jun 14 19:13:21 gaia /usr/local/sbin/openser[21948]: Default allow file (/usr/local/etc/openser/permissions.allow) not found => empty rule set

Jun 14 19:13:21 gaia /usr/local/sbin/openser[21948]: Default deny file (/usr/local/etc/openser/permissions.deny) not found => empty rule set

Jun 14 19:13:21 gaia /usr/local/sbin/openser[21948]: permissions:init_addresses(): Invalid table version 2 - expected 3

Jun 14 19:13:21 gaia /usr/local/sbin/openser[21948]: Error while initializing allow_address function

Jun 14 19:13:21 gaia /usr/local/sbin/openser[21948]: init_mod(): Error while initializing module permissions

 

I have verified the table is in the database:

 

openser=# select * from trusted;

 id | src_ip | proto | from_pattern | tag

----+--------+-------+--------------+-----

(0 rows)

 

I was instructed to increment the version of the table in the database, and I did using the information from the log (changing the version to 3) and still received the same error.  The version table had the following for trusted when it was installed (from script):

 

openser=# select * from version where table_name = 'trusted';

 table_name | table_version

------------+---------------

 trusted    |             4

(1 row)

 

Any light that someone could shed on this for me would be greatly appreciated.

 

Many thanks,

Kw