Repository: thrift Updated Branches: refs/heads/master 99b9e1d40 -> 38f7a56e5
THRIFT-2749: clean up cpp lib for cpp98 build Client: CPP Lib Patch: Randy Abernethy Adds required limits header and reverts use of sizof on nonstatic members to cpp98 conformance. Project: http://git-wip-us.apache.org/repos/asf/thrift/repo Commit: http://git-wip-us.apache.org/repos/asf/thrift/commit/38f7a56e Tree: http://git-wip-us.apache.org/repos/asf/thrift/tree/38f7a56e Diff: http://git-wip-us.apache.org/repos/asf/thrift/diff/38f7a56e Branch: refs/heads/master Commit: 38f7a56e559508f7f110697cbf42587c5a9c7d0f Parents: 99b9e1d Author: Randy Abernethy <[email protected]> Authored: Tue Sep 30 15:37:26 2014 -0700 Committer: Randy Abernethy <[email protected]> Committed: Tue Sep 30 15:37:26 2014 -0700 ---------------------------------------------------------------------- lib/cpp/src/thrift/transport/TBufferTransports.h | 1 + lib/cpp/src/thrift/transport/TServerSocket.cpp | 2 +- lib/cpp/src/thrift/transport/TSocket.cpp | 4 +--- 3 files changed, 3 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/thrift/blob/38f7a56e/lib/cpp/src/thrift/transport/TBufferTransports.h ---------------------------------------------------------------------- diff --git a/lib/cpp/src/thrift/transport/TBufferTransports.h b/lib/cpp/src/thrift/transport/TBufferTransports.h index af9412c..2ee9adf 100644 --- a/lib/cpp/src/thrift/transport/TBufferTransports.h +++ b/lib/cpp/src/thrift/transport/TBufferTransports.h @@ -21,6 +21,7 @@ #define _THRIFT_TRANSPORT_TBUFFERTRANSPORTS_H_ 1 #include <cstring> +#include <limits> #include <boost/scoped_array.hpp> #include <thrift/transport/TTransport.h> http://git-wip-us.apache.org/repos/asf/thrift/blob/38f7a56e/lib/cpp/src/thrift/transport/TServerSocket.cpp ---------------------------------------------------------------------- diff --git a/lib/cpp/src/thrift/transport/TServerSocket.cpp b/lib/cpp/src/thrift/transport/TServerSocket.cpp index 541ff4d..811076f 100755 --- a/lib/cpp/src/thrift/transport/TServerSocket.cpp +++ b/lib/cpp/src/thrift/transport/TServerSocket.cpp @@ -314,7 +314,7 @@ void TServerSocket::listen() { // Unix Domain Socket size_t len = path_.size() + 1; - if (len > sizeof(sockaddr_un::sun_path)) { + if (len > sizeof(((sockaddr_un*)NULL)->sun_path)) { int errno_copy = THRIFT_GET_SOCKET_ERROR; GlobalOutput.perror("TSocket::listen() Unix Domain socket path too long", errno_copy); throw TTransportException(TTransportException::NOT_OPEN, " Unix Domain socket path too long"); http://git-wip-us.apache.org/repos/asf/thrift/blob/38f7a56e/lib/cpp/src/thrift/transport/TSocket.cpp ---------------------------------------------------------------------- diff --git a/lib/cpp/src/thrift/transport/TSocket.cpp b/lib/cpp/src/thrift/transport/TSocket.cpp index 82678ba..af7240a 100644 --- a/lib/cpp/src/thrift/transport/TSocket.cpp +++ b/lib/cpp/src/thrift/transport/TSocket.cpp @@ -252,9 +252,8 @@ void TSocket::openConnection(struct addrinfo *res) { if (! path_.empty()) { #ifndef _WIN32 - size_t len = path_.size() + 1; - if (len > sizeof(sockaddr_un::sun_path)) { + if (len > sizeof(((sockaddr_un*)NULL)->sun_path)) { int errno_copy = THRIFT_GET_SOCKET_ERROR; GlobalOutput.perror("TSocket::open() Unix Domain socket path too long", errno_copy); throw TTransportException(TTransportException::NOT_OPEN, " Unix Domain socket path too long"); @@ -265,7 +264,6 @@ void TSocket::openConnection(struct addrinfo *res) { memcpy(address.sun_path, path_.c_str(), len); socklen_t structlen = static_cast<socklen_t>(sizeof(address)); ret = connect(socket_, (struct sockaddr *) &address, structlen); - #else GlobalOutput.perror("TSocket::open() Unix Domain socket path not supported on windows", -99); throw TTransportException(TTransportException::NOT_OPEN, " Unix Domain socket path not supported");
