loolwsd/Storage.cpp |   23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

New commits:
commit 090c246be46c6590c080d6aeccf55f8e4d772578
Author: Andras Timar <andras.ti...@collabora.com>
Date:   Tue Apr 19 15:32:22 2016 +0200

    bccu#1696 - enable WOPI connection from the same host (by IP address) by 
default

diff --git a/loolwsd/Storage.cpp b/loolwsd/Storage.cpp
index 39ec21e..62a0ead 100644
--- a/loolwsd/Storage.cpp
+++ b/loolwsd/Storage.cpp
@@ -96,7 +96,24 @@ void StorageBase::initialize()
 
 bool isLocalhost(const std::string& targetHost)
 {
-    std::string targetAddress = 
Poco::Net::DNS::resolveOne(targetHost).toString();
+    std::string targetAddress;
+    try
+    {
+        targetAddress = Poco::Net::DNS::resolveOne(targetHost).toString();
+    }
+    catch (const Poco::Exception& exc)
+    {
+        Log::warn("Poco::Net::DNS::resolveOne(\"" + targetHost + "\") failed: 
" + exc.displayText());
+        try
+        {
+            targetAddress = Poco::Net::IPAddress(targetHost).toString();
+        }
+        catch (const Poco::Exception& exc1)
+        {
+            Log::warn("Poco::Net::IPAddress(\"" + targetHost + "\") failed: " 
+ exc1.displayText());
+        }
+    }
+
     Poco::Net::NetworkInterface::NetworkInterfaceList list = 
Poco::Net::NetworkInterface::list(true,true);
     for (unsigned i = 0; i < list.size(); i++)
     {
@@ -104,8 +121,12 @@ bool isLocalhost(const std::string& targetHost)
         std::string address = netif.address().toString();
         address = address.substr(0, address.find("%",0));
         if (address == targetAddress)
+        {
+            Log::info("WOPI host is on the same host as the WOPI client: \"" + 
targetAddress + "\". Connection is allowed.");
             return true;
+        }
     }
+    Log::info("WOPI host is not on the same host as the WOPI client: \"" + 
targetAddress + "\". Connection is not allowed.");
     return false;
 }
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to