mirror of
https://github.com/oe7drt/YSFClients.git
synced 2026-04-05 14:25:44 +00:00
Upgrade the YSF reflector protocol and use a new .ini file.
This commit is contained in:
parent
f137449ae6
commit
79e006d4b9
15 changed files with 631 additions and 95 deletions
|
|
@ -17,6 +17,7 @@
|
|||
*/
|
||||
|
||||
#include "UDPSocket.h"
|
||||
#include "Log.h"
|
||||
|
||||
#include <cassert>
|
||||
|
||||
|
|
@ -37,7 +38,7 @@ m_fd(-1)
|
|||
WSAData data;
|
||||
int wsaRet = ::WSAStartup(MAKEWORD(2, 2), &data);
|
||||
if (wsaRet != 0)
|
||||
::fprintf(stderr, "Error from WSAStartup\n");
|
||||
LogError("Error from WSAStartup");
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
@ -50,7 +51,7 @@ m_fd(-1)
|
|||
WSAData data;
|
||||
int wsaRet = ::WSAStartup(MAKEWORD(2, 2), &data);
|
||||
if (wsaRet != 0)
|
||||
::fprintf(stderr, "Error from WSAStartup\n");
|
||||
LogError("Error from WSAStartup");
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
@ -77,7 +78,7 @@ in_addr CUDPSocket::lookup(const std::string& hostname)
|
|||
return addr;
|
||||
}
|
||||
|
||||
::fprintf(stderr, "Cannot find address for host %s\n", hostname.c_str());
|
||||
LogError("Cannot find address for host %s", hostname.c_str());
|
||||
|
||||
addr.s_addr = INADDR_NONE;
|
||||
return addr;
|
||||
|
|
@ -94,7 +95,7 @@ in_addr CUDPSocket::lookup(const std::string& hostname)
|
|||
return addr;
|
||||
}
|
||||
|
||||
::fprintf(stderr, "Cannot find address for host %s\n", hostname.c_str());
|
||||
LogError("Cannot find address for host %s", hostname.c_str());
|
||||
|
||||
addr.s_addr = INADDR_NONE;
|
||||
return addr;
|
||||
|
|
@ -106,9 +107,9 @@ bool CUDPSocket::open()
|
|||
m_fd = ::socket(PF_INET, SOCK_DGRAM, 0);
|
||||
if (m_fd < 0) {
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
::fprintf(stderr, "Cannot create the UDP socket, err: %lu\n", ::GetLastError());
|
||||
LogError("Cannot create the UDP socket, err: %lu", ::GetLastError());
|
||||
#else
|
||||
::fprintf(stderr, "Cannot create the UDP socket, err: %d\n", errno);
|
||||
LogError("Cannot create the UDP socket, err: %d", errno);
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
|
|
@ -127,7 +128,7 @@ bool CUDPSocket::open()
|
|||
addr.sin_addr.s_addr = ::inet_addr(m_address.c_str());
|
||||
#endif
|
||||
if (addr.sin_addr.s_addr == INADDR_NONE) {
|
||||
::fprintf(stderr, "The local address is invalid - %s\n", m_address.c_str());
|
||||
LogError("The local address is invalid - %s", m_address.c_str());
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -135,18 +136,18 @@ bool CUDPSocket::open()
|
|||
int reuse = 1;
|
||||
if (::setsockopt(m_fd, SOL_SOCKET, SO_REUSEADDR, (char *)&reuse, sizeof(reuse)) == -1) {
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
::fprintf(stderr, "Cannot set the UDP socket option, err: %lu\n", ::GetLastError());
|
||||
LogError("Cannot set the UDP socket option, err: %lu", ::GetLastError());
|
||||
#else
|
||||
::fprintf(stderr, "Cannot set the UDP socket option, err: %d\n", errno);
|
||||
LogError("Cannot set the UDP socket option, err: %d", errno);
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
if (::bind(m_fd, (sockaddr*)&addr, sizeof(sockaddr_in)) == -1) {
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
::fprintf(stderr, "Cannot bind the UDP address, err: %lu\n", ::GetLastError());
|
||||
LogError("Cannot bind the UDP address, err: %lu", ::GetLastError());
|
||||
#else
|
||||
::fprintf(stderr, "Cannot bind the UDP address, err: %d\n", errno);
|
||||
LogError("Cannot bind the UDP address, err: %d", errno);
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
|
|
@ -177,9 +178,9 @@ int CUDPSocket::read(unsigned char* buffer, unsigned int length, in_addr& addres
|
|||
int ret = ::select(m_fd + 1, &readFds, NULL, NULL, &tv);
|
||||
if (ret < 0) {
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
::fprintf(stderr, "Error returned from UDP select, err: %lu\n", ::GetLastError());
|
||||
LogError("Error returned from UDP select, err: %lu", ::GetLastError());
|
||||
#else
|
||||
::fprintf(stderr, "Error returned from UDP select, err: %d\n", errno);
|
||||
LogError("Error returned from UDP select, err: %d", errno);
|
||||
#endif
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -201,9 +202,9 @@ int CUDPSocket::read(unsigned char* buffer, unsigned int length, in_addr& addres
|
|||
#endif
|
||||
if (len <= 0) {
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
::fprintf(stderr, "Error returned from recvfrom, err: %lu\n", ::GetLastError());
|
||||
LogError("Error returned from recvfrom, err: %lu", ::GetLastError());
|
||||
#else
|
||||
::fprintf(stderr, "Error returned from recvfrom, err: %d\n", errno);
|
||||
LogError("Error returned from recvfrom, err: %d", errno);
|
||||
#endif
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -233,9 +234,9 @@ bool CUDPSocket::write(const unsigned char* buffer, unsigned int length, const i
|
|||
#endif
|
||||
if (ret < 0) {
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
::fprintf(stderr, "Error returned from sendto, err: %lu\n", ::GetLastError());
|
||||
LogError("Error returned from sendto, err: %lu", ::GetLastError());
|
||||
#else
|
||||
::fprintf(stderr, "Error returned from sendto, err: %d\n", errno);
|
||||
LogError("Error returned from sendto, err: %d", errno);
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue