[sr-dev] [kamailio/kamailio] Infinite loop in siptrace with core callback in traffic mirror mode. (Issue #3042)

Dennis notifications at github.com
Mon Feb 28 12:58:50 CET 2022


### Description

Infiinite loop in siptrace module when configured to pure mirroring (no HEP) with core events.

#### Reproduction
Simple config:
listen=udp:XXX.XXX.XXX.XXX:5060
listen=udp:127.0.0.1:5080
debug=2

log_facility=LOG_LOCAL0
log_prefix="{$timef(%F %T) $mt $hdr(CSeq) $ci}"

children=4
loadmodule "tm.so"
loadmodule "sl.so"
loadmodule "pv.so"
loadmodule "xlog.so"
loadmodule "ctl.so"


loadmodule "siptrace.so"
modparam("siptrace", "trace_on", 1)
modparam("siptrace", "trace_mode", 4)
modparam("siptrace", "trace_to_database", 0)
modparam("siptrace", "xheaders_write", 1)
modparam("siptrace", "duplicate_uri", "sip:127.0.0.1:5888")
modparam("siptrace", "send_sock_addr", "sip:127.0.0.1:5080")

request_route {
        xinfo('>>>>> Request $rm from $si');
}

event_route[siptrace:msg] {
        xinfo(">>>>> Siptrace event method $rm");
}


#### Log Messages

With received OPTIONS request:

```
Feb 28 13:54:52 kamailio systemd[1]: Starting Kamailio - the Open Source SIP Server...
Feb 28 13:54:52 kamailio kamailio: INFO: <core> [core/sctp_core.c:74]: sctp_core_check_support(): SCTP API not enabled - if you want to use it, load sctp module
Feb 28 13:54:52 kamailio kamailio: INFO: <core> [core/tcp_main.c:4997]: init_tcp(): using epoll_lt as the io watch method (auto detected)
Feb 28 13:54:52 kamailio kamailio[12246]: Listening on
Feb 28 13:54:52 kamailio kamailio[12246]:              udp: 2607:beef:be:beef:5054:ff:fe4b:dd25:5060
Feb 28 13:54:52 kamailio kamailio[12246]:              udp: 127.0.0.1:5080
Feb 28 13:54:52 kamailio kamailio[12246]: Aliases:
Feb 28 13:54:52 kamailio kamailio[12246]:              udp: localhost:5080
Feb 28 13:54:52 kamailio kamailio[12246]:              udp: kamailio:5060
Feb 28 13:54:52 kamailio /usr/sbin/kamailio[12259]: INFO: siptrace [siptrace.c:410]: mod_init(): can't load dlg api. Will not install dialog callbacks.
Feb 28 13:54:52 kamailio /usr/sbin/kamailio[12259]: INFO: <core> [main.c:3030]: main(): processes (at least): 14 - shm size: 67108864 - pkg size: 8388608
Feb 28 13:54:52 kamailio /usr/sbin/kamailio[12259]: INFO: <core> [core/udp_server.c:154]: probe_max_receive_buffer(): SO_RCVBUF is initially 212992
Feb 28 13:54:52 kamailio /usr/sbin/kamailio[12259]: INFO: <core> [core/udp_server.c:206]: probe_max_receive_buffer(): SO_RCVBUF is finally 425984
Feb 28 13:54:52 kamailio /usr/sbin/kamailio[12259]: INFO: <core> [core/udp_server.c:154]: probe_max_receive_buffer(): SO_RCVBUF is initially 212992
Feb 28 13:54:52 kamailio /usr/sbin/kamailio[12259]: INFO: <core> [core/udp_server.c:206]: probe_max_receive_buffer(): SO_RCVBUF is finally 425984
Feb 28 13:54:52 kamailio /usr/sbin/kamailio[12273]: INFO: ctl [io_listener.c:214]: io_listen_loop(): io_listen_loop:  using epoll_lt io watch method (config)
Feb 28 13:54:52 kamailio systemd[1]: Started Kamailio - the Open Source SIP Server.
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:53 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS

...

Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12262]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: INFO: <script>: >>>>> Siptrace event method OPTIONS
Feb 28 13:54:54 kamailio kernel: [271505.656348] kamailio[12262]: segfault at 7ffdf9d8fff8 ip 00007f3bfeb6f256 sp 00007ffdf9d90000 error 6 in pv.so[7f3bfeaf3000+e0000]
Feb 28 13:54:54 kamailio kernel: [271505.715015] kamailio[12263]: segfault at 7ffdf9d8fff8 ip 00007f3bfeb6f256 sp 00007ffdf9d90000 error 6 in pv.so[7f3bfeaf3000+e0000]
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12263]: message repeated 872 times: [ INFO: <script>: >>>>> Siptrace event method OPTIONS]
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12274]: CRITICAL: <core> [core/pass_fd.c:277]: receive_fd(): EOF on 9
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12259]: ALERT: <core> [main.c:788]: handle_sigs(): child process 12262 exited by a signal 11
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12259]: ALERT: <core> [main.c:791]: handle_sigs(): core was generated
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12259]: INFO: <core> [main.c:813]: handle_sigs(): terminating due to SIGCHLD
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12274]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12273]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12268]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12272]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12265]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12264]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12270]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12267]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12269]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12271]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received
Feb 28 13:54:54 kamailio /usr/sbin/kamailio[12266]: INFO: <core> [main.c:868]: sig_usr(): signal 15 received

```

### Additional Information

  * **Kamailio Version** - output of `kamailio -v`

```
version: kamailio 5.5.3 (x86_64/linux) 
flags: USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, 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_BLOCKLIST, HAVE_RESOLV_RES, TLS_PTHREAD_MUTEX_SHARED
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, 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 with gcc 7.5.0
```

* **Operating System**:


```
Ubuntu 18.04.6 LTS
Linux 4.15.0-169-generic #177-Ubuntu SMP Thu Feb 3 10:50:38 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

```


-- 
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3042
You are receiving this because you are subscribed to this thread.

Message ID: <kamailio/kamailio/issues/3042 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-dev/attachments/20220228/91f61d0b/attachment.htm>


More information about the sr-dev mailing list