Hi There,
We found a situation where topos seems to break, let me explain... Assuming the following scenario:
```
Caller ---- Callee
A: ------INVITE-----> Record-Route:A.A.A.A, Record-Route:B.B.B.B
B: <-----200 OK------
C: <-----INVITE------ Route: A.A.A.A, B.B.B.B
D: ------200 OK-----> Record-Route:B.B.B.B, Record-Route:A.A.A.A (reversed order)
E: <======INVITE===== Route: B.B.B.B, A.A.A.A (wrong)
```
A and B establish the connection from caller to callee, and topos works fine.
C (re-INVITE from callee) sends the Route header according to the Record-Routes from the original INVITE (A)
D is the 200 OK sent from the caller to the first re-INVITE (C) coming from the callee, with the Record-Route headers reversed, because is the order in which the callee received them; and according to the RFC it's working as intended:
```
When a UAS responds to a request with a response that establishes a
dialog (such as a 2xx to INVITE), the UAS MUST copy all Record-Route
header field values from the request into the response (including the
URIs, URI parameters, and any Record-Route header field parameters,
whether they are known or unknown to the UAS) and MUST maintain the
order of those values.
[...]
[When a UAC receives a response...]
The route set MUST be set to the list of URIs in the Record-Route
header field from the response, taken in reverse order and preserving
all URI parameters.
```
E takes the Route order from the last 200 OK ignoring they are in reversed order and assuming the top one is the first one, when it should be the other way around, sending to an IP address not reachable from the callee. And I think here is the issue, topos should not update the path on the Record-Routes from a 200 OK but if it does, it should take the reverse order
When disabling topos, everything works fine, or with topos enabled, by setting rr_update=0 works for us, but what if there is a real path update, rr_update=0 wouldn't work for us anymore. The Kamailio version is 5.8.0-rc0
Let me know if you need more information.
Thanks a lot,
Javi
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3778
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3778(a)github.com>
### Description
In Prometheus there is the possibility to tag values with tags. Those tags can then be used provide context to those values, for example to filter them.
### Expected behavior
It would be great if there was a way to provide custom tags to the metrics. These would essentially just be a static string between the name of the metric and its value.
Example:
`system_load15{host="wurst23.dev.sipgate.net",hostname_short="wurst32"} 0.4`
This could probably be achieved by having an `xhttp_prom_ending` parameter similar to the `xhttp_prom_beginning` as we essentially just want to append a static string right after the metric name.
#### Actual observed behavior
`kamailio_sip_lb_de_core_rcv_replies_1xx_invite 1773 1731419851663`
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4021
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4021(a)github.com>
Module: kamailio
Branch: 5.7
Commit: 4ddd8de2d6c6a02a5c156d0505feb9164a7d5a3e
URL: https://github.com/kamailio/kamailio/commit/4ddd8de2d6c6a02a5c156d0505feb91…
Author: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2024-11-15T11:19:59+01:00
doc: update manpage with missing -B option [skip ci]
(cherry picked from commit 77f03aabd871dbf86c5106a93eb32ce67d7762bf)
(cherry picked from commit 6816f992696fe894b3a47cd511a59e1b5a0ed89b)
---
Modified: doc/man/kamailio.8
---
Diff: https://github.com/kamailio/kamailio/commit/4ddd8de2d6c6a02a5c156d0505feb91…
Patch: https://github.com/kamailio/kamailio/commit/4ddd8de2d6c6a02a5c156d0505feb91…
---
diff --git a/doc/man/kamailio.8 b/doc/man/kamailio.8
index f4fc69ade7e..05460afbddc 100644
--- a/doc/man/kamailio.8
+++ b/doc/man/kamailio.8
@@ -8,7 +8,7 @@ kamailio \- a very fast and configurable SIP server
.SH SYNOPSIS
.B kamailio
[
-.B \-hfcmMdVIhEeblLnvKrRDTNWwtugPGSQOaAxXY
+.B \-hfcmMdVIhEebBlLnvKrRDTNWwtugPGSQOaAxXY
] [
.BI \-a " auto\-aliases\-mode"
] [
@@ -16,6 +16,8 @@ kamailio \- a very fast and configurable SIP server
] [
.BI \-b " max_rcv_buf_size"
] [
+.BI \-B " max_snd_buf_size"
+] [
.BI \-f " config\-file"
] [
.BI \-g " gid"
@@ -68,7 +70,10 @@ default is yes.
Add config pre-processor define (e.g., -A WITH_AUTH, -A N=1, -A X='"Y"')
.TP
.BI \-b " max_rcv_buf_size"
-Maximum receive buffer size which will not be exceeded by the auto-probing procedure even if the OS allows.
+Maximum OS UDP receive buffer size which will not be exceeded by auto-probing-and-increase procedure even if OS allows.
+.TP
+.BI \-B " max_snd_buf_size"
+Maximum OS UDP send buffer size which will not be exceeded by auto-probing-and-increase procedure even if OS allows.
.TP
.BI \-c
Checks the config file and displays the aliases and listen interface list.
Module: kamailio
Branch: 5.8
Commit: 6816f992696fe894b3a47cd511a59e1b5a0ed89b
URL: https://github.com/kamailio/kamailio/commit/6816f992696fe894b3a47cd511a59e1…
Author: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2024-11-15T11:18:46+01:00
doc: update manpage with missing -B option [skip ci]
(cherry picked from commit 77f03aabd871dbf86c5106a93eb32ce67d7762bf)
---
Modified: doc/man/kamailio.8
---
Diff: https://github.com/kamailio/kamailio/commit/6816f992696fe894b3a47cd511a59e1…
Patch: https://github.com/kamailio/kamailio/commit/6816f992696fe894b3a47cd511a59e1…
---
diff --git a/doc/man/kamailio.8 b/doc/man/kamailio.8
index f4fc69ade7e..05460afbddc 100644
--- a/doc/man/kamailio.8
+++ b/doc/man/kamailio.8
@@ -8,7 +8,7 @@ kamailio \- a very fast and configurable SIP server
.SH SYNOPSIS
.B kamailio
[
-.B \-hfcmMdVIhEeblLnvKrRDTNWwtugPGSQOaAxXY
+.B \-hfcmMdVIhEebBlLnvKrRDTNWwtugPGSQOaAxXY
] [
.BI \-a " auto\-aliases\-mode"
] [
@@ -16,6 +16,8 @@ kamailio \- a very fast and configurable SIP server
] [
.BI \-b " max_rcv_buf_size"
] [
+.BI \-B " max_snd_buf_size"
+] [
.BI \-f " config\-file"
] [
.BI \-g " gid"
@@ -68,7 +70,10 @@ default is yes.
Add config pre-processor define (e.g., -A WITH_AUTH, -A N=1, -A X='"Y"')
.TP
.BI \-b " max_rcv_buf_size"
-Maximum receive buffer size which will not be exceeded by the auto-probing procedure even if the OS allows.
+Maximum OS UDP receive buffer size which will not be exceeded by auto-probing-and-increase procedure even if OS allows.
+.TP
+.BI \-B " max_snd_buf_size"
+Maximum OS UDP send buffer size which will not be exceeded by auto-probing-and-increase procedure even if OS allows.
.TP
.BI \-c
Checks the config file and displays the aliases and listen interface list.
Module: kamailio
Branch: master
Commit: 77f03aabd871dbf86c5106a93eb32ce67d7762bf
URL: https://github.com/kamailio/kamailio/commit/77f03aabd871dbf86c5106a93eb32ce…
Author: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2024-11-15T11:10:59+01:00
doc: update manpage with missing -B option [skip ci]
* update -l description
---
Modified: doc/man/kamailio.8
---
Diff: https://github.com/kamailio/kamailio/commit/77f03aabd871dbf86c5106a93eb32ce…
Patch: https://github.com/kamailio/kamailio/commit/77f03aabd871dbf86c5106a93eb32ce…
---
diff --git a/doc/man/kamailio.8 b/doc/man/kamailio.8
index f4fc69ade7e..9579c806020 100644
--- a/doc/man/kamailio.8
+++ b/doc/man/kamailio.8
@@ -8,7 +8,7 @@ kamailio \- a very fast and configurable SIP server
.SH SYNOPSIS
.B kamailio
[
-.B \-hfcmMdVIhEeblLnvKrRDTNWwtugPGSQOaAxXY
+.B \-hfcmMdVIhEebBlLnvKrRDTNWwtugPGSQOaAxXY
] [
.BI \-a " auto\-aliases\-mode"
] [
@@ -16,6 +16,8 @@ kamailio \- a very fast and configurable SIP server
] [
.BI \-b " max_rcv_buf_size"
] [
+.BI \-B " max_snd_buf_size"
+] [
.BI \-f " config\-file"
] [
.BI \-g " gid"
@@ -68,7 +70,10 @@ default is yes.
Add config pre-processor define (e.g., -A WITH_AUTH, -A N=1, -A X='"Y"')
.TP
.BI \-b " max_rcv_buf_size"
-Maximum receive buffer size which will not be exceeded by the auto-probing procedure even if the OS allows.
+Maximum OS UDP receive buffer size which will not be exceeded by auto-probing-and-increase procedure even if OS allows.
+.TP
+.BI \-B " max_snd_buf_size"
+Maximum OS UDP send buffer size which will not be exceeded by auto-probing-and-increase procedure even if OS allows.
.TP
.BI \-c
Checks the config file and displays the aliases and listen interface list.
@@ -132,10 +137,18 @@ Turns on via host checking when forwarding replies.
Listens on the specified address/interface. Multiple
.B \-l
mean listening on multiple addresses. The address format is
-[proto:]address[:port], where proto = udp|tcp and
-address = host|ip_address|interface_name. Example: -l localhost,
--l udp:127.0.0.1:5080, -l eth0:5062.
-The default behaviour is to listen on all the ipv4 interfaces.
+[proto:]addr_lst[:port][/advaddr][/socket_name],
+where proto=udp|tcp|tls|sctp,
+addr_list = addr|(addr, addrress),
+addr=host|ip_address|interface_name,
+advaddr=addr[:port] (advertised address) and
+socket_name=identifying name.
+E.g: -l localhost, -l udp:127.0.0.1:5080, -l eth0:5062,
+-l udp:127.0.0.1:5080/1.2.3.4:5060,
+-l udp:127.0.0.1:5080//local,
+-l udp:127.0.0.1:5080/1.2.3.4:5060/local,
+-l \"sctp:(eth0)\", -l \"(eth0, eth1, 127.0.0.1):5065\".
+The default behaviour is to listen on all the interfaces.
.TP
.BI \-\-loadmodule\fR=\fIname
load the module specified by name