[SR-Users] 5.0 to 5.1 - No module matching <geoip2> found

Daniel W. Graham dan at cmsinter.net
Sat Dec 16 08:03:36 CET 2017


After a clean system install (CentOS 7) -

Using default 5.1 cfg file this time for testing with these added lines (in proper locations):

loadmodule "geoip2.so"

modparam("geoip2", "path", "/usr/local/share/GeoIP/GeoLite2-City.mmdb")

if (geoip2_match("$si", "src")) {
                }

ERROR: <core> [core/sr_module.c:582]: load_module(): could not open module </usr/local/lib64/kamailio/modules/geoip2.so>: libmaxminddb.so.0: cannot open shared object file: No such file or directory
CRITICAL: <core> [core/cfg.y:3447]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 241, column 12-22: failed to load module
ERROR: <core> [core/modparam.c:152]: set_mod_param_regex(): No module matching <geoip2> found
CRITICAL: <core> [core/cfg.y:3450]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 291, column 71: Can't set module parameter
ERROR: <core> [core/cfg.y:3310]: yyparse(): cfg. parser: failed to find command geoip2_match (params 2)
CRITICAL: <core> [core/cfg.y:3450]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 457, column 31: unknown command, missing loadmodule?
CRITICAL: <core> [core/cfg.y:3450]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 458, column 2: syntax error
CRITICAL: <core> [core/cfg.y:3450]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 458, column 2:
INFO: <core> [core/sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized

(Starts fine without the above config lines)

# ls -l /usr/local/lib64/kamailio/modules/ | grep geo
-rwxr-xr-x 1 root root   73800 Dec 16 01:44 geoip2.so

ls -l /usr/local/share/GeoIP | grep Geo
-rw-r--r-- 1 root root 63478091 Dec 15 23:08 GeoLite2-City.mmdb

version: kamailio 5.1.0 (x86_64/linux)
flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: unknown
compiled on 23:13:35 Dec 15 2017 with gcc 4.8.5

# uname -r
3.10.0-693.el7.x86_64

Again, I have working fine on another host, that does have a different kernel version / other packages.
Any ideas?

-dan

From: sr-users [mailto:sr-users-bounces at lists.kamailio.org] On Behalf Of Daniel W. Graham
Sent: Friday, December 15, 2017 11:08 AM
To: miconda at gmail.com; Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org>
Subject: Re: [SR-Users] 5.0 to 5.1 - No module matching <geoip2> found

I noticed that there were SE contexts applied to pretty much all folders, /usr/bin/lib (where my libmaxminddb lives)  /usr/local/sbin and even /usr/local/src/.

The security context applied was: unconfined_u:object_r:usr_t:s0

I haven’t figured out what caused this, as I have systems without this behavior. My guess is it is related to disabling selinux after the build was complete. Despite my efforts resetting SE linux and removing contexts from affected files the problem persists. I’ve removed all install and src files, built again and the same problem persisted.

As far as the script errors, there are none. The cfg file is in active operation on other hosts. If I leave the IFDEF/ENDIF statements active and comment out only the statements related to geoip Kamailio starts fine.

A system rebuild will fix but I thought this behavior was odd and there could be a way to fix.

-dan

From: Daniel-Constantin Mierla [mailto:miconda at gmail.com]
Sent: Friday, December 15, 2017 4:19 AM
To: Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org<mailto:sr-users at lists.kamailio.org>>; Daniel W. Graham <dan at cmsinter.net<mailto:dan at cmsinter.net>>
Subject: Re: [SR-Users] 5.0 to 5.1 - No module matching <geoip2> found


Hello,

On 15.12.17 05:12, Daniel W. Graham wrote:
Its installed and was working prior to the 5.1 upgrade.

I got the module error fixed. For whatever reason there was an SE context applied to the libmaxminddb.* files that was killing permissions. I was able to reset them. SE linux was disabled prior and is currently.
interesting and good to know that SE linux behaves like this ... could you find a reason for this restriction by SE linux, like the file being in a specific folder?


I still get -

ERROR: <core> [core/pvapi.c:903]: pv_parse_spec2(): error searching pvar "gip2"
ERROR: <core> [core/pvapi.c:1107]: pv_parse_spec2(): wrong char [s/115] in [$gip2(src=>cc)] at [6 (5)]
loading modules under config path: /usr/local/lib64/kamailio/modules/
CRITICAL: <core> [core/cfg.y:3447]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 560, column 8-21: Can't get from cache: $gip2(src=>cc)
WARNING: <core> [core/ppcfg.c:221]: pp_ifdef_level_check(): different number of preprocessor directives: N(#!IF[N]DEF) - N(#!ENDIF) = 1

Can you check the blocks IFDEF/ENDIF to be sure you have matching pairs?

Cheers,
Daniel


Daniel W. Graham, CTO
CMSInter.net LLC
DIRECT (989) 400-4230

INTERNET | TELEPHONE | MANAGED IT

From: sr-users [mailto:sr-users-bounces at lists.kamailio.org] On Behalf Of Joel Serrano
Sent: Thursday, December 14, 2017 11:01 PM
To: Kamailio (SER) - Users Mailing List <sr-users at lists.kamailio.org><mailto:sr-users at lists.kamailio.org>
Subject: Re: [SR-Users] 5.0 to 5.1 - No module matching <geoip2> found

You need to have libmaxminddb library installed.

What OS are you using?

If deb based:

$ dpkg -l | grep maxmind

If rpm based:

$ rpm -qa | grep maxmind


Cheers,
Joel.

On Thu, Dec 14, 2017 at 12:24 Daniel W. Graham <dan at cmsinter.net<mailto:dan at cmsinter.net>> wrote:
Upgraded two installs to 5.1.

  *   Same cfg file from 5.0
  *   No issues with install 1

Install 2 results in:

ERROR: <core> [core/modparam.c:152]: set_mod_param_regex(): No module matching <geoip2> found
CRITICAL: <core> [core/cfg.y:3450]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 343, column 71: Can't set module parameter
ERROR: <core> [core/sr_module.c:582]: load_module(): could not open module </usr/local/lib64/kamailio/modules/geoip2.so>: libmaxminddb.so.0: cannot open shared object file: No such file or directory
CRITICAL: <core> [core/cfg.y:3447]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 122, column 12-22: failed to load module
WARNING: <core> [core/ppcfg.c:221]: pp_ifdef_level_check(): different number of preprocessor directives: N(#!IF[N]DEF) - N(#!ENDIF) = 1

ls -l /usr/local/lib64/kamailio/modules/ | grep geo
-rwxr-xr-x 1 root root   73800 Dec 14 12:44 geoip2.so

If I copy cfg file from install 2 to install 1, no issues with install 1.

Any idea what could be going wrong?

- dan

_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users at lists.kamailio.org<mailto:sr-users at lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users



_______________________________________________

Kamailio (SER) - Users Mailing List

sr-users at lists.kamailio.org<mailto:sr-users at lists.kamailio.org>

https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


--

Daniel-Constantin Mierla

www.twitter.com/miconda<http://www.twitter.com/miconda> -- www.linkedin.com/in/miconda<http://www.linkedin.com/in/miconda>

Kamailio Advanced Training - www.asipto.com<http://www.asipto.com>

Kamailio World Conference - May 14-16, 2018 - www.kamailioworld.com<http://www.kamailioworld.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20171216/78e08c6e/attachment.html>


More information about the sr-users mailing list