Ignore:
Timestamp:
Apr 3, 2007 7:15:10 PM (17 years ago)
Author:
bennylp
Message:

Added ICE-CONTROLLED and ICE-CONTROLLING attribute, handle ICE 487 error, and add response source address checking

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjnath/src/pjnath/stun_session.c

    r1140 r1141  
    5252static void stun_tsx_on_complete(pj_stun_client_tsx *tsx, 
    5353                                 pj_status_t status,  
    54                                  const pj_stun_msg *response); 
     54                                 const pj_stun_msg *response, 
     55                                 const pj_sockaddr_t *src_addr, 
     56                                 unsigned src_addr_len); 
    5557static pj_status_t stun_tsx_on_send_msg(pj_stun_client_tsx *tsx, 
    5658                                        const void *stun_pkt, 
     
    326328static void stun_tsx_on_complete(pj_stun_client_tsx *tsx, 
    327329                                 pj_status_t status,  
    328                                  const pj_stun_msg *response) 
     330                                 const pj_stun_msg *response, 
     331                                 const pj_sockaddr_t *src_addr, 
     332                                 unsigned src_addr_len) 
    329333{ 
    330334    pj_stun_tx_data *tdata; 
     
    334338    if (tdata->sess->cb.on_request_complete) { 
    335339        (*tdata->sess->cb.on_request_complete)(tdata->sess, status, tdata,  
    336                                                response); 
     340                                               response,  
     341                                               src_addr, src_addr_len); 
    337342    } 
    338343} 
     
    697702 
    698703    if (notify) { 
    699         (sess->cb.on_request_complete)(sess, notify_status, tdata, NULL); 
     704        (sess->cb.on_request_complete)(sess, notify_status, tdata, NULL, 
     705                                       NULL, 0); 
    700706    } 
    701707 
     
    776782/* Handle incoming response */ 
    777783static pj_status_t on_incoming_response(pj_stun_session *sess, 
    778                                         pj_stun_msg *msg) 
     784                                        pj_stun_msg *msg, 
     785                                        const pj_sockaddr_t *src_addr, 
     786                                        unsigned src_addr_len) 
    779787{ 
    780788    pj_stun_tx_data *tdata; 
     
    793801     * and this will call the session callback too. 
    794802     */ 
    795     status = pj_stun_client_tsx_on_rx_msg(tdata->client_tsx, msg); 
     803    status = pj_stun_client_tsx_on_rx_msg(tdata->client_tsx, msg,  
     804                                          src_addr, src_addr_len); 
    796805    if (status != PJ_SUCCESS) { 
    797806        return status; 
     
    959968        PJ_STUN_IS_ERROR_RESPONSE(msg->hdr.type)) 
    960969    { 
    961         status = on_incoming_response(sess, msg); 
     970        status = on_incoming_response(sess, msg, src_addr, src_addr_len); 
    962971 
    963972    } else if (PJ_STUN_IS_REQUEST(msg->hdr.type)) { 
Note: See TracChangeset for help on using the changeset viewer.