Changeset 8097

Show
Ignore:
Timestamp:
03/24/08 09:58:45
Author:
jcorgan
Message:

Fixed gr.udp_source,sink for use on Win32 (Don Ward)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • gnuradio/trunk/gnuradio-core/src/lib/io/gr_udp_sink.cc

    r7454 r8097  
    2727#include <gr_io_signature.h> 
    2828#include <stdexcept> 
     29#if defined(HAVE_SOCKET) 
    2930#include <netdb.h> 
     31typedef void* optval_t; 
     32#else 
     33#define SHUT_RDWR 2 
     34#define inet_aton(N,A) ( (A)->s_addr = inet_addr(N), ( (A)->s_addr != INADDR_NONE ) ) 
     35typedef char* optval_t; 
     36#endif 
    3037 
    3138#define SNK_VERBOSE 0 
     
    113120  // Turn on reuse address 
    114121  int opt_val = true; 
    115   if(setsockopt(d_socket, SOL_SOCKET, SO_REUSEADDR, (void*)&opt_val, sizeof(int)) == -1) { 
     122  if(setsockopt(d_socket, SOL_SOCKET, SO_REUSEADDR, (optval_t)&opt_val, sizeof(int)) == -1) { 
    116123    perror("SO_REUSEADDR"); 
    117124    throw std::runtime_error("can't set socket option SO_REUSEADDR"); 
     
    122129  lngr.l_onoff  = 1; 
    123130  lngr.l_linger = 0; 
    124   if(setsockopt(d_socket, SOL_SOCKET, SO_LINGER, (void*)&lngr, sizeof(linger)) == -1) { 
     131  if(setsockopt(d_socket, SOL_SOCKET, SO_LINGER, (optval_t)&lngr, sizeof(linger)) == -1) { 
    125132    perror("SO_LINGER"); 
    126133    throw std::runtime_error("can't set socket option SO_LINGER"); 
  • gnuradio/trunk/gnuradio-core/src/lib/io/gr_udp_sink.h

    r7454 r8097  
    2626#include <gr_sync_block.h> 
    2727#include <omnithread.h> 
     28#if defined(HAVE_SOCKET) 
    2829#include <sys/socket.h> 
    2930#include <arpa/inet.h> 
    30 #include <sys/socket.h> 
     31#elif defined(HAVE_WINDOWS_H) 
     32#include <winsock2.h> 
     33#include <windows.h> 
     34#endif 
    3135#if defined(HAVE_NETINET_IN_H) 
    3236#include <netinet/in.h> 
  • gnuradio/trunk/gnuradio-core/src/lib/io/gr_udp_source.cc

    r7454 r8097  
    2828#include <stdexcept> 
    2929#include <errno.h> 
     30#if defined(HAVE_SOCKET) 
    3031#include <netdb.h> 
     32typedef void* optval_t; 
     33#else 
     34#define SHUT_RDWR 2 
     35#define inet_aton(N,A) ( (A)->s_addr = inet_addr(N), ( (A)->s_addr != INADDR_NONE ) ) 
     36typedef char* optval_t; 
     37#endif 
    3138 
    3239#define SRC_VERBOSE 0 
     
    9299  // Turn on reuse address 
    93100  int opt_val = 1; 
    94   if(setsockopt(d_socket, SOL_SOCKET, SO_REUSEADDR, (void*)&opt_val, sizeof(int)) == -1) { 
     101  if(setsockopt(d_socket, SOL_SOCKET, SO_REUSEADDR, (optval_t)&opt_val, sizeof(int)) == -1) { 
    95102    perror("SO_REUSEADDR"); 
    96103    throw std::runtime_error("can't set socket option SO_REUSEADDR"); 
     
    101108  lngr.l_onoff  = 1; 
    102109  lngr.l_linger = 0; 
    103   if(setsockopt(d_socket, SOL_SOCKET, SO_LINGER, (void*)&lngr, sizeof(linger)) == -1) { 
     110  if(setsockopt(d_socket, SOL_SOCKET, SO_LINGER, (optval_t)&lngr, sizeof(linger)) == -1) { 
    104111    perror("SO_LINGER"); 
    105112    throw std::runtime_error("can't set socket option SO_LINGER"); 
     
    111118  timeout.tv_sec = 1; 
    112119  timeout.tv_usec = 0; 
    113   if(setsockopt(d_socket, SOL_SOCKET, SO_RCVTIMEO, (void*)&timeout, sizeof(timeout)) == -1) { 
     120  if(setsockopt(d_socket, SOL_SOCKET, SO_RCVTIMEO, (optval_t)&timeout, sizeof(timeout)) == -1) { 
    114121    perror("SO_RCVTIMEO"); 
    115122    throw std::runtime_error("can't set socket option SO_RCVTIMEO"); 
  • gnuradio/trunk/gnuradio-core/src/lib/io/gr_udp_source.h

    r7454 r8097  
    2626#include <gr_sync_block.h> 
    2727#include <omnithread.h> 
     28#if defined(HAVE_SOCKET) 
    2829#include <sys/socket.h> 
    2930#include <arpa/inet.h> 
     31#elif defined(HAVE_WINDOWS_H) 
     32#include <winsock2.h> 
     33#include <windows.h> 
     34#endif 
    3035#if defined(HAVE_NETINET_IN_H) 
    3136#include <netinet/in.h> 
  • gnuradio/trunk/gnuradio-core/src/lib/io/io.i

    r7730 r8097  
    2222 
    2323%{ 
     24 
     25#ifdef HAVE_CONFIG_H 
     26#include "config.h" 
     27#endif 
    2428 
    2529#include <gr_file_sink.h>