Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tcpops: failed tcp_keepalive_enable #2730

Closed
sergey-safarov opened this issue May 8, 2021 · 3 comments
Closed

tcpops: failed tcp_keepalive_enable #2730

sergey-safarov opened this issue May 8, 2021 · 3 comments

Comments

@sergey-safarov
Copy link
Member

Description

Cannot use tcp_keepalive_enable function on master branch.

Reproduction

Create config file like

listen=udp:127.0.0.1:5060
loadmodule "pv.so"
loadmodule "tcpops.so"

#modparam("http_client", "httpcon", "http://example.com=>http://example.com");


request_route {
    tcp_keepalive_enable("22", "60", "5", "2");
}

and then start Kamailio

Log Messages

[root@sbc-a0 config]# kamailio -ddd -DD -E -f /tmp/test.cfg 
 0(30164) INFO: <core> [main.c:2139]: main(): private (per process) memory: 8388608 bytes
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:199]: qm_malloc_init(): QM_OPTIMIZE=16384, /ROUNDTO=2048
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:201]: qm_malloc_init(): QM_HASH_SIZE=2099, qm_block size=235152
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:203]: qm_malloc_init(): qm_malloc_init(0xffff8d5c0010, 8388608), start=0xffff8d5c0010
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:212]: qm_malloc_init(): size= 8388608, init_overhead=235256
 0(30164) DEBUG: <core> [core/cfg.lex:1964]: pp_define(): defining id: KAMAILIO_5
 0(30164) DEBUG: <core> [core/cfg.lex:1964]: pp_define(): defining id: KAMAILIO_5_6
 0(30164) DEBUG: <core> [core/cfg.lex:1964]: pp_define(): defining id: KAMAILIO_5_6_0
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d60)[0] to 0
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70da0)[0] to 0
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d00)[0] to 0
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d40)[0] to 0
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d20)[0] to 0
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d80)[0] to 0
 0(30164) DEBUG: <core> [core/pvapi.c:2146]: pv_init_buffer(): PV print buffer initialized to [40][8192]
 0(30164) DEBUG: <core> [main.c:2460]: main(): read 4025707099 from /dev/urandom
 0(30164) DEBUG: <core> [main.c:2466]: main(): seeding PRNG with 1351243300
 0(30164) DEBUG: <core> [core/rand/cryptorand.c:36]: cryptorand_seed(): seeding cryptorand generator with 1351243300
 0(30164) DEBUG: <core> [core/rand/fortuna/random.c:154]: system_reseed(): cryptographic PRNG reseed done with 32 bytes
 0(30164) DEBUG: <core> [core/rand/fortuna/random.c:175]: sr_add_entropy(): additional 4 bytes entropy added to cryptographic PRNG
 0(30164) DEBUG: <core> [main.c:2471]: main(): test random numbers 1639832327 574986100 3505011376 2068663732
 0(30164) DEBUG: <core> [core/cfg.y:1860]: yyparse(): loading module pv.so
 0(30164) DEBUG: <core> [core/sr_module.c:510]: ksr_locate_module(): found module to load </usr/lib64/kamailio/modules/pv.so>
 0(30164) DEBUG: <core> [core/sr_module.c:560]: load_module(): trying to load </usr/lib64/kamailio/modules/pv.so>
 0(30164) DEBUG: <core> [core/kemi.c:3062]: sr_kemi_modules_add(): adding core module
 0(30164) DEBUG: <core> [core/kemi.c:3066]: sr_kemi_modules_add(): adding pv module
 0(30164) DEBUG: <core> [core/kemi.c:3070]: sr_kemi_modules_add(): adding hdr module
 0(30164) DEBUG: <core> [core/kemi.c:3084]: sr_kemi_modules_add(): adding module: pvx
 0(30164) DEBUG: <core> [core/sr_module.c:288]: register_module(): register PV from: pv
 0(30164) DEBUG: <core> [core/cfg.lex:1964]: pp_define(): defining id: MOD_pv
 0(30164) DEBUG: <core> [core/cfg.y:1860]: yyparse(): loading module tcpops.so
 0(30164) DEBUG: <core> [core/sr_module.c:510]: ksr_locate_module(): found module to load </usr/lib64/kamailio/modules/tcpops.so>
 0(30164) DEBUG: <core> [core/sr_module.c:560]: load_module(): trying to load </usr/lib64/kamailio/modules/tcpops.so>
 0(30164) DEBUG: <core> [core/kemi.c:3084]: sr_kemi_modules_add(): adding module: tcpops
 0(30164) DEBUG: <core> [core/sr_module.c:288]: register_module(): register PV from: tcpops
 0(30164) DEBUG: <core> [core/cfg.lex:1964]: pp_define(): defining id: MOD_tcpops
 0(30164) DEBUG: <core> [core/route_struct.c:128]: mk_action(): ACTION type24, i/count 0/2: type 9(9)/ data (nil)
 0(30164) DEBUG: <core> [core/route_struct.c:128]: mk_action(): ACTION type24, i/count 1/2: type 3(3)/ data (nil)
 0(30164) DEBUG: <core> [core/sr_module.c:710]: find_mod_export_record(): found export of <tcp_keepalive_enable> in module tcpops [/usr/lib64/kamailio/modules/tcpops.so]
 0(30164) DEBUG: <core> [core/mem/shm.c:100]: shm_core_pools_init(): preparing to initialize shm core pools
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:199]: qm_malloc_init(): QM_OPTIMIZE=16384, /ROUNDTO=2048
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:201]: qm_malloc_init(): QM_HASH_SIZE=2099, qm_block size=235152
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:203]: qm_malloc_init(): qm_malloc_init(0xffff89470000, 67108864), start=0xffff89470000
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:212]: qm_malloc_init(): size= 67108864, init_overhead=235256
 0(30164) DEBUG: <core> [core/ppcfg.c:233]: pp_ifdef_level_check(): same number of pairing preprocessor directives #!IF[N]DEF - #!ENDIF
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d80)[core:receive-parse-error] to 1
 0(30164) INFO: <core> [core/sctp_core.c:74]: sctp_core_check_support(): SCTP API not enabled - if you want to use it, load sctp module
 0(30164) DEBUG: <core> [core/name_alias.h:62]: grep_aliases(): matching (1:localhost.localdomain:5060) vs. (1:localhost:5060)
 0(30164) DEBUG: <core> [core/name_alias.h:62]: grep_aliases(): matching (1:localhost4:5060) vs. (1:localhost.localdomain:5060)
 0(30164) DEBUG: <core> [core/name_alias.h:62]: grep_aliases(): matching (1:localhost4:5060) vs. (1:localhost:5060)
 0(30164) DEBUG: <core> [core/name_alias.h:62]: grep_aliases(): matching (1:localhost4.localdomain4:5060) vs. (1:localhost4:5060)
 0(30164) DEBUG: <core> [core/name_alias.h:62]: grep_aliases(): matching (1:localhost4.localdomain4:5060) vs. (1:localhost.localdomain:5060)
 0(30164) DEBUG: <core> [core/name_alias.h:62]: grep_aliases(): matching (1:localhost4.localdomain4:5060) vs. (1:localhost:5060)
Listening on 
             udp: 127.0.0.1:5060
Aliases: 
             udp: localhost4.localdomain4:5060
             udp: localhost4:5060
             udp: localhost.localdomain:5060
             udp: localhost:5060

 0(30164) DEBUG: <core> [core/mem/pkg.c:108]: pkg_print_manager(): pkg - using memory manager: q_malloc
 0(30164) DEBUG: <core> [core/mem/shm.c:300]: shm_print_manager(): shm - using memory manager: q_malloc
 0(30164) DEBUG: <core> [core/cfg/cfg.c:173]: cfg_declare(): new config group has been registered: 'core' (num=57, size=228)
 0(30164) DEBUG: <core> [core/cfg/cfg.c:173]: cfg_declare(): new config group has been registered: 'tcp' (num=27, size=108)
 0(30164) DEBUG: <core> [core/timer.c:239]: init_timer(): starting with *ticks=1894875476
 0(30164) DEBUG: <core> [core/timer.c:280]: init_timer(): timer_list between 0xffff894a9fd8 and 0xffff894edfd8
 0(30164) DEBUG: <core> [core/pt.c:139]: register_procs(): registering new processes: 0 (old) + 1 (new) = 1 (total)
 0(30164) INFO: <core> [core/tcp_main.c:4983]: init_tcp(): using epoll_lt as the io watch method (auto detected)
 0(30164) DEBUG: <core> [core/daemonize.c:207]: enable_dumpable(): trying enable core dumping...
 0(30164) DEBUG: <core> [core/daemonize.c:224]: enable_dumpable(): core dumping is enabled now (1)...
 0(30164) DEBUG: <core> [core/daemonize.c:583]: set_core_dump(): core dump limits set to 18446744073709551615
 0(30164) DEBUG: <core> [core/async_task.c:137]: async_task_init(): start initializing asynk task framework
 0(30164) DEBUG: <core> [core/sr_module.c:931]: init_mod(): pv
 0(30164) DEBUG: <core> [core/sr_module.c:931]: init_mod(): tcpops
 0(30164) DEBUG: tcpops [tcpops_mod.c:137]: mod_init(): TCP keepalive module loaded.
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d80)[tcp:closed] to 2
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d80)[tcp:timeout] to 3
 0(30164) DEBUG: <core> [core/route.c:129]: route_add(): mapping routing block (0xa70d80)[tcp:reset] to 4
 0(30164) DEBUG: <core> [core/pt.c:100]: init_pt(): registering new processes: 1 (old) + 12 (new) = 13 (total)
 0(30164) INFO: <core> [main.c:3030]: main(): processes (at least): 13 - shm size: 67108864 - pkg size: 8388608
 0(30164) DEBUG: <core> [core/route.c:885]: fix_actions(): fixing tcp_keepalive_enable()
 0(30164) ERROR: <core> [core/route.c:1166]: fix_actions(): fixing failed (code=-1) at cfg:/tmp/test.cfg:9
error -1 while trying to fix configuration
 0(30164) DEBUG: <core> [core/sr_module.c:823]: destroy_modules(): starting modules destroy phase
 0(30164) DEBUG: tcpops [tcpops_mod.c:171]: mod_destroy(): TCP keepalive module unloaded.
 0(30164) INFO: <core> [core/sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized
 0(30164) DEBUG: <core> [core/mem/shm.c:288]: shm_destroy_manager(): destroying memory manager: q_malloc
 0(30164) DEBUG: <core> [core/mem/q_malloc.c:1186]: qm_shm_lock_destroy(): destroying the shared memory lock
 0(30164) DEBUG: <core> [core/mem/pkg.c:97]: pkg_destroy_manager(): destroying memory manager: q_malloc

Additional Information

current master on CentOS8

@sergey-safarov
Copy link
Member Author

revert of 12fca1c commit fixes issue

@miconda
Copy link
Member

miconda commented May 8, 2021

Can you try with 0224071?

@henningw henningw changed the title tspops: failed tcp_keepalive_enable tcpops: failed tcp_keepalive_enable May 9, 2021
@sergey-safarov
Copy link
Member Author

tested, issue fixed on master.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants