#186 closed defect (fixed)
Bug with destination address calculation for strict route set (thanks Hoi-Ho Chan)
Reported by: | bennylp | Owned by: | bennylp |
---|---|---|---|
Priority: | major | Milestone: | release-0.5.10.3 |
Component: | pjsip | Version: | 0.5.10.2 |
Keywords: | Cc: | ||
Backport to 1.x milestone: | Backported: |
Description (last modified by bennylp)
The destination address of a request is calculated by pjsip_get_request_addr() function in sip_util.[hc] file. For strict-route case, this function will remove the top-most Route, put this Route URI into target URI, and place the original target URI as the last Route header.
When there is only one strict Route header present, effectively this will swap the value of Route URI with the request URI.
The problem occurs because this function was called twice by the transaction, first during UAC transaction initialization and second when sending the request. Because of this, on the second call of the function, the function will swap back the Route and request URI, putting back the Route and request URI of the original request'''
Effectively this means that the strict Route header will be ignored!
Change History (2)
comment:1 Changed 18 years ago by bennylp
- Description modified (diff)
- Resolution set to fixed
- Status changed from new to closed
comment:2 Changed 18 years ago by bennylp
- Summary changed from Major bug with destination address calculation for strict route set (thanks Hoi-Ho Chan) to Bug with destination address calculation for strict route set (thanks Hoi-Ho Chan)
Fixed compilation warnings because of previous changes in r1078.
Fixed in r1077:
The function pjsip_get_request_addr() is now split into two functions: