Opensips is crashing 1 execute a fifo command like so "opensipsctl fifo b2b_trigger_scenario 3pcc sip:nurse@ip sip:patient@ip." Attached is the scenario file. The Ip addresses have replaced with IP. i am using the latest 1.9 stable release acquired via svn
Heres the entire backtrace
(gdb) bt full
#0 get_local_contact (sock=0x0, contact=0x7fff1c16eb98) at ../presence/utils_func.h:84
buf = '\000' <repeats 1023 times>
proto = <value optimized out>
proto_len = <value optimized out>
#1 0x00007fbbeabb3d21 in process_bridge_action (msg=0x0, curr_entity=<value optimized out>, tuple=0x7fbbe8e31b30, bridge_node=0x954830) at logic.c:2501
from_uri = {s = 0x7fbbe8e3d267 "sip:patient@ip", len = 26}
to_uri = {s = 0x7fbbe8e3d18f "sip:nurse@ip", len = 24}
from_dname = <value optimized out>
bridge_entities = {0x7fbbe8e3d0e8, 0x7fbbe8e3d1c0, 0x0}
entity = <value optimized out>
old_entity = <value optimized out>
e = <value optimized out>
count = <value optimized out>
index = <value optimized out>
attr = {s = 0x0, len = 7}
entity_dest = {s = 0x7fbbe8e3d080 "sip:patient@ip", len = 26}
clientid_node = <value optimized out>
dest_node = <value optimized out>
client_node = <value optimized out>
lft_node = <value optimized out>
node = <value optimized out>
provmedia_uri = {s = 0x0, len = 0}
ci = {method = {s = 0x7fbbeabced40 "INVITE", len = 6}, from_uri = {s = 0x7fbbe8e3d267 "sip:patient@ip", len = 26}, from_dname = {s = 0x0,
len = 0}, req_uri = {s = 0x0, len = 0}, dst_uri = {s = 0x0, len = 0}, to_uri = {s = 0x7fbbe8e3d18f "sip:nurse@ip", len = 24},
to_dname = {s = 0x0, len = 0}, extra_headers = 0x0, body = 0x0, from_tag = 0x0, local_contact = {s = 0x7fbbeadd6880 "", len = 0}, cseq = 0,
send_sock = 0x0}
client_id = <value optimized out>
fdname_content = 0x0
from_dname = {s = 0x0, len = 0}
value_node = <value optimized out>
value_content = <value optimized out>
req_data = {et = 8287936, b2b_key = 0x943fb0, method = 0x7fbbee525860, extra_headers = 0x7fbbee1fec1a, body = 0x7fbbedfa2960, dlginfo = 0x4240b0,
no_cb = 40}
__FUNCTION__ = "process_bridge_action"
#2 0x00007fbbeaba4d53 in b2bl_bridge_extern (scenario_name=<value optimized out>, args=<value optimized out>, cbf=0, cb_param=0x0) at b2b_logic.c:1067
scenario_struct = 0x7fbbedfa2960
hash_index = 935
tuple = 0x7fbbe8e31b30
b2bl_key = <value optimized out>
state = <value optimized out>
xml_node = <value optimized out>
attr = <value optimized out>
__FUNCTION__ = "b2bl_bridge_extern"
#3 0x00007fbbeaba530d in mi_trigger_scenario (cmd=<value optimized out>, param=<value optimized out>) at b2b_logic.c:1114
node = <value optimized out>
args = {0x7fbbedfae6a0, 0x7fbbedfae700, 0x0, 0x0, 0x0}
i = <value optimized out>
scenario_name = {s = 0x7fbbedfaf138 "3pccsip:nurse@IPsip:patient@IP\n", len = 4}
__FUNCTION__ = "mi_trigger_scenario"
#4 0x00007fbbed0ef3c5 in run_mi_cmd (fifo_stream=0x949950) at ../../mi/mi.h:109
ret = <value optimized out>
#5 mi_fifo_server (fifo_stream=0x949950) at fifo_fnc.c:490
mi_cmd = <value optimized out>
mi_rpl = <value optimized out>
hdl = 0x0
---Type <return> to continue, or q <return> to quit---
line_len = 45
file_sep = <value optimized out>
command = <value optimized out>
file = <value optimized out>
f = 0x7fbbedface90
reply_stream = 0x943d70
__FUNCTION__ = "mi_fifo_server"
#6 0x00007fbbed0f1977 in fifo_process (rank=<value optimized out>) at mi_fifo.c:213
fifo_stream = 0x949950
__FUNCTION__ = "fifo_process"
#7 0x00000000004a17ec in start_module_procs () at sr_module.c:585
m = <value optimized out>
n = <value optimized out>
l = <value optimized out>
x = <value optimized out>
__FUNCTION__ = "start_module_procs"
#8 0x0000000000432ec1 in main_loop (argc=<value optimized out>, argv=<value optimized out>) at main.c:707
i = <value optimized out>
pid = <value optimized out>
si = <value optimized out>
startup_done = 0x0
chd_rank = 0
rc = <value optimized out>
load_p = 0x0
#9 main (argc=<value optimized out>, argv=<value optimized out>) at main.c:1557
cfg_log_stderr = <value optimized out>
cfg_stream = <value optimized out>
c = <value optimized out>
r = 0
tmp = 0x7fff1c16f0d8 "\b\370\026\034\377\177"
tmp_len = <value optimized out>
port = <value optimized out>
proto = <value optimized out>
options = 0x555708 "f:cCm:M🅱️l:n:N:rRvdDETSVhw:t:u:g:P:G:W:o:"
ret = -1
seed = 3039576127
rfd = <value optimized out>
__FUNCTION__ = "main"
Willing to set a bounty on this project feel free to reach out me for any information.
Try the following patch:
Index: modules/b2b_logic/logic.c
===================================================================
--- modules/b2b_logic/logic.c (revision 9987)
+++ modules/b2b_logic/logic.c (working copy)
@@ -2498,7 +2498,8 @@
ci.body = 0;
ci.from_tag = 0;
ci.send_sock = msg?(msg->force_send_socket?msg->force_send_socket:msg->rcv.bind_address):0;
- get_local_contact( ci.send_sock, &ci.local_contact);
+ if (ci.send_sock) get_local_contact( ci.send_sock, &ci.local_contact);
+ else ci.local_contact = server_address;
if(msg)
{
The patch is for trunk, but it's pretty much the same for 1.9.
Regards,
Ovidiu Sas
Fix pushed in trunk and 1.9 branch.
the recommend modifications were made now opensips is functioning as expected without the crash. I will try the latest branch as well. Please reach out to me @ tcumpen@icancerhelp.com to proceed with bounty.
Thanks a bunch.