Changeset 2442


Ignore:
Timestamp:
Feb 6, 2009 8:44:23 AM (10 years ago)
Author:
bennylp
Message:

Ticket #718: Crash when handling incoming request without rport (thanks Norma Steveley and Seth Hinze for the report)

Location:
pjproject/trunk
Files:
2 added
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjsip/src/pjsip/sip_transaction.c

    r2394 r2442  
    13771377        tsx->addr_len = tsx->res_addr.addr_len; 
    13781378        tsx->is_reliable = PJSIP_TRANSPORT_IS_RELIABLE(tsx->transport); 
     1379    } else { 
     1380        tsx->is_reliable =  
     1381            (tsx->res_addr.dst_host.flag & PJSIP_TRANSPORT_RELIABLE); 
    13791382    } 
    13801383 
     
    23162319                    timeout = timeout_timer_val; 
    23172320                     
    2318                 } else if (PJSIP_TRANSPORT_IS_RELIABLE(tsx->transport)==0) { 
     2321                } else if (!tsx->is_reliable) { 
    23192322                     
    23202323                    /* For non-INVITE, start timer J at 64*T1 for unreliable 
     
    26562659        /* Start Timer D with TD/T4 timer if unreliable transport is used. */ 
    26572660        /* Note: tsx->transport may be NULL! */ 
    2658         if ((tsx->transport && PJSIP_TRANSPORT_IS_RELIABLE(tsx->transport)==0) 
    2659             || ((tsx->transport_flag & PJSIP_TRANSPORT_RELIABLE) == 0))  
    2660         { 
     2661        if (!tsx->is_reliable) { 
    26612662            if (tsx->method.id == PJSIP_INVITE_METHOD) { 
    26622663                timeout = td_timer_val; 
     
    27232724             * zero seconds for reliable transports. 
    27242725             */ 
    2725             if (PJSIP_TRANSPORT_IS_RELIABLE(tsx->transport)==0) { 
     2726            if (!tsx->is_reliable) { 
    27262727                timeout.sec = 0;  
    27272728                timeout.msec = 0; 
Note: See TracChangeset for help on using the changeset viewer.