error msgs for CUDPSocket

pull/14/head
Tom Early 6 years ago
parent 4cb6bbb6dd
commit e2b04a6e17

@ -101,12 +101,16 @@ size_t CUDPSocket::Read(unsigned char *buf, const size_t size, CSockAddress &Ip)
unsigned int len = sizeof(struct sockaddr_storage); unsigned int len = sizeof(struct sockaddr_storage);
auto rval = recvfrom(m_fd, buf, size, 0, Ip.GetPointer(), &len); auto rval = recvfrom(m_fd, buf, size, 0, Ip.GetPointer(), &len);
if (0 > rval) if (0 > rval)
std::cerr << "Receive error on port " << m_addr << ": " << strerror(errno) << std::endl; std::cerr << "Read error on port " << m_addr << ": " << strerror(errno) << std::endl;
return rval; return rval;
} }
void CUDPSocket::Write(const void *Buffer, const size_t size, const CSockAddress &Ip) const void CUDPSocket::Write(const void *Buffer, const size_t size, const CSockAddress &Ip) const
{ {
sendto(m_fd, Buffer, size, 0, Ip.GetCPointer(), Ip.GetSize()); auto rval = sendto(m_fd, Buffer, size, 0, Ip.GetCPointer(), Ip.GetSize());
if (0 > rval)
std::cerr << "Write error to " << Ip << ", " << strerror(errno) << std::endl;
else if ((size_t)rval != size)
std::cerr << "Short write, " << rval << "<" << size << " to " << Ip << std::endl;
} }

@ -25,26 +25,20 @@
class CUDPSocket class CUDPSocket
{ {
public: public:
// constructor
CUDPSocket(); CUDPSocket();
// destructor
~CUDPSocket(); ~CUDPSocket();
// open & close
bool Open(const CSockAddress &addr); bool Open(const CSockAddress &addr);
void Close(void); void Close(void);
int GetSocket(void) const { return m_fd; } int GetSocket(void) const { return m_fd; }
unsigned short GetPort() const { return m_addr.GetPort(); } unsigned short GetPort() const { return m_addr.GetPort(); }
// read
size_t Read(unsigned char *buf, const size_t size, CSockAddress &addr); size_t Read(unsigned char *buf, const size_t size, CSockAddress &addr);
// write
void Write(const void *buf, const size_t size, const CSockAddress &addr) const; void Write(const void *buf, const size_t size, const CSockAddress &addr) const;
protected: protected:
// data
int m_fd; int m_fd;
CSockAddress m_addr; CSockAddress m_addr;
}; };

Loading…
Cancel
Save

Powered by TurnKey Linux.