1. SipServletMessageImpl.setContent(content, type) does not honor charset in the text/plain content-type. This is because the decoded character encoding is set, after the bytes are processed. Affected file is SipServletMessageImpl.java.
2. B2buaHelperImpl.java should throw an invalidargumentexception, if the session passed in to unlinkSessions is invalid.
3. when Proxy.setAddtoPath for REGISTER requests, the container throw an exception if the request does not contain "path" in the "Supported" header. However as per setAddtoPath javadoc, it is a best practice for the servlet to check whether "path" is present in the Supported header.
4. ProxyBranch.isStarted now uses its own "isStarted" flag.
5. committed state checking now, includes a check for presence of transaction request. If transaction request is present, (i.e, the clonned request has a transaction request), then check its committed status first.
6. markReadyToInvalidate logic in updateSipSessionState method of SipSessionImplBase now take care of proxy branches. - When a 601>status>299 response for a proxy branch reach on server, now the server checks if that is the last response the proxy is expecting (i.e still dont have 200 response from any of the branches and this is the last branch).
- If atleast one proxy branch is has record-route true, the 200 response wont mark the session for invalidation. 7. reset() method is now applicable for all repsonses, when state is INITIAL.
8. If servlet do getProxyBranch(uri), right after crateProxyBranches(list), the code was failing. That was fixed.
9. I have temperorily reverted Jie's latest changes on multihoming to get the tests passing. It wont be checked in. It is just for me to get a clean test run. ~ ~