Hello List.
The last weekend our kamailio process crashed with this error :
Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10661]: : <core>
[pass_fd.c:293]: ERROR: receive_fd: EOF on 29
Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10542]: ALERT: <core>
[main.c:751]: child process 10601 exited by a signal 11
Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10542]: ALERT: <core>
[main.c:754]: core was generated
Jun 24 06:55:08 pxh /usr/local/sbin/kamailio[10542]: INFO: <core>
[main.c:766]: INFO: terminating due to SIGCHLD
Can someone tell me what seems to be the problem here?
We’re using :
version: kamailio 3.2.2 (x86_64/linux) 98ba92-dirty
flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS,
DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC,
DBG_QM_MALLOC, 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 4MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: 98ba92 -dirty
compiled on 12:45:36 Feb 2 2012 with gcc 4.4.6
And this is the bt full from gdb
Core was generated by `/usr/local/sbin/kamailio -m 1024'.
Program terminated with signal 11, Segmentation fault.
#0 mi_profile_list (cmd_tree=<value optimized out>, param=<value optimized
out>) at dlg_profile.c:789
789 if ( mi_print_dlg( rpl,
ph->dlg, 0)!=0 )
Missing separate debuginfos, use: debuginfo-install
filesystem-2.4.30-2.1.el6.x86_64 glibc-2.12-1.25.el6_1.3.x86_64
keyutils-libs-1.4-1.el6.x86_64 krb5-libs-1.9-9.el6_1.2.x86_64
libcom_err-1.41.12-7.el6.x86_64 libselinux-2.0.94-5.el6.x86_64
mysql-libs-5.1.52-1.el6_0.1.x86_64 nss-softokn-freebl-3.12.7-1.1.el6.x86_64
openssl-1.0.0-20.el6_2.1.x86_64 pcre-7.8-3.1.el6.x86_64
zlib-1.2.3-26.el6.x86_64
(gdb) bt full
#0 mi_profile_list (cmd_tree=<value optimized out>, param=<value optimized
out>) at dlg_profile.c:789
node = <value optimized out>
rpl_tree = 0x20a6790
rpl = 0x20a67b0
profile = 0x7fe99a2dda00
ph = 0x0
profile_name = <value optimized out>
value = <value optimized out>
i = <value optimized out>
#1 0x00007fe9dce287b1 in run_mi_cmd (fifo_stream=<value optimized out>) at
../../lib/kmi/mi.h:77
No locals.
#2 mi_fifo_server (fifo_stream=<value optimized out>) at fifo_fnc.c:509
mi_cmd = 0x208f8f0
mi_rpl = <value optimized out>
hdl = 0x0
line_len = 41
file_sep = 0x2039017 ""
command = 0x7fe9dfdbdef9 "profile_list_dlgs"
file = 0x7fe9dfd98d78 "/tmp/openser_receiver_27809"
f = 0x2039018
reply_stream = 0x20b0980
#3 0x00007fe9dce2a640 in fifo_process (rank=<value optimized out>) at
mi_fifo.c:247
fifo_stream = 0x209a0b0
#4 0x00007fe9dce2a9de in mi_child_init (rank=0) at mi_fifo.c:211
pid = <value optimized out>
#5 0x00000000004dba41 in init_mod_child (m=0x7fe9dfc6ba10, rank=0) at
sr_module.c:886
No locals.
#6 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6bd08, rank=0) at
sr_module.c:883
No locals.
#7 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6c248, rank=0) at
sr_module.c:883
No locals.
#8 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6c748, rank=0) at
sr_module.c:883
No locals.
#9 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6d288, rank=0) at
sr_module.c:883
No locals.
#10 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6d928, rank=0) at
sr_module.c:883
No locals.
#11 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6dee0, rank=0) at
sr_module.c:883
No locals.
#12 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6e1f0, rank=0) at
sr_module.c:883
No locals.
#13 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6e5d0, rank=0) at
sr_module.c:883
No locals.
#14 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6e830, rank=0) at
sr_module.c:883
No locals.
#15 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6ebd0, rank=0) at
sr_module.c:883
No locals.
#16 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6f220, rank=0) at
sr_module.c:883
No locals.
#17 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6f648, rank=0) at
sr_module.c:883
No locals.
#18 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6fa60, rank=0) at
sr_module.c:883
No locals.
#19 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc6fe40, rank=0) at
sr_module.c:883
No locals.
#20 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc702c0, rank=0) at
sr_module.c:883
No locals.
#21 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc70ae8, rank=0) at
sr_module.c:883
No locals.
---Type <return> to continue, or q <return> to quit---
#22 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc70e18, rank=0) at
sr_module.c:883
No locals.
#23 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc71100, rank=0) at
sr_module.c:883
No locals.
#24 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc716c0, rank=0) at
sr_module.c:883
No locals.
#25 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc71df0, rank=0) at
sr_module.c:883
No locals.
#26 0x00000000004db9c4 in init_mod_child (m=0x7fe9dfc723c0, rank=0) at
sr_module.c:883
No locals.
#27 0x000000000046077d in main_loop () at main.c:1661
i = <value optimized out>
pid = <value optimized out>
si = 0x0
si_desc = "udp receiver child=15 sock=64.76.154.35:5060", '\000'
<repeats 20 times>, "\003", '\000' <repeats 15 times>,
"\030\325\a\232\351\177\000\000\001\000\000\000\002", '\000' <repeats 11
times>,
"\001\000\000\000\000\000\000\000\003\000\000\000\000\000\000\000)\000\000\000\000\000\000"
#28 0x0000000000461f13 in main (argc=<value optimized out>,
argv=0x7fff2f2b2848) at main.c:2475
cfg_stream = <value optimized out>
c = <value optimized out>
r = <value optimized out>
tmp = 0x7fff2f2b3f76 ""
tmp_len = 0
options = 0x5a3178
":f:cm:M:dVhEb:l:L:n:vrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:"
ret = -1
seed = 1850310455
rfd = <value optimized out>
debug_save = <value optimized out>
debug_flag = <value optimized out>
dont_fork_cnt = <value optimized out>
n_lst = <value optimized out>
p = <value optimized out>
(gdb)
Regards,
Ricardo.-
Dear Sir,
I am using kamailio 1.5.0, having installed and configured as given on the
kamailio site
<http://www.kamailio.org/dokuwiki/doku.php/install:kamailio-1.5.x-from-svn>
on my PC having Centos operating system. I have configured the config files
kamailio.cfg, kamctlrc accordingly as given on site.
when I start the kamailio using kamctl start command. it gives the error
message like
*[root@localhost ~]# kamctl start
database engine 'MYSQL' loaded
Control engine 'FIFO' loaded
INFO: Starting Kamailio :
ERROR: PID file /var/run/kamailio.pid does not exist -- Kamailio start
failed
*please* *help me out to solve this problem and suggest me where I am
wrong. * *I have configured kamalio so many times it gives me the same kind
of error message.
*
*
-
With Regards,
Dinesh Kumar Gautam
Noida,
+919911838275
Hello,
Reaching out for some assistance with debugging, I am not seeing any xlog messages in my log file. If there is any other info I didn't include that would be helpful please let me know.
Any ideas are appreciated.
Using Kamailio 3.3.2 & Cent OS 6
Rsyslog.conf
--------------------
*.info;mail.none;authpriv.none;cron.none;local0.none /var/log/messages
# Kamailio
local0.* -/var/log/kamailio
Kamailio CFG
------------------------------
#!define WITH_DEBUG
#!ifdef WITH_DEBUG
debug=4
log_stderror=yes
#!else
debug=2
log_stderror=no
#!endif
log_facility=LOG_LOCAL0
loadmodule "xlog.so"
Example xlog-
xlog("L_INFO", "No more gateways \n");
Thanks,
Dan-
Hello,
I want to separate signaling and media in our architecture but I'm not entirely sure if the following will work (note that it is still in a design phase and these kinds of constructs are still new to me):
User Agent 1-------------- Kamailio -------------- User Agent 2
| |
| |
| |
-------------- Media Server Cluster --------------
The signaling will go through Kamailio but the media stream should pass through one of the media servers in the cluster for each call.
Is it possible to achieve this by having Kamailio instruct the media server which ports to open and alter sdp information?
I think that the RTP Proxy module does precisely this, but what I still don't understand is how the rtp stream is passed between these two agents for each call.
Also, is RTP proxy the best way to do this or are there any other third party media servers which I could use? I don't need any fancy functionality, just basic media handling/pass-through.
Regards,
Grant
Hi,
I have a kamailio proxy server that´s controlling the limit of calls that
clients can make with profile grouping. In other side I also limit clients
call duration base on users credit ( DATABASE) and *timeout *feature .
Before the calls get answer I calculate how much time the client has left
for this call and set the timeout variable. When the time is reached the
proxy sends BYEs two both sides of this call.
I want when the call timeout, as before explain, all other calls in the
same profile end too, because the client has expired his credit.
Is there a way to achieve this?
Regards,
Camila
*Camila Troncoso **|* Ingeniero de Desarrollo
RedVoiss *|*ctroncoso(a)redvoiss.net
Santiago - Chile *|* +56 2 2408535
www.redvoiss.net
Hi,
Kamailio is running fine, but when I try run again by command line without
killing the previous, the kamailio_fifo is removed and functions fifo in
kamctl doen't work anymore. Why when I try running kamailio when already
exist one, it remove de file kamailio_fifo?
I can't find the part of source code that file kamailio_fifo is removed...
Someone knows?
Best Regards
Hi
I'm trying to integrate a (K) front end cluster with an Asterisk back end cluster and Asterisk RT (legacy system)
I've followed the recipe at http://kb.asipto.com/asterisk:realtime:kamailio-3.3.x-asterisk-10.7.0-astdb
(with one minor exception …)
if (from_uri!=myself && uri!=myself)
became
if (uri!=myself)
as with the original line in place we were able to spoof traffic from 3rd party sites and route out onto the PSTN (which I thought was bad) …
anyway …
The problem I'm seeing currently is that when a call is passed down a SIP trunk to an end user on the (K) platform we're losing the DNID
Asterisk delivers the call to SIP/account/DNID
(K) however just tries to deliver the call to DNID@domain which comes back as not found.
I've had limited success hand coding aliases into the alias_db however we're still missing the DNID info and having to scrape it from the SIP To field (with a) limited success and b) fears of a support nightmare if we try and move existing customers onto the new platform). If we were to do this for real I'd either have to modify usrloc or try some perl_exec magic I'm guessing … (although it might be possible with a view on the existing sql database … but I'd rather not have to do that if there is a simpler way)
I confess I'm struggling to get my head around the config and docs and hoped someone could point me in the right direction?
For legacy reasons Asterisk needs to be in the critical path on this particular build … what I'm looking for is a simple recipe and some helpful pointers on how to implement it that will allow enable me to swing (K) into the path between our end user SIP devices and the existing asterisk back ends without losing the ability to deliver hundreds of numbers down a single SIP trunk to a subscriber, and that doesn't require them to make any changes on their end as they will still see the equivalent of SIP:${DNID}@example.com arriving on their PBX
This should be simple, but I'm obviously missing something :)
Help and pointers gratefully received
--
Jon Morby
FidoNet - the internet made simple!
10 - 16 Tiller Road, London, E14 8PX
tel: 0845 004 3050 / fax: 0845 004 3051