### Description
After I turned on topoh module, the forwarding call flow seems to break. This might be caused by the Contact header on Redirecting request is masked.
### Expected behavior
The Contact header in 301, 302 SIP message will not be masked, and the forward call will succeed.
#### Actual observed behavior
The 302 SIP Contact header gets masked by 127.0.0.1 (masked_ip).
#### SIP Traffic
```
2022/10/05 13:47:58.093790 192.168.1.109:5060 -> 192.168.1.66:55709
SIP/2.0 302 Moved Temporarily
Via: SIP/2.0/TCP 192.168.1.66:58554;received=192.168.1.66;branch=z9hG4bK-524287-1---493db1f2d8f51001;rport=55709
Record-Route: <sip:127.0.0.1;line=sr-N6IAzBFsMJZfWBc7MmZfMxq-W.y6Mx1LMBu5oB1dNB1EpSthH.3sW6WBW.Vlz6aYgxuqMB37z.pBMP**>
Record-Route: <sip:192.168.1.109;transport=tcp;r2=on;lr;ftag=697cc523;did=d26.97c1>
From: <sip:1000@192.168.1.109;transport=TCP>;tag=697cc523
To: <sip:1001@192.168.1.109>;tag=1357659545
Call-ID: g_hnmT8yukR7M9QxI-t6jA..
CSeq: 2 INVITE
Contact: <sip:127.0.0.1;line=sr-N6IAzBj6M.KyM.qLOBF6zGZfOBF6W.vuMxNA>
Supported: replaces, path, timer
User-Agent: Grandstream GXP1620 1.0.4.106
Diversion: <sip:1001@192.168.1.165:5070>;reason=unconditional
Allow: INVITE, ACK, OPTIONS, CANCEL, BYE, SUBSCRIBE, NOTIFY, INFO, REFER, UPDATE, MESSAGE
Content-Length: 0
```
### Possible Solutions
The behavior becomes normal when I turn off the topoh module.
Hence, I think this can be solved by retaining the Contact header for 301, 302 requests when using topoh.
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
kamailio 5.4.5
```
* **Operating System**:
```
Centos 7
```
[topoh_302.tar.gz](https://github.com/kamailio/kamailio/files/9714508/topoh_…
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3256
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3256(a)github.com>
This is used when a service (like AWS IoT Core) uses one TLS port for multiple services (like https and mqtt), so you have to set the ALPN to 'mqtt' to be able to connect kamailio.
<!-- 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, 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
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
Some services use ALPN to have one single TLS port serving multiple protocols, in order to avoid additional round-trips for negotiating TLS connections. https://en.wikipedia.org/wiki/Application-Layer_Protocol_Negotiation has the details.
One of those services using ALPN is AWS IoT Core, which allows components to send messages both via HTTP and MQTT to AWS for further processing (e.g. logging, analysis, storage to db etc). This patch enables kamailio to communicate with this service by allowing the kamailio admin to set the mqtt.so module mod-param *tls_alpn* to *mqtt*.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3261
-- Commit Summary --
* mqtt: Add tls_alpn module option
-- File Changes --
M src/modules/mqtt/doc/mqtt_admin.xml (21)
M src/modules/mqtt/mqtt_dispatch.c (13)
M src/modules/mqtt/mqtt_dispatch.h (3)
M src/modules/mqtt/mqtt_mod.c (5)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3261.patchhttps://github.com/kamailio/kamailio/pull/3261.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3261
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3261(a)github.com>
Module: kamailio
Branch: master
Commit: ea7201d9c3b086fb79c093b4f127516befb08e25
URL: https://github.com/kamailio/kamailio/commit/ea7201d9c3b086fb79c093b4f127516…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2022-10-13T15:46:31+02:00
modules: readme files regenerated - tsilo ... [skip ci]
---
Modified: src/modules/tsilo/README
---
Diff: https://github.com/kamailio/kamailio/commit/ea7201d9c3b086fb79c093b4f127516…
Patch: https://github.com/kamailio/kamailio/commit/ea7201d9c3b086fb79c093b4f127516…
---
diff --git a/src/modules/tsilo/README b/src/modules/tsilo/README
index c93fa0ebef..06029a2bac 100644
--- a/src/modules/tsilo/README
+++ b/src/modules/tsilo/README
@@ -180,7 +180,7 @@ modparam("tsilo", "use_domain", 1)
if (is_method("INVITE")) {
if (t_newtran()) {
ts_store();
- # t_store("sip:alice@$td");
+ # ts_store("sip:alice@$td");
}
}
...
@@ -199,6 +199,11 @@ if (is_method("INVITE")) {
and add them new branches. Can be a static string value or a
dynamic string with pseudo-variables.
+ Return codes:
+ * 1 - branches added.
+ -1 - an internal error has produced (parsing error, memory error).
+ -2 - no records found for the r-uri.
+
This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
Example 1.4. ts_append usage
@@ -231,6 +236,11 @@ if (is_method("REGISTER")) {
location lookup based on this Contact URI fails (no location record
found), then the branch append will not happen.
+ Return codes:
+ * 1 - branches added.
+ -1 - an internal error has produced (parsing error, memory error).
+ -2 - no records found for the r-uri.
+
This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
Example 1.5. ts_append_by_contact usage
I found a problem when I tested again. When the interval between the transmission of two info messages is too short, the forwarding of kamailio will be confused. Can this be solved please?
<img width="1077" alt="3212f45cd3f97e395065c8a109eaa9d" src="https://user-images.githubusercontent.com/16113837/195576921-dafc0511-5b8e-…">
![image](https://user-images.githubusercontent.com/16113837/195575863-b245c8f0-94ad-440c-9fe7-0301d037739c.png)
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3262
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3262(a)github.com>
<!-- 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, 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 https://github.com/kamailio/kamailio/commit/aa6e9963b2725c1b6b7e5ff995a77c2…https://lists.kamailio.org/pipermail/sr-users/2020-November/111152.html
#### Description
tm.t_uac_start adds new tag into from header even if it exists. It has already been fixed for t_uac_send function. But there is the same problem for tm.t_uac_start RPC command. I've fixed it in the same way.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3251
-- Commit Summary --
* tm: proper fill of From/To URI/tag values using parsed structure in rpc_t_uac()
-- File Changes --
M src/modules/tm/rpc_uac.c (24)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3251.patchhttps://github.com/kamailio/kamailio/pull/3251.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/3251
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/3251(a)github.com>