Comments (3)
Hi, I hope I can ask a question associated with this fix. I am in the process of evaluating a sip-stack for a project, and baresip/re looks really interresting.
Does this mean the sip-stack will NOT perform transport selection according to sip-rules, when sending in-dialog requests, since it seems to "remember" the transport selected during initiation??
IMHO, sending an indialog request SHOULD perform the full transport selection logic based on the route-set or contact-uri, and not just use what was decided for the initial invite.
The initial invite was probably sent to an AoR like [email protected], where size, and DNS could point to any protocol, while while a contact or RecRoute in the 1xx/2xx could contain both ;transport parameters, ip-addresses, and a different packet-size, causing that request to use another transport protocol, which is completely according to the rules.
from re.
The ;transport=xxx
parameter overrules everything what the linked PR/commit does. The intention was that if default transport protocol is chosen differently on both sides, that it is selected only by the initiator of the SIP dialog.
from re.
Ok, that sounds at least somewhat better, but only the transport-parameter? After all, if default starts/selects TCP (maybe to a local outgoing proxy that doesn't record-route), and the contact in the 1xx/2xx contains ip and/or port we SHOULD use UDP, and with a pure fqdn then naptr could select something else (providing we dont have RecRoutes).
And vice-versa; with a default choice of UDP, the size of a reinvite might exceed 1300...
from re.
Related Issues (20)
- new re debian build warnings HOT 1
- Android: warning: unknown warning option '-Watomic-implicit-seq-cst' HOT 1
- stack corruption detected (-fstack-protector) HOT 3
- Warning: ABI Check failed - bump ABI version HOT 2
- LibreSSL build is broken HOT 3
- Compile errors when USE_UNIXSOCK is off
- pthread_getname_np() too few arguments to function call, expected 2, have 1 HOT 2
- Possible problem with FreeBSD check HOT 1
- Build error on Windows ARM HOT 3
- Add support for building static and/or dynamic library HOT 8
- cmake: add libre namespace export HOT 2
- CMake generated project VS2017 compilation error HOT 1
- 100rel broken in 2 ways HOT 3
- Sec-WebSocket-Protocol header missing in Upgrade response HOT 5
- websocket connection gets closed after a few seconds
- ice_connchk_h gets called multiple times HOT 1
- websocket messages should be sent as text instead of binary HOT 3
- BYE is not sent for calls over websocket HOT 1
- sip/transp: websock_accept proto is missing
- Mingw warnings HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from re.