diff --git a/lib/cpp/src/transport/TServerSocket.cpp b/lib/cpp/src/transport/TServerSocket.cpp
index 276b060..25d33e0 100644
--- a/lib/cpp/src/transport/TServerSocket.cpp
+++ b/lib/cpp/src/transport/TServerSocket.cpp
@@ -202,7 +202,7 @@
   #endif // #ifdef TCP_DEFER_ACCEPT
 
   #ifdef IPV6_V6ONLY
-  if (res->ai_family == AF_INET6) {
+  if (res->ai_family == AF_INET6 && path_.empty()) {
     int zero = 0;
     if (-1 == setsockopt(serverSocket_, IPPROTO_IPV6, IPV6_V6ONLY, 
           &zero, sizeof(zero))) {
diff --git a/lib/cpp/src/transport/TSocket.cpp b/lib/cpp/src/transport/TSocket.cpp
index 73cb56d..7b1d356 100644
--- a/lib/cpp/src/transport/TSocket.cpp
+++ b/lib/cpp/src/transport/TSocket.cpp
@@ -277,7 +277,9 @@
   // Set socket back to normal mode (blocking)
   fcntl(socket_, F_SETFL, flags);
 
-  setCachedAddress(res->ai_addr, res->ai_addrlen);
+  if (path_.empty()) {
+    setCachedAddress(res->ai_addr, res->ai_addrlen);
+  }
 }
 
 void TSocket::open() {
@@ -561,7 +563,7 @@
 
 void TSocket::setNoDelay(bool noDelay) {
   noDelay_ = noDelay;
-  if (socket_ < 0) {
+  if (socket_ < 0 || !path_.empty()) {
     return;
   }
 
@@ -641,7 +643,7 @@
 }
 
 std::string TSocket::getPeerHost() {
-  if (peerHost_.empty()) {
+  if (peerHost_.empty() && path_.empty()) {
     struct sockaddr_storage addr;
     struct sockaddr* addrPtr;
     socklen_t addrLen;
@@ -675,7 +677,7 @@
 }
 
 std::string TSocket::getPeerAddress() {
-  if (peerAddress_.empty()) {
+  if (peerAddress_.empty() && path_.empty()) {
     struct sockaddr_storage addr;
     struct sockaddr* addrPtr;
     socklen_t addrLen;
@@ -716,6 +718,10 @@
 }
 
 void TSocket::setCachedAddress(const sockaddr* addr, socklen_t len) {
+  if (!path_.empty()) {
+    return;
+  }
+
   switch (addr->sa_family) {
   case AF_INET:
     if (len == sizeof(sockaddr_in)) {
