Ignore:
Timestamp:
May 28, 2007 12:58:57 PM (17 years ago)
Author:
bennylp
Message:

Fixed ticket #306: Error in SIP transport lookup because of memory alignment problem (thanks Samuel Vinson)

File:
1 edited

Legend:

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

    r1269 r1310  
    8282}; 
    8383 
    84 /* Key for looking up hash table */ 
    85 struct transport_key 
    86 { 
    87     pjsip_transport_type_e  type; 
    88     pj_sockaddr             addr; 
    89 }; 
    9084 
    9185/***************************************************************************** 
     
    13521346         * In this case, lookup the transport from the hash table. 
    13531347         */ 
    1354         struct transport_key key; 
     1348        pjsip_transport_key key; 
    13551349        int key_len; 
    13561350        pjsip_transport *transport; 
    13571351 
     1352        pj_bzero(&key, sizeof(key)); 
    13581353        key_len = sizeof(key.type) + addr_len; 
    13591354 
    13601355        /* First try to get exact destination. */ 
    13611356        key.type = type; 
    1362         pj_memcpy(&key.addr, remote, addr_len); 
     1357        pj_memcpy(&key.rem_addr, remote, addr_len); 
    13631358 
    13641359        transport = (pjsip_transport*) 
     
    13721367                     type == PJSIP_TRANSPORT_LOOP_DGRAM) 
    13731368            { 
    1374                 pj_sockaddr_in *addr = (pj_sockaddr_in*)&key.addr; 
     1369                pj_sockaddr_in *addr = (pj_sockaddr_in*)&key.rem_addr; 
    13751370 
    13761371                pj_bzero(addr, sizeof(pj_sockaddr_in)); 
     
    13841379                     (remote_addr->addr.sa_family == PJ_AF_INET))  
    13851380            { 
    1386                 pj_sockaddr_in *addr = (pj_sockaddr_in*)&key.addr; 
     1381                pj_sockaddr_in *addr = (pj_sockaddr_in*)&key.rem_addr; 
    13871382 
    13881383                pj_bzero(addr, sizeof(pj_sockaddr_in)); 
Note: See TracChangeset for help on using the changeset viewer.