<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi,<br>
    <br>
    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.<br>
    <br>
    I have listed the known issues below, their status, and what is
    likely to be available as bug-fixes in the 4.0 branch.<br>
    <br>
    <u><b>1 Registrar module issues surrounding Require:/Supported:
        headers and outbound<br>
      </b></u><b>Detail:</b> 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)<br>
    <b>Status</b><b>:</b> Fixed in pd/outbound (some tidying of the
    parser code still required)<br>
    <b>4.0 branch:</b> won't be fixed in this branch as some extensive
    changes have been made to the Kamailio parser code to support these
    fixes<br>
    <br>
    <b><u>2 Registrar module cannot unregister on broken flo</u></b><u><b>w<br>
      </b></u><b>Detail:</b> When a broken flow is detected the contact
    binding associated with that flow should be removed to prevent it
    being used again.&nbsp; 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)<br>
    <b>Status:</b> 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)<br>
    <b>4.0 branch:</b> won't be fixed in this branch as the changes are
    architectural in nature<br>
    <br>
    <u><b>3 Forking issues with outbound<br>
      </b></u><b>Detail</b><b>:</b> 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)<br>
    <b>Status:</b> Hugh Waite is working on this. An email describing
    the proposed fix will be sent to sr-dev soon for others to comment
    on.<br>
    <b>4.0 branch:</b> won't be fixed in this branch as this will
    require extensive architectural changes relating to the handling of
    branch failures<br>
    <br>
    <u><b>4) Broken in-dialog routing when using outbound<br>
      </b></u><b>Detail:</b> In-dialog requests (including ACK and BYE)
    are incorrectly routed when outbound is used (issued identified by
    Olle during SIPit)<br>
    <b>Status:</b> The bug is in the loose routing code in the rr
    module.&nbsp; I now have a test system for this here and will work on
    this issue once issues 1 and 2 are finished.<br>
    <b>4.0 branch:</b> will be fixed in this branch.&nbsp; It should be a
    relatively small change in one function in the rr module.<br>
    <br>
    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.<br>
    <br>
    Regards,<br>
    <br>
    Peter<br>
    <u></u>
  </body>
</html>