Menu

#108 Multi-valued headers not set properly

open
nobody
kitcat (30)
5
2011-07-15
2011-07-15
Jack Lucas
No

Apparently as a work-around to a problem with the NIST SIP stack, SipPort.createRequest makes repeated calls to setHeader when processing a header with multiple values. Each call replaces the header value rather than adding it. (SipPort.java, lines 203-221).

Note the following log entry for the file:

r1472 | venkita | 2009-06-25 16:14:56 -0400 (Thu, 25 Jun 2009) | 1 line
changes to createRequest method regarding the way in which headper map
is added. currently the stack does not throw exception when trying to
addLast a header that is existing and one that is a reqd header eg. to
header. As a work around setHeader is used

In the example test cases, SelfTests.testSimpleTwoWayCall attempts to push three routes, which has the effect of creating a multi-valued Route key in the header map. Only the first route pushed (which is the last entry in the route set) appears in the Route header. (Pending a fix here, the test case has been modified to push only a single route.)

Discussion


Log in to post a comment.