Changeset 3909:182713540d14 in roaraudio


Ignore:
Timestamp:
06/06/10 13:41:24 (14 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

only support type=socket in case we have UNIX sockets

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroar/vio_pipe.c

    r3811 r3909  
    8585     } 
    8686   break; 
     87#ifdef ROAR_HAVE_UNIX 
    8788  case ROAR_VIO_PIPE_TYPE_SOCKET: 
    8889    if ( socketpair(AF_UNIX, SOCK_STREAM, 0, self->b.p) == -1 ) { 
     
    99100    } 
    100101   break; 
     102#endif 
    101103  default: 
    102104    roar_mm_free(self); 
     
    169171   } 
    170172   break; 
     173#ifdef ROAR_HAVE_UNIX 
    171174  case ROAR_VIO_PIPE_TYPE_SOCKET: 
    172175    close(self->b.p[idx = ROAR_VIO_PIPE_S(self, vio)]); 
    173176    self->b.p[idx] = -1; 
    174177   break; 
     178#endif 
    175179 } 
    176180 
     
    198202    return roar_socket_nonblock(self->b.p[(ROAR_VIO_PIPE_SR(self,vio)*2)+1], state); 
    199203   break; 
     204#ifdef ROAR_HAVE_UNIX 
    200205  case ROAR_VIO_PIPE_TYPE_SOCKET: 
    201206    return roar_socket_nonblock(self->b.p[ROAR_VIO_PIPE_S(self,vio)], state); 
    202207   break; 
     208#endif 
    203209 } 
    204210 
     
    231237  case ROAR_VIO_CTL_GET_FH: 
    232238  case ROAR_VIO_CTL_GET_SELECT_FH: 
     239#ifdef ROAR_HAVE_UNIX 
    233240    if ( self->type == ROAR_VIO_PIPE_TYPE_SOCKET ) { 
    234241     *(int*)data = self->b.p[ROAR_VIO_PIPE_S(self,vio)]; 
     
    237244     return -1; 
    238245    } 
     246#else 
     247    return -1; 
     248#endif 
    239249   break; 
    240250  case ROAR_VIO_CTL_GET_READ_FH: 
    241251  case ROAR_VIO_CTL_GET_SELECT_READ_FH: 
    242252    switch (self->type) { 
     253#ifdef ROAR_HAVE_UNIX 
    243254     case ROAR_VIO_PIPE_TYPE_SOCKET: 
    244255       *(int*)data = self->b.p[ROAR_VIO_PIPE_S(self,vio)]; 
    245256       return 0; 
    246257      break; 
     258#endif 
    247259     case ROAR_VIO_PIPE_TYPE_PIPE: 
    248260       *(int*)data = self->b.p[ROAR_VIO_PIPE_S(self,vio)*2]; 
     
    253265  case ROAR_VIO_CTL_GET_SELECT_WRITE_FH: 
    254266    switch (self->type) { 
     267#ifdef ROAR_HAVE_UNIX 
    255268     case ROAR_VIO_PIPE_TYPE_SOCKET: 
    256269       *(int*)data = self->b.p[ROAR_VIO_PIPE_S(self,vio)]; 
    257270       return 0; 
    258271      break; 
     272#endif 
    259273     case ROAR_VIO_PIPE_TYPE_PIPE: 
    260274       *(int*)data = self->b.p[(ROAR_VIO_PIPE_SR(self,vio)*2)+1]; 
     
    299313    return read(self->b.p[ROAR_VIO_PIPE_S(self,vio)*2], buf, count); 
    300314   break; 
     315#ifdef ROAR_HAVE_UNIX 
    301316  case ROAR_VIO_PIPE_TYPE_SOCKET: 
    302317    return read(self->b.p[ROAR_VIO_PIPE_S(self,vio)], buf, count); 
    303318   break; 
     319#endif 
    304320 } 
    305321 
     
    352368    return write(self->b.p[(ROAR_VIO_PIPE_SR(self,vio)*2)+1], buf, count); 
    353369   break; 
     370#ifdef ROAR_HAVE_UNIX 
    354371  case ROAR_VIO_PIPE_TYPE_SOCKET: 
    355372    return write(self->b.p[ROAR_VIO_PIPE_S(self,vio)], buf, count); 
    356373   break; 
     374#endif 
    357375 } 
    358376 
Note: See TracChangeset for help on using the changeset viewer.