kopia lustrzana https://github.com/Hamlib/Hamlib
Rename multicast test routines and clean up things a bit
Now works on mingw32 and Linux https://github.com/Hamlib/Hamlib/issues/695pull/1289/head
rodzic
6fa16ea77f
commit
f55e7b8348
|
@ -236,15 +236,31 @@ void *multicast_thread(void *vrig)
|
||||||
multicast_status_changed(rig);
|
multicast_status_changed(rig);
|
||||||
multicast_send_json(rig);
|
multicast_send_json(rig);
|
||||||
loopcount = 4;
|
loopcount = 4;
|
||||||
|
freqsave = freq;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
#ifdef _WIN32
|
||||||
|
WSACleanup();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
int multicast_init(RIG *rig, char *addr, int port)
|
int multicast_init(RIG *rig, char *addr, int port)
|
||||||
{
|
{
|
||||||
|
#ifdef _WIN32
|
||||||
|
WSADATA wsaData;
|
||||||
|
|
||||||
|
if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0)
|
||||||
|
{
|
||||||
|
fprintf(stderr, "WSAStartup failed: %d\n", WSAGetLastError());
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
if (rig->state.multicast == NULL)
|
if (rig->state.multicast == NULL)
|
||||||
{
|
{
|
||||||
rig->state.multicast = calloc(1, sizeof(struct multicast_s));
|
rig->state.multicast = calloc(1, sizeof(struct multicast_s));
|
||||||
|
@ -258,11 +274,16 @@ int multicast_init(RIG *rig, char *addr, int port)
|
||||||
if (port == 0) { port = RIG_MULTICAST_PORT; }
|
if (port == 0) { port = RIG_MULTICAST_PORT; }
|
||||||
|
|
||||||
// Create a UDP socket
|
// Create a UDP socket
|
||||||
rig->state.multicast->sock = socket(AF_INET, SOCK_DGRAM, 0);
|
rig->state.multicast->sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
|
||||||
|
|
||||||
if (rig->state.multicast->sock < 0)
|
if (rig->state.multicast->sock < 0)
|
||||||
{
|
{
|
||||||
|
#ifdef _WIN32
|
||||||
|
int err = WSAGetLastError();
|
||||||
|
rig_debug(RIG_DEBUG_ERR, "%s: socket: WSAGetLastError=%d\n", __func__, err);
|
||||||
|
#else
|
||||||
rig_debug(RIG_DEBUG_ERR, "%s: socket: %s\n", __func__, strerror(errno));
|
rig_debug(RIG_DEBUG_ERR, "%s: socket: %s\n", __func__, strerror(errno));
|
||||||
|
#endif
|
||||||
return -RIG_EIO;
|
return -RIG_EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ endif
|
||||||
|
|
||||||
DISTCLEANFILES = rigctl.log rigctl.sum testbcd.log testbcd.sum
|
DISTCLEANFILES = rigctl.log rigctl.sum testbcd.log testbcd.sum
|
||||||
|
|
||||||
bin_PROGRAMS = rigctl rigctld rigmem rigsmtr rigswr rotctl rotctld rigctlcom rigctltcp rigctlsync ampctl ampctld multicastclient multicastserver $(TESTLIBUSB)
|
bin_PROGRAMS = rigctl rigctld rigmem rigsmtr rigswr rotctl rotctld rigctlcom rigctltcp rigctlsync ampctl ampctld rigtestmcast rigtestmcastrx $(TESTLIBUSB)
|
||||||
|
|
||||||
#check_PROGRAMS = dumpmem testrig testrigopen testrigcaps testtrn testbcd testfreq listrigs testloc rig_bench testcache cachetest cachetest2 testcookie testgrid testsecurity
|
#check_PROGRAMS = dumpmem testrig testrigopen testrigcaps testtrn testbcd testfreq listrigs testloc rig_bench testcache cachetest cachetest2 testcookie testgrid testsecurity
|
||||||
check_PROGRAMS = dumpmem testrig testrigopen testrigcaps testtrn testbcd testfreq listrigs testloc rig_bench testcache cachetest cachetest2 testcookie testgrid hamlibmodels
|
check_PROGRAMS = dumpmem testrig testrigopen testrigcaps testtrn testbcd testfreq listrigs testloc rig_bench testcache cachetest cachetest2 testcookie testgrid hamlibmodels
|
||||||
|
|
|
@ -7,7 +7,7 @@ int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
RIG *rig;
|
RIG *rig;
|
||||||
rig_model_t myrig_model;
|
rig_model_t myrig_model;
|
||||||
rig_set_debug_level(RIG_DEBUG_NONE);
|
rig_set_debug_level(RIG_DEBUG_WARN);
|
||||||
|
|
||||||
if (argc > 1) { myrig_model = atoi(argv[1]); }
|
if (argc > 1) { myrig_model = atoi(argv[1]); }
|
||||||
else
|
else
|
||||||
|
@ -19,13 +19,20 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
if (rig == NULL)
|
if (rig == NULL)
|
||||||
{
|
{
|
||||||
|
printf("Error in rig_init\n");
|
||||||
|
return 1;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef _WIN32
|
||||||
|
strncpy(rig->state.rigport.pathname, "COM37", HAMLIB_FILPATHLEN - 1);
|
||||||
|
#else
|
||||||
strncpy(rig->state.rigport.pathname, "/dev/ttyUSB0", HAMLIB_FILPATHLEN - 1);
|
strncpy(rig->state.rigport.pathname, "/dev/ttyUSB0", HAMLIB_FILPATHLEN - 1);
|
||||||
|
#endif
|
||||||
rig->state.rigport.parm.serial.rate = 38400;
|
rig->state.rigport.parm.serial.rate = 38400;
|
||||||
rig_open(rig);
|
rig_open(rig);
|
||||||
multicast_init(rig, "224.0.0.1", 4532);
|
multicast_init(rig, "224.0.0.1", 4532);
|
||||||
|
printf("threadid=%lld\n", (long long)rig->state.multicast->threadid);
|
||||||
pthread_join(rig->state.multicast->threadid, NULL);
|
pthread_join(rig->state.multicast->threadid, NULL);
|
||||||
pthread_exit(NULL);
|
pthread_exit(NULL);
|
||||||
return 0;
|
return 0;
|
Ładowanie…
Reference in New Issue