diff options
author | Adam Ierymenko <adam.ierymenko@gmail.com> | 2016-02-01 14:41:54 -0800 |
---|---|---|
committer | Adam Ierymenko <adam.ierymenko@gmail.com> | 2016-02-01 14:41:54 -0800 |
commit | 7a63fdc447322da3630774a894822bbe6fbb708f (patch) | |
tree | 21a02247040afdef4b3666b48304d439638e8eec | |
parent | 4655a59912ba61b2f79f74976e2448c0fb32c402 (diff) | |
download | infinitytier-7a63fdc447322da3630774a894822bbe6fbb708f.tar.gz infinitytier-7a63fdc447322da3630774a894822bbe6fbb708f.zip |
Fix for GitHub issue #298 and hopefully #297
-rw-r--r-- | node/InetAddress.cpp | 4 | ||||
-rw-r--r-- | selftest.cpp | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/node/InetAddress.cpp b/node/InetAddress.cpp index d5cd227c..dca772e8 100644 --- a/node/InetAddress.cpp +++ b/node/InetAddress.cpp @@ -127,8 +127,10 @@ void InetAddress::set(const void *ipBytes,unsigned int ipLen,unsigned int port) { memset(this,0,sizeof(InetAddress)); if (ipLen == 4) { + uint32_t ipb[1]; + memcpy(ipb,ipBytes,4); ss_family = AF_INET; - reinterpret_cast<struct sockaddr_in *>(this)->sin_addr.s_addr = *(reinterpret_cast<const uint32_t *>(ipBytes)); + reinterpret_cast<struct sockaddr_in *>(this)->sin_addr.s_addr = ipb[0]; reinterpret_cast<struct sockaddr_in *>(this)->sin_port = Utils::hton((uint16_t)port); } else if (ipLen == 16) { ss_family = AF_INET6; diff --git a/selftest.cpp b/selftest.cpp index 9870c16a..847b08b6 100644 --- a/selftest.cpp +++ b/selftest.cpp @@ -852,7 +852,7 @@ struct TestPhyHandlers inline void phyOnUnixAccept(PhySocket *sockL,PhySocket *sockN,void **uptrL,void **uptrN) {} inline void phyOnUnixClose(PhySocket *sock,void **uptr) {} inline void phyOnUnixData(PhySocket *sock,void **uptr,void *data,unsigned long len) {} - inline void phyOnUnixWritable(PhySocket *sock,void **uptr) {} + inline void phyOnUnixWritable(PhySocket *sock,void **uptr,bool b) {} #endif // __UNIX_LIKE__ inline void phyOnFileDescriptorActivity(PhySocket *sock,void **uptr,bool readable,bool writable) {} |