Changeset 3802:958585351e28 in roaraudio for roard/roard.c


Ignore:
Timestamp:
05/07/10 23:15:25 (14 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

converted listen socket handling mostly to VIOs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roard/roard.c

    r3760 r3802  
    307307 
    308308 for (i = 0; i < ROAR_MAX_LISTEN_SOCKETS; i++) { 
    309   g_listen[i].socket = -1; 
    310309  g_listen[i].proto  = ROAR_PROTO_ROARAUDIO; 
    311310  server[i]          = NULL; 
     
    322321 
    323322 for (i = 0; i < ROAR_MAX_LISTEN_SOCKETS; i++) { 
    324   if ( g_listen[i].socket == -1 ) { 
     323  if ( ! g_listen[i].used ) { 
    325324   server[i] = NULL; 
    326325   *sock = &(g_listen[i]); 
     
    352351 if ( *addr != 0 ) { 
    353352  for (i = 0; i < ROAR_MAX_LISTEN_SOCKETS; i++) { 
    354    if ( g_listen[i].socket == -1 ) { 
     353   if ( ! g_listen[i].used ) { 
    355354    sockid = i; 
    356355    break; 
     
    365364  ROAR_DBG("add_listen(*): proto=0x%.4x", proto); 
    366365 
    367   if ( (g_listen[sockid].socket = roar_socket_listen(sock_type, addr, port)) == -1 ) { 
     366  if ( roar_vio_open_socket_listen(&(g_listen[sockid].sock), sock_type, addr, port) == -1 ) { 
    368367#ifdef ROAR_HAVE_UNIX 
    369368   if ( *addr == '/' ) { 
     
    378377    } else { 
    379378     unlink(addr); 
    380      if ( (g_listen[sockid].socket = roar_socket_listen(sock_type, addr, port)) == -1 ) { 
     379     if ( roar_vio_open_socket_listen(&(g_listen[sockid].sock), sock_type, addr, port) == -1 ) { 
    381380      ROAR_ERR("Can not open listen socket: %s", strerror(errno)); 
    382381      return 1; 
     
    455454 } 
    456455 
    457  server[sockid] = addr; 
     456 g_listen[sockid].used = 1; 
     457 server[sockid]        = addr; 
     458 
    458459 return 0; 
    459460} 
     
    18591860#ifdef ROAR_SUPPORT_LISTEN 
    18601861 for (i = 0; i < ROAR_MAX_LISTEN_SOCKETS; i++) { 
    1861   if ( g_listen[i].socket != -1 ) { 
    1862 #ifdef ROAR_HAVE_IO_POSIX 
    1863    close(g_listen[i].socket); 
    1864 #endif // #else is useless because we are in void context. 
    1865  
    1866    g_listen[i].socket = -1; 
     1862  if ( g_listen[i].used  ) { 
     1863   roar_vio_close(&(g_listen[i].sock)); 
     1864 
     1865   g_listen[i].used = 0; 
    18671866 
    18681867#ifdef ROAR_HAVE_UNIX 
Note: See TracChangeset for help on using the changeset viewer.