X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fsocket.h;h=8d1ad70fff2d3603f6e2c5fee044578dd1cc25ff;hb=21079cc8ebae0bf694c1903c07bf3e1517feab99;hp=92e0cbb13034baa8ca6efac168943cb620626758;hpb=6090e95cdcea7c0600ea75941289494505295cf2;p=dragonfireclient.git diff --git a/src/socket.h b/src/socket.h index 92e0cbb13..8d1ad70ff 100644 --- a/src/socket.h +++ b/src/socket.h @@ -45,7 +45,7 @@ extern bool socket_enable_debug_output; class SocketException : public BaseException { public: - SocketException(const char *s): + SocketException(const std::string &s): BaseException(s) { } @@ -54,7 +54,7 @@ class SocketException : public BaseException class ResolveError : public BaseException { public: - ResolveError(const char *s): + ResolveError(const std::string &s): BaseException(s) { } @@ -63,7 +63,7 @@ class ResolveError : public BaseException class SendFailedException : public BaseException { public: - SendFailedException(const char *s): + SendFailedException(const std::string &s): BaseException(s) { } @@ -85,16 +85,16 @@ class Address Address(); Address(u32 address, u16 port); Address(u8 a, u8 b, u8 c, u8 d, u16 port); - Address(const IPv6AddressBytes * ipv6_bytes, u16 port); - bool operator==(Address &address); - bool operator!=(Address &address); + Address(const IPv6AddressBytes *ipv6_bytes, u16 port); + bool operator==(const Address &address); + bool operator!=(const Address &address); // Resolve() may throw ResolveError (address is unchanged in this case) void Resolve(const char *name); struct sockaddr_in getAddress() const; unsigned short getPort() const; void setAddress(u32 address); void setAddress(u8 a, u8 b, u8 c, u8 d); - void setAddress(const IPv6AddressBytes * ipv6_bytes); + void setAddress(const IPv6AddressBytes *ipv6_bytes); struct sockaddr_in6 getAddress6() const; int getFamily() const; bool isIPv6() const; @@ -115,9 +115,13 @@ class Address class UDPSocket { public: + UDPSocket() { } UDPSocket(bool ipv6); ~UDPSocket(); void Bind(Address addr); + + bool init(bool ipv6, bool noExceptions = false); + //void Close(); //bool IsOpen(); void Send(const Address & destination, const void * data, int size);