Gents,

I’ve stumbled upon a coredump when using jsonrpc_request.

I might be expecting the wrong things from jsonrpc_request. I was hoping to use 
it in combination with CNXCC, and have jsonrpc_request get a maximum duration 
for every call, as a fraud avoidance mechanism.

I tried this with the branch 4.1 and master. Both behave identical.

So from the kamailio-basic.cfg example, I just added this line around line 350 
(just above route(SIPOUT)):

jsonrpc_request("bar.sendsms", "{'ru':'$rU','rb':'$rb'}", "JSONRESPONSE", 
"JSONERROR", "$var(result)"); 

Doing a ngrep on the netstrings I have:

interface: venet0 (127.0.0.2/255.255.255.255)  
filter: (ip or ip6) and ( port 7080 )
#
T 10.66.8.42:44995 -> 192.168.60.45:7080 [AP]
94:{ "id": 2, "jsonrpc": "2.0", "method": "bar.sendsms", "params": { "ru": "", 
"rb": "" } },  
##
T 192.168.60.45:7080 -> 10.66.8.42:44995 [AP]
43:{"jsonrpc": "2.0", "result": "12", "id": 2},  
####^Cexit
7 received, 0 dropped

I do get some results from the JSONRESPONSE route.

But when launching a call, or when sending just a register packet, kamailio 
gives up with:

Feb 26 06:29:11 SBC01 kamailio[18043]: WARNING: tm [t_lookup.c:1537]: 
t_unref(): WARNING: script writer didn't release transaction  
Feb 26 06:29:12 SBC01 kamailio[18033]: : [mem/q_malloc.c:468]: qm_free(): BUG: 
qm_free: freeing already freed pointer (0xb4c01624), called from tm: h_table.c: 
free_cell(157), first free tm: h_table.c: free_cell(157) - aborting
Feb 26 06:29:12 SBC01 kamailio[18023]: ALERT: [main.c:775]: handle_sigs(): 
child process 18033 exited by a signal 6
Feb 26 06:29:12 SBC01 kamailio[18023]: ALERT: [main.c:778]: handle_sigs(): core 
was generated
Feb 26 06:29:12 SBC01 kamailio[18023]: INFO: [main.c:790]: handle_sigs(): INFO: 
terminating due to SIGCHLD
Feb 26 06:29:12 SBC01 kamailio[18041]: INFO: [main.c:841]: sig_usr(): INFO: 
signal 15 received

Feb 26 06:29:12 SBC01 kamailio[18047]: INFO: [main.c:841]: sig_usr(): INFO: 
signal 15 received  
Feb 26 06:29:12 SBC01 kamailio[18043]: INFO: [main.c:841]: sig_usr(): INFO: 
signal 15 received
Feb 26 06:29:12 SBC01 kamailio[18048]: INFO: [main.c:841]: sig_usr(): INFO: 
signal 15 received
Feb 26 06:29:12 SBC01 kamailio[18023]: : [mem/q_malloc.c:468]: qm_free(): BUG: 
qm_free: freeing already freed pointer (0xb4c01624), called from tm: h_table.c: 
free_cell(157), first free tm: h_table.c: free_cell(157) - aborting

Using the jsonrpc_notification works like a charm.

I got coredumps of it, if someone is interested.

Side questions are offcourse, am I aiming to use jsonrpc_request for the 
correct purpose? Are there any other good alternatives? (next to using plain db 
queries?)

Grtz,
Davy

--  
davy van de moere



_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to