Hi Nathan,

you are right about the ip_addr code that it add only ws for both ws and wss 
transport.

Cheers,

Henning


-----Original Message-----
From: [email protected] <[email protected]> 
Sent: Monday, January 30, 2023 12:24 PM
To: [email protected]
Subject: [SR-Users] Re: transport=ws causing kamailio to use wrong listen socket

Thanks for all the pointers.

@Henning, it seems kamailio will always use 'transport=ws' because the RFC for 
SIP URI's does not allow for wss (see: 
https://github.com/kamailio/kamailio/blob/master/src/core/ip_addr.c#L690)

@Olle We also re-use the existing client sockets, no need for outbound 
connections.

Actually, my initial problem description wasn't completely correct. Our 
Kamailio *does* correctly forward the SIP messages to the client, which 
receives them well. The problem lies in the `Record-Route` header that Kamailio 
adds. In that header, Kamailio inserts the wrong ip/port combination, as it's 
using a tcp socket where it should use the tls socket. 

I think the underlying problem is here: 
https://github.com/kamailio/kamailio/blob/master/src/core/forward.c#L293. This 
method will receive `proto = PROTO_WS` as described by the transport in the sip 
uri, but doesn't know it's really a wss connection.
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions To unsubscribe send 
an email to [email protected]
Important: keep the mailing list in the recipients, do not reply only to the 
sender!
Edit mailing list options or unsubscribe:
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
To unsubscribe send an email to [email protected]
Important: keep the mailing list in the recipients, do not reply only to the 
sender!
Edit mailing list options or unsubscribe:

Reply via email to