I did a test here with geoip2 module and the $gip2(...) variable works fine.
Cheers, Daniel
On 17.12.17 03:33, Daniel W. Graham wrote:
Issue on new image was a linker config issue, (missing /usr/local/lib/). I verified this existed on the previous image so my best guess is the original issue was related to selinux.
-dan
*From:*sr-users [mailto:sr-users-bounces@lists.kamailio.org] *On Behalf Of *Daniel W. Graham *Sent:* Saturday, December 16, 2017 2:42 AM *To:* Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org; miconda@gmail.com *Subject:* Re: [SR-Users] 5.0 to 5.1 - No module matching <geoip2> found
Didn’t notice the issue with libmaxminddb.so.0
# ls -l /usr/local/lib/
lrwxrwxrwx 1 root root 21 Dec 15 23:00 libmaxminddb.so -> libmaxminddb.so.0.0.7
lrwxrwxrwx 1 root root 21 Dec 15 23:00 libmaxminddb.so.0 -> libmaxminddb.so.0.0.7
-rwxr-xr-x 1 root root 81472 Dec 15 23:00 libmaxminddb.so.0.0.7
I did get the libmaxminddb.so.0 error to go away while using my previous cfg file, I’ll dig in more later.
-dan
*From:*sr-users [mailto:sr-users-bounces@lists.kamailio.org] *On Behalf Of *Daniel W. Graham *Sent:* Saturday, December 16, 2017 2:04 AM *To:* Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org mailto:sr-users@lists.kamailio.org>; miconda@gmail.com mailto:miconda@gmail.com *Subject:* Re: [SR-Users] 5.0 to 5.1 - No module matching <geoip2> found
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@lists.kamailio.org] *On Behalf Of *Daniel W. Graham *Sent:* Friday, December 15, 2017 11:08 AM *To:* miconda@gmail.com mailto:miconda@gmail.com; Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org mailto:sr-users@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 activeand 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@gmail.com] *Sent:* Friday, December 15, 2017 4:19 AM *To:* Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org mailto:sr-users@lists.kamailio.org>; Daniel W. Graham <dan@cmsinter.net mailto:dan@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@lists.kamailio.org] *On Behalf Of *Joel Serrano *Sent:* Thursday, December 14, 2017 11:01 PM *To:* Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org> <mailto:sr-users@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@cmsinter.net <mailto:dan@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@lists.kamailio.org <mailto:sr-users@lists.kamailio.org> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users _______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org <mailto:sr-users@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