Changeset 5248:0133acb5ae31 in roaraudio


Ignore:
Timestamp:
11/13/11 12:59:34 (8 years ago)
Author:
phi
Branch:
default
Message:

removed most roar_socket_new_*()

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • include/libroar/socket.h

    r5121 r5248  
    5454 
    5555// TODO: those function should be made /static/. 
    56 int roar_socket_new_tcp    (void) _LIBROAR_ATTR_TO_STATIC; 
    57 int roar_socket_new_udp    (void) _LIBROAR_ATTR_TO_STATIC; 
    58 int roar_socket_new_tcp6   (void) _LIBROAR_ATTR_TO_STATIC; 
    59 int roar_socket_new_udp6   (void) _LIBROAR_ATTR_TO_STATIC; 
    60 int roar_socket_new_unix   (void) _LIBROAR_ATTR_TO_STATIC; 
     56#if 0 
    6157int roar_socket_new_decnet_seqpacket (void) _LIBROAR_ATTR_TO_STATIC; 
    62 int roar_socket_new_decnet_stream (void) _LIBROAR_ATTR_TO_STATIC; 
    6358int roar_socket_new_ipxspx (void) _LIBROAR_ATTR_TO_STATIC; 
    64 int roar_socket_new_ipx    (void) _LIBROAR_ATTR_TO_STATIC; 
     59#endif 
     60 
     61int roar_socket_new        (int type); 
    6562 
    6663int roar_socket_open       (int mode, int type, char * host, int port); 
  • libroar/socket.c

    r5210 r5248  
    5454#endif 
    5555 
    56 int roar_socket_new_tcp (void) { 
    57 #ifdef ROAR_HAVE_IPV4 
    58  int fh; 
    59 #if defined(TCP_NODELAY) && !defined(ROAR_TARGET_WIN32) 
    60  int t   = 1; 
    61 #endif 
    62  
    63  roar_socket_win32_init(); 
    64  
    65  fh = socket(AF_INET, SOCK_STREAM, 0); 
    66  
    67  roar_socket_set_tos(fh); 
    68 #if defined(TCP_NODELAY) && !defined(ROAR_TARGET_WIN32) 
    69  setsockopt(fh, IPPROTO_TCP, TCP_NODELAY, &t, sizeof(int)); 
    70 #endif 
    71  
    72  return fh; 
    73 #else 
    74  return -1; 
    75 #endif 
    76 } 
    77  
    78 int roar_socket_new_udp (void) { 
    79 #ifdef ROAR_HAVE_IPV4 
    80  int fh; 
    81  
    82  roar_socket_win32_init(); 
    83  
    84  fh = socket(AF_INET, SOCK_DGRAM, 0); 
    85  
    86  roar_socket_set_tos(fh); 
    87  
    88  return fh; 
    89 #else 
    90  return -1; 
    91 #endif 
    92 } 
    93  
    94 int roar_socket_new_tcp6 (void) { 
    95 #ifdef ROAR_HAVE_IPV6 
    96  int fh; 
    97  
    98  roar_socket_win32_init(); 
    99  
    100  fh = socket(AF_INET6, SOCK_STREAM, 0); 
    101  
    102  roar_socket_set_tos(fh); 
    103  
    104  return fh; 
    105 #else 
    106  return -1; 
    107 #endif 
    108 } 
    109  
    110 int roar_socket_new_udp6 (void) { 
    111 #ifdef ROAR_HAVE_IPV6 
    112  int fh; 
    113  
    114  roar_socket_win32_init(); 
    115  
    116  fh = socket(AF_INET6, SOCK_DGRAM, 0); 
    117  
    118  roar_socket_set_tos(fh); 
    119  
    120  return fh; 
    121 #else 
    122  return -1; 
    123 #endif 
    124 } 
    125  
    126 int roar_socket_new_unix (void) { 
    127 #ifdef ROAR_HAVE_UNIX 
    128  int fh; 
    129 /* 
    130 #ifdef SO_PEERCRED 
    131  int opt = 1; 
    132 #endif 
    133 */ 
    134  
    135  fh = socket(AF_UNIX, SOCK_STREAM, 0); 
    136  
    137 /* 
    138 #ifdef SO_PEERCRED 
    139 // setsockopt(fh, SOL_SOCKET, SO_PASSCRED, &opt, sizeof(int)); 
    140 #endif 
    141 */ 
    142  
    143  return fh; 
    144 #else 
    145  return -1; 
    146 #endif 
    147 } 
    148  
    14956int roar_socket_decnet_set_timeout (int fh, time_t sec, int usec) { 
    15057#ifdef ROAR_HAVE_LIBDNET 
     
    18390} 
    18491 
    185 int roar_socket_new_decnet_seqpacket (void) { 
     92#if 0 
     93static int roar_socket_new_decnet_seqpacket (void) { 
    18694#ifdef ROAR_HAVE_LIBDNET 
    18795 int fh; 
     
    196104#endif 
    197105} 
    198  
    199  
    200 int roar_socket_new_decnet_stream (void) { 
     106#endif 
     107 
     108 
     109#if 0 
     110static int roar_socket_new_ipxspx (void) { 
     111 return -1; 
     112} 
     113#endif 
     114 
     115int roar_socket_new        (int type) { 
     116 int sys_domain = -1, sys_type = -1, sys_protocol = 0; 
     117 int fh; 
     118#if defined(ROAR_HAVE_IPV4) && defined(TCP_NODELAY) && !defined(ROAR_TARGET_WIN32) 
     119 int t   = 1; 
     120#endif 
     121 
     122 switch (type) { 
     123  case ROAR_SOCKET_TYPE_NONE: 
     124  case ROAR_SOCKET_TYPE_GENSTR: 
     125    roar_err_set(ROAR_ERROR_INVAL); 
     126    return -1; 
     127   break; 
     128  case ROAR_SOCKET_TYPE_FILE: 
     129  case ROAR_SOCKET_TYPE_FORK: 
     130    roar_err_set(ROAR_ERROR_PERM); 
     131    return -1; 
     132   break; 
     133#ifdef ROAR_HAVE_IPV4 
     134  case ROAR_SOCKET_TYPE_TCP: 
     135    sys_domain = AF_INET; sys_type = SOCK_STREAM; 
     136   break; 
     137  case ROAR_SOCKET_TYPE_UDP: 
     138    sys_domain = AF_INET; sys_type = SOCK_DGRAM; 
     139   break; 
     140#endif 
     141#ifdef ROAR_HAVE_UNIX 
     142  case ROAR_SOCKET_TYPE_UNIX: 
     143    sys_domain = AF_UNIX; sys_type = SOCK_STREAM; 
     144   break; 
     145#endif 
    201146#ifdef ROAR_HAVE_LIBDNET 
    202  int fh; 
    203  
    204  fh = socket(AF_DECnet, SOCK_STREAM, DNPROTO_NSP); 
    205  
    206  roar_socket_decnet_set_timeout(fh, 300, 0); 
     147  case ROAR_SOCKET_TYPE_DECNET: 
     148    sys_domain = AF_DECnet; sys_type = SOCK_STREAM; sys_protocol = DNPROTO_NSP; 
     149   break; 
     150#endif 
     151#ifdef ROAR_HAVE_IPV6 
     152  case ROAR_SOCKET_TYPE_TCP6: 
     153    sys_domain = AF_INET6; sys_type = SOCK_STREAM; 
     154   break; 
     155  case ROAR_SOCKET_TYPE_UDP6: 
     156    sys_domain = AF_INET6; sys_type = SOCK_DGRAM; 
     157   break; 
     158#endif 
     159#ifdef ROAR_HAVE_IPX 
     160  case ROAR_SOCKET_TYPE_IPX: 
     161    sys_domain = AF_IPX; sys_type = SOCK_DGRAM; sys_protocol = AF_IPX; 
     162   break; 
     163#endif 
     164  case ROAR_SOCKET_TYPE_IPXSPX: 
     165  case ROAR_SOCKET_TYPE_LAT_SERVICE: 
     166  case ROAR_SOCKET_TYPE_LAT_REVERSE_PORT: 
     167  default: 
     168    roar_err_set(ROAR_ERROR_AFNOTSUP); 
     169    return -1; 
     170   break; 
     171 } 
     172 
     173 roar_socket_win32_init(); 
     174 
     175 roar_err_clear_all(); 
     176 fh = socket(sys_domain, sys_type, sys_protocol); 
     177 if ( fh == -1 ) { 
     178  roar_err_update(); 
     179  return -1; 
     180 } 
     181 
     182 // do the extra work we need to do for some socket types: 
     183 switch (type) { 
     184#ifdef ROAR_HAVE_IPV4 
     185  case ROAR_SOCKET_TYPE_TCP: 
     186#if defined(TCP_NODELAY) && !defined(ROAR_TARGET_WIN32) 
     187   setsockopt(fh, IPPROTO_TCP, TCP_NODELAY, &t, sizeof(int)); 
     188#endif 
     189  case ROAR_SOCKET_TYPE_UDP: 
     190#endif 
     191#ifdef ROAR_HAVE_IPV6 
     192  case ROAR_SOCKET_TYPE_TCP6: 
     193  case ROAR_SOCKET_TYPE_UDP6: 
     194#endif 
     195#if defined(ROAR_HAVE_IPV4) || defined(ROAR_HAVE_IPV6) 
     196    roar_socket_set_tos(fh); 
     197   break; 
     198#endif 
     199#ifdef ROAR_HAVE_LIBDNET 
     200  case ROAR_SOCKET_TYPE_DECNET: 
     201    roar_socket_decnet_set_timeout(fh, 300, 0); 
     202   break; 
     203#endif 
     204 } 
    207205 
    208206 return fh; 
    209 #else 
    210  return -1; 
    211 #endif 
    212 } 
    213  
    214 int roar_socket_new_ipxspx (void) { 
    215  return -1; 
    216 } 
    217  
    218 int roar_socket_new_ipx    (void) { 
    219 #ifdef ROAR_HAVE_IPX 
    220  return socket(AF_IPX, SOCK_DGRAM, AF_IPX); 
    221 #else 
    222  return -1; 
    223 #endif 
    224207} 
    225208 
     
    280263 } 
    281264 
    282  n = roar_socket_new_udp(); 
     265 n = roar_socket_new(ROAR_SOCKET_TYPE_UDP); 
    283266 
    284267 if ( n == -1 ) 
     
    424407int roar_socket_listen_decnet (char * object, int num) { 
    425408#ifdef ROAR_HAVE_LIBDNET 
    426  int fh = roar_socket_new_decnet_stream(); 
     409 int fh = roar_socket_new(ROAR_SOCKET_TYPE_DECNET); 
    427410 struct sockaddr_dn bind_sockaddr; 
    428411 
     
    695678 
    696679  if ( type == ROAR_SOCKET_TYPE_INET ) { 
    697    fh = roar_socket_new_tcp(); 
     680   fh = roar_socket_new(ROAR_SOCKET_TYPE_TCP); 
    698681  } else { 
    699    fh = roar_socket_new_tcp6(); 
     682   fh = roar_socket_new(ROAR_SOCKET_TYPE_TCP6); 
    700683  } 
    701684 
     
    721704   socket_addr.in.sin_port   = ROAR_HOST2NET16(port); 
    722705 
    723   fh = roar_socket_new_tcp(); 
     706  fh = roar_socket_new(ROAR_SOCKET_TYPE_TCP); 
    724707  addrlen = sizeof(struct sockaddr_in); 
    725708#endif 
     
    763746  } 
    764747 
    765   fh = roar_socket_new_unix(); 
     748  fh = roar_socket_new(ROAR_SOCKET_TYPE_UNIX); 
    766749 
    767750  if ( mode_func(fh, (struct sockaddr *)&socket_addr.un, sizeof(struct sockaddr_un)) == -1 ) { 
     
    795778   return -1; 
    796779 
    797   fh = roar_socket_new_ipx(); 
     780  fh = roar_socket_new(ROAR_SOCKET_TYPE_IPX); 
    798781 
    799782  close(fh); 
    800   roar_err_set(ROAR_ERROR_NOSYS); 
     783  roar_err_set(ROAR_ERROR_AFNOTSUP); 
    801784  return -1; 
    802785#else 
  • libroar/vio_socket.c

    r5033 r5248  
    7272    switch (def->d.socket.type) { 
    7373     case SOCK_STREAM: 
    74        fh = roar_socket_new_tcp(); 
     74       fh = roar_socket_new(ROAR_SOCKET_TYPE_TCP); 
    7575      break; 
    7676     case SOCK_DGRAM: 
    77        fh = roar_socket_new_udp(); 
     77       fh = roar_socket_new(ROAR_SOCKET_TYPE_UDP); 
    7878       connection_less = 1; 
    7979      break; 
     
    8989    switch (def->d.socket.type) { 
    9090     case SOCK_STREAM: 
    91        fh = roar_socket_new_unix(); 
     91       fh = roar_socket_new(ROAR_SOCKET_TYPE_UNIX); 
    9292      break; 
    9393     case SOCK_DGRAM: 
     
    109109    switch (def->d.socket.type) { 
    110110     case SOCK_STREAM: 
    111        fh = roar_socket_new_decnet_stream(); 
     111       fh = roar_socket_new(ROAR_SOCKET_TYPE_DECNET); 
    112112      break; 
    113113     default: 
     
    122122    switch (def->d.socket.type) { 
    123123     case SOCK_STREAM: 
    124        fh = roar_socket_new_tcp6(); 
     124       fh = roar_socket_new(ROAR_SOCKET_TYPE_TCP6); 
    125125      break; 
    126126     case SOCK_DGRAM: 
    127        fh = roar_socket_new_udp6(); 
     127       fh = roar_socket_new(ROAR_SOCKET_TYPE_UDP6); 
    128128       connection_less = 1; 
    129129      break; 
Note: See TracChangeset for help on using the changeset viewer.