Ignore:
Timestamp:
Apr 26, 2013 6:01:43 AM (11 years ago)
Author:
bennylp
Message:

Fixed #1661: Option to use SO_REUSEADDR for TCP and TLS listeners and use it by default on non-Windows platforms

File:
1 edited

Legend:

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

    r4451 r4506  
    218218    pj_sockaddr_init(cfg->af, &cfg->bind_addr, NULL, 0); 
    219219    cfg->async_cnt = 1; 
     220    cfg->reuse_addr = PJSIP_TCP_TRANSPORT_REUSEADDR; 
    220221} 
    221222 
     
    298299                                2, listener->factory.obj_name,  
    299300                                "SIP TCP listener socket"); 
     301 
     302    /* Apply SO_REUSEADDR */ 
     303    if (cfg->reuse_addr) { 
     304        int enabled = 1; 
     305        status = pj_sock_setsockopt(sock, pj_SOL_SOCKET(), pj_SO_REUSEADDR(), 
     306                                    &enabled, sizeof(enabled)); 
     307        if (status != PJ_SUCCESS) { 
     308            PJ_PERROR(4,(listener->factory.obj_name, status, 
     309                         "Warning: error applying SO_REUSEADDR")); 
     310        } 
     311    } 
    300312 
    301313    /* Bind address may be different than factory.local_addr because 
Note: See TracChangeset for help on using the changeset viewer.