<!--
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:
* http://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* http://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
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
when using exclude_hf_value function to exclude values on Supported header there is a comma left after applying the exclude
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
### Troubleshooting
Before exclude_hf_value call : **Supported: 100rel, path, replaces**
After exclude_hf_value call : **Supported: 100rel,**
#### Reproduction
simple with sipp
```
route {
exclude_hf_value("Supported", "replaces");
exclude_hf_value("Supported", "path");
}
```
<!--
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).
-->
```
(paste your log messages here)
```
#### 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`
```
tested on kamailio 5.5.4 and kamailio 5.6.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`)
-->
```
debian bullseye
```
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3180
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3180(a)github.com>
(Off-topic)
Hello,
In about two weeks I will be a few days in Vienna (12h - 14th July).
If you want to meet for a drink to chat about Kamailio and other topics, just contact me off-list.
Thanks, and regards,
Henning
With the introduction of an external project reference via git submodule by `tls_wolfssl`, I am opening this to discuss where it would be the _best_ place for them.
Now it is in the folder of the tls_wolfssl module, but I noticed that many projects have a dedicated folder like `vendor` (or `extern`, `import`), and I would somehow that approach more because it is easier to locate the external code and figure out its implications in licensing, dependencies, etc ...
Moreover, it can happen that many modules would need to use that external project/repo. For example, now crypto uses libssl, but for someone that wants to get rid of it and use only libwolfssl may contribute an alternative of that module. Then two modules would need same external repo and having it inside another module would not be straightforward to manage.
Given the above, I would suggest to place them in a folder like `misc/vendor` or similar inside the `misc/` directory, not to get back into growing the root folder. I would like to keep `src/` folder only for Kamailio specific code.
If someone has other suggestions, propose them in comments and let's try to get to a decision soon.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3164
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3164(a)github.com>
Hello dear Kamailio Community. I am faced with the problem. Kamailio perfectly copes with ims server task. But 5 phone call does not work. I used the sngrep to track traffic, found that on the 5th call, instead of UPDATE, there is a CANCEL with Reason: RELEASE_CAUSE ;cause=3 ;text="Media bearer loss". All packets from the start of the call are the same up to this point.
Here is a detailed description of the normal call and bad call package.
Normal call package
```
2022/07/04 08:55:04.887359 192.168.101.3:5060 -> 172.22.0.21:5060
UPDATE sip:1337@192.168.101.2:7700;alias=192.168.101.2~7700~2 SIP/2.0
Max-Forwards: 70
To: <tel:1337;phone-context=ims.mnc001.mcc001.3gppnetwork.org>;tag=aa64262d
From: <sip:1339@ims.mnc001.mcc001.3gppnetwork.org>;tag=908707735
Call-ID: 908707729_2065538424(a)192.168.101.3
CSeq: 908707731 UPDATE
P-Access-Network-Info: 3GPP-E-UTRAN-FDD; utran-cell-id-3gpp=0010100010019B01
Content-Length: 463
Via: SIP/2.0/TCP 192.168.101.3:5060;branch=z9hG4bK495826873
Route: <sip:mo@172.22.0.21;transport=tcp;r2=on;lr=on;ftag=908707735;rm=8;did=e99.70a>,<sip:mo@172.22.0.21;r2=on;lr=on;ftag=908707735;rm=8;did=e99.70a>,<sip:mo@172.22.0.20:6060;transport
cp;r2=on;lr=on;ftag=908707735;did=e99.83e1>,<sip:mo@172.22.0.20:6060;r2=on;lr=on;ftag=908707735;did=e99.83e1>,<sip:mt@172.22.0.20:6060;lr=on;ftag=908707735;did=e99.93e1>,<sip:mt@172.22.
21;r2=on;lr=on;ftag=908707735;rm=7;did=e99.80a>,<sip:mt@172.22.0.21:5100;transport=tcp;r2=on;lr=on;ftag=908707735;rm=7;did=e99.80a>
Allow: INVITE,ACK,CANCEL,BYE,UPDATE,PRACK,MESSAGE,REFER,NOTIFY,INFO,OPTIONS
User-Agent: XXXX
Content-Type: application/sdp
Require: precondition
Contact: <sip:XXXX@192.168.101.3:5060>;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel";audio;video
```
Broken Call Package
```
2022/07/04 08:55:21.187316 192.168.101.3:5060 -> 172.22.0.21:5060
CANCEL tel:1337;phone-context=ims.mnc001.mcc001.3gppnetwork.org SIP/2.0
Content-Length: 453
Content-Type: application/sdp
Reason: RELEASE_CAUSE ;cause=3 ;text="Media bearer loss"
From: <sip:1339@ims.mnc001.mcc001.3gppnetwork.org>;tag=908718152
To: <tel:1337;phone-context=ims.mnc001.mcc001.3gppnetwork.org>
Call-ID: 908718145_2063316408(a)192.168.101.3
Max-Forwards: 70
CSeq: 908718145 CANCEL
Via: SIP/2.0/TCP 192.168.101.3:5060;branch=z9hG4bK1317538702;rport=5060
Route: <sip:172.22.0.21:5060;lr>,<sip:orig@scscf.ims.mnc001.mcc001.3gppnetwork.org:6060;lr>
User-Agent: XXXX
```
I was looking for the reason in p-cscf, but I came to a dead end.
Please tell me what the reasons for this "Media bearer loss" may be or what documentation is worth reading.
I didn't find anything on the official documentation
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3176
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3176(a)github.com>
Hello,
Kamailio SIP Server v5.6.1 stable release is out.
This is a maintenance release of the latest stable branch, 5.6, that
includes fixes since the release of v5.6.0. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.6.x. Deployments running previous v5.6.x
versions are strongly recommended to be upgraded to v5.6.1.
For more details about version 5.6.1 (including links and guidelines to
download the tarball or from GIT repository), visit:
* https://www.kamailio.org/w/2022/07/kamailio-v5-6-1-released/
RPM, Debian/Ubuntu packages will be available soon as well.
Adding a short note that the dates of next Kamailio World Conference -
Online have been set for September 7-8, 2022. Event website and more
details will be published soon!
Many thanks to all contributing and using Kamailio!
Cheers,
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Module: kamailio
Branch: 5.6
Commit: d49c4b498a0c835d4f3a36d0494b7a131bdfd332
URL: https://github.com/kamailio/kamailio/commit/d49c4b498a0c835d4f3a36d0494b7a1…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2022-07-06T09:31:48+02:00
modules: readme files regenerated - modules ... [skip ci]
---
Modified: src/modules/tm/README
Modified: src/modules/topos/README
---
Diff: https://github.com/kamailio/kamailio/commit/d49c4b498a0c835d4f3a36d0494b7a1…
Patch: https://github.com/kamailio/kamailio/commit/d49c4b498a0c835d4f3a36d0494b7a1…
---
diff --git a/src/modules/tm/README b/src/modules/tm/README
index 445630cf34..f1827a9e77 100644
--- a/src/modules/tm/README
+++ b/src/modules/tm/README
@@ -146,7 +146,7 @@ Daniel-Constantin Mierla
5.1. tm.list
5.2. tm.t_uac_start
5.3. tm.t_uac_wait
- 5.4. tm.t_uac_wait
+ 5.4. tm.t_uac_wait_block
5.5. tm.cancel
5.6. tm.hash_stats
5.7. tm.reply
@@ -410,7 +410,7 @@ Chapter 1. Admin Guide
5.1. tm.list
5.2. tm.t_uac_start
5.3. tm.t_uac_wait
- 5.4. tm.t_uac_wait
+ 5.4. tm.t_uac_wait_block
5.5. tm.cancel
5.6. tm.hash_stats
5.7. tm.reply
@@ -3008,7 +3008,7 @@ t_clean();
5.1. tm.list
5.2. tm.t_uac_start
5.3. tm.t_uac_wait
- 5.4. tm.t_uac_wait
+ 5.4. tm.t_uac_wait_block
5.5. tm.cancel
5.6. tm.hash_stats
5.7. tm.reply
@@ -3043,7 +3043,7 @@ t_clean();
Similar to tm.t_uac_start, but waits asynchronously for the SIP
response and tries to provide its details via RPC response.
-5.4. tm.t_uac_wait
+5.4. tm.t_uac_wait_block
Similar to tm.t_uac_start, but blocks waiting for the SIP response and
returns the SIP reply code and reason text via RPC response. It waits
diff --git a/src/modules/topos/README b/src/modules/topos/README
index ef7c0e9634..6c7ef0e3d8 100644
--- a/src/modules/topos/README
+++ b/src/modules/topos/README
@@ -140,11 +140,13 @@ Chapter 1. Admin Guide
to be loaded (tune the module parameters if needed).
It also works for SIP MESSAGE or other requests that do not create a
- dialog -- record_route() must be used for them as well, the headers are
- not going to be in the messages sent to the network, they are needed to
- know local addresses used to communicate with each side. This module is
- designed to work for presence (SUBSCRIBE-based) dialogs too. The
- REGISTER and PUBLISH requests are skipped from processing by this
+ dialog (e.g., OPTIONS) -- record_route() must be used for them as well,
+ the headers are not going to be in the messages sent to the network,
+ they are needed to know local addresses used to communicate with each
+ side. This module is designed to work for presence (SUBSCRIBE-based)
+ dialogs too.
+
+ The REGISTER and PUBLISH requests are skipped from processing by this
module, expected to be terminated on a local SIP server.
2. Dependencies
Module: kamailio
Branch: 5.6
Commit: b2a64563acc69a6c69ca462e137a1b5b84062248
URL: https://github.com/kamailio/kamailio/commit/b2a64563acc69a6c69ca462e137a1b5…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2022-07-06T09:25:06+02:00
topos: docs - small updates to module description
(cherry picked from commit b8fc507c9dee07f1a0b7af01d24142240bcd8fa4)
---
Modified: src/modules/topos/doc/topos_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/b2a64563acc69a6c69ca462e137a1b5…
Patch: https://github.com/kamailio/kamailio/commit/b2a64563acc69a6c69ca462e137a1b5…
---
diff --git a/src/modules/topos/doc/topos_admin.xml b/src/modules/topos/doc/topos_admin.xml
index dee94df414c..e0c7a2288c7 100644
--- a/src/modules/topos/doc/topos_admin.xml
+++ b/src/modules/topos/doc/topos_admin.xml
@@ -27,10 +27,12 @@
</para>
<para>
It also works for SIP MESSAGE or other requests that do not create
- a dialog -- record_route() must be used for them as well, the
- headers are not going to be in the messages sent to the network, they
+ a dialog (e.g., OPTIONS) -- record_route() must be used for them as well,
+ the headers are not going to be in the messages sent to the network, they
are needed to know local addresses used to communicate with each side.
- This module is designed to work for presence (SUBSCRIBE-based) dialogs too.
+ This module is designed to work for presence (SUBSCRIBE-based) dialogs too.
+ </para>
+ <para>
The REGISTER and PUBLISH requests are skipped from processing
by this module, expected to be terminated on a local SIP server.
</para>
Module: kamailio
Branch: master
Commit: 504695defe5510774aa37e658d016570f99c2e4f
URL: https://github.com/kamailio/kamailio/commit/504695defe5510774aa37e658d01657…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2022-07-05T20:46:19+02:00
modules: readme files regenerated - topos ... [skip ci]
---
Modified: src/modules/topos/README
---
Diff: https://github.com/kamailio/kamailio/commit/504695defe5510774aa37e658d01657…
Patch: https://github.com/kamailio/kamailio/commit/504695defe5510774aa37e658d01657…
---
diff --git a/src/modules/topos/README b/src/modules/topos/README
index b63965cd5d..a2d0544f55 100644
--- a/src/modules/topos/README
+++ b/src/modules/topos/README
@@ -50,6 +50,7 @@ Frederic Gaisnon
3.17. rr_update (int)
3.18. context (str)
3.19. methods_nocontact (str)
+ 3.20. methods_noinitial (str)
4. Functions
@@ -83,11 +84,12 @@ Frederic Gaisnon
1.17. Set rr_update parameter
1.18. Set context parameter
1.19. Set methods_nocontact parameter
- 1.20. tps_set_context usage
- 1.21. Usage of event_route[topos:msg-outgoing]
- 1.22. Usage of event_route[topos:msg-sending]
- 1.23. Usage of event_route[topos:msg-incoming]
- 1.24. Usage of event_route[topos:msg-receoving]
+ 1.20. Set methods_noinitial parameter
+ 1.21. tps_set_context usage
+ 1.22. Usage of event_route[topos:msg-outgoing]
+ 1.23. Usage of event_route[topos:msg-sending]
+ 1.24. Usage of event_route[topos:msg-incoming]
+ 1.25. Usage of event_route[topos:msg-receoving]
Chapter 1. Admin Guide
@@ -120,6 +122,7 @@ Chapter 1. Admin Guide
3.17. rr_update (int)
3.18. context (str)
3.19. methods_nocontact (str)
+ 3.20. methods_noinitial (str)
4. Functions
@@ -193,6 +196,7 @@ Chapter 1. Admin Guide
3.17. rr_update (int)
3.18. context (str)
3.19. methods_nocontact (str)
+ 3.20. methods_noinitial (str)
3.1. storage (str)
@@ -488,6 +492,18 @@ modparam("topos", "context", "srvone")
modparam("topos", "methods_nocontact", "CANCEL,PRACK")
...
+3.20. methods_noinitial (str)
+
+ List of SIP methods to skip doing topos if it is an intial request (no
+ To-tag).
+
+ Default value is “” (no method).
+
+ Example 1.20. Set methods_noinitial parameter
+...
+modparam("topos", "methods_noinitial", "OPTIONS,NOTIFY")
+...
+
4. Functions
4.1. tps_set_context(ctx)
@@ -499,7 +515,7 @@ modparam("topos", "methods_nocontact", "CANCEL,PRACK")
This function can be used from ANY_ROUTE.
- Example 1.20. tps_set_context usage
+ Example 1.21. tps_set_context usage
...
request_route {
...
@@ -527,7 +543,7 @@ request_route {
reparsing the outgoing SIP message for the cases when topology hiding
is not wanted.
- Example 1.21. Usage of event_route[topos:msg-outgoing]
+ Example 1.22. Usage of event_route[topos:msg-outgoing]
...
event_route[topos:msg-outgoing] {
if($sndto(ip)=="10.1.1.10") {
@@ -546,7 +562,7 @@ event_route[topos:msg-outgoing] {
$sndto(proto) point to the destination. The SIP message is the one to
be sent out.
- Example 1.22. Usage of event_route[topos:msg-sending]
+ Example 1.23. Usage of event_route[topos:msg-sending]
...
event_route[topos:msg-sending] {
if(is_request() and $fU=="alice") {
@@ -566,7 +582,7 @@ event_route[topos:msg-sending] {
internally generated one at startup, to avoid reparsing the outgoing
SIP message for the cases when topology hiding is not wanted.
- Example 1.23. Usage of event_route[topos:msg-incoming]
+ Example 1.24. Usage of event_route[topos:msg-incoming]
...
event_route[topos:msg-incoming] {
if($si=="10.1.1.10") {
@@ -584,7 +600,7 @@ event_route[topos:msg-incoming] {
Inside the event route the variables $si, $sp and $proto point to the
source address. The SIP message is the one to be sent out.
- Example 1.24. Usage of event_route[topos:msg-receoving]
+ Example 1.25. Usage of event_route[topos:msg-receoving]
...
event_route[topos:msg-receiving] {
if(is_request() and $fU=="alice") {
Module: kamailio
Branch: master
Commit: ebbe6268de3aff6ba830f1722942c2f10c6de2f3
URL: https://github.com/kamailio/kamailio/commit/ebbe6268de3aff6ba830f1722942c2f…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2022-07-04T15:46:14+02:00
modules: readme files regenerated - ndb_redis ... [skip ci]
---
Modified: src/modules/ndb_redis/README
Modified: src/modules/topos/README
---
Diff: https://github.com/kamailio/kamailio/commit/ebbe6268de3aff6ba830f1722942c2f…
Patch: https://github.com/kamailio/kamailio/commit/ebbe6268de3aff6ba830f1722942c2f…
---
diff --git a/src/modules/ndb_redis/README b/src/modules/ndb_redis/README
index 2ca2c52c58..46081b7ec8 100644
--- a/src/modules/ndb_redis/README
+++ b/src/modules/ndb_redis/README
@@ -50,6 +50,7 @@ Carsten Bock
3.7. disable_time (integer)
3.8. flush_on_reconnect (integer)
3.9. allow_dynamic_nodes (integer)
+ 3.10. debug (integer)
4. Functions
@@ -69,9 +70,10 @@ Carsten Bock
1.7. Set disable_time parameter
1.8. Set flush_on_reconnect parameter
1.9. Set allow_dynamic_nodes parameter
- 1.10. redis_cmd usage
- 1.11. redis_execute usage
- 1.12. redis_free usage
+ 1.10. Set debug parameter
+ 1.11. redis_cmd usage
+ 1.12. redis_execute usage
+ 1.13. redis_free usage
Chapter 1. Admin Guide
@@ -94,6 +96,7 @@ Chapter 1. Admin Guide
3.7. disable_time (integer)
3.8. flush_on_reconnect (integer)
3.9. allow_dynamic_nodes (integer)
+ 3.10. debug (integer)
4. Functions
@@ -138,6 +141,7 @@ Chapter 1. Admin Guide
3.7. disable_time (integer)
3.8. flush_on_reconnect (integer)
3.9. allow_dynamic_nodes (integer)
+ 3.10. debug (integer)
3.1. server (str)
@@ -319,6 +323,18 @@ modparam("ndb_redis", "cluster", 1)
modparam("ndb_redis", "allow_dynamic_nodes", 1)
...
+3.10. debug (integer)
+
+ Set the verbosity level for some of the log messages. It has to be a
+ log level value.
+
+ Default value is “3” (L_DBG).
+
+ Example 1.10. Set debug parameter
+...
+modparam("ndb_redis", "debug", 1)
+...
+
4. Functions
4.1. redis_cmd(srvname, command, ..., replyid)
@@ -359,7 +375,7 @@ modparam("ndb_redis", "allow_dynamic_nodes", 1)
value. The key can be: rpl_str, rpl_arr, rpl_int, rpl_err, rpl_sts,
rpl_nil.
- Example 1.10. redis_cmd usage
+ Example 1.11. redis_cmd usage
...
if(redis_cmd("srvN", "INCR cnt", "r")) {
# success - the incremented value is in $redis(r=>value)
@@ -438,7 +454,7 @@ if (redis_cmd("srvN", "EXEC", "r")) {
If cluster parameter is set to 1, this function will log an error and
do nothing.
- Example 1.11. redis_execute usage
+ Example 1.12. redis_execute usage
...
After several redis command calls:
redis_pipe_cmd("srvA", "SET foo bar", "r1");
@@ -486,7 +502,7 @@ d commands. The call is not necessary
function. When ndb_redis module closes, all pending replies are freed
automatically.
- Example 1.12. redis_free usage
+ Example 1.13. redis_free usage
...
After a redis command call:
redis_cmd("srvN", "INCR cnt", "r");
diff --git a/src/modules/topos/README b/src/modules/topos/README
index 4c6c4532ad..b63965cd5d 100644
--- a/src/modules/topos/README
+++ b/src/modules/topos/README
@@ -143,11 +143,13 @@ Chapter 1. Admin Guide
to be loaded (tune the module parameters if needed).
It also works for SIP MESSAGE or other requests that do not create a
- dialog -- record_route() must be used for them as well, the headers are
- not going to be in the messages sent to the network, they are needed to
- know local addresses used to communicate with each side. This module is
- designed to work for presence (SUBSCRIBE-based) dialogs too. The
- REGISTER and PUBLISH requests are skipped from processing by this
+ dialog (e.g., OPTIONS) -- record_route() must be used for them as well,
+ the headers are not going to be in the messages sent to the network,
+ they are needed to know local addresses used to communicate with each
+ side. This module is designed to work for presence (SUBSCRIBE-based)
+ dialogs too.
+
+ The REGISTER and PUBLISH requests are skipped from processing by this
module, expected to be terminated on a local SIP server.
2. Dependencies
Module: kamailio
Branch: master
Commit: b8fc507c9dee07f1a0b7af01d24142240bcd8fa4
URL: https://github.com/kamailio/kamailio/commit/b8fc507c9dee07f1a0b7af01d241422…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2022-07-04T15:34:47+02:00
topos: docs - small updates to module description
---
Modified: src/modules/topos/doc/topos_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/b8fc507c9dee07f1a0b7af01d241422…
Patch: https://github.com/kamailio/kamailio/commit/b8fc507c9dee07f1a0b7af01d241422…
---
diff --git a/src/modules/topos/doc/topos_admin.xml b/src/modules/topos/doc/topos_admin.xml
index 1fb1d1f960..02e7e232d7 100644
--- a/src/modules/topos/doc/topos_admin.xml
+++ b/src/modules/topos/doc/topos_admin.xml
@@ -27,10 +27,12 @@
</para>
<para>
It also works for SIP MESSAGE or other requests that do not create
- a dialog -- record_route() must be used for them as well, the
- headers are not going to be in the messages sent to the network, they
+ a dialog (e.g., OPTIONS) -- record_route() must be used for them as well,
+ the headers are not going to be in the messages sent to the network, they
are needed to know local addresses used to communicate with each side.
- This module is designed to work for presence (SUBSCRIBE-based) dialogs too.
+ This module is designed to work for presence (SUBSCRIBE-based) dialogs too.
+ </para>
+ <para>
The REGISTER and PUBLISH requests are skipped from processing
by this module, expected to be terminated on a local SIP server.
</para>
We use Kamilio as a proxy server to connect softphones to our PBX systems.
We have run into some TLS problems. These problems result in a shut down of the TLS connection after the error is encountered.
We have looked into serial numbers of certificates. The current code in kamailio seems to be broken due to changes in the world around... many certificates today do not adhere to the previously assumed behaviour of certificate serial numbers anymore.
The error which causes the connection to drop seems to be related to a comparison of the certificate serial numbers during renegotiation.
tls_err_ret(): TLS read:error:0D0E10DF:asn1 encoding routines:asn1_get_uint64:too large
Kamailio expects serial numbers to fit in a 64 bit unsigned, however during the last years, starting around 2003 more and more systems use automatically generated serial numbers, which are frequently 128 bit long.
The serialnumber of our own Auerswald root certificate looks to be only 64 bit long, but during the negotiation is presented as 9 bytes starting with 00h, which is interpreted as a 72bit value. Trying to put this serial number in a 64 bit long kills the connection.
Due to the different ways that are used to generate serial numbers now, there is no simple algorithm to condense the number into a 64bit value, and the whole number should be compared to see if it is same or higher.
We currently have disabled renegotiation to avoid the connection being dropped during renegotiation. Which however can lead to the connection being dropped by the other side during renegotiation, but this is not a good permanent workaround!
#### Reproduction
This issue happens infrequently
### Possible Solutions
No workaround possible on our side
### Additional Information
Kamailio Version 5.5.4
LibSSL 1.1.1.n
* **Operating System**:
Linux, Debian oldstable
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3168
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3168(a)github.com>