From 357e4b1a77132705432345e0f54ec50ab07a73ab Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Fri, 11 Jan 2013 17:03:59 +0900 Subject: [PATCH] Made SocketCore::readData() and readDataFrom() take void* --- src/SocketCore.cc | 11 +++++++---- src/SocketCore.h | 16 ++-------------- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/src/SocketCore.cc b/src/SocketCore.cc index d8596009..e18ed912 100644 --- a/src/SocketCore.cc +++ b/src/SocketCore.cc @@ -825,14 +825,15 @@ ssize_t SocketCore::writeData(const void* data, size_t len) return ret; } -void SocketCore::readData(char* data, size_t& len) +void SocketCore::readData(void* data, size_t& len) { ssize_t ret = 0; wantRead_ = false; wantWrite_ = false; if(!secure_) { - while((ret = recv(sockfd_, data, len, 0)) == -1 && + // Cast for Windows recv() + while((ret = recv(sockfd_, reinterpret_cast(data), len, 0)) == -1 && SOCKET_ERRNO == A2_EINTR); int errNum = SOCKET_ERRNO; if(ret == -1) { @@ -1247,7 +1248,7 @@ ssize_t SocketCore::writeData(const void* data, size_t len, return r; } -ssize_t SocketCore::readDataFrom(char* data, size_t len, +ssize_t SocketCore::readDataFrom(void* data, size_t len, std::pair& sender) { @@ -1256,7 +1257,9 @@ ssize_t SocketCore::readDataFrom(char* data, size_t len, sockaddr_union sockaddr; socklen_t sockaddrlen = sizeof(sockaddr); ssize_t r; - while((r = recvfrom(sockfd_, data, len, 0, &sockaddr.sa, &sockaddrlen)) == -1 + // Cast for Windows recvfrom() + while((r = recvfrom(sockfd_, reinterpret_cast(data), len, 0, + &sockaddr.sa, &sockaddrlen)) == -1 && A2_EINTR == SOCKET_ERRNO); int errNum = SOCKET_ERRNO; if(r == -1) { diff --git a/src/SocketCore.h b/src/SocketCore.h index 470921a6..4b04c3fb 100644 --- a/src/SocketCore.h +++ b/src/SocketCore.h @@ -279,24 +279,12 @@ public: * @param len the maximum size data can store. This method assigns * the number of bytes read to len. */ - void readData(char* data, size_t& len); + void readData(void* data, size_t& len); - void readData(unsigned char* data, size_t& len) - { - readData(reinterpret_cast(data), len); - } - - ssize_t readDataFrom(char* data, size_t len, + ssize_t readDataFrom(void* data, size_t len, std::pair& sender); - ssize_t readDataFrom(unsigned char* data, size_t len, - std::pair& sender) - { - return readDataFrom(reinterpret_cast(data), len, sender); - } - #ifdef ENABLE_SSL // Performs TLS server side handshake. If handshake is completed, // returns true. If handshake has not been done yet, returns false.