Hi,
As 4.0.0 is now out I thought it would be a good time to post a summary
for those who are interested in outbound support.
I have listed the known issues below, their status, and what is likely
to be available as bug-fixes in the 4.0 branch.
_*1 Registrar module issues surrounding Require:/Supported: headers and
outbound
*_*Detail:* The registrar module doesn't quite follow the procedures in
RFC 5626 with regards to checking and setting Require: and Supported:
headers (issue identified by Olle during SIPit)
*Status**:* Fixed in pd/outbound (some tidying of the parser code still
required)
*4.0 branch:* won't be fixed in this branch as some extensive changes
have been made to the Kamailio parser code to support these fixes
*_2 Registrar module cannot unregister on broken flo_*_*w
*_*Detail:* When a broken flow is detected the contact binding
associated with that flow should be removed to prevent it being used
again. Failure to do so could result in a large number of old, broken,
contact bindings ending up in usrloc (especially if long registration
expiry times are used)
*Status:* Fix in progress in pd/outbound (updated API needs to be tested
and ruid needs to be added to the destination set and made available as
a PV)
*4.0 branch:* won't be fixed in this branch as the changes are
architectural in nature
_*3 Forking issues with outbound
*_*Detail**:* When a broken flow is found during forking we need to be
able to re-send the request to that client instance immediately without
waiting for all other forked legs to complete (issue identified by Olle
during SIPit)
*Status:* Hugh Waite is working on this. An email describing the
proposed fix will be sent to sr-dev soon for others to comment on.
*4.0 branch:* won't be fixed in this branch as this will require
extensive architectural changes relating to the handling of branch failures
_*4) Broken in-dialog routing when using outbound
*_*Detail:* In-dialog requests (including ACK and BYE) are incorrectly
routed when outbound is used (issued identified by Olle during SIPit)
*Status:* The bug is in the loose routing code in the rr module. I now
have a test system for this here and will work on this issue once issues
1 and 2 are finished.
*4.0 branch:* will be fixed in this branch. It should be a relatively
small change in one function in the rr module.
The upshot of this is that I expect Kamailio 4.0.1 (when it is released)
to be suitable for use as an outbound edge proxy, but anyone wanting to
use Kamailio as an outbound registrar will need Kamailio 4.1.0 and above.
Regards,
Peter
__