Hello,
based on many reports coming over along all the past years, there are
crashes that happen on module destroy callbacks, many could be fixed,
but some cannot be predicted, depending on the moment when the kill
(shut down) is triggered.
Furthermore, there are cases when the clean makes no much sense, like
attempting to close the DB connection, because the destroy callback is
executed by Kamailio's main process only, which does not handle SIP
traffic and usually does not have DB connection,…
[View More]. So actually, all the
other connections from the SIP works are clean up automatically by the
OS on process shut down.
Also, the pkg and shm blocks are cleaned up as a whole after all,
therefore trying to free chunks inside them that were used by various
internal structures is kind of waste of time. The main purpose to do it
in the past it to be able to discover memory leaks by having status
reports written in syslog, but these reports can be triggered by RPC
during runtime and it is even better to get them in such way.
I think that the best is to use module destroy callbacks only to save
data to backend (e.g., database) that has to be reloaded on restart, and
leave the memory/resources clean up to the OS. In this way we also deal
nicer with the inter-modules dependencies, the structures of a module
will be always available, even after its mod-destroy callback execution,
so if another module depending on them still wants to access, it should
be no problem.
At the last Kamailio Devel meeting we had a brief discussion that we may
want to change mod-destroy to be done in two steps, first for storing
meeded data to backed and then do the cleanup, but I think it is better
without the 2nd step.
Any comments or other suggestions?
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3868
-- Commit Summary --
* Revert "ims_registrar_pcscf: update registered state to pending registration if contact exists"
* ims_registrar_pcscf: fix typo in comments
* ims_ipsec_pcscf: update security params of newly created ipsec tunnel in contact
-- File Changes --
M src/modules/ims_ipsec_pcscf/cmd.c (12)
M src/modules/ims_registrar_pcscf/save.c (13)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3868.patchhttps://github.com/kamailio/kamailio/pull/3868.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3868
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3868(a)github.com>
[View Less]
Hey Team,
I submitted a PR a while back that has not had much discussion:
https://github.com/kamailio/kamailio/pull/3828
The intention was to allow loading in unsigned integer IDs from DB into PVs.
Currently converting unsigned integers from DB to PVs will error by
default unless the module specifically handles the ease use case.
When the following parameter is enabled the srdb interface will allow
the conversion to an integer PV value (possibly overflowing):
|modparam("db_mysql", "…
[View More]unsigned_type", 1) |
This PR allows the srdb APIs to convert the unsigned integer to an
unsigned integer PV value.
This can be quite useful in modules such as |auth_db| / |permissions|
that can load an arbitrary column into a PV (|load_credentials|,
|tag_col|/|peer_tag_avp|, etc..).
Since most ID columns are auto incrementing unsigned integers this just
makes sense for referring to customer data.
Elevator pitch over..
What I need help with is reviewing the srdb changes, since I am unsure
what side effects that would have on other modules.
Comments are welcome here, on the PR, or find me on the matrix channel
(@devopsec).
Happy Coding..
Regards,
Tyler Moore
Full Stack Software Engineer
dOpenSource
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [ ] Commit message has the format required by CONTRIBUTING guide
- [ ] Commits are split per component (core, individual modules, libs, utils, ...)
- [ ] Each component has a single commit (if not, squash them into one commit)
- [ ] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [x] Related to issue #3350
#### Description
<!-- Describe your changes in detail -->
This PR fixes a crash when `dns_cache_init=off`.
The issue is described in #3350 and the crash is caused when trying to search in `dns_cache.c` [LOCK_DNS_HASH();](https://github.com/kamailio/kamailio/blob/d4629be286fc6d3….
When `dns_cache_init=off`, the lock is never initialized and when trying to lock it crashes.
Per my understanding, when `dns_cache_init=off`, no calls to `dns_cache.c` should be made and instead call the alternative ones from `resolve.c`, since the whole functions are compiled only when USE_DNS_CACHE definition is present.
Just a question to clarify, what is the reasoning behind USE_DNS_CACHE definition and a separate `dns_cache_init` parameter?
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3858
-- Commit Summary --
* core/resolve: Check dns_cache_init and choose appropriate functions
-- File Changes --
M src/core/resolve.c (16)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3858.patchhttps://github.com/kamailio/kamailio/pull/3858.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3858
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3858(a)github.com>
[View Less]
Module: kamailio
Branch: master
Commit: 06d583e356351ae9d8a559c9f5de3e57fb128a38
URL: https://github.com/kamailio/kamailio/commit/06d583e356351ae9d8a559c9f5de3e5…
Author: Xenofon Karamanos <22965395+xkaraman(a)users.noreply.github.com>
Committer: Xenofon Karamanos <22965395+xkaraman(a)users.noreply.github.com>
Date: 2024-06-04T12:41:58+03:00
core/resolve: Check dns_cache_init and choose appropriate functions
---
Modified: src/core/resolve.c
Modified: src/core/resolve.h
---
…
[View More]Diff: https://github.com/kamailio/kamailio/commit/06d583e356351ae9d8a559c9f5de3e5…
Patch: https://github.com/kamailio/kamailio/commit/06d583e356351ae9d8a559c9f5de3e5…
---
diff --git a/src/core/resolve.c b/src/core/resolve.c
index 6d581f4915f..da247952fd9 100644
--- a/src/core/resolve.c
+++ b/src/core/resolve.c
@@ -1623,7 +1623,11 @@ struct hostent *no_naptr_srv_sip_resolvehost(
srv_name.s = tmp_srv;
srv_name.len = strlen(tmp_srv);
#ifdef USE_DNS_CACHE
- he = dns_srv_get_he(&srv_name, port, dns_flags);
+ if(dns_cache_init) {
+ he = dns_srv_get_he(&srv_name, port, dns_flags);
+ } else {
+ he = srv_sip_resolvehost(&srv_name, 0, port, proto, 1, 0);
+ }
#else
he = srv_sip_resolvehost(&srv_name, 0, port, proto, 1, 0);
#endif
@@ -1660,6 +1664,7 @@ struct hostent *naptr_sip_resolvehost(
struct rdata *naptr_head;
char n_proto;
str srv_name;
+ str *name_copy = 0;
naptr_bmp_t tried_bmp; /* tried bitmap */
char origproto = PROTO_NONE;
@@ -1704,7 +1709,15 @@ struct hostent *naptr_sip_resolvehost(
he = no_naptr_srv_sip_resolvehost(name, port, proto);
/* fallback all the way down to A/AAAA */
if(he == 0) {
- he = dns_get_he(name, dns_flags);
+ if(dns_cache_init) {
+ he = dns_get_he(name, dns_flags);
+ } else {
+ /* We need a zero terminated char* */
+ name_copy = shm_malloc(name->len + 1);
+ shm_str_dup(name_copy, name);
+ he = resolvehost(name_copy->s);
+ shm_free(name_copy);
+ }
}
end:
if(naptr_head)
@@ -1833,6 +1846,45 @@ ip_addr_t *str2ip(str *st)
return ipb;
}
+/*
+* Resolve a host name to a hostent.
+* @param[in] name: the host name to resolve
+* @return the hostent structure or NULL on error
+*
+* @note
+* This function is a wrapper to choose between the DNS cache and the
+* system resolver. If the DNS cache is enabled, it will use the DNS cache
+* to resolve the host name. Otherwise, it will use the system resolver.
+*/
+struct hostent *__resolvehost(char *name)
+{
+ if(dns_cache_init) {
+ return dns_resolvehost(name);
+ } else {
+ return _resolvehost(name);
+ }
+}
+
+/*
+* Resolve a host name to a hostent.
+* @param[in] name: the host name to resolve
+* @param[in] port: the port number
+* @param[in] proto: the protocol
+* @return the hostent structure or NULL on error
+*
+* @note
+* This function is a wrapper to choose between the DNS cache and the
+* system resolver. If the DNS cache is enabled, it will use the DNS cache
+* to resolve the host name. Otherwise, it will use the system resolver.
+*/
+struct hostent *__sip_resolvehost(str *name, unsigned short *port, char *proto)
+{
+ if(dns_cache_init) {
+ return dns_sip_resolvehost(name, port, proto);
+ } else {
+ return _sip_resolvehost(name, port, proto);
+ }
+}
/* converts a str to an ipv6 address struct stored in ipb
* - ipb must be already allocated
* - return 0 on success; <0 on failure */
diff --git a/src/core/resolve.h b/src/core/resolve.h
index c39d90c2104..0e66a7b4ae0 100644
--- a/src/core/resolve.h
+++ b/src/core/resolve.h
@@ -329,14 +329,14 @@ int sip_hostport2su(
union sockaddr_union *su, str *host, unsigned short port, char *proto);
+/* Wrapper functions that check for dns_cache_init */
+struct hostent *__resolvehost(char *name);
+struct hostent *__sip_resolvehost(str *name, unsigned short *port, char *proto);
+
+
/* wrappers */
-#ifdef USE_DNS_CACHE
-#define resolvehost dns_resolvehost
-#define sip_resolvehost dns_sip_resolvehost
-#else
-#define resolvehost _resolvehost
-#define sip_resolvehost _sip_resolvehost
-#endif
+#define resolvehost __resolvehost
+#define sip_resolvehost __sip_resolvehost
#ifdef USE_NAPTR
[View Less]
@Sergey-safarov
Both EL distros 8.10 and 9.4 have been released with Python 3.12.
Can you consider updating bumping the Python version to 3.12 for the
upcoming 5.8.2 release.
Thank you.
Richard Chan
### Description
When configured `read_sdp_pv` param for rtpengine module, then multipart content dropped in the body.
And the message cannot be parsed because
```
Content-Type: multipart/mixed;boundary=level3-boundary
```
But the message body does not have a separator.
### Troubleshooting
#### Reproduction
To reproduce need to start Kamailio with config file
```
loadmodule "pv.so"
loadmodule "ctl.so"
loadmodule "corex.so"
loadmodule "sdpops.so"
loadmodule "rtpengine.so"
modparam("rtpengine", …
[View More]"rtpengine_sock", "udp:localhost:2223")
modparam("rtpengine", "read_sdp_pv", "$var(sdp_for_rtpengine)")
listen=udp:x.x.x.x:5060
request_route {
$var(sdp_for_rtpengine) = $sdp(body);
rtpengine_manage("ICE=force");
forward();
}
```
And then send call using `sipp` script
```xml
<scenario name="Basic Sipstone UAC">
<!-- In client mode (sipp placing calls), the Call-ID MUST be -->
<!-- generated by sipp. To do so, use [call_id] keyword. -->
<send retrans="500">
<![CDATA[
INVITE sip:[service]@example.com:[remote_port] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[call_number]
To: sut <sip:[service]@[remote_ip]:[remote_port]>
Call-ID: [call_id]
CSeq: 1 INVITE
Contact: sip:sipp@[local_ip]:[local_port]
Max-Forwards: 70
Subject: Performance Test
Content-Type: multipart/mixed;boundary=level3-boundary
Content-Length: [len]
--level3-boundary
Content-Type: application/sdp
v=0
o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip]
s=-
c=IN IP[media_ip_type] [media_ip]
t=0 0
m=audio [media_port] RTP/AVP 0
a=rtpmap:0 PCMU/8000
--level3-boundary
Content-Type: application/isup;version=ansi
Content-Disposition: session;handling=optional
\x01\x18\x08\x10\x0a\x03\x06\x0d\x03\x80\x90\xa2\x07\x03\x10\x87\x36\x08\x14\x89
\x0a\x07\x03\x13\x27\x97\x45\x28\x49\xc0\x08\xc0\x03\x10\x65\x41\x17\x88\x67\x3d
\x01\x11\xc4\x03\x01\x01\x00\xea\x01\x01\xc7\x01\x20\x01\x0d\x0a
--level3-boundary--
]]>
</send>
```
If the `read_sdp_pv` param will be commented in the Kamailio config file, then the resulting message will be properly formatted and have the other multipart media.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3854
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3854(a)github.com>
[View Less]
#### Pre-Submission Checklist
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [x] New feature …
[View More](non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
- [ ] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
Add support for setting a different RPC reload interval than the reg_gc_interval parameter.
This allows the cleanup timer to match the user's re-transmission timeout without constraining RPC reload times to a large interval.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3829
-- Commit Summary --
* uac: add reload_delta parameter
-- File Changes --
M src/modules/uac/doc/uac.xml (9)
M src/modules/uac/doc/uac_admin.xml (37)
M src/modules/uac/uac.c (5)
M src/modules/uac/uac_reg.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3829.patchhttps://github.com/kamailio/kamailio/pull/3829.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3829
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3829(a)github.com>
[View Less]
### Description
We send HEP3 data to the UDP listener in kamailio. In this HEP3 data, there are SIP requests and replies. We want to route these SIP messages through `request_route` and `onreply_route`. For this, we use the SipCapture module with the following settings:
```
modparam("sipcapture", "db_url", DBURL)
modparam("sipcapture", "capture_on", 1)
modparam("sipcapture", "hep_capture_on", 1)
modparam("sipcapture", "insert_retries", 0)
modparam("sipcapture", "insert_retry_timeout", 0)
…
[View More]request_route {
xlog("L_INFO", "Got new request ($ci) $rm: $si => $Ri\n");
}
onreply_route {
xlog("L_INFO", "Got new reply ($ci) $rm: $si => $Ri - Reply Code $rs\n");
}
```
In the past (version kamailio 5.1.x - 5.4.x), this worked as expected. From the logs:
```
2(8) INFO: <script>: Got new request (7xkVDrAWegvcZl-ACaUb1HWHwiCYhAJR) INVITE: 217.116.121.230 => 172.20.21.4
3(9) INFO: <script>: Got new reply (7xkVDrAWegvcZl-ACaUb1HWHwiCYhAJR) INVITE: 172.20.21.4 => 217.116.121.230 - Reply Code 407
```
Starting with kamailio 5.5.x, some pseudo variables are broken. From the logs:
```
1(7) INFO: <script>: Got new request (7xkVDrAWegvcZl-ACaUb1HWHwiCYhAJR) INVITE: 217.116.121.230 => 217.116.121
2(8) INFO: <script>: Got new reply (7xkVDrAWegvcZl-ACaUb1HWHwiCYhAJR) INVITE: 172.20.21.4 => 172.20.21.4 3(9) INFO: <script>: ...
```
As you can see, the `$Ri` in the request is wrong. It looks like the first three octets of the `$si` and the fourth octet is missing entirely.
And for the reply:
- The `$Ri` is the `$si`.
- The line is missing the static text `Reply Code`, the actual reply code.
- The next log is on the same line (the new line is gone). (In this case, we simply sent a third HEP3 message.)
To my untrained eye this looks like possible memory corruption.
### Troubleshooting
#### Reproduction
1. Set up a kamailio 5.8.1 using the attached [kamailio.cfg](https://github.com/kamailio/kamailio/files/15161868/kamailio.…
`/usr/sbin/kamailio -E -DD -dd -f "/etc/kamailio/kamailio.cfg"`
2. Send the HEP3 data using [heplify](https://github.com/sipcapture/heplify)
`./heplify -t pcap -rf "sipcapture-bug.pcap" -hs localhost:9060 -e -eof-exit`
#### Debugging Data
#### Log Messages
see above
#### SIP Traffic
see attached [sipcapture-bug.pcap](https://github.com/kamailio/kamailio/files/15161698/si…
### Possible Solutions
Use kamailio 5.4.x or earlier versions.
### Additional Information
When setting `nonsip_hook` = `1`, then the `$hep(...)` pseudo variables look fine. Unfortunately, we don't know how process the SIP messages after that point.
```
modparam("sipcapture", "nonsip_hook", 1)
...
event_route[sipcapture:request] {
xlog("L_INFO", "version: $hep(version)\n");
xlog("L_INFO", "src_ipv4: $hep(0x003)\n");
xlog("L_INFO", "dst_ipv4: $hep(0x004)\n");
xlog("L_INFO", "src_proto: $hep(0x007)\n");
xlog("L_INFO", "dst_proto: $hep(0x008)\n");
xlog("L_INFO", "proto: $hep(0x00b)\n");
}
```
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.8.1 (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, MEM_JOIN_FREE, 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_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:
compiled with gcc 12.2.0
```
Also tested with same error: 5.5.x, 5.6.x, 5.7.x
* **Operating System**:
```
# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3835
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3835(a)github.com>
[View Less]
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/…
[View More]lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
Kamailio crashes on shutdown in `geoip2_destroy_pv` in `main process` process if geoip2 database was reloaded.
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
### Troubleshooting
`libmaxminddb.so.0` uses `calloc()` internally to allocate memory for metadata languages and descriptions. On reload via e.g. `ctl` metadata memory is allocated in `ctl` process but `main process` tries to cleanup it.
#### Reproduction
Load `geoip2` module
```
loadmodule "geoip2.so"
modparam("geoip2", "path", "/path/to/your/geolite2.mmdb")
```
Reload database and stop/restart Kamailio
```
kamcmd geoip2.reload
service kamailio restart
```
<!--
If the issue can be reproduced, describe how it can be done.
-->
#### Debugging Data
```
(gdb) bt
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
#1 0x00007f117bc59e8f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2 0x00007f117bc0afb2 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x00007f117bbf5472 in __GI_abort () at ./stdlib/abort.c:79
#4 0x00007f117bc4e430 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7f117bd68459 "%s\n") at ../sysdeps/posix/libc_fatal.c:155
#5 0x00007f117bc637aa in malloc_printerr (str=str@entry=0x7f117bd660b1 "free(): invalid pointer") at ./malloc/malloc.c:5660
#6 0x00007f117bc65534 in _int_free (av=<optimized out>, p=<optimized out>, have_lock=have_lock@entry=0) at ./malloc/malloc.c:4435
#7 0x00007f117bc67e8f in __GI___libc_free (mem=<optimized out>) at ./malloc/malloc.c:3385
#8 0x00007f1158e6e454 in free_languages_metadata (mmdb=0x7f11592db390) at ./src/maxminddb.c:1860
#9 free_mmdb_struct (mmdb=0x7f11592db390) at ./src/maxminddb.c:1843
#10 0x00007f1158e708a5 in MMDB_close (mmdb=<optimized out>) at ./src/maxminddb.c:1803
#11 0x00007f1158e7ebc9 in geoip2_destroy_pv () at ./src/modules/geoip2/geoip2_pv.c:567
#12 0x000056094fd5f743 in destroy_modules () at core/sr_module.c:881
#13 0x000056094fbb7910 in cleanup (show_status=show_status@entry=1) at ./src/main.c:587
#14 0x000056094fbb86ad in shutdown_children (show_status=show_status@entry=1, sig=15) at ./src/main.c:735
#15 0x000056094fbb932b in handle_sigs () at ./src/main.c:835
#16 0x000056094fbbf1e9 in main_loop () at ./src/main.c:2002
#17 0x000056094fbb353c in main (argc=<optimized out>, argv=<optimized out>) at ./src/main.c:3256
```
```
(gdb) f 8
#8 0x00007f1158e6e454 in free_languages_metadata (mmdb=0x7f11592db390) at ./src/maxminddb.c:1860
1860 FREE_AND_SET_NULL(mmdb->metadata.languages.names);
(gdb) p *mmdb
$1 = {flags = 1, filename = 0x0, file_size = 652795, file_content = 0x7f1158dcd000 <error: Cannot access memory at address 0x7f1158dcd000>, data_section = 0x7f1158e6c430 <error: Cannot access memory at address 0x7f1158e6c430>, data_section_size = 459,
metadata_section = 0x7f1158e6c546 <error: Cannot access memory at address 0x7f1158e6c546>, metadata_section_size = 181, full_record_byte_size = 6, depth = 32, ipv4_start_node = {netmask = 0, node_value = 0}, metadata = {node_count = 108720, record_size = 24, ip_version = 4,
database_type = 0x0, languages = {count = 1, names = 0x560951ca6250}, binary_format_major_version = 2, binary_format_minor_version = 0, build_epoch = 1648557301, description = {count = 1, descriptions = 0x560951ca5470}}}
(gdb) f 9
#9 free_mmdb_struct (mmdb=0x7f11592db390) at ./src/maxminddb.c:1843
1843 free_languages_metadata(mmdb);
(gdb) f 10
#10 0x00007f1158e708a5 in MMDB_close (mmdb=<optimized out>) at ./src/maxminddb.c:1803
1803 void MMDB_close(MMDB_s *const mmdb) { free_mmdb_struct(mmdb); }
(gdb) f 11
#11 0x00007f1158e7ebc9 in geoip2_destroy_pv () at ./src/modules/geoip2/geoip2_pv.c:567
567 MMDB_close(_handle_GeoIP);
```
<!--
If you got a core dump, use gdb to extract troubleshooting data - full backtrace,
local variables and the list of the code at the issue location.
gdb /path/to/kamailio /path/to/corefile
bt full
info locals
list
If you are familiar with gdb, feel free to attach more of what you consider to
be relevant.
-->
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
/usr/sbin/kamailio -V
version: kamailio 5.8.1 (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, MEM_JOIN_FREE, 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_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: unknown
compiled with gcc 12.2.0
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `lsb_release -a` and `uname -a`)
-->
```
cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3861
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3861(a)github.com>
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [x] Related to issue #3861
#### Description
<!-- Describe your changes in detail -->
Re-add reloading of database.
Fixes: 293193c55c ("geoip2: clang format module file")
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3867
-- Commit Summary --
* geoip2: Reload database before accessing it
-- File Changes --
M src/modules/geoip2/geoip2_mod.c (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3867.patchhttps://github.com/kamailio/kamailio/pull/3867.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3867
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3867(a)github.com>
[View Less]
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/…
[View More]lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
we are using version: kamailio 5.5.1 (x86_64/linux) 8aa8df-dirty and we have a setup with 2 kamailio instances. First one is doing topoh, and the second one is supposed to not do it
Despite this we do see that some replies the second instance is masking some headers like record route and contact in the 200ok (not in the 180)
Besides, seems that when the b-side sends a BYE, kamailio show an error, see in logs part
However, in the sip pcap we do see thre BYE like it should be. At least that's what it seems to me
i attach you the trace
[topoh_bye_bad_message.txt](https://github.com/kamailio/kamailio/files/15324…
do you have any idea of what can be the issue?
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
### Troubleshooting
#### Reproduction
<!--
If the issue can be reproduced, describe how it can be done.
-->
#### Debugging Data
<!--
If you got a core dump, use gdb to extract troubleshooting data - full backtrace,
local variables and the list of the code at the issue location.
gdb /path/to/kamailio /path/to/corefile
bt full
info locals
list
If you are familiar with gdb, feel free to attach more of what you consider to
be relevant.
-->
```
(paste your debugging data here)
```
#### Log Messages
<!--
Check the syslog file and if there are relevant log messages printed by Kamailio, add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
May 15 13:19:42 vqbert-2 /usr/local/kamailio/sbin/kamailio[31824]: ERROR: <core> [core/parser/parse_fline.c:272]: parse_first_line(): parse_first_line: bad message (offset: 54)
��%����QI:19:42 vqbert-2 /usr/local/kamailio/sbin/kamailio[31824]: ERROR: <core> [core/parser/msg_parser.c:748]: parse_msg(): ERROR: parse_msg: message=<BYE �ͥ���ĸ��Ը��ĸ���������Ʌ�������Ց��!���ᕈ�|���
����������������� SIP/2.0
Via: SIP/2.0/UDP 199.244.96.39:5060;TH=ucv;branch=z9hG4bK-524287-1---513df3f6b3057f235eef63c542634016;rport
Via: SIP/2.0/UDP 199.244.96.46:5071;rport=5071;branch=z9hG4bK-mx5umw4feykudkd5
Max-Forwards: 69
Route: <sip:79.170.71.169;lr;ftag=11002597000844;did=7842.5393>
Route: <sip:79.170.71.168;lr=on;ftag=11002597000844;did=b09.3b49>
��%����QI���ĸ��Ը��ĸ���������Ʌ�������Ց�����!���ᕈ�|���
����������>�����������������`�!ɉU�
Contact: sip:199.244.96.46:5071
To: +233240979290 <sip:+233240979290@79.170.71.168;user=phone>;tag=11002597000844
From: +233307000929 <sip:+233307000929@199.244.96.39.SBC1;user=phone>;tag=W7OXULJ726L2OYQEVKNA____.i
Call-ID: Sonoc2Did!!:C9WJ3uq4gtNwMlcfzxFlM.jAkx0J34pvaRgtCt0vPl0EPxFwMJZfWJZfMBy7MP**
CSeq: 905 BYE
Allow: INVITE, ACK, BYE, CANCEL, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS, UPDATE
User-Agent: PortaSIP
cisco-GUID: 3592442246-2620412195-1372314391-1317599184
h323-conf-id: 3592442246-2620412195-1372314391-1317599184
Content-Length: 0
TH: uch
>
May 15 13:19:42 vqbert-2 /usr/local/kamailio/sbin/kamailio[31824]: ERROR: <core> [core/receive.c:377]: receive_msg(): core parsing of SIP message failed (199.244.96.39:5060/1)
```
#### SIP Traffic
<!--
If the issue is exposed by processing specific SIP messages, grab them with ngrep or save in a pcap file, then add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
No. Time Source Destination Protocol Length Info
17 62.116377 19.24.9.39 10.100.10.169 SIP 1273 Request: BYE sip:127.0.0.8;line=sonoc2did-N6IAzBPfOBVfWmZfWBF7WlN-W.y6Mx14NEt7Nw05NhPQpRaAz4rApx4ZgRVZ9lF6z4WZpFIqH.PXKtexHRgEgEgEgEgEORgEgEgEgEgE |
Frame 17: 1273 bytes on wire (10184 bits), 1273 bytes captured (10184 bits)
Linux cooked capture
Internet Protocol Version 4, Src: 19.24.9.39, Dst: 10.100.10.169
User Datagram Protocol, Src Port: 5060, Dst Port: 5060
Session Initiation Protocol (BYE)
Request-Line: BYE sip:127.0.0.8;line=sonoc2did-N6IAzBPfOBVfWmZfWBF7WlN-W.y6Mx14NEt7Nw05NhPQpRaAz4rApx4ZgRVZ9lF6z4WZpFIqH.PXKtexHRgEgEgEgEgEORgEgEgEgEgE SIP/2.0
Method: BYE
Request-URI: sip:127.0.0.8;line=sonoc2did-N6IAzBPfOBVfWmZfWBF7WlN-W.y6Mx14NEt7Nw05NhPQpRaAz4rApx4ZgRVZ9lF6z4WZpFIqH.PXKtexHRgEgEgEgEgEORgEgEgEgEgE
[Resent Packet: False]
Message Header
Via: SIP/2.0/UDP 19.24.9.39:5060;branch=z9hG4bK-524287-1---513df3f6b3057f235eef63c542634016;rport
Via: SIP/2.0/UDP 19.24.9.46:5071;rport=5071;branch=z9hG4bK-mx5umw4feykudkd5
Max-Forwards: 69
Route: <sip:10.100.10.169;lr;ftag=11002597000844;did=7842.5393>
Route: <sip:10.100.10.168;lr=on;ftag=11002597000844;did=b09.3b49>
Route: <sip:127.0.0.8;line=sonoc2did-N6IAzBPfOBVfWmZfWBF7WlN-W.y6Mx14NEt7Nw05NhPQpRaAz6fLz4rApx4ZgRVZ9lF6z4WZpFIqH.PXKtexHRgEgEgEgEgEORgEgEgEgEgEzuc1mUpGMEeK3jW5o61Yg.4fWBMLWc**>
Contact: sip:19.24.9.46:5071
To: +233240979290 <sip:+233240979290@10.100.10.168;user=phone>;tag=11002597000844
From: +233307000929 <sip:+233307000929@19.24.9.39.SBC1;user=phone>;tag=W7OXULJ726L2OYQEVKNA____.i
Call-ID: Sonoc2Did!!:C9WJ3uq4gtNwMlcfzxFlM.jAkx0J34pvaRgtCt0vPl0EPxFwMJZfWJZfMBy7MP**
[Generated Call-ID: Sonoc2Did!!:C9WJ3uq4gtNwMlcfzxFlM.jAkx0J34pvaRgtCt0vPl0EPxFwMJZfWJZfMBy7MP**]
CSeq: 905 BYE
Allow: INVITE, ACK, BYE, CANCEL, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS, UPDATE
User-Agent: PortaSIP
cisco-GUID: 3592442246-2620412195-1372314391-1317599184
h323-conf-id: 3592442246-2620412195-1372314391-1317599184
Content-Length: 0
```
### Possible Solutions
<!--
If you found a solution or workaround for the issue, describe it. Ideally, provide a pull request with a fix.
-->
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
(paste your output here)
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `lsb_release -a` and `uname -a`)
-->
```
(paste your output here)
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3853
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3853(a)github.com>
[View Less]
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/…
[View More]lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
I think that a memory leak accur when call **get_uri_params** function to get the params in Invite RURI. If RURI haven't params I don't see memory leaking, but yes if RURI have one or more params.
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
### Troubleshooting
#### Reproduction
1. In kamailio script load siputils module;
2. Invoke get_uri_params in request_route;
3. Make call traffic with params in Invite RURI;
4. Check memory using pkg_stat kamcmd command during call traffic.
<!--
If the issue can be reproduced, describe how it can be done.
-->
### Possible Solutions
Looking the source code, it seems that the function doesn't free the memory allocated during parsing params (parse_params function), infact invoke the free procedure always with null value in params pointer.
I trying a simple modify saving the params poiter after parsing e use it in free function, than the memory don't accur!
```
int get_uri_param(struct sip_msg* _msg, char* _param, char* _value)
{
str *param, t;
pv_spec_t* dst;
pv_value_t val;
param_hooks_t hooks;
param_t* params;
param_t* parsed_params; // ----------------------> pointer declaretion
param = (str*)_param;
dst = (pv_spec_t *) _value;
if (parse_sip_msg_uri(_msg) < 0) {
LM_ERR("ruri parsing failed\n");
return -1;
}
t = _msg->parsed_uri.params;
if (parse_params(&t, CLASS_ANY, &hooks, ¶ms) < 0) {
LM_ERR("ruri parameter parsing failed\n");
return -1;
}
parsed_params = params; // ---------------------> pointer assignment
while (params) {
if ((params->name.len == param->len)
&& (strncmp(params->name.s, param->s, param->len) == 0)) {
memset(&val, 0, sizeof(pv_value_t));
val.rs.s = params->body.s;
val.rs.len = params->body.len;
val.flags = PV_VAL_STR;
dst->setf(_msg, &dst->pvp, (int)EQ_T, &val);
goto found;
} else {
params = params->next;
}
}
free_params(parsed_params); // -----------------------> use parsed_pointer to free memory
return -1;
found:
free_params(parsed_params); // --------------------> use parsed_pointer to free memory
return 1;
}
```
<!--
If you found a solution or workaround for the issue, describe it. Ideally, provide a pull request with a fix.
-->
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.3.1 (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, 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_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3857
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3857(a)github.com>
[View Less]
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/…
[View More]lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
I tried to update to a new version of kamailio and it didn't start with the old configuration file, I found out that the regex module is responsible.
Log after start:
` 0(713737) INFO: regex [regex_mod.c:417]: load_pcres(): num groups = 1
0(713737) INFO: regex [regex_mod.c:419]: load_pcres(): <group[0]>((^[1-9]\d{5}$)|(^ukrb[12]$)) </group[0]> (size = 29)
0(713735) ERROR: <core> [core/daemonize.c:302]: daemonize(): Main process exited before writing to pipe`
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
### Troubleshooting
#### Reproduction
<!--
If the issue can be reproduced, describe how it can be done.
-->
grep regex /usr/local/etc/kamailio/kamailio.cfg
loadmodule "regex.so"
modparam("regex", "file", "/usr/local/etc/kamailio/regex_groups")
cat /usr/local/etc/kamailio/regex_groups
[0]
#cislo linky
(^[1-9]\d{5}$)
(^ukrb[12]$)
#### Debugging Data
<!--
If you got a core dump, use gdb to extract troubleshooting data - full backtrace,
local variables and the list of the code at the issue location.
gdb /path/to/kamailio /path/to/corefile
bt full
info locals
list
If you are familiar with gdb, feel free to attach more of what you consider to
be relevant.
-->
```
gdb /usr/local/sbin/kamailio /core
GNU gdb (Debian 10.1-1.7) 10.1.90.20210103-git
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/local/sbin/kamailio...
warning: Can't open file /dev/zero (deleted) during file-backed mapping note processing
[New LWP 713740]
warning: Section `.reg-xstate/713740' in core file too small.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/local/sbin/kamailio -S -P /run/kamailio/kamailio.pid -f /usr/local/etc/kam'.
Program terminated with signal SIGSEGV, Segmentation fault.
warning: Section `.reg-xstate/713740' in core file too small.
#0 load_pcres (action=0) at regex_mod.c:466
466 *pcres = *pcres_tmp;
(gdb) bt full
#0 load_pcres (action=0) at regex_mod.c:466
i = 1
j = 32
f = 0x55c5775ea6b0
line = '\000' <repeats 499 times>
patterns = 0x7f7e7ad3a230
pcre_error_num = 100
pcre_error = '\000' <repeats 16 times>, "\277Fou\305U\000\000\000\000\000\000m\000\000\000(Hou\305U\000\000\332Gou\305U\000\000\220\000\000\000\000\000\000\000\020\240\303z~\177\000\000 \274$u\305U\000\000\037\000\000\000\004\000\000\000\001\000\000\000%\000\000\000\n\344\n\000\000\000\000\000 \274$u\305U\000\000\000\000\000\000\000\000\000\000\n\344\n\000\000\000\000\000\360\212\355\255\374\177\000"
pcre_erroffset = 0
num_pcres_tmp = 1
pcres_tmp = 0x7f7e7ad62c00
llen = 19
__func__ = "load_pcres"
#1 0x00007f7e79f62c92 in mod_init () at regex_mod.c:245
__func__ = "mod_init"
#2 0x000055c5754a99f7 in init_mod (m=0x7f7e7adeb1f0) at core/sr_module.c:1036
ret = -2097389668
__func__ = "init_mod"
#3 0x000055c5754a9687 in init_mod (m=0x7f7e7adeb6c0) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#4 0x000055c5754a9687 in init_mod (m=0x7f7e7adebda0) at core/sr_module.c:1031
ret = -2097386271
__func__ = "init_mod"
#5 0x000055c5754a9687 in init_mod (m=0x7f7e7adec3b0) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#6 0x000055c5754a9687 in init_mod (m=0x7f7e7adec910) at core/sr_module.c:1031
ret = -1376937648
__func__ = "init_mod"
#7 0x000055c5754a9687 in init_mod (m=0x7f7e7adece70) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#8 0x000055c5754a9687 in init_mod (m=0x7f7e7aded520) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#9 0x000055c5754a9687 in init_mod (m=0x7f7e7adedc10) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#10 0x000055c5754a9687 in init_mod (m=0x7f7e7adee1f0) at core/sr_module.c:1031
ret = -1376937902
__func__ = "init_mod"
#11 0x000055c5754a9687 in init_mod (m=0x7f7e7adeeaf0) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#12 0x000055c5754a9687 in init_mod (m=0x7f7e7adef4d0) at core/sr_module.c:1031
ret = 16
__func__ = "init_mod"
#13 0x000055c5754a9687 in init_mod (m=0x7f7e7adef8e0) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#14 0x000055c5754a9687 in init_mod (m=0x7f7e7adefdd0) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#15 0x000055c5754a9687 in init_mod (m=0x7f7e7adf3320) at core/sr_module.c:1031
ret = 2053729903
__func__ = "init_mod"
#16 0x000055c5754a9687 in init_mod (m=0x7f7e7adf3770) at core/sr_module.c:1031
ret = -1
__func__ = "init_mod"
#17 0x000055c5754a9687 in init_mod (m=0x7f7e7adf3ba0) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#18 0x000055c5754a9687 in init_mod (m=0x7f7e7adf4140) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#19 0x000055c5754a9687 in init_mod (m=0x7f7e7adf4550) at core/sr_module.c:1031
ret = 0
__func__ = "init_mod"
#20 0x000055c5754a9687 in init_mod (m=0x7f7e7adf6140) at core/sr_module.c:1031
ret = 713738
__func__ = "init_mod"
#21 0x000055c5754a9dc4 in init_modules () at core/sr_module.c:1067
t = 0xae40a
i = -1
__func__ = "init_modules"
#22 0x000055c57526927c in main (argc=12, argv=0x7ffcaded9fd8) at main.c:3202
cfg_stream = 0x55c57746a2a0
c = -1
r = 0
tmp = 0x7ffcadedae88 ""
tmp_len = 832
port = 5060
proto = 0
aproto = 0
ahost = 0x0
aport = 0
options = 0x55c5756b8368 ":f:cm:M:dVIhEeb:B:l:L:n:vKrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:x:X:Y:"
ret = -1
seed = 4165046025
rfd = 4
debug_save = 0
debug_flag = 0
dont_fork_cnt = 0
n_lst = 0x98000000980
p = 0x180000000 <error: Cannot access memory at address 0x180000000>
st = {st_dev = 115, st_ino = 321140, st_nlink = 2, st_mode = 16888, st_uid = 0, st_gid = 0, __pad0 = 0, st_rdev = 0, st_size = 40, st_blksize = 4096, st_blocks = 0, st_atim = {tv_sec = 1712844094, tv_nsec = 899597355}, st_mtim = {tv_sec = 1712844094, tv_nsec = 899597355}, st_ctim = {tv_sec = 1712844094, tv_nsec = 899597355}, __glibc_reserved = {0, 0, 0}}
--Type <RET> for more, q to quit, c to continue without paging--
l1 = 2048
tbuf = "p\233\355\255\374\177\000\000\310%ǂ~\177\000\000\020D\373\202~\177\000\000\000\000\000\000\000\000\000\000\360\233\355\255\374\177\000\000\000\000\000\000\000\000\000\000\360\233\355\255\374\177", '\000' <repeats 18 times>, "`\307\373\202~\177\000\000\350\204\376\202~\177\000\000\204\311\373\202~\177\000\000\060\304\373\202~\177\000\000Hp\376\202~\177\000\000\000\300\373\202~\177\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000@\342ł~\177", '\000' <repeats 66 times>...
option_index = 12
long_options = {{name = 0x55c5756ba886 "help", has_arg = 0, flag = 0x0, val = 104}, {name = 0x55c5756b554c "version", has_arg = 0, flag = 0x0, val = 118}, {name = 0x55c5756ba88b "alias", has_arg = 1, flag = 0x0, val = 1024}, {name = 0x55c5756ba891 "subst", has_arg = 1, flag = 0x0, val = 1025}, {name = 0x55c5756ba897 "substdef", has_arg = 1, flag = 0x0, val = 1026}, {name = 0x55c5756ba8a0 "substdefs",
has_arg = 1, flag = 0x0, val = 1027}, {name = 0x55c5756ba8aa "server-id", has_arg = 1, flag = 0x0, val = 1028}, {name = 0x55c5756ba8b4 "loadmodule", has_arg = 1, flag = 0x0, val = 1029}, {name = 0x55c5756ba8bf "modparam", has_arg = 1, flag = 0x0, val = 1030}, {name = 0x55c5756ba8c8 "log-engine", has_arg = 1, flag = 0x0, val = 1031}, {name = 0x55c5756ba8d3 "debug", has_arg = 1, flag = 0x0, val = 1032}, {
name = 0x55c5756ba8d9 "cfg-print", has_arg = 0, flag = 0x0, val = 1033}, {name = 0x55c5756ba8e3 "atexit", has_arg = 1, flag = 0x0, val = 1034}, {name = 0x55c5756ba8ea "all-errors", has_arg = 0, flag = 0x0, val = 1035}, {name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
__func__ = "main"
```
#### Log Messages
<!--
Check the syslog file and if there are relevant log messages printed by Kamailio, add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
0(713842) WARNING: tls [tls_mod.c:747]: mod_register(): OpenSSL 1.1.1 setting cryptorand random engine
0(713842) INFO: rtimer [rtimer_mod.c:298]: stm_t_param(): created rtimer name=iptables interval=60 mode=1
0(713842) INFO: <core> [core/tcp_main.c:5205]: init_tcp(): using epoll_lt as the io watch method (auto detected)
loading modules under config path: /usr/local/lib64/kamailio/modules/
Listening on
udp: 81.31.45.42 [81.31.45.42]:5060
udp: 81.31.45.42 [81.31.45.42]:6688
udp: 81.31.45.42 [81.31.45.42]:443
udp: 81.31.45.42 [81.31.45.42]:6699
tcp: 81.31.45.42 [81.31.45.42]:5060
tcp: 81.31.45.42 [81.31.45.42]:443
tcp: 81.31.45.42 [81.31.45.42]:6688
tcp: 81.31.45.42 [81.31.45.42]:6699
tls: 81.31.45.42 [81.31.45.42]:5061
tls: 81.31.45.42 [81.31.45.42]:6689
tls: 81.31.45.42 [81.31.45.42]:6670
Aliases:
*: sip2.gope.cz:*
*: sipo.smartel.cz:*
*: sipi.smartel.cz:*
*: siptest.odorik.cz:*
*: *.odorik.cz:*
0(713844) INFO: rr [../outbound/api.h:53]: ob_load_api(): unable to import bind_ob - maybe module is not loaded
0(713844) INFO: rr [rr_mod.c:185]: mod_init(): outbound module not available
0(713844) INFO: geoip2 [geoip2_mod.c:96]: mod_init(): using GeoIP database path /var/kamailio/GeoLite2-City-17.06.22.mmdb, library version 1.5.2
0(713844) INFO: cfgutils [cfgutils.c:829]: mod_init(): no hash_file given, disable hash functionality
0(713844) INFO: regex [regex_mod.c:417]: load_pcres(): num groups = 1
0(713844) INFO: regex [regex_mod.c:419]: load_pcres(): <group[0]>(((^[1-9]\d{5}$))|((^ukrb[12]$)))</group[0]> (size = 33)
0(713842) ERROR: <core> [core/daemonize.c:302]: daemonize(): Main process exited before writing to pipe
```
#### SIP Traffic
<!--
If the issue is exposed by processing specific SIP messages, grab them with ngrep or save in a pcap file, then add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
(paste your sip traffic here)
```
### Possible Solutions
<!--
If you found a solution or workaround for the issue, describe it. Ideally, provide a pull request with a fix.
-->
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
kamailio -v
version: kamailio 5.8.1 (x86_64/linux) 215af5-dirty
flags: USE_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, 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_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: 215af5 -dirty
compiled on 15:32:24 Apr 11 2024 with gcc 10.2.1
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `lsb_release -a` and `uname -a`)
-->
```
lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
uname -a
Linux serZT 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 GNU/Linux
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3812
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3812(a)github.com>
[View Less]
Sergey,
Any chance we could generate a new build of the RPM including the
updated version of openssl?
Regards,
Tyler Moore
Full Stack Software Engineer
dOpenSource
Office: 888-907-2085, ext: 34
Cell: 248-909-2769
Email:tmoore@dopensource.com
failed to find command secsipid_build_identity (params 6)
parse error in config file /etc/kamailio/kamailio.cfg, line 799, column 125: unknown command, missing loadmodule?
parser: failed to find command secsipid_add_identity (params 6)
May 24 11:26:36 vps-3471ad99 kamailio: CRITICAL: [core/cfg.y:3539]: yyerror_at(): parse error in config file /etc/kamailio/kamailio.cfg, line 802, column 125: unknown command, missing loadmodule?https://github.com/asipto/secsipidx/issues/12
May 24 11:26:36 vps-…
[View More]3471ad99 kamailio[70519]: ERROR: bad config file (2 errors)
May 24 11:26:36 vps-3471ad99 kamailio: INFO: [core/sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized
May 24 11:26:36 vps-3471ad99 systemd[1]: kamailio.service: Control process exited, code=exited, status=255/EXCEPTION
May 24 11:26:36 vps-3471ad99 systemd[1]: kamailio.service: Failed with result 'exit-code'.
May 24 11:26:36 vps-3471ad99 systemd[1]: Failed to start Kamailio (OpenSER) - the Open Source SIP Server.
May 24 11:26:36 vps-3471ad99 systemd[1]: kamailio.service: Scheduled restart job, restart counter is at 3.
May 24 11:26:36 vps-3471ad99 systemd[1]: Stopped Kamailio (OpenSER) - the Open Source SIP Server.
May 24 11:26:36 vps-3471ad99 systemd[1]: Starting Kamailio (OpenSER) - the Open Source SIP Server...
May 24 11:26:36 vps-3471ad99 kamailio: ERROR: [core/cfg.y:3399]: yyparse(): cfg. parser: failed to find command secsipid_build_identity (params 6)
May 24 11:26:36 vps-3471ad99 kamailio: CRITICAL: [core/cfg.y:3539]: yyerror_at(): parse error in config file /etc/kamailio/kamailio.cfg, line 799, column 125: unknown command, missing loadmodule?https://github.com/asipto/secsipidx/issues/12
May 24 11:26:36 vps-3471ad99 kamailio: ERROR: [core/cfg.y:3399]: yyparse(): cfg. parser: failed to find command secsipid_add_identity (params 6)
May 24 11:26:36 vps-3471ad99 kamailio[70521]: ERROR: bad config file (2 errors)
May 24 11:26:36 vps-3471ad99 kamailio: CRITICAL: [core/cfg.y:3539]: yyerror_at(): parse error in config file /etc/kamailio/kamailio.cfg, line 802, column 125: unknown command, missing loadmodule?https://github.com/asipto/secsipidx/issues/12
May 24 11:26:36 vps-3471ad99 kamailio: INFO: [core/sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized
May 24 11:26:36 vps-3471ad99 systemd[1]: kamailio.service: Control process exited, code=exited, status=255/EXCEPTION
May 24 11:26:36 vps-3471ad99 systemd[1]: kamailio.service: Failed with result 'exit-code'.
May 24 11:26:36 vps-3471ad99 systemd[1]: Failed to start Kamailio (OpenSER) - the Open Source SIP Server.
May 24 11:26:37 vps-3471ad99 systemd[1]: kamailio.service: Scheduled restart job, restart counter is at 4.
May 24 11:26:37 vps-3471ad99 systemd[1]: Stopped Kamailio (OpenSER) - the Open Source SIP Server.
May 24 11:26:37 vps-3471ad99 systemd[1]: Starting Kamailio (OpenSER) - the Open Source SIP Server...
May 24 11:26:37 vps-3471ad99 kamailio: ERROR: [core/cfg.y:3399]: yyparse(): cfg. parser: failed to find command secsipid_build_identity (params 6)
May 24 11:26:37 vps-3471ad99 kamailio: CRITICAL: [core/cfg.y:3539]: yyerror_at(): parse error in config file /etc/kamailio/kamailio.cfg, line 799, column 125: unknown command, missing loadmodule?https://github.com/asipto/secsipidx/issues/12
May 24 11:26:37 vps-3471ad99 kamailio[70522]: ERROR: bad config file (2 errors)
May 24 11:26:37 vps-3471ad99 kamailio: ERROR: [core/cfg.y:3399]: yyparse(): cfg. parser: failed to find command secsipid_add_identity (params 6)
May 24 11:26:37 vps-3471ad99 kamailio: CRITICAL: [core/cfg.y:3539]: yyerror_at(): parse error in config file /etc/kamailio/kamailio.cfg, line 802, column 125: unknown command, missing loadmodule?https://github.com/asipto/secsipidx/issues/12
May 24 11:26:37 vps-3471ad99 kamailio: INFO: [core/sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized
May 24 11:26:37 vps-3471ad99 systemd[1]: kamailio.service: Control process exited, code=exited, status=255/EXCEPTION
May 24 11:26:37 vps-3471ad99 systemd[1]: kamailio.service: Failed with result 'exit-code'.
May 24 11:26:37 vps-3471ad99 systemd[1]: Failed to start Kamailio (OpenSER) - the Open Source SIP Server.
May 24 11:26:37 vps-3471ad99 systemd[1]: kamailio.service: Scheduled restart job, restart counter is at 5.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3860
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3860(a)github.com>
[View Less]
I want to proxy a sip server on websocket. but it's not working.
I set dispatcher destination "sip:10.100.67.95:5066;transport=ws", it has some error .
logs:
2024-05-29T02:49:15.436088156Z 11(22) WARNING: <core> [core/msg_translator.c:3007]: via_builder(): TCP/TLS connection (id: 0) for WebSocket could not be found
2024-05-29T02:49:15.436124584Z 11(22) ERROR: tm [t_msgbuilder.c:1420]: assemble_via(): via building failed
2024-05-29T02:49:15.436132262Z 11(22) ERROR: tm [t_msgbuilder.c:1611]…
[View More]: build_uac_req(): error while assembling Via
2024-05-29T02:49:15.436138638Z 11(22) ERROR: tm [uac.c:552]: t_uac_prepare(): Error while building message
2024-05-29T02:49:15.436145000Z 11(22) ERROR: dispatcher [dispatch.c:3981]: ds_ping_set(): unable to ping [sip:10.100.67.95:5066;transport=ws] in group [3]
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3864
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3864(a)github.com>
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [ ] Commit message has the format required by CONTRIBUTING guide
- [ ] Commits are split per component (core, individual modules, libs, utils, ...)
- [ ] Each component has a single commit (if not, squash them into one commit)
- [ ] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
When DTMF events socket is not configured, pkg.stats RPC method returns an empty entry.
{
entry: 13
pid: 0
rank: -128
used: 0
free: 0
real_used: 0
total_size: 67108864
total_frags: 0
desc:
}
Fixes: 26f6e57c8f ("Register a new worker process for dtmf event listener")
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3862
-- Commit Summary --
* rtpengine: Fix extra process in pkg.stats
-- File Changes --
M src/modules/rtpengine/rtpengine.c (6)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3862.patchhttps://github.com/kamailio/kamailio/pull/3862.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3862
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3862(a)github.com>
[View Less]
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [X] Commit message has the format required by CONTRIBUTING guide
- [X] Commits are split per component (core, individual …
[View More]modules, libs, utils, ...)
- [X] Each component has a single commit (if not, squash them into one commit)
- [X] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [X] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [X] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
Introduce new function: `allow_register_include_port()` to be able to check the whole Contact header including port.
Example, register.deny content is:
```
ALL : "^sip:.*192.168.0.101:5062"
```
If the Contact is: "Contact: <sip:testuser1004@192.168.0.101:5062>" then this will check the Contact hf including port of it.
Otherwise if usual `allow_register()` function is used, then only the "testuser1004(a)192.168.0.101" will be taken into account, which will lead the regex to be failing and letting the check to pass through.
The func `allow_register_include_port()` works similarly as `allow_register()` except it checks Contact's port.
A separate function was created in order to not complicate things by introducing one more parameter to the
existing function `allow_register()`, which already takes a variable amount of parameters, so 1 or 2 parameters
(depending on if it is a "basename" or "allow-file, deny-file").
Documentation updated accordingly.
Additionally, "Register File Format" section has been added to the doc (to provide allow/deny file examples).
Full backwards compatibility is kept in place,
no need for users of the module to change anything in their configuration or kamailio script itself.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3846
-- Commit Summary --
* permissions: introduce func `allow_register_include_port()`
-- File Changes --
M src/modules/permissions/doc/permissions.xml (7)
M src/modules/permissions/doc/permissions_admin.xml (142)
M src/modules/permissions/permissions.c (56)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3846.patchhttps://github.com/kamailio/kamailio/pull/3846.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3846
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3846(a)github.com>
[View Less]
Module: kamailio
Branch: master
Commit: 534a35956b1a79598dcd2436248c5d7ce4e92da8
URL: https://github.com/kamailio/kamailio/commit/534a35956b1a79598dcd2436248c5d7…
Author: Donat Zenichev <dzenichev(a)sipwise.com>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2024-05-27T15:21:24+02:00
permissions: introduce func `allow_register_include_port()`
Introduce new function: `allow_register_include_port()`
to be able to check the whole Contact header including port.
…
[View More]Example, register.deny content is:
ALL : "^sip:.*192.168.0.101:5062"
If the Contact is: "Contact: <sip:testuser1004@192.168.0.101:5062>"
then this will check the Contact hf including port of it.
Otherwise if usual `allow_register()` function is used,
then only the "testuser1004(a)192.168.0.101" will be taken into
account, which will lead the regex to be failing and letting
the check to pass through.
The func `allow_register_include_port()` works similarly
as `allow_register()` except it checks Contact's port.
Full backwards compatibility is kept in place,
no need for users of the module to change anything in
their configuration or kamailio script itself.
---
Modified: src/modules/permissions/doc/permissions.xml
Modified: src/modules/permissions/doc/permissions_admin.xml
Modified: src/modules/permissions/permissions.c
---
Diff: https://github.com/kamailio/kamailio/commit/534a35956b1a79598dcd2436248c5d7…
Patch: https://github.com/kamailio/kamailio/commit/534a35956b1a79598dcd2436248c5d7…
[View Less]
Care to explain why this is wrong? Some DNS records that are fully in spec and have functioned for years without any problem now trigger filling the logs with these warnings.
Also, actually logging which record(s) are causing the issue and what would be needed to be done to fix them would be helpful, the hex address and message doesn't provide any useful info for the admin.
```
2024-05-27T10:01:04.263247+02:00 pc1 proxy1[335503]: WARNING: <core> [core/dns_cache.c:1700]: dns_get_related():…
[View More] record not alone: 0x7f714ee28250 - type: 33
2024-05-27T10:01:04.269368+02:00 pc1 proxy1[335503]: WARNING: <core> [core/dns_cache.c:1700]: dns_get_related(): record not alone: 0x7f714ee28380 - type: 1
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/d8a35b3b6c837b36779e232b65fce61…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/d8a35b3b6c837b36779e232b65fce61c3aa93387/142421279(a)github.com>
[View Less]
### Description
<!--
Explain what you did, what you expected to happen, and what actually happened.
- we migrated rtpengine urls from udp to websocket, so that kamailio is communicating to rtpengine overwebsocket to manage the offer and answer. however we observed that, tcp reciever process is consuming pkg memory as, traffic increased, but when traffic is idle then its not getting freed automatically. and eventually its consume all memory.
-
-
-->
### Troubleshooting
- as checked …
[View More]further we particulartly tcp reciever process was consuming pkg memory , then further we checked from corex pkg_sumary for that process id, and found that rtpengine: rtpengine.c: send_rtpp_command was consuming highest memory.
#### Reproduction
console rtpengine url with ws endpoint.
<!--
If the issue can be reproduced, describe how it can be done.
-->
this is reproducible, we can configure websocket in rtpengine module and then we can initate calls. and increase the number of calls over the period of time
#### Debugging Data
<img width="1399" alt="Screenshot 2024-03-06 at 4 30 16 PM" src="https://github.com/kamailio/kamailio/assets/115363081/0904892e-6a6e-4dc1-85…">
kamcmd pkg.stats
entry: 24
pid: 378355
rank: 17
used: 7467640
free: 24348320
real_used: 9206112
total_size: 33554432
total_frags: 66
desc: tcp receiver (generic) child=0
kamcmd corex.pkg_summary pid 378355
Mar 6 16:31:52 coreproxy-4 /usr/local/sbin/kamailio[378355]: ALERT: qm_sums: qm_sums(): count= 8075 size= 4638760 bytes from rtpengine: rtpengine.c: send_rtpp_command(3040)
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
(paste your output here)
version: kamailio 5.7.0 (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, MEM_JOIN_FREE, 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 on 01:04:28 Jan 25 2024 with gcc 9.4.0
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `lsb_release -a` and `uname -a`)
-->
```
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.6 LTS
Release: 20.04
Codename: focal
Linux coreproxy-4 5.15.0-1045-oracle #51~20.04.1-Ubuntu SMP Fri Sep 22 14:25:26 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3777
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3777(a)github.com>
[View Less]
Sergey,
Is the build toolchain for the RPM packages using an old version of openssl?
I am seeing incompatibility errors when testing with 5.8.1 RPM and
openssl-devel from system, or appstream repos.
These are the version differences I see in the logs:
|CRITICAL: tls [tls_init.c:870]: tls_h_mod_init_f(): installed openssl
library version is too different from the library the kamailio tls
module was compiled with: installed "OpenSSL 3.2.1 30 Jan 2024"
(0x30200010), compiled "OpenSSL 3.0.7 …
[View More]1 Nov 2022" (0x30000070).#012
Please make sure a compatible version is used (tls_force_run in
kamailio.cfg will override this check) |
Here is what I see in the system RPMs for openssl on centos9:
|[root@cent9-v075 ~]# dnf info openssl-devel Last metadata expiration
check: 0:03:11 ago on Tue 21 May 2024 08:31:12 PM UTC. Installed
Packages Name : openssl-devel Epoch : 1 Version : 3.2.1 Release : 1.el9
Architecture : x86_64 Size : 4.9 M Source : openssl-3.2.1-1.el9.src.rpm
Repository : @System From repo : appstream Summary : Files for
development of applications which will use OpenSSL URL :
http://www.openssl.org/ License : ASL 2.0 Description : OpenSSL is a
toolkit for supporting cryptography. The openssl-devel : package
contains include files needed to develop applications which : support
various cryptographic algorithms and protocols. |
Regards,
Tyler Moore
Full Stack Software Engineer
dOpenSource
Office: 888-907-2085, ext: 34
Cell: 248-909-2769
Email:tmoore@dopensource.com
[View Less]
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/…
[View More]lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
Kamailio segfaults on startup. After a bit of digging, it looks like the issue is caused by trying to publish something related to an expired dalog which is present in the database:
```
kamailio=# select * from dialog;
id | hash_entry | hash_id | callid | from_uri | from_tag | to_uri | to_tag | caller_cseq |
callee_cseq | caller_route_set | callee_route_set | caller_contact |
callee_contact | caller_sock | callee_sock | state | start_time | timeout | sflags | iflags | toroute_name | req_ur
i | xdata
----+------------+---------+---------------------------+------------------------------+----------+-------------------------------------------+---------------+-------------+-
------------+--------------------------------------------+------------------+---------------------------------------------------------------------------+--------------------
-----------------------------------+----------------------+----------------------+-------+------------+------------+--------+--------+--------------+------------------------
-------------------+-------
90 | 3720 | 11295 | msowdcchfzrlapg@localhost | sip:101@example.voismart.com | msfvz | sip:*9001*0039123456@example.voismart.com | HBQj442BFrH0N | 131 |
0 | <sip:172.23.42.1;lr=on;ftag=msfvz;nat=yes> | | sip:101_example_voismart_com@172.23.42.1:5065;alias=192.168.1.201~32878~1 | sip:*9001*003912345
6@172.23.42.211:5060;transport=udp | udp:172.23.42.3:5060 | udp:172.23.42.3:5060 | 4 | 1706715542 | 1706801943 | 0 | 1 | | sip:*9001*0039123456@ex
ample.voismart.com |
(1 row)
```
### Troubleshooting
#### Debugging Data
<!--
If you got a core dump, use gdb to extract troubleshooting data - full backtrace,
local variables and the list of the code at the issue location.
gdb /path/to/kamailio /path/to/corefile
bt full
info locals
list
If you are familiar with gdb, feel free to attach more of what you consider to
be relevant.
-->
```
(gdb) bt full
#0 0x00007f193de1bc93 in free_str_list_all (del_current=0x2e656c706d617865) at /usr/local/src/pkg/src/modules/pua_dialoginfo/pua_dialoginfo.c:1109
del_next = <optimized out>
__func__ = "free_str_list_all"
#1 0x00007f193de1ebc6 in free_dlginfo_cell (param=0x7f1942265dc8) at /usr/local/src/pkg/src/modules/pua_dialoginfo/pua_dialoginfo.c:1079
cell = 0x7f1942265dc8
cell = <optimized out>
__func__ = <optimized out>
#2 free_dlginfo_cell (param=0x7f1942265dc8) at /usr/local/src/pkg/src/modules/pua_dialoginfo/pua_dialoginfo.c:1070
cell = 0x0
__func__ = "free_dlginfo_cell"
#3 0x00007f1940b7120b in destroy_dlg_callbacks_list (cb=0x0) at /usr/local/src/pkg/src/modules/dialog/dlg_cb.c:74
cb_t = 0x7f1942266050
__func__ = "destroy_dlg_callbacks_list"
#4 0x00007f1940ba5229 in destroy_dlg (dlg=0x7f1941b1a8a0) at /usr/local/src/pkg/src/modules/dialog/dlg_hash.c:369
ret = <optimized out>
var = <optimized out>
__func__ = "destroy_dlg"
#5 0x00007f1940ba6b08 in destroy_dlg_table () at /usr/local/src/pkg/src/modules/dialog/dlg_hash.c:436
dlg = 0x0
l_dlg = <optimized out>
i = 3720
__func__ = <optimized out>
#6 destroy_dlg_table () at /usr/local/src/pkg/src/modules/dialog/dlg_hash.c:422
dlg = <optimized out>
l_dlg = <optimized out>
i = <optimized out>
__func__ = "destroy_dlg_table"
#7 0x00007f1940b57b06 in mod_destroy () at /usr/local/src/pkg/src/modules/dialog/dialog.c:871
No locals.
#8 0x000055dd96a6d1e2 in destroy_modules () at core/sr_module.c:872
t = 0x7f1949d9d5f0
foo = 0x7f1949d94710
__func__ = "destroy_modules"
#9 0x000055dd96864d01 in cleanup (show_status=1) at /usr/local/src/pkg/src/main.c:573
memlog = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--
__func__ = "cleanup"
#10 0x000055dd96c92a4d in shutdown_children.constprop.0 (show_status=show_status@entry=1, sig=15) at /usr/local/src/pkg/src/main.c:721
__func__ = <optimized out>
#11 0x000055dd9685fcd5 in handle_sigs () at /usr/local/src/pkg/src/main.c:821
chld = <optimized out>
chld_status = 139
any_chld_stopped = <optimized out>
memlog = <optimized out>
__func__ = "handle_sigs"
#12 0x000055dd96868aa4 in main_loop () at /usr/local/src/pkg/src/main.c:1988
i = <optimized out>
pid = <optimized out>
si = <optimized out>
si_desc = "udp receiver child=31 sock=172.23.42.3:9999\000\335U\000\000\000\260\312I\031\177\000\000\003\000\000\000\377\377\377\377\004\220\312\226\335U\000\000\004\000\000\000\031\177\000\000\003\000\000\000\000\000\000\000\t\000\000\000\000\000\000\000Tue Feb \000\023&\252U\314\342\207:34 2024\005\000\000\000\000\000\000"
nrprocs = <optimized out>
woneinit = 1
error = <optimized out>
__func__ = "main_loop"
#13 0x000055dd96859ffc in main (argc=<optimized out>, argv=<optimized out>) at /usr/local/src/pkg/src/main.c:3212
cfg_stream = <optimized out>
c = <optimized out>
r = <optimized out>
tmp = 0x7ffe9d9b7db4 ""
tmp_len = 1274056464
port = 32537
proto = 1275323104
ahost = 0x0
aport = 0
options = 0x55dd96cac300 ":f:cm:M:dVIhEeb:l:L:n:vKrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:x:X:Y:"
ret = -1
seed = 3377142042
rfd = <optimized out>
debug_save = <optimized out>
debug_flag = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--
dont_fork_cnt = <optimized out>
n_lst = <optimized out>
p = <optimized out>
st = {st_dev = 194, st_ino = 570312884, st_nlink = 2, st_mode = 16872, st_uid = 101, st_gid = 101, __pad0 = 0, st_rdev = 0, st_size = 6, st_blksize = 4096,
st_blocks = 0, st_atim = {tv_sec = 1707216241, tv_nsec = 46870706}, st_mtim = {tv_sec = 1707216227, tv_nsec = 573144090}, st_ctim = {tv_sec = 1707216227,
tv_nsec = 573144090}, __glibc_reserved = {0, 0, 0}}
tbuf = '\000' <repeats 16 times>, '/' <repeats 16 times>, "\230\r", '\000' <repeats 14 times>, "`", '\000' <repeats 15 times>, "\001", '\000' <repeats 143 times>...
option_index = 12
__func__ = "main"
long_options = {{name = 0x55dd96cabfe2 "help", has_arg = 0, flag = 0x0, val = 104}, {name = 0x55dd96cb3dc8 "version", has_arg = 0, flag = 0x0, val = 118}, {
name = 0x55dd96cc3731 "alias", has_arg = 1, flag = 0x0, val = 1024}, {name = 0x55dd96cabfe7 "subst", has_arg = 1, flag = 0x0, val = 1025}, {
name = 0x55dd96cabfed "substdef", has_arg = 1, flag = 0x0, val = 1026}, {name = 0x55dd96cabff6 "substdefs", has_arg = 1, flag = 0x0, val = 1027}, {
name = 0x55dd96cac000 "server-id", has_arg = 1, flag = 0x0, val = 1028}, {name = 0x55dd96cac00a "loadmodule", has_arg = 1, flag = 0x0, val = 1029}, {
name = 0x55dd96cac015 "modparam", has_arg = 1, flag = 0x0, val = 1030}, {name = 0x55dd96cac01e "log-engine", has_arg = 1, flag = 0x0, val = 1031}, {
name = 0x55dd96cb3ee5 "debug", has_arg = 1, flag = 0x0, val = 1032}, {name = 0x55dd96cac029 "cfg-print", has_arg = 0, flag = 0x0, val = 1033}, {
name = 0x55dd96cac033 "atexit", has_arg = 1, flag = 0x0, val = 1034}, {name = 0x55dd96cac03a "all-errors", has_arg = 0, flag = 0x0, val = 1035}, {name = 0x0,
has_arg = 0, flag = 0x0, val = 0}}
(gdb) info locals
del_next = <optimized out>
__func__ = "free_str_list_all"
(gdb) list
1104 in /usr/local/src/pkg/src/modules/pua_dialoginfo/pua_dialoginfo.c
```
#### Log Messages
<!--
Check the syslog file and if there are relevant log messages printed by Kamailio, add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
65(75) DEBUG: dialog [dlg_timer.c:232]: get_expired_dlgs(): start with tl=0x7f1941b1a900 tl->prev=0x7f1941a084d8 tl->next=0x7f1941a084d8 (45536602) at 45536603 and end with end=0x7f1941a084d8 end->prev=0x7f1941b1a900 end->next=0x7f1941b1a900
65(75) DEBUG: dialog [dlg_timer.c:237]: get_expired_dlgs(): getting tl=0x7f1941b1a900 tl->prev=0x7f1941a084d8 tl->next=0x7f1941a084d8 with 45536602
65(75) DEBUG: dialog [dlg_timer.c:243]: get_expired_dlgs(): end with tl=0x7f1941a084d8 tl->prev=0x7f1941b1a900 tl->next=0x7f1941b1a900 and d_timer->first.next->prev=(nil)
65(75) DEBUG: dialog [dlg_timer.c:280]: dlg_timer_routine(): tl=0x7f1941b1a900 next=(nil)
65(75) DEBUG: dialog [dlg_cb.c:267]: run_dlg_callbacks(): dialog=0x7f1941b1a8a0, type=64
65(75) DEBUG: pua_dialoginfo [pua_dialoginfo.c:395]: __dialog_sendpublish(): dialog over, from=sip:101@example.voismart.com
65(75) DEBUG: pua_dialoginfo [dialog_publish.c:410]: dialog_publish_multi(): CALLING dialog_publish for URI
65(75) DEBUG: <core> [core/parser/parse_uri.c:1389]: parse_uri(): bad uri, state 0 parsed: <> (4) / <> (28)
65(75) ERROR: pua_dialoginfo [dialog_publish.c:303]: dialog_publish(): failed to parse the PUBLISH R-URI
123(133) CRITICAL: <core> [core/pass_fd.c:281]: receive_fd(): EOF on 133
123(133) DEBUG: <core> [core/tcp_main.c:3955]: handle_ser_child(): dead child 65, pid 75 (shutting down?)
123(133) DEBUG: <core> [core/io_wait.h:597]: io_watch_del(): DBG: io_watch_del (0x55dd96e1fba0, 133, -1, 0x0) fd_no=157 called
0(1) ALERT: <core> [main.c:791]: handle_sigs(): child process 75 exited by a signal 11
0(1) ALERT: <core> [main.c:795]: handle_sigs(): core was generated
0(1) INFO: <core> [main.c:818]: handle_sigs(): terminating due to SIGCHLD
2(12) INFO: <core> [main.c:874]: sig_usr(): signal 15 received
3(13) INFO: <core> [main.c:874]: sig_usr(): signal 15 received
```
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.7.4 (x86_64/linux) dc393e
flags: USE_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, 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: dc393e
compiled with gcc 11.4.0
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `lsb_release -a` and `uname -a`)
-->
```
Linux c7a9e0ef942e 6.6.13-200.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Sat Jan 20 18:03:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
```
Running in a Docker container based on Ubuntu Jammy which builds kamailio from git tag 5.7.4.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3743
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3743(a)github.com>
[View Less]
@juha-h please use ``cherry-pick -x <SHA>`` when back-porting
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/3a34b468ad93904c507bd0fc7ef592b…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/3a34b468ad93904c507bd0fc7ef592b25321807f/142208292(a)github.com>
#### Type Of Change
- [ x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
- [x ] PR should be backported to stable branches
- [ x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
Add mandatory Max-Forwards header to local ACK
You can view, comment on, or merge …
[View More]this pull request online at:
https://github.com/kamailio/kamailio/pull/3856
-- Commit Summary --
* Add mandatory Max-Forwards header to local AC
-- File Changes --
M src/modules/tm/t_msgbuilder.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3856.patchhttps://github.com/kamailio/kamailio/pull/3856.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3856
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3856(a)github.com>
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
When calling delete_urecord in DB_ONLY mode the location_attrs are not deleted. This fix makes sure to delete location_attrs when calling db_delete_urecord is called.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3827
-- Commit Summary --
* usrloc: delete location_attrs in db_only mode on delete_urecord
-- File Changes --
M src/modules/usrloc/ucontact.c (36)
M src/modules/usrloc/urecord.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3827.patchhttps://github.com/kamailio/kamailio/pull/3827.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3827
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3827(a)github.com>
[View Less]
These below is sample diagram, where kamailio/rtpengine act as an SBC
<img width="1604" alt="image" src="https://github.com/kamailio/kamailio/assets/143789335/b9540fb3-c1bf-4a78-b1…">
* There is an active call carrier, kamailio/rtpngine and Asterisk1
* Asterisk1 went down (power shortage, or network ..)
* What I want is kamailio self-redirect the call to Asterisk2
**Describe the solution you'd like**
Ideally, kamailio provide the command line to tell which call will be self-redirect …
[View More]to the new destination, eg:
`kamcmd -x sefl_redirect_callid <call-id> <destionation-ip>`
Noted: I read the https://blog.opensips.org/2021/06/09/media-re-anchoring-using-opensips-3-2/ but re-INVITE to carrier seem not appropriate in my case due to call rate limit. I'm looking for a new solution where I don't need to use re-INVITE when Asterisk down.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3773
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3773(a)github.com>
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [ ] Commit message has the format required by CONTRIBUTING guide
- [ ] Commits are split per component (core, individual modules, libs, utils, ...)
- [ ] Each component has a single commit (if not, squash them into one commit)
- [ ] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3845
-- Commit Summary --
* p_usrloc: use a global all_columns variable in db_load* functions
-- File Changes --
M src/modules/p_usrloc/udomain.c (157)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3845.patchhttps://github.com/kamailio/kamailio/pull/3845.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3845
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3845(a)github.com>
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
This PR aims to update some warning levels used in `db_cluster` module to prevent silent failures.
When `db_cluster` tries to do some action in a `db_connector`, it should log some kind of warning (with `conid` that failed) or error instead of debug.
When iterating on db_connectors and one fails, it will log a warning with `conid` and if all of the available db are not available it will log an error indicating failure.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3834
-- Commit Summary --
* db_cluster: Update log levels
-- File Changes --
M src/modules/db_cluster/dbcl_api.c (83)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3834.patchhttps://github.com/kamailio/kamailio/pull/3834.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3834
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3834(a)github.com>
[View Less]
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
- [ ] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
Added new Added new auth module function auth_algorithm that can be used to …
[View More]dynamically override algorithm parameter value.
#### Note
I was not able to test check README, because of this error:
```
/usr/src/orig/kamailio$ make modules-readme modules=modules/auth
make -C src/ modules-readme
make[1]: Entering directory '/usr/src/orig/kamailio/src'
make --no-print-directory -C doc auth.txt
xsltproc --novalid \
--nonet \
--novalid \
--stringparam output "auth.d" \
../../../../doc/docbook/dep.xsl auth.xml
xsltproc --novalid \
--xinclude \
../../../../doc/docbook/txt.xsl auth.xml | lynx -nolist -stdin -dump > auth.txt
error : Unknown IO error
warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"
compilation error: file ../../../../doc/docbook/txt.xsl line 6 element import
xsl:import : unable to load http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl
```
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3849
-- Commit Summary --
* Added new auth module function auth_algorithm
-- File Changes --
M src/modules/auth/auth_mod.c (37)
M src/modules/auth/doc/auth_functions.xml (16)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3849.patchhttps://github.com/kamailio/kamailio/pull/3849.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3849
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3849(a)github.com>
[View Less]
### Description
I can see this error during db_mysql compilation on CentOS 7
```
CC (gcc) [M db_mysql.so] km_dbase.o
CC (gcc) [M db_mysql.so] km_val.o
CC (gcc) [M db_mysql.so] km_row.o
CC (gcc) [M db_mysql.so] km_my_con.o
km_my_con.c: In function 'db_mysql_new_connection':
km_my_con.c:183:15: error: 'MYSQL_OPT_SSL_CA' undeclared (first use in this function)
ptr->con, MYSQL_OPT_SSL_CA, (const void *)db_mysql_opt_ssl_ca);
^
…
[View More]km_my_con.c:183:15: note: each undeclared identifier is reported only once for each function it appears in
make[2]: *** [km_my_con.o] Error 1
make[1]: *** [modules] Error 1
make[1]: Leaving directory `/root/rpmbuild/BUILD/kamailio-5.8.1/src'
make: *** [every-module] Error 2
```
This for 5.8.1 release.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3809
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3809(a)github.com>
[View Less]
#### Pre-Submission Checklist
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature …
[View More](non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
- [x] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #3809
#### Description
fixed build on CentOS 7
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3847
-- Commit Summary --
* db_mysql: fixed build on CentOS 7
-- File Changes --
M src/modules/db_mysql/km_my_con.c (7)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3847.patchhttps://github.com/kamailio/kamailio/pull/3847.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3847
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3847(a)github.com>
[View Less]
Hello,
I am proposing to switch the development version to target 6.0.x as next
major series. I have pushed a new mode for receiving UDP traffic via a
multi-threaded process, useful when having to deal with a rather large
set of UDP sockets. While it is built reusing some existing components
(async workers group and sworker design), it changes substantially how
the core can deal with the sip traffic. Similar approach might be added
for TCP (TLS), but right now this transport is already using a …
[View More]single
pool of works for all sockets, so it doesn't faces the same issues as
with UDP for large number of sockets.
The old way of handling UDP traffic is not removed, it is still the
default, the new one needs testing, of course.
Furthermore, the socket global parameter (which is an alternative to
listen) can now take a port range to the bind field, simplifying the
config when Kamailio has to listen on large number on consecutive ports.
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com
[View Less]
See <https://kamailio.sipwise.com/job/kamailio57-binaries/architecture=amd64,dis…>
Changes:
------------------------------------------
[...truncated 10.24 KiB...]
+ '[' -r /etc/jenkins/pbuilderrc ']'
+ echo '*** Adding content of /etc/jenkins/pbuilderrc to pbuilder configfile ***'
*** Adding content of /etc/jenkins/pbuilderrc to pbuilder configfile ***
+ echo '# /etc/jenkins/pbuilderrc added via jenkins-debian-glue:'
+ cat /etc/jenkins/pbuilderrc
+ '[' -n '' ']'
+ echo '*** COMPONENTS …
[View More]is not set, checking whether we need to enable Ubuntu workaround ***'
*** COMPONENTS is not set, checking whether we need to enable Ubuntu workaround ***
+ '[' -n /etc/jenkins/pbuilderrc ']'
+ echo '*** PBUILDER_CONFIG is set, not overwriting COMPONENTS for Ubuntu workaround ***'
*** PBUILDER_CONFIG is set, not overwriting COMPONENTS for Ubuntu workaround ***
+ echo '*** NOTE: If you want to build for Ubuntu make sure COMPONENTS also includes '\''universe'\'' ***'
*** NOTE: If you want to build for Ubuntu make sure COMPONENTS also includes 'universe' ***
+ grep -q Ubuntu
+ lsb_release --id
+ echo '*** Listing pbuilder configuration file as reference: ***'
*** Listing pbuilder configuration file as reference: ***
+ cat /tmp/tmp.nNF2yQ8N6s
# pbuilder config file generated by jenkins-debian-glue on Wed May 8 10:36:13 UTC 2024
ADDITIONAL_BUILDRESULTS+=('../*lintian.txt')
EXTRAPACKAGES="$EXTRAPACKAGES eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
# builtin support available with pbuilder >=0.225 (otherwise ignored):
EATMYDATA=yes
# /etc/jenkins/pbuilderrc added via jenkins-debian-glue:
# distribution specific configuration
case "$distribution" in
xenial|bionic|focal|jammy)
MIRRORSITE="http://archive.ubuntu.com/ubuntu/"
# we need key id 40976EAF437D05B5
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}" "--keyring=/usr/share/keyrings/ubuntu-archive-keyring.gpg")
# cowdancer is in universe
COMPONENTS="main universe"
# security and updates
OTHERMIRROR="deb http://archive.ubuntu.com/ubuntu/ ${distribution}-updates main universe|deb-src http://security.ubuntu.com/ubuntu ${distribution}-security main universe"
# package install speedup
EXTRAPACKAGES="eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
;;
trusty)
# lacks eatmydata package, so explicitly configure it
MIRRORSITE="http://archive.ubuntu.com/ubuntu/"
# we need key id 40976EAF437D05B5
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}" "--keyring=/usr/share/keyrings/ubuntu-archive-keyring.gpg")
# cowdancer is in universe
COMPONENTS="main universe"
# security and updates
OTHERMIRROR="deb http://archive.ubuntu.com/ubuntu/ ${distribution}-updates main universe|deb-src http://security.ubuntu.com/ubuntu ${distribution}-security main universe"
# ensure it's unset
unset LD_PRELOAD
;;
precise)
# lacks eatmydata package, so explicitly configure it
# also EOL nowadays, so need other mirror
MIRRORSITE="http://old-releases.ubuntu.com/ubuntu/"
# we need key id 40976EAF437D05B5
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}" "--keyring=/usr/share/keyrings/ubuntu-archive-keyring.gpg")
# cowdancer is in universe
COMPONENTS="main universe"
# security and updates
OTHERMIRROR="deb http://old-releases.ubuntu.com/ubuntu/ ${distribution}-updates main universe|deb-src http://old-releases.ubuntu.com/ubuntu ${distribution}-security main universe"
# ensure it's unset
unset LD_PRELOAD
;;
wheezy)
# nowadays resides on archive
MIRRORSITE="http://archive.debian.org/debian/"
# we need key id 6FB2A1C265FFB764
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}" "--keyring=/usr/share/keyrings/debian-archive-removed-keys.gpg")
# package install speedup
EXTRAPACKAGES="eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
;;
jessie)
# nowadays resides on archive
MIRRORSITE="http://archive.debian.org/debian/"
# security and updates
OTHERMIRROR="deb http://archive.debian.org/debian-security ${distribution}/updates main"
# we need key id CBF8D6FD518E17E1
DEBOOTSTRAPOPTS=("${DEBOOTSTRAPOPTS[@]}" "--keyring=/usr/share/keyrings/debian-archive-removed-keys.gpg")
# support bootstrapping archived repository with expired GPG key
APTGETOPT=("${APTGETOPT[@]}" "-o Acquire::Check-Valid-Until=false" "-o APT::Get::AllowUnauthenticated=true" --force-yes)
# package install speedup
EXTRAPACKAGES="eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
;;
stretch)
# nowadays resides on archive
MIRRORSITE="http://archive.debian.org/debian/"
# archived security repository
OTHERMIRROR="deb http://archive.debian.org/debian-security ${distribution}/updates main"
# package install speedup
EXTRAPACKAGES="eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
;;
buster)
MIRRORSITE="http://deb.debian.org/debian"
# security and updates
OTHERMIRROR="deb http://security.debian.org/debian-security ${distribution}/updates main"
# package install speedup
EXTRAPACKAGES="eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
;;
bullseye|bookworm)
MIRRORSITE="http://deb.debian.org/debian"
# security and updates
OTHERMIRROR="deb http://security.debian.org/debian-security ${distribution}-security main"
# package install speedup
EXTRAPACKAGES="eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
;;
*)
MIRRORSITE="http://deb.debian.org/debian"
# package install speedup
EXTRAPACKAGES="eatmydata"
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}libeatmydata.so"
;;
esac
+ ls '/var/cache/pbuilder/base-bullseye-amd64.cow.building.*'
+ ls '/run/lock/bullseye-amd64.update*'
+ flock --nonblock 9
+ touch /run/lock/bullseye-amd64.update.18075
+ '[' '!' -d /var/cache/pbuilder/base-bullseye-amd64.cow ']'
+ '[' '' = true ']'
+ echo '*** Updating cowbuilder cow base ***'
*** Updating cowbuilder cow base ***
+ sudo DIST=bullseye ARCH=amd64 cowbuilder --update --basepath /var/cache/pbuilder/base-bullseye-amd64.cow --configfile=/tmp/tmp.nNF2yQ8N6s
I: Copying COW directory
I: forking: rm -rf /var/cache/pbuilder/build/cow.18103
I: forking: cp -al /var/cache/pbuilder/base-bullseye-amd64.cow /var/cache/pbuilder/build/cow.18103
I: removed stale ilistfile /var/cache/pbuilder/build/cow.18103/.ilist
I: Invoking pbuilder
I: forking: pbuilder update --configfile /tmp/tmp.nNF2yQ8N6s --buildplace /var/cache/pbuilder/build/cow.18103 --mirror http://deb.debian.org/debian --distribution sid --extrapackages eatmydata --no-targz --internal-chrootexec 'chroot /var/cache/pbuilder/build/cow.18103 cow-shell'
W: /root/.pbuilderrc does not exist
I: Running in no-targz mode
I: Current time: Wed May 8 10:36:13 UTC 2024
I: pbuilder-time-stamp: 1715164573
I: copying local configuration
W: No local /etc/mailname to copy, relying on /var/cache/pbuilder/build/cow.18103/etc/mailname to be correct
W: --override-config is not set; not updating apt.conf Read the manpage for details.
I: mounting /proc filesystem
I: mounting /sys filesystem
I: creating /{dev,run}/shm
I: mounting /dev/pts filesystem
I: redirecting /dev/ptmx to /dev/pts/ptmx
I: policy-rc.d already exists
I: using eatmydata during job
I: Refreshing the base.tgz
I: upgrading packages
Hit:1 http://security.debian.org/debian-security bullseye-security InRelease
Hit:2 http://deb.debian.org/debian bullseye InRelease
Reading package lists...
I: Obtaining the cached apt archive contents
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Reading package lists...
Building dependency tree...
Reading state information...
FATAL: command execution failed
java.io.EOFException
at java.base/java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2911)
at java.base/java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3406)
at java.base/java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:932)
at java.base/java.io.ObjectInputStream.<init>(ObjectInputStream.java:375)
at hudson.remoting.ObjectInputStreamEx.<init>(ObjectInputStreamEx.java:50)
at hudson.remoting.Command.readFrom(Command.java:142)
at hudson.remoting.Command.readFrom(Command.java:128)
at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:35)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:61)
Caused: java.io.IOException: Unexpected termination of the channel
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:75)
Caused: hudson.remoting.ChannelClosedException: Channel "hudson.remoting.Channel@46b3467e:EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c)": Remote call on EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c) failed. The channel is closing down or has closed down
at hudson.remoting.Channel.call(Channel.java:996)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:285)
at com.sun.proxy.$Proxy135.isAlive(Unknown Source)
at hudson.Launcher$RemoteLauncher$ProcImpl.isAlive(Launcher.java:1212)
at hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:1204)
at hudson.tasks.CommandInterpreter.join(CommandInterpreter.java:195)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:145)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:92)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818)
at hudson.model.Build$BuildExecution.build(Build.java:199)
at hudson.model.Build$BuildExecution.doRun(Build.java:164)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:526)
at hudson.model.Run.execute(Run.java:1895)
at hudson.matrix.MatrixRun.run(MatrixRun.java:153)
at hudson.model.ResourceController.execute(ResourceController.java:101)
at hudson.model.Executor.run(Executor.java:442)
FATAL: Unable to delete script file /tmp/jenkins2733275163131865227.sh
java.io.EOFException
at java.base/java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2911)
at java.base/java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3406)
at java.base/java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:932)
at java.base/java.io.ObjectInputStream.<init>(ObjectInputStream.java:375)
at hudson.remoting.ObjectInputStreamEx.<init>(ObjectInputStreamEx.java:50)
at hudson.remoting.Command.readFrom(Command.java:142)
at hudson.remoting.Command.readFrom(Command.java:128)
at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:35)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:61)
Caused: java.io.IOException: Unexpected termination of the channel
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:75)
Caused: hudson.remoting.ChannelClosedException: Channel "hudson.remoting.Channel@46b3467e:EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c)": Remote call on EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c) failed. The channel is closing down or has closed down
at hudson.remoting.Channel.call(Channel.java:996)
at hudson.FilePath.act(FilePath.java:1230)
at hudson.FilePath.act(FilePath.java:1219)
at hudson.FilePath.delete(FilePath.java:1766)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:163)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:92)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818)
at hudson.model.Build$BuildExecution.build(Build.java:199)
at hudson.model.Build$BuildExecution.doRun(Build.java:164)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:526)
at hudson.model.Run.execute(Run.java:1895)
at hudson.matrix.MatrixRun.run(MatrixRun.java:153)
at hudson.model.ResourceController.execute(ResourceController.java:101)
at hudson.model.Executor.run(Executor.java:442)
Build step 'Execute shell' marked build as failure
FATAL: Channel "hudson.remoting.Channel@46b3467e:EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c)": Remote call on EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c) failed. The channel is closing down or has closed down
java.io.EOFException
at java.base/java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2911)
at java.base/java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3406)
at java.base/java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:932)
at java.base/java.io.ObjectInputStream.<init>(ObjectInputStream.java:375)
at hudson.remoting.ObjectInputStreamEx.<init>(ObjectInputStreamEx.java:50)
at hudson.remoting.Command.readFrom(Command.java:142)
at hudson.remoting.Command.readFrom(Command.java:128)
at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:35)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:61)
Caused: java.io.IOException: Unexpected termination of the channel
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:75)
Caused: hudson.remoting.ChannelClosedException: Channel "hudson.remoting.Channel@46b3467e:EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c)": Remote call on EC2 (ec2-eu-west-1) - jenkins-debian-glue-slave bullseye (i-07f4d2bdcc03f3a7c) failed. The channel is closing down or has closed down
at hudson.remoting.Channel.call(Channel.java:996)
at hudson.Launcher$RemoteLauncher.kill(Launcher.java:1147)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:538)
at hudson.model.Run.execute(Run.java:1895)
at hudson.matrix.MatrixRun.run(MatrixRun.java:153)
at hudson.model.ResourceController.execute(ResourceController.java:101)
at hudson.model.Executor.run(Executor.java:442)
Archiving artifacts
Agent went offline during the build
ERROR: Connection was broken
Build step 'Archive the artifacts' marked build as failure
ERROR: Step ‘Publish TAP Results’ failed: no workspace for kamailio57-binaries/architecture=amd64,distribution=bullseye #6
ERROR: Step ‘Publish JUnit test result report’ failed: no workspace for kamailio57-binaries/architecture=amd64,distribution=bullseye #6
[View Less]
Hello,
Kamailio SIP Server v5.7.5 stable release is out.
This is a maintenance release of the latest stable branch, 5.7, that
includes fixes since the release of v5.7.4. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.7.x. Deployments running previous v5.7.x
versions are strongly recommended to be upgraded to v5.7.5.
For more details about version 5.7.5 (including links and guidelines to
download the tarball or …
[View More]from GIT repository), visit:
* https://www.kamailio.org/w/2024/05/kamailio-v5-7-5-released/
RPM, Debian/Ubuntu packages will be available soon as well.
Note that 5.7.x is currently the previous stable release series, the
latest is 5.8.x and v5.8.1 was released on April 3, 2024.
Many thanks to all contributing and using Kamailio!
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com
[View Less]
Hi,
I am trying to run a load test of 1000 messages/sec with 3gpp-SMS
#### Kamailio details
> Kamailio version : 5.7.4 (downloaded from deb repo)
> Ruuning under Ubuntu 18.04.6 LT
> PKG Mem 32 MB
> SHM Mem 1024 MB
When I run the load for around half an hour the PKG mem usgae keeps on increasing and finally after the mentioned (half an hour) time Kamailio start putting Error Logs that : **_could not allocate private memory from pkg pool_**
I referred to https://www.kamailio.…
[View More]org/wiki/tutorials/troubleshooting/memory, and when I use **kamcmd pkg.stats** I see blow out put for the udp receivers :
```
{
entry: 1
pid: 11070
rank: 1
used: 3652840
free: 0
real_used: 16777216
total_size: 16777216
total_frags: 0
desc: udp receiver child=0 sock=192.168.136.151:5060
}
{
entry: 2
pid: 11071
rank: 2
used: 3652840
free: 0
real_used: 16777216
total_size: 16777216
total_frags: 0
desc: udp receiver child=1 sock=192.168.136.151:5060
}
{
entry: 3
pid: 11072
rank: 3
used: 3652912
free: 0
real_used: 16777216
total_size: 16777216
total_frags: 0
desc: udp receiver child=2 sock=192.168.136.151:5060
}
```
On further enabling **memdbg** for individual packets, I could see that for each message processing :
204 Malloc operations , 184 free operations .
_Seems to be a memory leak condition_ . Am i missing something here ?
On matching the allocated and freed address, I could find below source files where address is allocated but not freed :
```
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:450]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) called from core: core/route.c: route_add(124)
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:540]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) returns address 0x7fc29f2a4188
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:450]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) called from core: core/route.c: route_add(124)
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:540]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) returns address 0x7fc29f2a4200
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:450]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) called from core: core/route.c: route_add(124)
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:540]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) returns address 0x7fc29f2a4278
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:450]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) called from core: core/route.c: route_add(124)
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:540]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 48) returns address 0x7fc29f2a42f0
```
```
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:540]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 64) returns address 0x7fc29f2a44f8
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:450]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 64) called from core: core/parser/msg_parser.c: parse_heade
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:540]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 64) returns address 0x7fc29f2b2df8
May 6 15:23:48 stgn-haud-vm-ub-kamailio01 /usr/sbin/kamailio[14646]: INFO: <core> [core/mem/f_malloc.c:450]: fm_malloc(): fm_malloc(0x7fc29f1fb010, 64) called from core: core/parser/msg_parser.c: parse_heade
```
Need guidance support here how to avoid this memory leak condition and how to get more details to aid further investigation.
Thank you!
Regards
Paresh Panda
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3841
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3841(a)github.com>
[View Less]
Hello,
I am considering to release Kamailio v5.7.5 (out of branch 5.7) on
Wednesday, May 8, 2024. If anyone is aware of issues not yet on the bug
tracker, report them there asap in order to have a better chance to be
fixed.
Cheers,
Daniel
--
Daniel-Constantin Mierla (@ asipto.com)
twitter.com/miconda -- linkedin.com/in/miconda
Kamailio Consultancy, Training and Development Services -- asipto.com
Module: kamailio
Branch: 5.8
Commit: c3f424bd6c0f8b9a2557cd58a3e3f5ac586d8c99
URL: https://github.com/kamailio/kamailio/commit/c3f424bd6c0f8b9a2557cd58a3e3f5a…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-05-07T19:46:19+02:00
modules: readme files regenerated - modules ... [skip ci]
---
Modified: src/modules/tcpops/README
---
Diff: https://github.com/kamailio/kamailio/commit/c3f424bd6c0f8b9a2557cd58a3e3f5a……
[View More]
Patch: https://github.com/kamailio/kamailio/commit/c3f424bd6c0f8b9a2557cd58a3e3f5a…
---
diff --git a/src/modules/tcpops/README b/src/modules/tcpops/README
index bbebe20ffb3..1897be96e1b 100644
--- a/src/modules/tcpops/README
+++ b/src/modules/tcpops/README
@@ -437,6 +437,14 @@ event_route[tcp:closed] {
Whether these routes are always called, never, or on a per socket basis
is controlled by the closed_event parameter.
+ Note that the event routes can be executed by TCP main process, which
+ manages the TCP connections but does not hande the SIP traffic over
+ them. It is very important not do do any time consuming operations
+ inside the event routes. Also, many resources might not be available in
+ the TCP main process (e.g., database connections), consider using async
+ module with async_task_data(...) or async_task_group_data() functions
+ for delegating task execution to async workers.
+
4.1. tcp:closed
Called for each "normal" TCP socket closure by the other side
[View Less]
Module: kamailio
Branch: master
Commit: 29910ecc8f27cf70aa4490f8ed5188199ad8e612
URL: https://github.com/kamailio/kamailio/commit/29910ecc8f27cf70aa4490f8ed51881…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-05-07T19:46:10+02:00
modules: readme files regenerated - tcpops ... [skip ci]
---
Modified: src/modules/tcpops/README
---
Diff: https://github.com/kamailio/kamailio/commit/…
[View More]29910ecc8f27cf70aa4490f8ed51881…
Patch: https://github.com/kamailio/kamailio/commit/29910ecc8f27cf70aa4490f8ed51881…
---
diff --git a/src/modules/tcpops/README b/src/modules/tcpops/README
index bbebe20ffb3..1897be96e1b 100644
--- a/src/modules/tcpops/README
+++ b/src/modules/tcpops/README
@@ -437,6 +437,14 @@ event_route[tcp:closed] {
Whether these routes are always called, never, or on a per socket basis
is controlled by the closed_event parameter.
+ Note that the event routes can be executed by TCP main process, which
+ manages the TCP connections but does not hande the SIP traffic over
+ them. It is very important not do do any time consuming operations
+ inside the event routes. Also, many resources might not be available in
+ the TCP main process (e.g., database connections), consider using async
+ module with async_task_data(...) or async_task_group_data() functions
+ for delegating task execution to async workers.
+
4.1. tcp:closed
Called for each "normal" TCP socket closure by the other side
[View Less]
Module: kamailio
Branch: 5.8
Commit: 383a81bb9d81e06ab9da99cdaa3def3b63028040
URL: https://github.com/kamailio/kamailio/commit/383a81bb9d81e06ab9da99cdaa3def3…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T19:34:35+02:00
tcpops: note about execution of event routes by TCP main process
(cherry picked from commit be9af338e3afdab1045cdd7c30a72a9ecddcb680)
---
Modified: src/modules/tcpops/doc/…
[View More]eventroutes.xml
---
Diff: https://github.com/kamailio/kamailio/commit/383a81bb9d81e06ab9da99cdaa3def3…
Patch: https://github.com/kamailio/kamailio/commit/383a81bb9d81e06ab9da99cdaa3def3…
---
diff --git a/src/modules/tcpops/doc/eventroutes.xml b/src/modules/tcpops/doc/eventroutes.xml
index ff05df24cdc..1166d366f0c 100644
--- a/src/modules/tcpops/doc/eventroutes.xml
+++ b/src/modules/tcpops/doc/eventroutes.xml
@@ -31,6 +31,16 @@
<emphasis>closed_event</emphasis>
parameter.
</para>
+ <para>
+ Note that the event routes can be executed by TCP main process,
+ which manages the TCP connections but does not hande the SIP traffic
+ over them. It is very important not do do any time consuming
+ operations inside the event routes. Also, many resources might not
+ be available in the TCP main process (e.g., database connections),
+ consider using async module with async_task_data(...) or
+ async_task_group_data() functions for delegating task execution
+ to async workers.
+ </para>
<section>
<title>
<function moreinfo="none">tcp:closed</function>
@@ -77,4 +87,4 @@ event_route[tcp:reset] {
</programlisting>
</para>
</section>
-</section>
\ No newline at end of file
+</section>
[View Less]
Module: kamailio
Branch: master
Commit: be9af338e3afdab1045cdd7c30a72a9ecddcb680
URL: https://github.com/kamailio/kamailio/commit/be9af338e3afdab1045cdd7c30a72a9…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T19:32:39+02:00
tcpops: note about execution of event routes by TCP main process
---
Modified: src/modules/tcpops/doc/eventroutes.xml
---
Diff: https://github.com/kamailio/kamailio/commit/…
[View More]be9af338e3afdab1045cdd7c30a72a9…
Patch: https://github.com/kamailio/kamailio/commit/be9af338e3afdab1045cdd7c30a72a9…
---
diff --git a/src/modules/tcpops/doc/eventroutes.xml b/src/modules/tcpops/doc/eventroutes.xml
index ff05df24cdc..1166d366f0c 100644
--- a/src/modules/tcpops/doc/eventroutes.xml
+++ b/src/modules/tcpops/doc/eventroutes.xml
@@ -31,6 +31,16 @@
<emphasis>closed_event</emphasis>
parameter.
</para>
+ <para>
+ Note that the event routes can be executed by TCP main process,
+ which manages the TCP connections but does not hande the SIP traffic
+ over them. It is very important not do do any time consuming
+ operations inside the event routes. Also, many resources might not
+ be available in the TCP main process (e.g., database connections),
+ consider using async module with async_task_data(...) or
+ async_task_group_data() functions for delegating task execution
+ to async workers.
+ </para>
<section>
<title>
<function moreinfo="none">tcp:closed</function>
@@ -77,4 +87,4 @@ event_route[tcp:reset] {
</programlisting>
</para>
</section>
-</section>
\ No newline at end of file
+</section>
[View Less]
### Description
I noticed that sql_query does not work (using latest 5.8 on Debian 12) when called from `tcp:closed` event_route:
```
event_route [tcp:closed] { # Handle TCP connection close
# Delete possible leftover registration
if ($conid)
sql_query("sip_proxy_cache", "DELETE FROM location WHERE server_id=0 AND connection_id=$conid", "result");
}
```
The query produces errors:
```
2024-05-07T11:30:14.785915+03:00 siika /usr/bin/sip-proxy[2848078]: CRITICAL: sqlops
[sqlops.c:…
[View More]213]: sql_check_connection(): no database handle with reconnect disabled
2024-05-07T11:30:14.785978+03:00 siika /usr/bin/sip-proxy[2848078]: ERROR: sqlops
[sqlops.c:232]: sql_query(): invalid connection to database
2024-05-07T11:30:14.786013+03:00 siika /usr/bin/sip-proxy[2848078]: ERROR: sqlops
[sqlops.c:237]: sql_query(): with query [DELETE FROM location WHERE server_id=0 AND
connection_id=7]
```
I added the last debug message in order to find out where the error comes from.
The same query works fine when executed from regular route and earlier (but don't remember when), the same query worked fine also from `tcp:closed` event_route.
This may be related to https://github.com/kamailio/kamailio/issues/3768.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3843
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3843(a)github.com>
[View Less]
Module: kamailio
Branch: 5.7
Commit: ac56db7fab9d1157e89a6daf81915e3058f7178c
URL: https://github.com/kamailio/kamailio/commit/ac56db7fab9d1157e89a6daf81915e3…
Author: Henning Westerholt <hw(a)gilawa.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:30:16+02:00
uid_auth_db: spelling fix in documentation
(cherry picked from commit 9f28450312749dfbc021a8cbc23472c8a39d3fef)
(cherry picked from commit b2352bc1c6f3eff3aba85a087107f4ca29cedc22)
---
…
[View More]Modified: src/modules/uid_auth_db/auth_db.xml
---
Diff: https://github.com/kamailio/kamailio/commit/ac56db7fab9d1157e89a6daf81915e3…
Patch: https://github.com/kamailio/kamailio/commit/ac56db7fab9d1157e89a6daf81915e3…
---
diff --git a/src/modules/uid_auth_db/auth_db.xml b/src/modules/uid_auth_db/auth_db.xml
index 25849663c54..99e5eb7c594 100644
--- a/src/modules/uid_auth_db/auth_db.xml
+++ b/src/modules/uid_auth_db/auth_db.xml
@@ -66,7 +66,7 @@
the <serdoc:module>textops</serdoc:module> module.
</para>
<para>
- The reason for the failure can be determined from the interger
+ The reason for the failure can be determined from the integer
return value stored in the <varname>$?</varname> attribute.
A value of <literal>-3</literal> indicates that it was impossible
to retrieve credentials from the request. A 400 (Bad Request)
[View Less]
- URL: https://github.com/kamailio/kamailio/commit/0bf03aa1987b9cff2fc0d776605620e…
Author: Henning Westerholt <hw(a)gilawa.com>
Date: 2024-05-07T17:05:58+02:00
core: spelling fix in comment and log message
(cherry picked from commit db176a4918c0b500f5f051cad16fd8d442450ab7)
- URL: https://github.com/kamailio/kamailio/commit/b2352bc1c6f3eff3aba85a087107f4c…
Author: Henning Westerholt <hw(a)gilawa.com>
Date: 2024-05-07T17:06:04+02:00
uid_auth_db: spelling fix in …
[View More]documentation
(cherry picked from commit 9f28450312749dfbc021a8cbc23472c8a39d3fef)
- URL: https://github.com/kamailio/kamailio/commit/1dd7c4038eb9a0c7eec506994a58a56…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:06:14+02:00
ims_usrloc_scscf: reformat exported structures
(cherry picked from commit 15d859e1e96552fca2708cf56047021beae29711)
- URL: https://github.com/kamailio/kamailio/commit/620aa3f2a0faf3a4d54908bac0aa3ff…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:06:20+02:00
ims_usrloc_scscf: enclose examples in dotted lines for better visibility
(cherry picked from commit 8506a6fe781e6e0b0b1418f4087db50480db6b57)
- URL: https://github.com/kamailio/kamailio/commit/89343b6031f186c59ecd6707109bd02…
Author: Ostap <ostap_mal(a)hotmail.com>
Date: 2024-05-07T17:06:39+02:00
modules/statsd: ensure statsd failures do not stop execution (#3819)
* modules/statsd: avoid stopping flow when sending statsd metric fails
Currently statsd functions return bool: `true` or `false` depending when
the function succeeds or fails respectively.
This value gets implicitly converted to `int`: `true` -> `1`, `false` ->
`0`.
For Kamailio `1` means succesfull execution, but `0` means to stop
processing messages, which is not what we want as statsd should not impact
flow execution. Instead we want to return `-1` which signifies error,
but the flow continues.
* modules/statsd: do not fail module initilization when statsd init fails
statsd_init executes `statsd_connect` which tries to connect to statd
server.
If connection fails then kamailio fails to start.
This is not the desired behaviour as:
1. Kamailio should continue working even if statsd server is down,
metrics should not impact runtime.
2. `statsd_connect` is also re-executed each time we try to send the metric https://github.com/salemove/kamailio/blame/master/src/modules/statsd/lib_st…,
so it's initial result is not essential.
Note, that before 5.8 the result of init was already ignored due to
implicit conversion of `false` to `0`
until after
https://github.com/kamailio/kamailio/commit/0186246fce8f0e4bb46b30c05174983…
was introduced (which could be considered a breaking change even if it
seemingly fixes a bug in conversion).
(cherry picked from commit 5e66ba23851f115bcb88d7e3f71f78ab33fc1e30)
- URL: https://github.com/kamailio/kamailio/commit/8af0605ade36566597ff691a2adc1e5…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:06:49+02:00
ims_registrar_scscf: init variable to fix analyzer warning
(cherry picked from commit 8558947034f16b162c15eda39d18f5f5df4ef562)
- URL: https://github.com/kamailio/kamailio/commit/1387c32dfa601496c38f9c10d554c49…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:07:01+02:00
ims_ipsec_pcscf: decouple IPSEC_FORWARD_USEVIA and IPSEC_TCPPORT_UEC for requests
- both flags should be avaible for use at the same time in
ipsec_forward()
- for request IPSEC_FORWARD_USEVIA gets the protocol from the next hop
address
(cherry picked from commit ab261540d656ed456bac8876f77f940457a9baf6)
- URL: https://github.com/kamailio/kamailio/commit/7e202ec38593462559e81db7b0f97e4…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:07:11+02:00
ims_ipsec_pcscf: docs updated for ipsec_forward() flags
(cherry picked from commit 575b17d23cd5fa060f775bc56b42c735048bc849)
- URL: https://github.com/kamailio/kamailio/commit/9493dc0c895d1dde50239c903fd976c…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:07:18+02:00
ims_ipsec_pcscf: updated comments for ipsec_forward() flags
(cherry picked from commit f7f93828993b5975dfe5f26ad63ba6c489aa69f7)
- URL: https://github.com/kamailio/kamailio/commit/00f51e28875c209cbf25a47c96e60c9…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:07:24+02:00
ims_ipsec_pcscf: handle tls for replies
(cherry picked from commit 48dab490965fa7f2f7200d95edd7dbb1407b2536)
- URL: https://github.com/kamailio/kamailio/commit/4aa0920b2e573661959d5c9149ee041…
Author: Alexander Couzens <lynxis(a)fe80.eu>
Date: 2024-05-07T17:07:38+02:00
ims_registrar_scscf: fix uninitialized arguments in save()
The script "save" command can be used with different arguments:
2, 3 and 4.
But internally for all save() calls the exact same function is use, w_save().
When calling save("PRE_REG_SAR_REPLY","location"); as given by the examples,
kamailio will call w_save().
Because the command code will cast the function pointer, the w_save() function
is called with 2 uninitialized arguments *mode, *c_flags.
mode is unused, seems a legacy argument. c_flags is referenced resulting in a crash
if not null.
Use separate wrapper functions to handle different argument number.
Fixes: a627c9a04a74 ("ims_registrar_scscf: Extend save() with optional flag")
(cherry picked from commit 20a75004d53a06da0f22b11804a4d83496ad8919)
- URL: https://github.com/kamailio/kamailio/commit/8bb9f0601eb94597f3bfab4ede97971…
Author: Alexander Couzens <lynxis(a)fe80.eu>
Date: 2024-05-07T17:08:03+02:00
ims_registrar_scscf: refactor save_fixup4
Rename function to match argument number.
Use assign_save_fixup3_async instead of the code copy
(cherry picked from commit 82a6d7ea6edbaca60879a38c5e74e40920e89342)
- URL: https://github.com/kamailio/kamailio/commit/569662043b656063be97d0ea0e22dd8…
Author: Alexander Couzens <lynxis(a)fe80.eu>
Date: 2024-05-07T17:08:11+02:00
ims_registrar_scscf: fix typo in function name uint_fixup
(cherry picked from commit 6f908f05d4691abcb1b3a745048d3cc2a9996676)
- URL: https://github.com/kamailio/kamailio/commit/4b3620d0f0d7d636bf1d9e4c2b19bf5…
Author: Alexander Couzens <lynxis(a)fe80.eu>
Date: 2024-05-07T17:08:22+02:00
ims_registrar_scscf: free_uint_fixup: fix memleak/freeing the wrong parameter
The free_uint_fixup() freed the wrong parameter in the past.
(cherry picked from commit c3e6c1edc7531406208efe2965243e6e81506127)
- URL: https://github.com/kamailio/kamailio/commit/4e98a4ae06ec0bbff408af211680c97…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:08:32+02:00
ims_ipsec_pcscf: cascade on options to get the uri for fill_contact()
(cherry picked from commit 60d2ab6464657abf38136a771c297c6f5536e27a)
- URL: https://github.com/kamailio/kamailio/commit/3aac0c7379577480fb09902bfb31b9a…
Author: Jannik <40364587+volkland(a)users.noreply.github.com>
Date: 2024-05-07T17:08:41+02:00
sipcapture: docs - fix default value for parameter
(cherry picked from commit 265c948286f2df5136179c95fbb1d7f1255e4c71)
- URL: https://github.com/kamailio/kamailio/commit/fc54fdcd67e244ad075c54b5f24bb64…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:08:52+02:00
tm: free new buffer on drop for local requests
- GH #3403
(cherry picked from commit ee06666c43d96029315dae7618e10d381265a85a)
- URL: https://github.com/kamailio/kamailio/commit/f9ca6854d88e4fcc161e1083a953f47…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:08:58+02:00
tm: cb flag to mark local uac on request drop
(cherry picked from commit f5da773c5fa29edbf9d0e65a83a62f495928ddec)
- URL: https://github.com/kamailio/kamailio/commit/a86d7d2bad119fc4cccf5c19719b445…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:09:06+02:00
tm: cb_flags made unsigned for uac_req
(cherry picked from commit ebd1c6c75a1b832ce85d576aad134b99d47b5738)
- URL: https://github.com/kamailio/kamailio/commit/e54b03fc41bc55486430b09d9a4839b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:09:15+02:00
pv_headers: print also the new TMCB_LOCAL_REQUEST_DROP in debug function
(cherry picked from commit 68624c2da093ab789d4e8d35df65ef1bce024bca)
- URL: https://github.com/kamailio/kamailio/commit/965a02ba4aca9283e4f43f8153ebeb8…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:09:25+02:00
presence: check if the local notify was dropped in event route
- free tm cb parameter on drop
- related to GH #3403
(cherry picked from commit d12fc31056cb37aac347ec05f9ada7bafa5f52de)
- URL: https://github.com/kamailio/kamailio/commit/46c8e1a5b0e11162eee2c0b201bb535…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:09:39+02:00
uac: check if local requests are dropped and free the param
(cherry picked from commit 00aac8d48370fac356eecff535835d918c631cc5)
- URL: https://github.com/kamailio/kamailio/commit/244319c67a191cf1f093b2220fa1a85…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:09:49+02:00
pua: check if local requests are dropped and free the param
(cherry picked from commit 53e1a29c265df1489c9bd91deddc0719f8ca2092)
- URL: https://github.com/kamailio/kamailio/commit/5b97d29f1bbac2656eba506c7fd94b4…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:10:17+02:00
core: parser/contact - add limit for max number of contacts
- defined to 256
(cherry picked from commit d6b0beb5a219ae57a62e9e7201a6ec1fe66e5a96)
- URL: https://github.com/kamailio/kamailio/commit/d75dba611808322356fc8d1ebc9f8c3…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:10:25+02:00
core: parser/contact - basic validation tests for contact uri
(cherry picked from commit fc52a54370c085d6fa951da876eee99580677922)
- URL: https://github.com/kamailio/kamailio/commit/11f0cfec4d2fc6043d282cdb2258520…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:11:19+02:00
core: parse/contact: jump to error on too many contacts
(cherry picked from commit f69b22d44cb5abc803c2b58790dd33f2310c1c59)
- URL: https://github.com/kamailio/kamailio/commit/24e43d27544bdfa1acfce7ebb8b6e3b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:11:35+02:00
ctl: removed level and function names from log messages
(cherry picked from commit 65bafaffd6bcfebc508b774cfbb78120e68bb3f0)
- URL: https://github.com/kamailio/kamailio/commit/b5eb4f5ca037239f2ec1d99a16a71af…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-05-07T17:11:46+02:00
ctl: info log on ECONNRESET (connection reset by peer)
- not a type of error that can be controlled by kamailio
(cherry picked from commit 446c75e0e2194b6e42d768d2e3c79b5f0222905f)
[View Less]
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/…
[View More]lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
Hello. I use uac_req_send to send registration to the asterisk pool. If some asterisk did not authorize and re-sent the 401 code, the module causes a kamailio crash
### Troubleshooting
ds_select("BACKENDS","0");
while(ds_set_dst()) {
xlog("L_DBG",">>> BACKEND du=$du\n");
$uac_req(ruri)="sip:" + $(du{uri.host});
$uac_req(furi)="sip:" + $avp(username) + "@" + $(du{uri.host});
$uac_req(turi)=$uac_req(furi);
uac_req_send();
ds_next_dst();
}
#### Reproduction
<!--
If the issue can be reproduced, describe how it can be done.
-->
#### Debugging Data
<!--
If you got a core dump, use gdb to extract troubleshooting data - full backtrace,
local variables and the list of the code at the issue location.
gdb /path/to/kamailio /path/to/corefile
bt full
info locals
list
If you are familiar with gdb, feel free to attach more of what you consider to
be relevant.
-->
```
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.cfg'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00005557272803b9 in timer_list_expire (t=1180105352, h=0x7f73b30a3bb8, slow_l=0x7f73b30a73a0, slow_mark=2907) at core/timer.c:846
846 core/timer.c: No such file or directory.
(gdb) bt full
#0 0x00005557272803b9 in timer_list_expire (t=1180105352, h=0x7f73b30a3bb8, slow_l=0x7f73b30a73a0, slow_mark=2907) at core/timer.c:846
tl = 0x7f73b3a49a88
ret = 0
#1 0x00005557272809cf in timer_handler () at core/timer.c:922
saved_ticks = 1180105352
run_slow_timer = 0
i = 859
__func__ = "timer_handler"
#2 0x0000555727280f53 in timer_main () at core/timer.c:961
No locals.
#3 0x0000555726f77736 in main_loop () at /build/kamailio-5.6.4+ubuntu22.04/src/main.c:1831
i = 6
pid = 0
si = 0x0
si_desc = "udp receiver child=5 sock=10.153.5.40:5060\000\000\020\000\000\000\003\000\000\000!\000\000\000\000\262\270\224RE&\035(\247K'WU\000\000WqA'WU\000\000\000\000\000\000\000\000\000\000c\367@'WU\000\000!\000\000\000\000\000\000\000\260\325\022\371s\177\000\000 \236.\220\375\177\000\000ݕ\024'WU\000"
nrprocs = 6
woneinit = 1
__func__ = "main_loop"
#4 0x0000555726f83d11 in main (argc=12, argv=0x7ffd902ea398) at /build/kamailio-5.6.4+ubuntu22.04/src/main.c:3078
cfg_stream = 0x555727e12380
c = -1
r = 0
tmp = 0x7ffd902ebe36 ""
tmp_len = 0
port = 0
proto = 0
ahost = 0x0
aport = 0
options = 0x55572744e898 ":f:cm:M:dVIhEeb:l:L:n:vKrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:x:X:Y:"
ret = -1
seed = 4270110361
rfd = 4
debug_save = 0
debug_flag = 0
dont_fork_cnt = 0
n_lst = 0x7ffd902ea398
p = 0x7ffd902ea310 ""
st = {st_dev = 25, st_ino = 5514, st_nlink = 2, st_mode = 16888, st_uid = 0, st_gid = 0, __pad0 = 0, st_rdev = 0, st_size = 40, st_blksize = 4096, st_blocks = 0, st_atim = {tv_sec = 1690276408, tv_nsec = 971865637}, st_mtim = {tv_sec = 1690276408,
tv_nsec = 971865637}, st_ctim = {tv_sec = 1690276408, tv_nsec = 971865637}, __glibc_reserved = {0, 0, 0}}
tbuf = '\000' <repeats 80 times>, "\377\000\000\000\377\000\000\000\000\377\000\000\000\000\000\000", '/' <repeats 16 times>, "\230\r", '\000' <repeats 14 times>, "`", '\000' <repeats 15 times>, "\001", '\000' <repeats 144 times>...
option_index = 12
long_options = {{name = 0x55572740a2e9 "help", has_arg = 0, flag = 0x0, val = 104}, {name = 0x55572740b84a "version", has_arg = 0, flag = 0x0, val = 118}, {name = 0x55572740f6e4 "alias", has_arg = 1, flag = 0x0, val = 1024}, {name = 0x55572740a2ee "subst",
has_arg = 1, flag = 0x0, val = 1025}, {name = 0x55572740a2f4 "substdef", has_arg = 1, flag = 0x0, val = 1026}, {name = 0x55572740a2fd "substdefs", has_arg = 1, flag = 0x0, val = 1027}, {name = 0x55572740a307 "server-id", has_arg = 1, flag = 0x0, val = 1028},
{name = 0x55572740a311 "loadmodule", has_arg = 1, flag = 0x0, val = 1029}, {name = 0x55572740a31c "modparam", has_arg = 1, flag = 0x0, val = 1030}, {name = 0x55572740a325 "log-engine", has_arg = 1, flag = 0x0, val = 1031}, {name = 0x55572740b967 "debug",
has_arg = 1, flag = 0x0, val = 1032}, {name = 0x55572740a330 "cfg-print", has_arg = 0, flag = 0x0, val = 1033}, {name = 0x55572740a33a "atexit", has_arg = 1, flag = 0x0, val = 1034}, {name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
__func__ = "main"
(gdb) info locals
tl = 0x7f73b3a49a88
ret = 0
(gdb) list
841 in core/timer.c
(gdb)
```
```
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/sbin/kamailio -P /run/kamailio/kamailio.pid -f /etc/kamailio/kamailio.cfg'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f73f575d4d0 in free_hash_table () at /build/kamailio-5.6.4+ubuntu22.04/src/modules/tm/h_table.c:464
464 /build/kamailio-5.6.4+ubuntu22.04/src/modules/tm/h_table.c: No such file or directory.
(gdb) bt full
#0 0x00007f73f575d4d0 in free_hash_table () at /build/kamailio-5.6.4+ubuntu22.04/src/modules/tm/h_table.c:464
p_cell = 0x0
tmp_cell = 0x0
i = 64459
__func__ = "free_hash_table"
#1 0x00007f73f5793e46 in tm_shutdown () at /build/kamailio-5.6.4+ubuntu22.04/src/modules/tm/t_funcs.c:88
__func__ = "tm_shutdown"
#2 0x00005557271db17b in destroy_modules () at core/sr_module.c:842
t = 0x7f73f68a65a0
foo = 0x7f73f68a59e0
__func__ = "destroy_modules"
#3 0x0000555726f64029 in cleanup (show_status=1) at /build/kamailio-5.6.4+ubuntu22.04/src/main.c:561
memlog = 0
__func__ = "cleanup"
#4 0x0000555726f66044 in shutdown_children (sig=15, show_status=1) at /build/kamailio-5.6.4+ubuntu22.04/src/main.c:704
__func__ = "shutdown_children"
#5 0x0000555726f697dc in handle_sigs () at /build/kamailio-5.6.4+ubuntu22.04/src/main.c:802
chld = 0
chld_status = 139
any_chld_stopped = 1
memlog = 0
__func__ = "handle_sigs"
#6 0x0000555726f78f42 in main_loop () at /build/kamailio-5.6.4+ubuntu22.04/src/main.c:1900
i = 6
pid = 37846
si = 0x0
si_desc = "udp receiver child=5 sock=10.153.5.40:5060\000\000\020\000\000\000\003\000\000\000!\000\000\000\000\262\270\224RE&\035(\247K'WU\000\000WqA'WU\000\000\000\000\000\000\000\000\000\000c\367@'WU\000\000!\000\000\000\000\000\000\000\260\325\022\371s\177\000\000 \236.\220\375\177\000\000ݕ\024'WU\000"
nrprocs = 6
woneinit = 1
__func__ = "main_loop"
#7 0x0000555726f83d11 in main (argc=12, argv=0x7ffd902ea398) at /build/kamailio-5.6.4+ubuntu22.04/src/main.c:3078
cfg_stream = 0x555727e12380
c = -1
r = 0
tmp = 0x7ffd902ebe36 ""
tmp_len = 0
port = 0
proto = 0
ahost = 0x0
aport = 0
options = 0x55572744e898 ":f:cm:M:dVIhEeb:l:L:n:vKrRDTN:W:w:t:u:g:P:G:SQ:O:a:A:x:X:Y:"
ret = -1
seed = 4270110361
rfd = 4
debug_save = 0
debug_flag = 0
dont_fork_cnt = 0
n_lst = 0x7ffd902ea398
p = 0x7ffd902ea310 ""
st = {st_dev = 25, st_ino = 5514, st_nlink = 2, st_mode = 16888, st_uid = 0, st_gid = 0, __pad0 = 0, st_rdev = 0, st_size = 40, st_blksize = 4096, st_blocks = 0, st_atim = {tv_sec = 1690276408, tv_nsec = 971865637}, st_mtim = {tv_sec = 1690276408,
tv_nsec = 971865637}, st_ctim = {tv_sec = 1690276408, tv_nsec = 971865637}, __glibc_reserved = {0, 0, 0}}
tbuf = '\000' <repeats 80 times>, "\377\000\000\000\377\000\000\000\000\377\000\000\000\000\000\000", '/' <repeats 16 times>, "\230\r", '\000' <repeats 14 times>, "`", '\000' <repeats 15 times>, "\001", '\000' <repeats 144 times>...
option_index = 12
long_options = {{name = 0x55572740a2e9 "help", has_arg = 0, flag = 0x0, val = 104}, {name = 0x55572740b84a "version", has_arg = 0, flag = 0x0, val = 118}, {name = 0x55572740f6e4 "alias", has_arg = 1, flag = 0x0, val = 1024}, {name = 0x55572740a2ee "subst",
has_arg = 1, flag = 0x0, val = 1025}, {name = 0x55572740a2f4 "substdef", has_arg = 1, flag = 0x0, val = 1026}, {name = 0x55572740a2fd "substdefs", has_arg = 1, flag = 0x0, val = 1027}, {name = 0x55572740a307 "server-id", has_arg = 1, flag = 0x0, val = 1028},
{name = 0x55572740a311 "loadmodule", has_arg = 1, flag = 0x0, val = 1029}, {name = 0x55572740a31c "modparam", has_arg = 1, flag = 0x0, val = 1030}, {name = 0x55572740a325 "log-engine", has_arg = 1, flag = 0x0, val = 1031}, {name = 0x55572740b967 "debug",
has_arg = 1, flag = 0x0, val = 1032}, {name = 0x55572740a330 "cfg-print", has_arg = 0, flag = 0x0, val = 1033}, {name = 0x55572740a33a "atexit", has_arg = 1, flag = 0x0, val = 1034}, {name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
__func__ = "main"
(gdb) info locals
p_cell = 0x0
tmp_cell = 0x0
i = 64459
__func__ = "free_hash_table"
(gdb) list
459 in /build/kamailio-5.6.4+ubuntu22.04/src/modules/tm/h_table.c
```
#### Log Messages
<!--
Check the syslog file and if there are relevant log messages printed by Kamailio, add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
CRITICAL: <core> [core/mem/q_malloc.c:519]: qm_free(): BUG: freeing already freed pointer (0x7f8a6c440050), called from uac: uac_send.c: uac_send_tm_callback(860), first free uac: uac_send.c: uac_send_info_clone(110) - ignoring
CRITICAL: <core> [core/mem/q_malloc.c:123]: qm_debug_check_frag(): BUG: qm: fragm. 0x7f74379f46b0 (address 0x7f74379f46e8) beginning overwritten (0)! Memory allocator was called from uac: uac_send.c:860. Fragment marked by (null):0. Exec from core/mem/q_malloc.c:511.
```
#### SIP Traffic
<!--
If the issue is exposed by processing specific SIP messages, grab them with ngrep or save in a pcap file, then add them next, or attach to issue, or provide a link to download them (e.g., to a pastebin site).
-->
```
proto:UDP 2023-07-25T10:00:44.452898Z 10.153.5.40:5060 ---> 192.168.50.107:5060
REGISTER sip:192.168.50.107 SIP/2.0
Via: SIP/2.0/UDP 10.153.5.40;branch=z9hG4bK6a0b.834627a6000000000000000000000000.0
To: <sip:3408@192.168.50.107>
From: <sip:3408@192.168.50.107>;tag=b2f228866a24b161d346cfb256d45132-a0527658
CSeq: 10 REGISTER
Call-ID: 2332840947916a3e-39417(a)10.153.5.40
Max-Forwards: 70
Content-Length: 0
Contact: <sip:3408@10.153.5.40:5060>
Expires: 150
User-Agent: PortSIP UC Client Android - v11.8.1
proto:UDP 2023-07-25T10:00:44.464436Z 192.168.50.107:5060 ---> 10.153.5.40:5060
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 10.153.5.40;rport=5060;received=10.153.5.40;branch=z9hG4bK6a0b.834627a6000000000000000000000000.0
Call-ID: 2332840947916a3e-39417(a)10.153.5.40
From: <sip:3408@192.168.50.107>;tag=b2f228866a24b161d346cfb256d45132-a0527658
To: <sip:3408@192.168.50.107>;tag=z9hG4bK6a0b.834627a6000000000000000000000000.0
CSeq: 10 REGISTER
WWW-Authenticate: Digest realm="vpp",nonce="1690279244/67fc12dbaf6a76fa34181a4bd504de00",opaque="1680d45809efac86",algorithm=md5,qop="auth"
Server: Asterisk
Content-Length: 0
proto:UDP 2023-07-25T10:00:44.466447Z 10.153.5.40:5060 ---> 192.168.50.107:5060
REGISTER sip:192.168.50.107 SIP/2.0
Via: SIP/2.0/UDP 10.153.5.40;branch=z9hG4bK7a0b.5673b4d4000000000000000000000000.0
To: <sip:3408@192.168.50.107>
From: <sip:3408@192.168.50.107>;tag=b2f228866a24b161d346cfb256d45132-a0527658
CSeq: 11 REGISTER
Call-ID: 2332840947916a3e-39417(a)10.153.5.40
Max-Forwards: 70
Content-Length: 0
Contact: <sip:3408@10.153.5.40:5060>
Expires: 150
Authorization: Digest username="3408", realm="vpp", nonce="1690279244/67fc12dbaf6a76fa34181a4bd504de00", uri="sip:192.168.50.107", opaque="1680d45809efac86", qop=auth, nc=00000001, cnonce="1935694403", response="38bc75e831e1267ce943bcc50f76390a", algorithm=MD5
User-Agent: PortSIP UC Client Android - v11.8.1
proto:UDP 2023-07-25T10:00:44.477675Z 192.168.50.107:5060 ---> 10.153.5.40:5060
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 10.153.5.40;rport=5060;received=10.153.5.40;branch=z9hG4bK7a0b.5673b4d4000000000000000000000000.0
Call-ID: 2332840947916a3e-39417(a)10.153.5.40
From: <sip:3408@192.168.50.107>;tag=b2f228866a24b161d346cfb256d45132-a0527658
To: <sip:3408@192.168.50.107>;tag=z9hG4bK7a0b.5673b4d4000000000000000000000000.0
CSeq: 11 REGISTER
WWW-Authenticate: Digest realm="vpp",nonce="1690279244/67fc12dbaf6a76fa34181a4bd504de00",opaque="5adc30b867f02d18",algorithm=md5,qop="auth"
Server: Asterisk
Content-Length: 0
```
### Possible Solutions
<!--
If you found a solution or workaround for the issue, describe it. Ideally, provide a pull request with a fix.
-->
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 5.6.4 (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 11.3.0
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `lsb_release -a` and `uname -a`)
-->
```
5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3522
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3522(a)github.com>
[View Less]
Now there is a call scenario where freeswitch ->kamailio ->rtpengine ->webrtc (jsSIP) voice and video cannot be displayed. Is there a problem with my handling and how can I solve it?
1、Freeswitch INVITE to kamailio without video code
2、kamailio request to rtpengine(rtpengine_offer("record-call=off force trust-address replace-origin replace-session-connection UDP/TLS/RTP/SAVPF"))and call to jsSIP
3、jsSIP response with "SIP/2.0 200 OK" to kamailio without video code
4、kamailio request …
[View More]to(rtpengine_answer("record-call=off replace-origin replace-session-connection DTLS=passive ICE=remove RTP/SAVPF"))and response to Freeswitch
5、jsSIP send re-INVITE to kamailio with video code
6、kamailio request to(rtpengine_offer("record-call=off replace-origin replace-session-connection DTLS=passive ICE=remove SDES-off UDP/TLS/RTP/SAVPF"))and response to Freeswitch
7、Freeswitch response with "SIP/2.0 200 OK" to kamailio with video code
8、kamailio request to(rtpengine_answer("record-call=off replace-origin replace-session-connection rtcp-mux-accept rtcp-mux-offer DTLS=passive SDES-off UDP/TLS/RTP/SAVPF"))and response to jsSIP
9、Freeswitch send re-INVITE to kamailio with video code
10、kamailio request to(rtpengine_offer("record-call=off replace-origin replace-session-connection rtcp-mux-accept rtcp-mux-offer DTLS=passive SDES-off UDP/TLS/RTP/SAVPF"))and response to jsSIP
11、jsSIP response with "SIP/2.0 200 OK" to kamailio with video code
12、kamailio request to(rtpengine_answer("record-call=off replace-origin replace-session-connection rtcp-mux-accept rtcp-mux-offer DTLS=passive SDES-off UDP/TLS/RTP/SAVPF"))and response to Freeswitch
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3840
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3840(a)github.com>
[View Less]
Module: kamailio
Branch: master
Commit: 77de86909ac8c156335e1e789bb3067932f9eff5
URL: https://github.com/kamailio/kamailio/commit/77de86909ac8c156335e1e789bb3067…
Author: S-P Chan <shihping.chan(a)gmail.com>
Committer: S-P Chan <shihping.chan(a)gmail.com>
Date: 2024-05-04T19:48:21+08:00
tls: document handling of thread-locals
---
Added: src/modules/tls/OpenSSL3-README.md
---
Diff: https://github.com/kamailio/kamailio/commit/77de86909ac8c156335e1e789bb3067…
Patch: https://…
[View More]github.com/kamailio/kamailio/commit/77de86909ac8c156335e1e789bb3067…
---
diff --git a/src/modules/tls/OpenSSL3-README.md b/src/modules/tls/OpenSSL3-README.md
new file mode 100644
index 00000000000..6b6a7814129
--- /dev/null
+++ b/src/modules/tls/OpenSSL3-README.md
@@ -0,0 +1,55 @@
+# OpenSSL 3 Developer Notes
+
+## Background
+
+OpenSSL since 1.1.1 uses thread-local storage. The OpenSSL internal API
+is `CRYPTO_THREAD_set_local()` and it is implemented on Linux using `pthread_setspecific()`.
+
+In a new thread, the value of a thread-local variable is 0x0; the first access of this
+variable by OpenSSL will allocate new dynamic memory. The implication for Kamailio is that
+if such variables are initialized in rank 0, then all workers will reuse the same memory
+location as Kamailio uses shared memory for OpenSSL.
+
+## OpenSSL 1.1.1 shmmem Corruption
+
+In OpenSSL 1.1.1 there are three variables that impact Kamailio: `private_drbg`, `public_drbg`, and
+`err_thread_local`. The first two variables are circumvented by an early call to `RAND_set_rand_method()`.
+
+The third variable, i.e., `err_thread_local` is reused by all workers and leads to shmmem corruption
+particularly with other users of OpenSSL such as libcurl, and db modules with TLS.
+
+Historically, since 2019, this was a low-impact bug due to use of static variables in the OpenSSL 1.1.1
+implementation.
+
+
+## OpenSSL 3 shmmem Corruption
+
+In OpenSSL 3 there is one variable that impacts Kamailio: `err_thread_local`.
+
+OpenSSL 3 uses more dynamic memory to handle the error stack and shmmem corruption is easily
+reproducible, even without libcurl or db modules.
+
+## Resolution
+
+This resolution uses non-portable internal knowledge of pthreads on Linux: that `pthread_key_t`
+is a small integer, and that it is incremented when a new thread-local key is requested
+
+OpenSSL 3 uses 6 thread-locals, and OpenSSL 1.1.1 uses 4 thread-locals.
+
+The first attempt (5.8.0/5.8.1) to resolve this issue uses the following technique:
+* `tls_threads_mode = 1`: for each function that might initialize OpenSSL, run it in
+ a temporary thread; this leaves the thread-local variables in rank 0, main thread at their
+ default value of 0x0
+* `tls_threads_mode = 2`: add an at-fork handler to set thread-local variables to 0x0.
+ The implementation will set thread-local keys from 0-15 to have value 0x0.<br>
+
+Limitation: the limitation of this method is some libraries like libpython cannot be initialized
+other than in the primary thread and they will initialize thread-locals.
+
+The revised method makes a few OpenSSL function calls so
+that OpenSSL will initialize all required thread-locals, and the tls.so sets a high-water mark.
+It is assumed that all `pthread_key_t` values at the high-water mark or greater are set
+by non-OpenSSL libraries. During fork, tls.so will clear all thread-locals up to the high-water
+mark.
+
+
[View Less]
when using sdp module to parse sdp I noticed that function called from sdp_get return -1 when no m-lines are present in sdp , normally we should accept sdp without m -line because it can be at a later time through a modified offer , how can we accept such sdp without changing source code for function "parse_sdp_session"
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3779
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3779(a)github.com>
Hey there!
I hope the Kamailio team is physically as well as mentally healthy and thriving towards progressive development.
I am a part of a team which deals in development of converged 4G and 5G networks.
We have been diving deep into Open5GS 5G core and use Kamailio as our SIP server.
However, we are trying to successfully implement VoNR UE registration as well as calling, and facing challenges in that area.
I recently saw the VoNR as well as SMSoNR demonstration which the Kamailio team …
[View More]performed and was massively impressed by it! I would like to know when will the N5 SBI update will be rolling out to the public so that we can conduct our testing as well.
Hoping for a timely response and update,
Thanks and regards,
Vaibhav.
[View Less]
<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* https://lists.kamailio.org/mailman3/postorius/lists/sr-users.lists.kamailio…
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* https://lists.kamailio.org/mailman3/postorius/…
[View More]lists/sr-dev.lists.kamailio.o…
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
Note that an issue report may be closed automatically after about 2 months
if there is no interest from developers or community users on pursuing it, being
considered expired. In such case, it can be reopened by writing a comment that includes
the token `/notexpired`. About two weeks before considered expired, the issue is
marked with the label `stale`, trying to notify the submitter and everyone else
that might be interested in it. To remove the label `stale`, write a comment that
includes the token `/notstale`. Also, any comment postpone the `expire` timeline,
being considered that there is interest in pursuing the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
The uri parser seems to fail in multiple ways on username-parameters. The ways it fails depends on the presence of user-params in the incoming request and on adjustments to $ru, $rd and $rU in the script.
My expectation is that the whole username, including user-params is *always* visible in $rU. In reality, the user-params are absent or present depending on manipulations to the uri in the script.
When setting $rU to a value with a user-param, that user-param is represented when reading $ru, but not in $rU.
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
### Troubleshooting
#### Reproduction
I used below config script to test various scenario's.
```
debug=2
memlog=4
#fork=no # This option should not be present to enable forking but disable daemonize, also -D commandline parameter is needed
log_stderror=yes
log_name="kamailio-test"
log_facility=LOG_LOCAL5
sip_warning=no
children=2
shm_mem_size=128
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
dns_use_search_list=no
use_dns_failover=yes
dns_srv_lb=yes
disable_tcp=yes
auto_aliases=no
listen=172.16.1.19:7060
loadmodule "sl.so"
loadmodule "pv.so"
loadmodule "xlog.so"
modparam("xlog", "prefix", "")
route {
xnotice("Incoming $rm to $rU\n");
xinfo("$$ru = $ru\n");
switch ($rU) {
case "100":
xnotice("Set $$rU = \"1234;first=yes\"\n");
$rU = "1234;first=yes";
xinfo("$$ru: $ru\n");
xinfo("$$rU: $rU\n");
if ($rU != "1234;first=yes") {
xerr("Fail!\n");
} else {
xinfo("Success!\n");
}
break;
case "200":
xnotice("Set $$rd = \"example.com;transport=udp\"\n");
$rd = "example.com;transport=udp";
xinfo("$$ru: $ru\n");
xinfo("$$rU: $rU\n");
xnotice("Set $$rU = \"1234;first=yes\"\n");
$rU = "1234;first=yes";
xinfo("$$ru: $ru\n");
xinfo("$$rU: $rU\n");
if ($rU != "1234;first=yes") {
xerr("Fail!\n");
} else {
xinfo("Success!\n");
}
break;
case "300":
xnotice("Set $$ru = \"sip:1234@example.com;transport=udp\"\n");
$ru = "sip:1234@example.com;transport=udp";
xinfo("$$ru: $ru\n");
xinfo("$$rU: $rU\n");
xnotice("Set $$rU = \"1234;first=yes\"\n");
$rU = "1234;first=yes";
xinfo("$$ru: $ru\n");
xinfo("$$rU: $rU\n");
if ($rU != "1234;first=yes") {
xerr("Fail!\n");
} else {
xinfo("Success!\n");
}
break;
case "400":
xnotice("Set $$ru = \"sip:1234;first=yes@example.com;transport=udp\"\n");
$ru = "sip:1234;first=yes@example.com;transport=udp";
xinfo("$$ru: $ru\n");
xinfo("$$rU: $rU\n");
if ($rU != "1234;first=yes") {
xerr("Fail!\n");
} else {
xinfo("Success!\n");
}
xnotice("Set $$rU = \"1234;second=yes\"\n");
$rU = "1234;second=yes";
xinfo("$$ru: $ru\n");
xinfo("$$rU: $rU\n");
if ($rU != "1234;second=yes") {
xerr("Fail!\n");
} else {
xinfo("Success!\n");
}
break;
}
sl_send_reply(500, "Done");
exit;
}
```
Outputs:
---
```
1(2206122) NOTICE: Incoming INVITE to 100
1(2206122) INFO: $ru = sip:100@172.16.1.19:7060;user=phone
1(2206122) NOTICE: Set $rU = "1234;first=yes"
1(2206122) INFO: $ru: sip:1234;first=yes@172.16.1.19:7060;user=phone
1(2206122) INFO: $rU: 1234
1(2206122) ERROR: Fail!
```
Setting $rU with a user-param sets it correctly in $ru, but reading $rU back fails.
---
```
1(2206122) NOTICE: Incoming INVITE to 200
1(2206122) INFO: $ru = sip:200@172.16.1.19:7060;user=phone
1(2206122) NOTICE: Set $rd = "example.com;transport=udp"
1(2206122) INFO: $ru: sip:200@example.com;transport=udp:7060;user=phone
1(2206122) INFO: $rU: 200
1(2206122) NOTICE: Set $rU = "1234;first=yes"
1(2206122) INFO: $ru: sip:1234;first=yes@example.com;transport=udp:7060;user=phone
1(2206122) INFO: $rU: 1234
1(2206122) ERROR: Fail!
```
Same when setting $rd in advance.
---
```
1(2206122) NOTICE: Incoming INVITE to 300
1(2206122) INFO: $ru = sip:300@172.16.1.19:7060;user=phone
1(2206122) NOTICE: Set $ru = "sip:1234@example.com;transport=udp"
1(2206122) INFO: $ru: sip:1234@example.com;transport=udp
1(2206122) INFO: $rU: 1234
1(2206122) NOTICE: Set $rU = "1234;first=yes"
1(2206122) INFO: $ru: sip:1234;first=yes@example.com;transport=udp
1(2206122) INFO: $rU: 1234;first=yes
1(2206122) INFO: Success!
```
When setting $ru first with no user-param lets a later asssignment to $rU with user-param succeed.
---
```
1(2206122) NOTICE: Incoming INVITE to 400
1(2206122) INFO: $ru = sip:400@172.16.1.19:7060;user=phone
1(2206122) NOTICE: Set $ru = "sip:1234;first=yes@example.com;transport=udp"
1(2206122) INFO: $ru: sip:1234;first=yes@example.com;transport=udp
1(2206122) INFO: $rU: 1234;first=yes
1(2206122) INFO: Success!
1(2206122) NOTICE: Set $rU = "1234;second=yes"
1(2206122) INFO: $ru: sip:1234;second=yes@example.com;transport=udp
1(2206122) INFO: $rU: 1234;second=yes
1(2206122) INFO: Success!
```
Setting $ru with a user-params succeeds. Subsequently overwriting the user part with $rU with a user-param also succeeds.
---
```
1(2206122) NOTICE: Incoming INVITE to 400
1(2206122) INFO: $ru = sip:400;existing=yes@172.16.1.19:7060;user=phone
1(2206122) NOTICE: Set $ru = "sip:1234;first=yes@example.com;transport=udp"
1(2206122) INFO: $ru: sip:1234;first=yes@example.com;transport=udp
1(2206122) INFO: $rU: 1234;first=yes
1(2206122) INFO: Success!
1(2206122) NOTICE: Set $rU = "1234;second=yes"
1(2206122) INFO: $ru: sip:1234;second=yes@example.com;transport=udp
1(2206122) INFO: $rU: 1234;second=yes
1(2206122) INFO: Success!
```
Same as previous, but with incoming user-param.
---
```
1(2206122) NOTICE: Incoming INVITE to 100
1(2206122) INFO: $ru = sip:100;existing=yes@172.16.1.19:7060;user=phone
1(2206122) NOTICE: Set $rU = "1234;first=yes"
1(2206122) INFO: $ru: sip:1234;first=yes;existing=yes@172.16.1.19:7060;user=phone
1(2206122) INFO: $rU: 1234
1(2206122) ERROR: Fail!
```
This one fails in an interesting way. The incoming uri has a user-param. When overwriting $rU with a user-param, the user-param from the incoming request is kept in addition to the new one instead of being overwritten. $rU still misses (both) user-params.
#### Debugging Data
I have no build (yet) with EXTRA_DEBUG enabled.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3762
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3762(a)github.com>
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
I faced an issue with memory leak in case drop NOTIFY messages in the "local-request" event route in `mem_copy_subs` and `build_uac_req`
analysis of mem leak:
kamcmd corex.shm_summary
<code>...
Mar 23 12:00:28 pbx kamailio[72308]: NOTICE: fm_status: fm_sums(): count= 11 size= 7520 bytes from presence: hash.c: mem_copy_subs(141)<br>
Mar 23 12:00:28 pbx kamailio[72308]: NOTICE: fm_status: fm_sums(): count= 23 size= 22536 bytes from tm: t_msgbuilder.c: build_uac_req(1618)
...</code>
a lot of dropped messages in local-request event route
<code>...
Mar 23 12:01:09 pbx kamailio[72308]: NOTICE: fm_status: fm_sums(): count= 83 size= 51256 bytes from presence: hash.c: mem_copy_subs(141)
Mar 23 12:01:09 pbx kamailio[72308]: NOTICE: fm_status: fm_sums(): count= 98 size= 116864 bytes from tm: t_msgbuilder.c: build_uac_req(1618)
...</code>
no messages, no activities
<code>...
Mar 23 12:02:34 pbx kamailio[72308]: NOTICE: fm_status: fm_sums(): count= 83 size= 51256 bytes from presence: hash.c: mem_copy_subs(141)
Mar 23 12:02:34 pbx kamailio[72308]: NOTICE: fm_status: fm_sums(): count= 96 size= 115432 bytes from tm: t_msgbuilder.c: build_uac_req(1618)
...</code>
In the code, we have a comment like "never free cbp here because if t_uac_prepare fails, cbp is not freed and thus caller has no chance to discover if it is freed or not", but we'll free the cbp in two cases:
1. in case of error, but we have if (ret == E_DROP) then ret = 0; (so, no error result)
2. in case call insert_tmcb for cbp, but we don't do it for E_DROP
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3403
-- Commit Summary --
* tm: memory leak in case dropping messages in local-request event route
-- File Changes --
M src/modules/tm/uac.c (8)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3403.patchhttps://github.com/kamailio/kamailio/pull/3403.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3403
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3403(a)github.com>
[View Less]
#### Pre-Submission Checklist
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue) _== Fix of …
[View More]documentation of a long standing error_
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
The sipcapture module actually uses the DEFAULT_DB_URL instead of "no database at all". When you do not set the parameter, the module will try to connect to the default db. [See source code of parameter](https://github.com/volkland/kamailio/blob/74361cdeacee8864216d30….
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3836
-- Commit Summary --
* sipcapture: docs - fix default value for parameter
-- File Changes --
M src/modules/sipcapture/doc/sipcapture_admin.xml (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3836.patchhttps://github.com/kamailio/kamailio/pull/3836.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3836
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3836(a)github.com>
[View Less]
### Description
We are using Kamailio as a 'mid-registrar', and saving the location record (i.e calling registrar.save()) in the reply-route depending on received status code from other registrar.
We noticed the saved location record had the contact URI (incl. instance id) and UA from response message; instead we would like to use the contact and UA from the original request.
This feature change is similar to what was added for `tcpconn_id` in PR: https://github.com/kamailio/kamailio/…
[View More]pull/3430. i.e. we would set the request's contact URI and UA in `xavp_cfg` variable. Then `registrar.save.c` would use the contact and UA from `xavp_cfg`.
Thanks.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3753
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3753(a)github.com>
[View Less]
### Description
app_python3 loads libssl and also calls `pthread_setspecific()`. This makes it incompatible with tls_thread_mode refactoring.
Reported by user @igorolhovskiy on the mailing list:
https://lists.kamailio.org/mailman3/hyperkitty/list/sr-users@lists.kamailio…
### Troubleshooting
#### Reproduction
#### Debugging Data
#### Log Messages
#### SIP Traffic
### Possible Solutions
- make it compatible with `tls_threads_mode = 1`
### Additional Information
--
Reply to …
[View More]this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3832
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3832(a)github.com>
[View Less]
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, …
[View More]tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [ ] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
A couple small changes to the ims_registrar_scscf which prevents kamailio from crashing on my system.
I would love to have more testing because I only did tests in my single user IMS setup.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3787
-- Commit Summary --
* ims_registrar_scscf: fix uninitialized arguments in save()
* ims_registrar_scscf: refactor save_fixup4
* ims_registrar_scscf: fix typo in function name uint_fixup
* ims_registrar_scscf: free_uint_fixup: fix memleak/freeing the wrong parameter
-- File Changes --
M src/modules/ims_registrar_scscf/ims_registrar_scscf_mod.c (55)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3787.patchhttps://github.com/kamailio/kamailio/pull/3787.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3787
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3787(a)github.com>
[View Less]
Module: kamailio
Branch: master
Commit: 27351e3f9f551a86ffecbc1e6aa269a2946d55d1
URL: https://github.com/kamailio/kamailio/commit/27351e3f9f551a86ffecbc1e6aa269a…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-04-29T10:16:08+02:00
modules: readme files regenerated - ims_ipsec_pcscf ... [skip ci]
---
Modified: src/modules/ims_ipsec_pcscf/README
---
Diff: https://github.com/kamailio/kamailio/commit/…
[View More]27351e3f9f551a86ffecbc1e6aa269a…
Patch: https://github.com/kamailio/kamailio/commit/27351e3f9f551a86ffecbc1e6aa269a…
---
diff --git a/src/modules/ims_ipsec_pcscf/README b/src/modules/ims_ipsec_pcscf/README
index 8dd070ffe7d..bce99b791da 100644
--- a/src/modules/ims_ipsec_pcscf/README
+++ b/src/modules/ims_ipsec_pcscf/README
@@ -308,7 +308,7 @@ ipsec_create("location", "1");
then this must be name of the table which stores the contacts.
flags - bitwise flag:
+ 0x01 (1) - set force socket for request messages. Useful for
- ipsec and TCP.
+ ipsec and TCP/TLS.
+ 0x02 (2) - reverse search for a contact in the memory. Useful
when contact alias is disabled.
+ 0x04 (4) - use destination URI for IPSec tunnel search. Useful
@@ -317,12 +317,13 @@ ipsec_create("location", "1");
+ 0x10 (16) - do not look for alias parameter to set received
details.
+ 0x20 (32) - do not reset the destination URI.
- + 0x40 (64) - use user equipment client port as target for TCP
- requests.
+ + 0x40 (64) - use user equipment client port as target for
+ TCP/TLS requests (try to reuse the UE client connection).
+ 0x80 (128) - set transport parameter in the new dst uri for
- TCP requests.
+ TCP/TLS requests.
+ 0x100 (256) - use Via attributes (port and protocol) for
- routing UDP reply.
+ routing UDP reply, and protocol from next hop address for
+ request (otherwise it taken from saved contact).
+ 0x200 (512) - try TCP if corresponding UDP socket is not
found.
This is an optional parameter, default value - 0.
[View Less]
Module: kamailio
Branch: master
Commit: f7f93828993b5975dfe5f26ad63ba6c489aa69f7
URL: https://github.com/kamailio/kamailio/commit/f7f93828993b5975dfe5f26ad63ba6c…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T06:49:47+02:00
ims_ipsec_pcscf: updated comments for ipsec_forward() flags
---
Modified: src/modules/ims_ipsec_pcscf/cmd.c
---
Diff: https://github.com/kamailio/kamailio/commit/…
[View More]f7f93828993b5975dfe5f26ad63ba6c…
Patch: https://github.com/kamailio/kamailio/commit/f7f93828993b5975dfe5f26ad63ba6c…
---
diff --git a/src/modules/ims_ipsec_pcscf/cmd.c b/src/modules/ims_ipsec_pcscf/cmd.c
index fff9def48a2..b1e36ae2e24 100644
--- a/src/modules/ims_ipsec_pcscf/cmd.c
+++ b/src/modules/ims_ipsec_pcscf/cmd.c
@@ -88,11 +88,12 @@ extern struct tm_binds tmb;
#define IPSEC_NOALIAS_SEARCH (1 << 4)
/* if set - do not reset dst uri for IPsec forward */
#define IPSEC_NODSTURI_RESET (1 << 5)
-/* if set - use user equipment client port as target for requests over TCP */
+/* if set - use user equipment client port as target for requests over TCP/TLS */
#define IPSEC_TCPPORT_UEC (1 << 6)
-/* if set - build new dst uri with transport parameter for TCP */
+/* if set - build new dst uri with transport parameter for TCP/TLS */
#define IPSEC_SETDSTURI_FULL (1 << 7)
-/* if set - use Via attributes for routing reply */
+/* if set - use Via attributes for routing reply
+ * and protocol from next hop address for request */
#define IPSEC_FORWARD_USEVIA (1 << 8)
/* if set - try TCP if corresponding UDP socket is not found */
#define IPSEC_FORWARD_TRYTCP (1 << 9)
[View Less]
Module: kamailio
Branch: master
Commit: 575b17d23cd5fa060f775bc56b42c735048bc849
URL: https://github.com/kamailio/kamailio/commit/575b17d23cd5fa060f775bc56b42c73…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T06:46:56+02:00
ims_ipsec_pcscf: docs updated for ipsec_forward() flags
---
Modified: src/modules/ims_ipsec_pcscf/doc/ims_ipsec_pcscf_admin.xml
---
Diff: https://github.com/kamailio/…
[View More]kamailio/commit/575b17d23cd5fa060f775bc56b42c73…
Patch: https://github.com/kamailio/kamailio/commit/575b17d23cd5fa060f775bc56b42c73…
---
diff --git a/src/modules/ims_ipsec_pcscf/doc/ims_ipsec_pcscf_admin.xml b/src/modules/ims_ipsec_pcscf/doc/ims_ipsec_pcscf_admin.xml
index ff65668e6e1..ee58f16fb63 100644
--- a/src/modules/ims_ipsec_pcscf/doc/ims_ipsec_pcscf_admin.xml
+++ b/src/modules/ims_ipsec_pcscf/doc/ims_ipsec_pcscf_admin.xml
@@ -284,7 +284,7 @@ ipsec_create("location", "1");
<itemizedlist>
<listitem>
<para>
- <emphasis>0x01</emphasis> (1) - set force socket for request messages. Useful for ipsec and TCP.
+ <emphasis>0x01</emphasis> (1) - set force socket for request messages. Useful for ipsec and TCP/TLS.
</para>
</listitem>
<listitem>
@@ -316,17 +316,19 @@ ipsec_create("location", "1");
</listitem>
<listitem>
<para>
- <emphasis>0x40</emphasis> (64) - use user equipment client port as target for TCP requests.
+ <emphasis>0x40</emphasis> (64) - use user equipment client port as target for TCP/TLS requests
+ (try to reuse the UE client connection).
</para>
</listitem>
<listitem>
<para>
- <emphasis>0x80</emphasis> (128) - set transport parameter in the new dst uri for TCP requests.
+ <emphasis>0x80</emphasis> (128) - set transport parameter in the new dst uri for TCP/TLS requests.
</para>
</listitem>
<listitem>
<para>
- <emphasis>0x100</emphasis> (256) - use Via attributes (port and protocol) for routing UDP reply.
+ <emphasis>0x100</emphasis> (256) - use Via attributes (port and protocol) for routing UDP reply,
+ and protocol from next hop address for request (otherwise it taken from saved contact).
</para>
</listitem>
<listitem>
[View Less]
- URL: https://github.com/kamailio/kamailio/commit/fb685a8bd5d5e34edde44614f313cbb…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:02:09+02:00
jansson: declare variables at the beginning of blocks
(cherry picked from commit a2bff77c3f7bfee8dae90c3ef20522d480f2e14d)
- URL: https://github.com/kamailio/kamailio/commit/2758754f2bb427bff06b2a6e8217587…
Author: Xenofon Karamanos <xk(a)gilawa.com>
Date: 2024-04-29T05:05:31+02:00
core: properly handle …
[View More]drop() action for kemi engines
- GH #3718
(cherry picked from commit 82593a09f8ef6d53e7e88238c057bbcdd9ab287b)
- URL: https://github.com/kamailio/kamailio/commit/4b88c5bf30054739f476388523e8d2b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:08:18+02:00
core: rthreads - init return variable
(cherry picked from commit 181c602616e13323786335e8e28f182871aa5e9b)
(cherry picked from commit 0747c18d5c4db2e7e8408ad2c7efa120ec76523e)
- URL: https://github.com/kamailio/kamailio/commit/02b877493cd6ffc6cfdf7da114d255d…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:08:56+02:00
core: ppcfg - jump to end when defexp eval does not get a str val
(cherry picked from commit daac0bdb88f6f732bda7c683af45b90f87fdb7c9)
(cherry picked from commit 4c78a564c5ad8662014cf686428a37238a6d8476)
- URL: https://github.com/kamailio/kamailio/commit/cea618ede170bd02bb7ccd478a4f1a7…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:09:18+02:00
core: select - handle ws and wss inside select_ip_port()
(cherry picked from commit d8e0942c9e83c8cad7c182bf41c156ba35bf24d2)
(cherry picked from commit 089bf63178039b13cde0beccfacab1536af76179)
- URL: https://github.com/kamailio/kamailio/commit/92d3b52ca4595a7e4d8ab003951191c…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:09:31+02:00
core: parser rr - check for rr value before serializing
(cherry picked from commit 6ee26a3ae3293aaeb4507d5d0b16ad31173cc39a)
(cherry picked from commit 4626cb7f0e0b273153ce0004900a92553783a893)
- URL: https://github.com/kamailio/kamailio/commit/d12613c8e357a8dc882eefe2d84fedd…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:10:14+02:00
ctl: reset log prefix on reading ctl traffic
- it may be previously set in process by some event route
(cherry picked from commit 5b8b2717ee2f57da932132683b27eb33cea3fd59)
(cherry picked from commit d45c78eeeaea6a9fc9dcb927436f834392d9d7c9)
- URL: https://github.com/kamailio/kamailio/commit/f225edd2fdc87b0ebf72e15d8a11255…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:12:20+02:00
acc: more log messages of failure arsing extra acc string
(cherry picked from commit 04a73ace6572dd5c95a8f50b39b2ce712f7ebe84)
(cherry picked from commit 91b0962679092f28abb5022d1505372356460f7d)
- URL: https://github.com/kamailio/kamailio/commit/c90b736a098e1d76224c1e97c2a7142…
Author: Elena-Ramona Modroiu <ramona(a)asipto.com>
Date: 2024-04-29T05:13:20+02:00
core: resolve/create_srv_pref_list() - insert at correct position in list
(cherry picked from commit f35cf8904119dcf582ea2451648de5fef095466b)
(cherry picked from commit dbf9208f3a402844c9981fb7ed09493a1338dfdd)
- URL: https://github.com/kamailio/kamailio/commit/a82d1575d9ac7820e526741fc169033…
Author: Elena-Ramona Modroiu <ramona(a)asipto.com>
Date: 2024-04-29T05:13:27+02:00
corex: fix conditions for dns_cache modparam srv attributes
(cherry picked from commit 8114b2016d032484edafe4edd04fb02d52cfd058)
(cherry picked from commit 3f44cabcfc0abc83ae1971ac74fbb0bd36829ce4)
- URL: https://github.com/kamailio/kamailio/commit/edbcfff018145372fd6fa5d1777912f…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:13:56+02:00
smsops: reformat module exports structures
(cherry picked from commit 9848d43cb367d6901a0b8c727759feb8a8fad930)
(cherry picked from commit b21a7aaa467f2b76a52308557657c65274e34087)
- URL: https://github.com/kamailio/kamailio/commit/b3935051a8112b1a2152d8eb65da29b…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:14:04+02:00
smsops: short reference section about variables
(cherry picked from commit 9a94930ae1168d5df79e3dc1414841cdf23a2eba)
(cherry picked from commit c0c8ee05ab25256b9154d2056ee04b07f3f2290a)
- URL: https://github.com/kamailio/kamailio/commit/f1969ecaacd47eb03ef6b54d71c7037…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:14:11+02:00
blst: reformat exported structures
(cherry picked from commit e39557c96d2f419184c826d779f1a3309acc4269)
(cherry picked from commit e394a05152b29d4009c9cb963bced72526c7651b)
- URL: https://github.com/kamailio/kamailio/commit/8bb69fd5f5911098a3e567887ad2a3a…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:14:51+02:00
sdpops: reformat the codecs map
(cherry picked from commit 359a442e14a156b0bcf60dc5b2580cbc57924e34)
(cherry picked from commit 855c76780c4399d6d9881ce3c525a7df56e111c4)
- URL: https://github.com/kamailio/kamailio/commit/96ff473191bb24be90e2dde82fccb5c…
Author: vijay kumar <vijay.kumar(a)exotel.in>
Date: 2024-04-29T05:15:24+02:00
rtpengine: fix pkg mem leak in send_rtpp_command()
- freed request.s after sending request to websocket
(cherry picked from commit b4753ae4216b0c960ac094f4be8232fb4d0147b0)
(cherry picked from commit d2cf78f5c70977639f3b7f66b852350b764e4b13)
- URL: https://github.com/kamailio/kamailio/commit/550573b37b566aa46bd94a2a644e932…
Author: Xenofon Karamanos <22965395+xkaraman(a)users.noreply.github.com>
Date: 2024-04-29T05:15:45+02:00
tcp_main: Add protocol argument for searching tcp/tls connections
(cherry picked from commit 4a40b16d4f9bef9bc75d3272c83878e6348aa0b8)
(cherry picked from commit 2661594bf7f31558e6ac7524f33ebb358aefce21)
- URL: https://github.com/kamailio/kamailio/commit/4ccf4c9b5134a0632f5ea5a653a6f5e…
Author: Xenofon Karamanos <22965395+xkaraman(a)users.noreply.github.com>
Date: 2024-04-29T05:15:51+02:00
tcp_main: Add proto argument to tcpconn_exists function
(cherry picked from commit 6779efd430178adff0ae438d178e38c003e4e05c)
(cherry picked from commit 0c070443b585c597d2d6249ac6ac32490d9c7f48)
- URL: https://github.com/kamailio/kamailio/commit/63120ef838cbcde1f40862a745b9d31…
Author: Xenofon Karamanos <22965395+xkaraman(a)users.noreply.github.com>
Date: 2024-04-29T05:16:03+02:00
tcp_main: Update comment docs
(cherry picked from commit 0a28a93c6e060081267dc686e342d45ef03358e7)
(cherry picked from commit a19e6e0e49d9881ab990d23ad31a95773fe1a00b)
- URL: https://github.com/kamailio/kamailio/commit/aff1797bb83a10868914e814702367f…
Author: Xenofon Karamanos <22965395+xkaraman(a)users.noreply.github.com>
Date: 2024-04-29T05:16:10+02:00
core/forward: Match protocol when forwarding
(cherry picked from commit d81e5113884b933251499630d112ec5b1150b8a4)
(cherry picked from commit 7d103cf3887401fca32d95f7ea7ee10f28e9e127)
- URL: https://github.com/kamailio/kamailio/commit/09699ba5d4efab0cbe64869c1ed8db7…
Author: Xenofon Karamanos <22965395+xkaraman(a)users.noreply.github.com>
Date: 2024-04-29T05:16:17+02:00
tcp_main: Match wss protocol
(cherry picked from commit 175d755c40bc50b78b2cf4f18ad22429289af90d)
(cherry picked from commit 3052565e3ce14d5d3c45d790877a562185085548)
- URL: https://github.com/kamailio/kamailio/commit/6ed99ae36fa16da2f0f59e3b5700abe…
Author: Rick Barenthin <rick(a)ng-voice.com>
Date: 2024-04-29T05:16:32+02:00
usrloc: check on db delete the return value of memchr
When inserting into the database the AOR is split at the @ sign and
if there is no @ sign in the AOR only the domain part is filled and the
user part is left empty.
But for deleting this is not done and the query failed to be executed
and the AOR is not deleted. This PR add this behaviour of only comparing against the
domain part if the AOR doesn't contain a @ sign.
(cherry picked from commit 49276a1f43b1a3bf4a8d681888df964000360c79)
(cherry picked from commit 28bbcd5a50f45b8217125481706180a76323dc44)
- URL: https://github.com/kamailio/kamailio/commit/a794cef754fb3f2bc59d2d6a6d060e9…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:17:02+02:00
core: tcp - keep connection id on event route cb structure
(cherry picked from commit 11e7d71e5c2ee9428298658ed3b9a0f625d40f00)
(cherry picked from commit db2e96ec2aacde1bd50b65ea6357388bad39e86f)
- URL: https://github.com/kamailio/kamailio/commit/cc7c586fbd72fe132719f3cfdba4809…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:17:08+02:00
tcpops: reworked some debug messages
(cherry picked from commit 27e3b7f3f82957c6dc80f2ff89c40bdd87cecb81)
(cherry picked from commit c9fe59d6cd73179aa75e21b3b215bc0465b182aa)
- URL: https://github.com/kamailio/kamailio/commit/aeba79f5d9d5bf4fffdb64dd2c603fb…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:17:14+02:00
core: tcp - set a global shortcut to tcp connection for event route
(cherry picked from commit d114d11724dc4157e7e5809504531d26da6bcc57)
(cherry picked from commit 069de99576b5f8bff002176331ed2f545afe8158)
- URL: https://github.com/kamailio/kamailio/commit/50c1b5cfe1b765b98438ac071eaa47c…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:17:20+02:00
pv: use global tcp connection callback for event route on $conid
(cherry picked from commit f5c05a68ae72881ab0691bb8488112356fc67c79)
(cherry picked from commit 7e987d8937349246f2abfa041679f568344ff402)
- URL: https://github.com/kamailio/kamailio/commit/365bb5d7fd1534e467f8a2d1b120f2c…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:17:30+02:00
core: fmsg - parse loopback ip when initializing faked msg structure
- GH #3817
(cherry picked from commit 66b3c04a9653425b1602c82dd2456a7eb7cf59d1)
(cherry picked from commit 794c2edeaffe059bf8de6ab1d3df5db003ed4cb0)
- URL: https://github.com/kamailio/kamailio/commit/9e270790302f075317d8b9eefce9141…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-29T05:18:01+02:00
tcpops: removed unused variable introduced recently
(cherry picked from commit fe8f052c29528b656062927626f9784b32b7c8f6)
(cherry picked from commit e76d755de6482e51c9ddac5bba3834cb58ad79b2)
[View Less]
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual …
[View More]modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
2 issues:
**Issue 1:**
Currently statsd functions return bool: `true` or `false` depending when
the function succeeds or fails respectively.
This value gets implicitly converted to `int`: `true` -> `1`, `false` ->
`0`.
For Kamailio `1` means succesfull execution, but `0` means to stop
processing messages, which is not what we want as statsd should not impact
flow execution. Instead we want to return `-1` which signifies error,
but the flow continues.
**Issue 2:**
statsd_init executes `statsd_connect` which tries to connect to statd
server.
If connection fails then kamailio fails to start.
This is not the desired behaviour as:
1. Kamailio should continue working even if statsd server is down,
metrics should not impact runtime.
2. `statsd_connect` is also re-executed each time we try to send the metric https://github.com/salemove/kamailio/blame/master/src/modules/statsd/lib_st…,
so it's initial result is not essential.
Note, that before 5.8 the result of init was already ignored due to
implicit conversion of `false` to `0`
until after
https://github.com/kamailio/kamailio/commit/0186246fce8f0e4bb46b30c05174983…
was introduced (which could be considered a breaking change even if it
seemingly fixes a bug in conversion).
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3819
-- Commit Summary --
* modules/statsd: avoid stopping flow when sending statsd metric fails
* modules/statsd: do not fail module initilization when statsd init fails
-- File Changes --
M src/modules/statsd/statsd.c (51)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3819.patchhttps://github.com/kamailio/kamailio/pull/3819.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3819
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3819(a)github.com>
[View Less]
Module: kamailio
Branch: master
Commit: 5e66ba23851f115bcb88d7e3f71f78ab33fc1e30
URL: https://github.com/kamailio/kamailio/commit/5e66ba23851f115bcb88d7e3f71f78a…
Author: Ostap <ostap_mal(a)hotmail.com>
Committer: GitHub <noreply(a)github.com>
Date: 2024-04-28T23:15:28+02:00
modules/statsd: ensure statsd failures do not stop execution (#3819)
* modules/statsd: avoid stopping flow when sending statsd metric fails
Currently statsd functions return bool: `true` or `false` depending …
[View More]when
the function succeeds or fails respectively.
This value gets implicitly converted to `int`: `true` -> `1`, `false` ->
`0`.
For Kamailio `1` means succesfull execution, but `0` means to stop
processing messages, which is not what we want as statsd should not impact
flow execution. Instead we want to return `-1` which signifies error,
but the flow continues.
* modules/statsd: do not fail module initilization when statsd init fails
statsd_init executes `statsd_connect` which tries to connect to statd
server.
If connection fails then kamailio fails to start.
This is not the desired behaviour as:
1. Kamailio should continue working even if statsd server is down,
metrics should not impact runtime.
2. `statsd_connect` is also re-executed each time we try to send the metric https://github.com/salemove/kamailio/blame/master/src/modules/statsd/lib_st…,
so it's initial result is not essential.
Note, that before 5.8 the result of init was already ignored due to
implicit conversion of `false` to `0`
until after
https://github.com/kamailio/kamailio/commit/0186246fce8f0e4bb46b30c05174983…
was introduced (which could be considered a breaking change even if it
seemingly fixes a bug in conversion).
---
Modified: src/modules/statsd/statsd.c
---
Diff: https://github.com/kamailio/kamailio/commit/5e66ba23851f115bcb88d7e3f71f78a…
Patch: https://github.com/kamailio/kamailio/commit/5e66ba23851f115bcb88d7e3f71f78a…
[View Less]
#### Pre-Submission Checklist
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature …
[View More](non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
- add support for configuring the DB root host/port connection parameters separate from the ro/rw settings. This allows the user to authenticate over the specific socket configured (tcp/udp/unix) for each connection type (root/ro/rw).
- note that support is added for mysql and postgresql connections. no changes to the other DB engine connection parameters.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3830
-- Commit Summary --
* utils/kamctl: make root host/port configurable
-- File Changes --
M utils/kamctl/kamctlrc (8)
M utils/kamctl/kamdbctl.base (3)
M utils/kamctl/kamdbctl.mysql (23)
M utils/kamctl/kamdbctl.pgsql (10)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3830.patchhttps://github.com/kamailio/kamailio/pull/3830.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3830
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3830(a)github.com>
[View Less]
Module: kamailio
Branch: master
Commit: de23dc1035e4b885f45bc4150d282c26b294db64
URL: https://github.com/kamailio/kamailio/commit/de23dc1035e4b885f45bc4150d282c2…
Author: Tyler Moore <tmoore(a)goflyball.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2024-04-28T23:14:16+02:00
utils/kamctl: make root host/port configurable
- add support for configuring the DB root host/port connection
parameters separate from the ro/rw settings. This allows the
user to …
[View More]authenticate over the specific socket configured
(tcp/udp/unix) for each connection type (root/ro/rw).
- note that support is added for mysql and postgresql connections.
no changes to the other DB engine connection parameters.
---
Modified: utils/kamctl/kamctlrc
Modified: utils/kamctl/kamdbctl.base
Modified: utils/kamctl/kamdbctl.mysql
Modified: utils/kamctl/kamdbctl.pgsql
---
Diff: https://github.com/kamailio/kamailio/commit/de23dc1035e4b885f45bc4150d282c2…
Patch: https://github.com/kamailio/kamailio/commit/de23dc1035e4b885f45bc4150d282c2…
---
diff --git a/utils/kamctl/kamctlrc b/utils/kamctl/kamctlrc
index ce0bd9d93bc..67af483d9c6 100644
--- a/utils/kamctl/kamctlrc
+++ b/utils/kamctl/kamctlrc
@@ -44,6 +44,14 @@
## database access host (from where is kamctl used)
# DBACCESSHOST=192.168.0.1
+## database host for super user (useful for specifying a local socket or virtual hostname)
+# defaults to value of DBHOST when not set
+# DBROOTHOST="localhost"
+
+## database port for super user (on some DB specifying the port will force TCP connections)
+# default value will depend on client DB tool
+# DBROOTPORT=""
+
## database super user (for ORACLE this is 'scheme-creator' user)
# DBROOTUSER="root"
diff --git a/utils/kamctl/kamdbctl.base b/utils/kamctl/kamdbctl.base
index 4a3beccaef4..5579c9e8373 100644
--- a/utils/kamctl/kamdbctl.base
+++ b/utils/kamctl/kamdbctl.base
@@ -20,6 +20,9 @@ DBROUSER=${DBROUSER:-kamailioro}
# password for read-only user
DBROPW=${DBROPW:-kamailioro}
+# address of database server for root connections
+DBROOTHOST=${DBROOTHOST:-$DBHOST}
+
# user name column
USERCOL=${USERCOL:-username}
diff --git a/utils/kamctl/kamdbctl.mysql b/utils/kamctl/kamdbctl.mysql
index 81a730bbe65..49915dc7954 100644
--- a/utils/kamctl/kamdbctl.mysql
+++ b/utils/kamctl/kamdbctl.mysql
@@ -27,23 +27,22 @@ fi
# config vars
#################################################################
-# full privileges MySQL user
-if [ -z "$DBROOTUSER" ]; then
- DBROOTUSER="root"
-fi
-
# Set DBROOTPW in kamctlrc or via next line to set the database
# root password if you want to run this script without any user prompt.
# This is unsafe, but useful e.g. for automatic testing.
#DBROOTPW=""
-
-if [ -z "$DBPORT" ] ; then
- CMD="mysql -h $DBHOST -u$DBROOTUSER "
- DUMP_CMD="mysqldump -h $DBHOST -u$DBROOTUSER -c -t "
-else
- CMD="mysql -h $DBHOST -P $DBPORT -u$DBROOTUSER "
- DUMP_CMD="mysqldump -h $DBHOST -P $DBPORT -u$DBROOTUSER -c -t "
+# build the client base commands one param at a time
+# let the client choose defaults where not specified
+CMD="mysql -h $DBROOTHOST"
+DUMP_CMD="mysqldump -c -t -h $DBROOTHOST"
+if [ -n "$DBROOTPORT" ] ; then
+ CMD="$CMD -P $DBROOTPORT"
+ DUMP_CMD="$DUMP_CMD -P $DBROOTPORT"
+fi
+if [ -n "$DBROOTUSER" ]; then
+ CMD="$CMD -u $DBROOTUSER"
+ DUMP_CMD="mysqldump -u $DBROOTUSER"
fi
#################################################################
diff --git a/utils/kamctl/kamdbctl.pgsql b/utils/kamctl/kamdbctl.pgsql
index 1eb5d88d2b8..3b46c04294f 100644
--- a/utils/kamctl/kamdbctl.pgsql
+++ b/utils/kamctl/kamdbctl.pgsql
@@ -51,12 +51,12 @@ if [ -z "$DBROOTUSER" ]; then
fi
fi
-if [ -z "$DBPORT" ] ; then
- CMD="psql -q -h $DBHOST -U $DBROOTUSER "
- DUMP_CMD="pg_dump -h $DBHOST -U $DBROOTUSER -c"
+if [ -z "$DBROOTPORT" ] ; then
+ CMD="psql -q -h $DBROOTHOST -U $DBROOTUSER "
+ DUMP_CMD="pg_dump -h $DBROOTHOST -U $DBROOTUSER -c"
else
- CMD="psql -q -h $DBHOST -p $DBPORT -U $DBROOTUSER "
- DUMP_CMD="pg_dump -h $DBHOST -p $DBPORT -U $DBROOTUSER -c"
+ CMD="psql -q -h $DBROOTHOST -p $DBROOTPORT -U $DBROOTUSER "
+ DUMP_CMD="pg_dump -h $DBROOTHOST -p $DBROOTPORT -U $DBROOTUSER -c"
fi
#################################################################
[View Less]
- add natnum property, containing the nationally formatted number, to pv
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- …
[View More]code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3820
-- Commit Summary --
* phonenum: add national number
-- File Changes --
M src/modules/phonenum/cphonenumber.cpp (12)
M src/modules/phonenum/cphonenumber.h (1)
M src/modules/phonenum/doc/phonenum_admin.xml (5)
M src/modules/phonenum/phonenum_pv.c (6)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3820.patchhttps://github.com/kamailio/kamailio/pull/3820.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3820
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3820(a)github.com>
[View Less]
Module: kamailio
Branch: master
Commit: 9f28450312749dfbc021a8cbc23472c8a39d3fef
URL: https://github.com/kamailio/kamailio/commit/9f28450312749dfbc021a8cbc23472c…
Author: Henning Westerholt <hw(a)gilawa.com>
Committer: Henning Westerholt <hw(a)gilawa.com>
Date: 2024-04-26T05:54:27Z
uid_auth_db: spelling fix in documentation
---
Modified: src/modules/uid_auth_db/auth_db.xml
---
Diff: https://github.com/kamailio/kamailio/commit/9f28450312749dfbc021a8cbc23472c…
Patch: https://…
[View More]github.com/kamailio/kamailio/commit/9f28450312749dfbc021a8cbc23472c…
---
diff --git a/src/modules/uid_auth_db/auth_db.xml b/src/modules/uid_auth_db/auth_db.xml
index 25849663c54..99e5eb7c594 100644
--- a/src/modules/uid_auth_db/auth_db.xml
+++ b/src/modules/uid_auth_db/auth_db.xml
@@ -66,7 +66,7 @@
the <serdoc:module>textops</serdoc:module> module.
</para>
<para>
- The reason for the failure can be determined from the interger
+ The reason for the failure can be determined from the integer
return value stored in the <varname>$?</varname> attribute.
A value of <literal>-3</literal> indicates that it was impossible
to retrieve credentials from the request. A 400 (Bad Request)
[View Less]
Module: kamailio
Branch: master
Commit: 36fc03eaa49ba8ff02acd451699185ac18d8618e
URL: https://github.com/kamailio/kamailio/commit/36fc03eaa49ba8ff02acd451699185a…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-04-25T14:16:08+02:00
modules: readme files regenerated - htable ... [skip ci]
---
Modified: src/modules/htable/README
---
Diff: https://github.com/kamailio/kamailio/commit/…
[View More]36fc03eaa49ba8ff02acd451699185a…
Patch: https://github.com/kamailio/kamailio/commit/36fc03eaa49ba8ff02acd451699185a…
---
diff --git a/src/modules/htable/README b/src/modules/htable/README
index 75f47f5f445..00b6a209c81 100644
--- a/src/modules/htable/README
+++ b/src/modules/htable/README
@@ -852,6 +852,7 @@ sht_rm_value_re("ha=>.*");
* re - match the val parameter as regular expression.
* sw - match the val parameter as 'starts with'.
* ew - match the val parameter as 'ends with'.
+ * in - match the val parameter as 'includes'.
All parameters can be static strings or contain variables.
@@ -871,6 +872,7 @@ sht_rm_name("ha", "re", ".*");
* re - match the val parameter as regular expression.
* sw - match the val parameter as 'starts with'.
* ew - match the val parameter as 'ends with'.
+ * in - match the val parameter as 'includes'.
All parameters can be static strings or contain variables.
[View Less]
Module: kamailio
Branch: 5.8
Commit: 03ff5051b640d2478dd68ea89ad74d516752ab0f
URL: https://github.com/kamailio/kamailio/commit/03ff5051b640d2478dd68ea89ad74d5…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2024-04-25T14:01:16+02:00
modules: readme files regenerated - modules ... [skip ci]
---
Modified: src/modules/db_redis/README
Modified: src/modules/ndb_redis/README
---
Diff: https://github.com/kamailio/…
[View More]kamailio/commit/03ff5051b640d2478dd68ea89ad74d5…
Patch: https://github.com/kamailio/kamailio/commit/03ff5051b640d2478dd68ea89ad74d5…
---
diff --git a/src/modules/db_redis/README b/src/modules/db_redis/README
index d2baa50e72d..4cfdcaa5b4f 100644
--- a/src/modules/db_redis/README
+++ b/src/modules/db_redis/README
@@ -39,7 +39,7 @@ Joel Centelles Martin
4.3. verbosity (int)
4.4. opt_tls (int)
4.5. db_pass (string)
- 4.6. ac_path (string)
+ 4.6. ca_path (string)
5. Usage
6. Module Specific Considerations
@@ -75,7 +75,7 @@ Chapter 1. Admin Guide
4.3. verbosity (int)
4.4. opt_tls (int)
4.5. db_pass (string)
- 4.6. ac_path (string)
+ 4.6. ca_path (string)
5. Usage
6. Module Specific Considerations
@@ -203,7 +203,7 @@ allid,time_hires&cid:callid
4.3. verbosity (int)
4.4. opt_tls (int)
4.5. db_pass (string)
- 4.6. ac_path (string)
+ 4.6. ca_path (string)
4.1. schema_path (string)
@@ -247,6 +247,12 @@ modparam("db_redis", "verbosity", 0)
Controls TLS usage while connecting to a remote DB. If set to 1, TLS is
used to connect to the DB.
+ If TLS is enabled, the module will validate the Redis server
+ certificate against the ca_path. There is currently no way to connect
+ with a specified client certificate, the corresponding configuration to
+ check client certificates in the Redis server must therefore be turned
+ off.
+
Default value: 0.
Example 1.4. Enabling TLS connection
@@ -265,9 +271,10 @@ modparam("db_redis", "opt_tls", 1)
modparam("db_redis", "db_pass", "r3d1sPass")
...
-4.6. ac_path (string)
+4.6. ca_path (string)
- Sets the path where Certificates Authorities certs are stored.
+ Sets the path where Certificates Authorities certs for the Redis server
+ certificate are stored.
Default value: "" (empty).
diff --git a/src/modules/ndb_redis/README b/src/modules/ndb_redis/README
index 1cdfc842db3..90071f5e3f0 100644
--- a/src/modules/ndb_redis/README
+++ b/src/modules/ndb_redis/README
@@ -55,7 +55,7 @@ Joel Centelles Martin
3.8. flush_on_reconnect (integer)
3.9. allow_dynamic_nodes (integer)
3.10. debug (integer)
- 3.11. ac_path (string)
+ 3.11. ca_path (string)
4. Functions
@@ -103,7 +103,7 @@ Chapter 1. Admin Guide
3.8. flush_on_reconnect (integer)
3.9. allow_dynamic_nodes (integer)
3.10. debug (integer)
- 3.11. ac_path (string)
+ 3.11. ca_path (string)
4. Functions
@@ -149,7 +149,7 @@ Chapter 1. Admin Guide
3.8. flush_on_reconnect (integer)
3.9. allow_dynamic_nodes (integer)
3.10. debug (integer)
- 3.11. ac_path (string)
+ 3.11. ca_path (string)
3.1. server (str)
@@ -168,6 +168,12 @@ Chapter 1. Admin Guide
many REDIS servers, just give different attributes and use the specific
server name when querying the REDIS instance.
+ If tls is enabled, the module will validate the REDIS server
+ certificate against the ca_path. There is currently no way to connect
+ with a specified client certificate, the corresponding configuration to
+ check client certificates in the REDIS server must therefore be turned
+ off.
+
Default value is NULL.
Example 1.1. Set server parameter
@@ -346,9 +352,10 @@ modparam("ndb_redis", "allow_dynamic_nodes", 1)
modparam("ndb_redis", "debug", 1)
...
-3.11. ac_path (string)
+3.11. ca_path (string)
- Sets the path where Certificates Authorities certs are stored.
+ Sets the path where Certificates Authorities certs for the REDIS server
+ certificate are stored.
Default value: "" (empty).
[View Less]
I am using this docker file for installaing kamailio. I wana use it with open5gs for trynig VoNR , I used before it for VoLTE it works but right now I have this error in installation process.

and there is docker file that Im using:
FROM ubuntu:focal
ENV DEBIAN_FRONTEND=noninteractive
# Install updates and dependencies
RUN apt-get update && \
apt-get -y install mysql-server …
[View More]tcpdump screen tmux ntp ntpdate git-core dkms \
gcc flex bison libmysqlclient-dev make libssl-dev libcurl4-openssl-dev \
libxml2-dev libpcre2-dev bash-completion g++ autoconf libmnl-dev \
libsctp-dev libradcli-dev libradcli4 libjson-c-dev pkg-config iproute2 net-tools \
iputils-ping
# Fetch Kamailio code (branch 5.3)
RUN mkdir -p /usr/local/src/ && cd /usr/local/src/ && \
git clone https://github.com/kamailio/kamailio && \
cd kamailio && git checkout 5.8
# Build and Install Kamailio
RUN cd /usr/local/src/kamailio && make cfg
COPY modules.lst /usr/local/src/kamailio/src
RUN cd /usr/local/src/kamailio && \
make -j`nproc` Q=0 all | tee make_all.txt && \
make install | tee make_install.txt && \
ldconfig
COPY kamailio_init.sh /
CMD /kamailio_init.sh
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3825
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3825(a)github.com>
[View Less]
May I ask what the problem is? It prompts an error but does not affect the program's operation. Is it that the configuration file and the deployed version are inconsistent?
13(682) ERROR: *** cfgtrace:dbg_cfg_trace(): branch_route=[MANAGE_BRANCH] c=[/usr/local/etc/kamailio/kamailio.cfg] l=706 a=16 n=if
13(682) ERROR: *** cfgtrace:dbg_cfg_trace(): branch_route=[MANAGE_BRANCH] c=[/usr/local/etc/kamailio/kamailio.cfg] l=695 a=16 n=if
13(682) ERROR: *** cfgtrace:dbg_cfg_trace(): branch_route=[…
[View More]MANAGE_BRANCH] c=[/usr/local/etc/kamailio/kamailio.cfg] l=695 a=16 n=if
13(682) INFO: <script>: Call from Websocket endpoint at the DURI {sip:117.80.229.36:15060} for callee {3008}
13(682) ERROR: *** cfgtrace:dbg_cfg_trace(): branch_route=[MANAGE_BRANCH] c=[/usr/local/etc/kamailio/kamailio.cfg] l=691 a=16 n=if
13(682) ERROR: *** cfgtrace:dbg_cfg_trace(): branch_route=[MANAGE_BRANCH] c=[/usr/local/etc/kamailio/kamailio.cfg] l=685 a=25 n=has_body
Here is the code for my kamailio.cfg section
branch_route[MANAGE_BRANCH]{
xlog("L_INFO","Call to ru:{$ru} '$du'/'$proto'\n");
if(($du=~"transport=ws") || ($du=~"transport=wss")){
if ($du=~"transport=tls") {
#sdp_remove_media("video");
xlog("L_INFO","Call to TLS endpoint at the DURI {$du} for callee {$tU}\n");
if (has_body('application/sdp')) {
rtpengine_manage("record-call=off metadata=6:$ci force trust-address replace-origin replace-session-connection UDP/TLS/RTP/SAVPF");
}
t_on_reply("REPLY_FROM_TLS");
$fs="tls:MY_IP_ADDR:MY_WSS_PORT";
} else if ($du=~"transport=ws") {
xlog("L_INFO","Call to Websocket endpoint at the DURI {$du} for callee {$tU}\n");
if (has_body('application/sdp')) {
route(GET_REAL_IP_FOR_RTPENGINE);
#rtpengine_manage("record-call=off metadata=7:$ci replace-origin replace-session-connection rtcp-mux-accept rtcp-mux-offer DTLS=passive SDES-off UDP/TLS/RTP/SAVPF media-address=$avp(mediaAddr)");
rtpengine_manage("record-call=off metadata=7:$ci replace-origin replace-session-connection rtcp-mux-accept rtcp-mux-offer DTLS=passive SDES-off UDP/TLS/RTP/SAVPF");
}
t_on_reply("REPLY_FROM_WS");
$du = $du + ";transport=ws";
$fs="tcp:MY_IP_ADDR:MY_WS_PORT";
}
}else {
if ($proto=~ "tls")
{
#sdp_remove_media("video");
xlog("L_INFO","Call from WSS endpoint at the DURI {$du} for callee {$tU}\n");
if (has_body('application/sdp')) {
rtpengine_manage("record-call=off metadata=8:$ci trust-address replace-origin replace-session-connection DTLS=passive ICE=remove RTP/AVP");
}
xlog("L_INFO","media adress is $(du{s.select,1,:})\n");
t_on_reply("REPLY_TO_TLS");
} else if ($proto =~ "ws"){
xlog("L_INFO","Call from Websocket endpoint at the DURI {$du} for callee {$tU}\n");
if (has_body('application/sdp')) {
route(GET_REAL_IP_FOR_RTPENGINE);
#rtpengine_manage("record-call=off metadata=9:$ci replace-origin replace-session-connection DTLS=passive ICE=remove RTP/AVP media-address=$avp(mediaAddr)");
rtpengine_manage("record-call=off metadata=9:$ci replace-origin replace-session-connection DTLS=passive ICE=remove RTP/AVP");
}
xlog("L_INFO","media adress is $(du{s.select,1,:})\n");
t_on_reply("REPLY_TO_WS");
}
if (($proto=~ "udp") || ($proto=~"tcp"))
{
#sdp_remove_media("video");
xlog("L_INFO","UDP Branch is {$du} for {$tU}\n");
# $avp(mediaAddr) = '';
if ( has_body('application/sdp')) {
#rtpengine_manage("record-call=off metadata=10:$ci replace-origin replace-session-connection media-address=$avp(mediaAddr)");
rtpengine_manage("record-call=off metadata=10:$ci replace-origin replace-session-connection");
}
t_on_reply("STANDART");
}
}
xlog("L_INFO", "t_on_reply set\n");
if is_method("BYE|CANCEL") {
rtpengine_manage();
}
}
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3821
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3821(a)github.com>
[View Less]
some of the documentation contains \ which need escaping
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is …
[View More]contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3824
-- Commit Summary --
* tools/kemi: escape docstrings when required
-- File Changes --
M misc/tools/kemi/python_mock/kemi_mock.py (2)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3824.patchhttps://github.com/kamailio/kamailio/pull/3824.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3824
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3824(a)github.com>
[View Less]
After the transaction was suspended, 1st user registered, got INVITE message, there is 2nd user wakes up and send REGISTER.
Kamailio check if transaction suspended (for 2nd user, it is not suspended anymore), and checks if there is stored transaction.
So, for 2nd user we have stored transaction, then it should append new branch. ts_append failed.
if ($var(suspended) == 0) {
if ($var(stored)) {
# no suspended INVITE (i.e. there was at least one
…
[View More] # registered contact for target) and 'stored' set
# (i.e. ongoing transaction) -> this newly just
# registered contact needs alerting.
ts_append("location", "sip:$avp(extension)@LOCALVIRTUALIP");
xinfo("appending branches for sip:$avp(extension)@LOCALVIRTUALIP, result $rc");
} else {
xinfo("no suspended transactions for $tu");
}
return;
}
Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1339] <script>: -----------122583d4102d400d8565c6f48d217b8d
Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1348] <script>: var(suspended)=0, tsilo=>suspended::122583d4102d400d8565c6f48d217b8d
Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1349] <script>: var(stored)=1, tsilo=>stored::122583d4102d400d8565c6f48d217b8d
Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: ERROR: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1357] tsilo [ts_append.c:152]: ts_append_to(): transaction 11743:1310842517: error updating dset (-1)
Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1359] <script>: appending branches for sip:1000@10.160.201.190, result 1
At this moment we have active transaction
`{
cell: 0x7f313d43cda8
tindex: 11743
tlabel: 1310842517
method: INVITE
from: From: "9988" <sip:9988@10.156.0.6>;tag=as081c0936
to: To: <sip:1000@10.160.201.190:5070>
callid: Call-ID: 66d9dace125df36915783fb379f4e3dd@10.156.0.6:5060
cseq: CSeq: 102
uas_request: yes
tflags: 69
outgoings: 3
ref_count: 1
lifetime: 5402832
}
`
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3782
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3782(a)github.com>
[View Less]