summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/patches/thrift-0.2.0.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sca-cpp/trunk/patches/thrift-0.2.0.patch')
-rw-r--r--sca-cpp/trunk/patches/thrift-0.2.0.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/sca-cpp/trunk/patches/thrift-0.2.0.patch b/sca-cpp/trunk/patches/thrift-0.2.0.patch
new file mode 100644
index 0000000000..a834faca02
--- /dev/null
+++ b/sca-cpp/trunk/patches/thrift-0.2.0.patch
@@ -0,0 +1,39 @@
+--- lib/cpp/src/server/TNonblockingServer.cpp
++++ lib/cpp/src/server/TNonblockingServer.cpp
+@@ -622,8 +622,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
+@@ -65,6 +65,9 @@
+ // Server socket file descriptor
+ int serverSocket_;
+
++ // Host server runs on
++ std::string host_;
++
+ // Port server runs on
+ int port_;
+
+@@ -117,10 +120,12 @@
+
+ TNonblockingServer(boost::shared_ptr<TProcessor> processor,
+ boost::shared_ptr<TProtocolFactory> protocolFactory,
++ std::string host,
+ int port,
+ boost::shared_ptr<ThreadManager> threadManager = boost::shared_ptr<ThreadManager>()) :
+ TServer(processor),
+ serverSocket_(-1),
++ host_(host),
+ port_(port),
+ threadManager_(threadManager),
+ eventBase_(NULL),