浏览代码

HUE-9010 [core] Handle failure of gethostbyaddr

Jean-Francois Desjeans Gauthier 6 年之前
父节点
当前提交
93c0eb402c
共有 1 个文件被更改,包括 9 次插入2 次删除
  1. 9 2
      desktop/core/src/desktop/middleware.py

+ 9 - 2
desktop/core/src/desktop/middleware.py

@@ -718,9 +718,16 @@ class SpnegoMiddleware(object):
       return
 
   def clean_host(self, pattern):
+    hosts = []
     if pattern:
-      return set([socket.gethostbyaddr(hostport.split(':')[0].strip())[0] for hostport in pattern.split(',')])
-    return set([])
+      for hostport in pattern.split(','):
+        host = hostport.split(':')[0].strip()
+        try:
+          hosts.append(socket.gethostbyaddr(host)[0])
+        except Exception:
+          LOG.exception('Could not resolve host addr %s' % host)
+          hosts.append(host)
+    return set(hosts)
 
   def clean_username(self, username, request):
     """