diff options
author | Benny Prijono <bennylp@teluu.com> | 2007-03-18 09:29:45 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2007-03-18 09:29:45 +0000 |
commit | 331af12f95e6c79555ce45e5ea9c387fd70915dc (patch) | |
tree | 82e43762600706a773f936eecc7e2f07eb0d182b /pjsip/include | |
parent | 8d7622716dcb3f8707839e84a8331941528b047c (diff) |
Fixed ticket #187: Bug with destination address calculation for strict route set (thanks Hoi-Ho Chan)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1079 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip/include')
-rw-r--r-- | pjsip/include/pjsip/sip_util.h | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/pjsip/include/pjsip/sip_util.h b/pjsip/include/pjsip/sip_util.h index 84affed6..4d19d306 100644 --- a/pjsip/include/pjsip/sip_util.h +++ b/pjsip/include/pjsip/sip_util.h @@ -172,6 +172,33 @@ PJ_DECL(pj_status_t) pjsip_endpt_create_cancel( pjsip_endpoint *endpt, * used here follows the guidelines on sending the request in RFC 3261 * chapter 8.1.2. * + * Note there was a change in the behavior of this function since version + * 0.5.10.2. Previously this function may modify the request when strict + * route is present (to update request URI and route-set). This is no + * longer the case now, and this process is done in separate function + * (see #pjsip_process_route_set()). + * + * @param tdata The transmit data containing the request message. + * @param dest_info On return, it contains information about destination + * host to contact, along with the preferable transport + * type, if any. Caller will then normally proceed with + * resolving this host with server resolution procedure + * described in RFC 3263. + * + * @return PJ_SUCCESS, or the appropriate error code. + * + * @see pjsip_process_route_set + */ +PJ_DECL(pj_status_t) pjsip_get_request_dest(const pjsip_tx_data *tdata, + pjsip_host_info *dest_info ); + + +/** + * Process route-set found in the request and calculate destination to be + * used to send the request message, based on the request URI and Route + * headers in the message. The procedure used here follows the guidelines + * on sending the request in RFC 3261 chapter 8.1.2. + * * This function may modify the message (request line and Route headers), * if the Route information specifies strict routing and the request * URI in the message is different than the calculated target URI. In that @@ -186,8 +213,10 @@ PJ_DECL(pj_status_t) pjsip_endpt_create_cancel( pjsip_endpoint *endpt, * described in RFC 3263. * * @return PJ_SUCCESS, or the appropriate error code. + * + * @see pjsip_get_request_addr */ -PJ_DECL(pj_status_t) pjsip_get_request_addr( pjsip_tx_data *tdata, +PJ_DECL(pj_status_t) pjsip_process_route_set(pjsip_tx_data *tdata, pjsip_host_info *dest_info ); |