Ignore:
Timestamp:
Mar 17, 2007 10:21:58 PM (17 years ago)
Author:
bennylp
Message:

Fixed ticket #186: Major bug with destination address calculation for strict route set (thanks Hoi-Ho Chan)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/pjproject-0.5-stable/pjsip/include/pjsip/sip_util.h

    r974 r1077  
    173173 * chapter 8.1.2. 
    174174 * 
    175  * This function may modify the message (request line and Route headers), 
    176  * if the Route information specifies strict routing and the request 
    177  * URI in the message is different than the calculated target URI. In that 
    178  * case, the target URI will be put as the request URI of the request and 
    179  * current request URI will be put as the last entry of the Route headers. 
     175 * Note there was a change in the behavior of this function since version 
     176 * 0.5.10.2. Previously this function may modify the request when strict 
     177 * route is present (to update request URI and route-set). This is no 
     178 * longer the case now, and this process is done in separate function 
     179 * (see #pjsip_process_route_set()). 
    180180 * 
    181181 * @param tdata     The transmit data containing the request message. 
     
    187187 * 
    188188 * @return          PJ_SUCCESS, or the appropriate error code. 
    189  */ 
    190 PJ_DECL(pj_status_t) pjsip_get_request_addr( pjsip_tx_data *tdata, 
     189 * 
     190 * @see pjsip_process_route_set 
     191 */ 
     192PJ_DECL(pj_status_t) pjsip_get_request_dest(const pjsip_tx_data *tdata, 
     193                                            pjsip_host_info *dest_info ); 
     194 
     195 
     196/** 
     197 * Process route-set found in the request and calculate destination to be 
     198 * used to send the request message, based on the request URI and Route  
     199 * headers in the message. The procedure used here follows the guidelines 
     200 * on sending the request in RFC 3261 chapter 8.1.2. 
     201 * 
     202 * This function may modify the message (request line and Route headers), 
     203 * if the Route information specifies strict routing and the request 
     204 * URI in the message is different than the calculated target URI. In that 
     205 * case, the target URI will be put as the request URI of the request and 
     206 * current request URI will be put as the last entry of the Route headers. 
     207 * 
     208 * @param tdata     The transmit data containing the request message. 
     209 * @param dest_info On return, it contains information about destination 
     210 *                  host to contact, along with the preferable transport 
     211 *                  type, if any. Caller will then normally proceed with 
     212 *                  resolving this host with server resolution procedure 
     213 *                  described in RFC 3263. 
     214 * 
     215 * @return          PJ_SUCCESS, or the appropriate error code. 
     216 * 
     217 * @see pjsip_get_request_addr 
     218 */ 
     219PJ_DECL(pj_status_t) pjsip_process_route_set(pjsip_tx_data *tdata, 
    191220                                             pjsip_host_info *dest_info ); 
    192221 
Note: See TracChangeset for help on using the changeset viewer.