summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/patches/thrift-0.8.0.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sca-cpp/trunk/patches/thrift-0.8.0.patch')
-rw-r--r--sca-cpp/trunk/patches/thrift-0.8.0.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/sca-cpp/trunk/patches/thrift-0.8.0.patch b/sca-cpp/trunk/patches/thrift-0.8.0.patch
new file mode 100644
index 0000000000..09b4412c3a
--- /dev/null
+++ b/sca-cpp/trunk/patches/thrift-0.8.0.patch
@@ -0,0 +1,41 @@
+--- lib/cpp/src/server/TNonblockingServer.cpp
++++ lib/cpp/src/server/TNonblockingServer.cpp
+@@ -989,8 +989,8 @@
+ hints.ai_flags = AI_PASSIVE | AI_ADDRCONFIG;
+ sprintf(port, "%d", port_);
+
+- // Wildcard address
+- error = getaddrinfo(NULL, port, &hints, &res0);
++ // Wildcard or specified address
++ error = getaddrinfo(host_ == "" || host_ =="*"? NULL : host_.c_str(), port, &hints, &res0);
+ if (error) {
+ string errStr = "TNonblockingServer::serve() getaddrinfo " + string(gai_strerror(error));
+ GlobalOutput(errStr.c_str());
+
+--- lib/cpp/src/server/TNonblockingServer.h
++++ lib/cpp/src/server/TNonblockingServer.h
+@@ -126,6 +126,9 @@
+ /// Server socket file descriptor
+ int serverSocket_;
+
++ /// Host server runs on
++ std::string host_;
++
+ /// Port server runs on
+ int port_;
+
+@@ -294,11 +297,13 @@
+ TNonblockingServer(
+ const boost::shared_ptr<Processor>& processor,
+ const boost::shared_ptr<TProtocolFactory>& protocolFactory,
++ const std::string host,
+ int port,
+ const boost::shared_ptr<ThreadManager>& threadManager =
+ boost::shared_ptr<ThreadManager>(),
+ THRIFT_OVERLOAD_IF(Processor, TProcessor)) :
+- TServer(processor) {
++ TServer(processor),
++ host_(host) {
+
+ init(port);
+