sem32 created an issue (kamailio/kamailio#4325)
### Description
The issue: in 15 second after start of kamailio, it stops to read the UDP socket localhost:5060
### Troubleshooting
<img width="683" height="406" alt="Image" src="https://github.com/user-attachments/assets/b93ed7d3-8944-477b-867b-ca7fcae8…" />
#### Reproduction
Preconditions:
- More than one worker for UDP localhost:5060
- Kamailio receives SIP OPTION from the Asterisk by UDP localhost
- In the Kamailio's script we have a logic to send the SIP OPTION by TLS. We modify $ru and add to it ";transport=TLS"
- 25+ sip trunks which generates SIP OPTIONS with transport TLS
- all the trunks are resolvable but not reachable (don't listen the port)
- libssl3
#### Debugging Data
[gdb_239054.txt](https://github.com/user-attachments/files/21236064/gdb_2390…
[gdb_239053.txt](https://github.com/user-attachments/files/21236065/gdb_2390…
### Possible Solutions
We have no issue in case we have:
- only one worker for UPD localhost and any version of libssl (libssl3 or libss1.1)
- or use libssl1.1 and any amount of workers
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
# kamailio -v
version: kamailio 5.8.6 (aarch64/linux) a14e49
flags: , EXTRA_DEBUGUSE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MMAP, PKG_MALLOC, MEM_JOIN_FREE, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT-NOSMP, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLOCKLIST, HAVE_RESOLV_RES
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, MAX_SEND_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: a14e49
compiled on 14:10:21 Jul 15 2025 with gcc 12.2.0
```
* **Operating System**:
```
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
# uname -a
Linux semen02 6.1.0-37-cloud-arm64 #1 SMP Debian 6.1.140-1 (2025-05-22) aarch64 GNU/Linux
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4325
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4325(a)github.com>
Module: kamailio
Branch: master
Commit: 33ba71c209cd612ce59ea547d42c4da11304e5a5
URL: https://github.com/kamailio/kamailio/commit/33ba71c209cd612ce59ea547d42c4da…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2025-07-15T12:01:10+02:00
modules: readme files regenerated - ndb_redis ... [skip ci]
---
Modified: src/modules/ndb_redis/README
---
Diff: https://github.com/kamailio/kamailio/commit/33ba71c209cd612ce59ea547d42c4da…
Patch: https://github.com/kamailio/kamailio/commit/33ba71c209cd612ce59ea547d42c4da…
---
diff --git a/src/modules/ndb_redis/README b/src/modules/ndb_redis/README
index 3f180a1168e..b189f67d5a5 100644
--- a/src/modules/ndb_redis/README
+++ b/src/modules/ndb_redis/README
@@ -154,15 +154,20 @@ Chapter 1. Admin Guide
3.1. server (str)
Specify the details to connect to REDIS server. It takes a list of
- attribute=value separated by semicolon, the attributes can be name,
- unix, addr, port, db, pass and tls. Name is a generic identifier to be
- used with module functions. unix is the path to the unix domain socket
- provided by redis server. addr and port are the IP address and the port
- to connect to REDIS server. pass is the server password. tls is to
- enable TLS connectivity. unix and (addr, port) are mutually exclusive.
- If both appear in same server settings unix domain socket is
- configured. db is the DB number to use (defaults to 0 if not
- specified).
+ attribute=value separated by semicolon, the attributes can be:
+ * name - is a generic identifier to be used with module functions.
+ * unix - is the path to the unix domain socket to connect to REDIS
+ server.
+ * addr - is the IP address to connect to REDIS server.
+ * port - is the port to connect to REDIS server.
+ * db - is the DB number to use (defaults to 0 if not specified).
+ * pass - is the server password.
+ * tls - is to enable TLS connectivity.
+ * connect_timeout - is to set connect timeout to REDIS server.
+ * command_timeout - is to set command timeout to REDIS server.
+
+ Thr unix and (addr, port) are mutually exclusive, if both appear in
+ same server settings unix domain socket is configured.
You can set this parameter many times, in case you want to connect to
many REDIS servers, just give different attributes and use the specific
@@ -189,12 +194,13 @@ modparam("ndb_redis", "server", "name=srvY;unix=/tmp/redis.sock;db=3")
# sentinel (for a redis slave)
modparam("ndb_redis", "server", "name=srvZ;sentinel_group=group_name;sentinel_ma
-ster=0;sentinel=1.2.3.4:26379;sentinel=1.2.3.5:26379")
+ster=0;"
+ "sentinel=1.2.3.4:26379;sentinel=1.2.3.5:26379")
# sentinel (for a redis master)
modparam("ndb_redis", "server", "name=srvZ;sentinel_group=group_name;sentinel_ma
-ster=1;sentinel=1.2.3.4:26379;sentinel=1.2.3.5:26379")
-
+ster=1;"
+ "sentinel=1.2.3.4:26379;sentinel=1.2.3.5:26379")
...
3.2. init_without_redis (integer)