mirror of https://github.com/drowe67/librtlsdr.git
bugfixes and compiler warnings with gcc on linux
Signed-off-by: hayati ayguen <h_ayguen@web.de>development
parent
22a920d0a6
commit
4feaa59cc6
|
@ -26,7 +26,7 @@ extern "C" {
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
rtlsdr_dev_t *dev;
|
rtlsdr_dev_t *dev;
|
||||||
SOCKET port;
|
int port;
|
||||||
int wait;
|
int wait;
|
||||||
int report_i2c;
|
int report_i2c;
|
||||||
char *addr;
|
char *addr;
|
||||||
|
|
|
@ -84,6 +84,7 @@ void *ctrl_thread_fn(void *arg)
|
||||||
struct linger ling = { 1,0 };
|
struct linger ling = { 1,0 };
|
||||||
SOCKET listensocket;
|
SOCKET listensocket;
|
||||||
SOCKET controlSocket;
|
SOCKET controlSocket;
|
||||||
|
int haveControlSocket = 0;
|
||||||
struct sockaddr_in local, remote;
|
struct sockaddr_in local, remote;
|
||||||
socklen_t rlen;
|
socklen_t rlen;
|
||||||
|
|
||||||
|
@ -102,6 +103,7 @@ void *ctrl_thread_fn(void *arg)
|
||||||
char *addr = data->addr;
|
char *addr = data->addr;
|
||||||
int* do_exit = data->pDoExit;
|
int* do_exit = data->pDoExit;
|
||||||
u_long blockmode = 1;
|
u_long blockmode = 1;
|
||||||
|
int retval;
|
||||||
|
|
||||||
|
|
||||||
memset(reg_values, 0, NUM_I2C_REGISTERS);
|
memset(reg_values, 0, NUM_I2C_REGISTERS);
|
||||||
|
@ -115,9 +117,9 @@ void *ctrl_thread_fn(void *arg)
|
||||||
|
|
||||||
setsockopt(listensocket, SOL_SOCKET, SO_REUSEADDR, (char *)&r, sizeof(int));
|
setsockopt(listensocket, SOL_SOCKET, SO_REUSEADDR, (char *)&r, sizeof(int));
|
||||||
setsockopt(listensocket, SOL_SOCKET, SO_LINGER, (char *)&ling, sizeof(ling));
|
setsockopt(listensocket, SOL_SOCKET, SO_LINGER, (char *)&ling, sizeof(ling));
|
||||||
int retval = bind(listensocket, (struct sockaddr *)&local, sizeof(local));
|
retval = bind(listensocket, (struct sockaddr *)&local, sizeof(local));
|
||||||
if (retval == SOCKET_ERROR)
|
if (retval == SOCKET_ERROR)
|
||||||
error = WSAGetLastError();
|
error = 1;
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
ioctlsocket(listensocket, FIONBIO, &blockmode);
|
ioctlsocket(listensocket, FIONBIO, &blockmode);
|
||||||
#else
|
#else
|
||||||
|
@ -129,11 +131,7 @@ void *ctrl_thread_fn(void *arg)
|
||||||
printf("listening on Control port %d...\n", port);
|
printf("listening on Control port %d...\n", port);
|
||||||
retval = listen(listensocket, 1);
|
retval = listen(listensocket, 1);
|
||||||
if (retval == SOCKET_ERROR)
|
if (retval == SOCKET_ERROR)
|
||||||
#ifdef _WIN32
|
error = 1;
|
||||||
error = WSAGetLastError();
|
|
||||||
#else
|
|
||||||
;
|
|
||||||
#endif
|
|
||||||
while (1) {
|
while (1) {
|
||||||
FD_ZERO(&connfds);
|
FD_ZERO(&connfds);
|
||||||
FD_SET(listensocket, &connfds);
|
FD_SET(listensocket, &connfds);
|
||||||
|
@ -146,6 +144,7 @@ void *ctrl_thread_fn(void *arg)
|
||||||
else if (r) {
|
else if (r) {
|
||||||
rlen = sizeof(remote);
|
rlen = sizeof(remote);
|
||||||
controlSocket = accept(listensocket, (struct sockaddr *)&remote, &rlen);
|
controlSocket = accept(listensocket, (struct sockaddr *)&remote, &rlen);
|
||||||
|
haveControlSocket = 1;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -217,7 +216,8 @@ sleep:
|
||||||
usleep(wait);
|
usleep(wait);
|
||||||
}
|
}
|
||||||
close:
|
close:
|
||||||
closesocket(controlSocket);
|
if (haveControlSocket)
|
||||||
|
closesocket(controlSocket);
|
||||||
if (*do_exit)
|
if (*do_exit)
|
||||||
{
|
{
|
||||||
closesocket(listensocket);
|
closesocket(listensocket);
|
||||||
|
|
|
@ -1703,7 +1703,7 @@ int rtlsdr_set_tuner_sideband(rtlsdr_dev_t *dev, int sideband)
|
||||||
if (r)
|
if (r)
|
||||||
{
|
{
|
||||||
if ( devt->verbose )
|
if ( devt->verbose )
|
||||||
fprintf(stderr, "rtlsdr_set_tuner_sideband(%d): rtlsdr_set_if_freq(%d) returned error %d\n", sideband, iffreq);
|
fprintf(stderr, "rtlsdr_set_tuner_sideband(%d): rtlsdr_set_if_freq(%d) returned error %d\n", sideband, iffreq, r);
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2779,12 +2779,7 @@ int rtlsdr_open(rtlsdr_dev_t **out_dev, uint32_t index)
|
||||||
dev->softagc.rpcNumGains = 0;
|
dev->softagc.rpcNumGains = 0;
|
||||||
dev->softagc.rpcGainValues = NULL;
|
dev->softagc.rpcGainValues = NULL;
|
||||||
|
|
||||||
/* -cs- */
|
pthread_mutex_init(&dev->cs_mutex, NULL);
|
||||||
#ifdef __MINGW32__
|
|
||||||
dev->cs_mutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER;
|
|
||||||
#else
|
|
||||||
dev->cs_mutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* UDP controller server */
|
/* UDP controller server */
|
||||||
#ifdef WITH_UDP_SERVER
|
#ifdef WITH_UDP_SERVER
|
||||||
|
@ -3000,6 +2995,7 @@ int rtlsdr_close(rtlsdr_dev_t *dev)
|
||||||
}
|
}
|
||||||
|
|
||||||
softagc_uninit(dev);
|
softagc_uninit(dev);
|
||||||
|
pthread_mutex_destroy(&dev->cs_mutex);
|
||||||
|
|
||||||
libusb_release_interface(dev->devh, 0);
|
libusb_release_interface(dev->devh, 0);
|
||||||
|
|
||||||
|
|
|
@ -462,7 +462,7 @@ static void *command_worker(void *arg)
|
||||||
struct ir_thread_data
|
struct ir_thread_data
|
||||||
{
|
{
|
||||||
rtlsdr_dev_t *dev;
|
rtlsdr_dev_t *dev;
|
||||||
SOCKET port;
|
int port;
|
||||||
int wait;
|
int wait;
|
||||||
char *addr;
|
char *addr;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue