refac
This commit is contained in:
1 parent
bda49ccdb6
commit
42ea8a5a2f
1 file changed
+19
-7
@@ -1,10 +1,11 @@
|
|||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import ipaddress
|
||||||
from urllib.parse import urlparse
|
from urllib.parse import urlparse
|
||||||
|
|
||||||
import validators
|
import validators
|
||||||
from open_webui.retrieval.web.utils import resolve_hostname
|
from open_webui.retrieval.web.utils import resolve_hostname
|
||||||
from open_webui.utils.misc import is_host_allowed
|
from open_webui.utils.misc import get_allow_block_lists, is_host_allowed
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel
|
||||||
|
|
||||||
|
|
||||||
@@ -12,6 +13,16 @@ def get_filtered_results(results, filter_list):
|
|||||||
if not filter_list:
|
if not filter_list:
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
allow_list, block_list = get_allow_block_lists(filter_list)
|
||||||
|
resolve_ips = False
|
||||||
|
for entry in allow_list + block_list:
|
||||||
|
try:
|
||||||
|
ipaddress.ip_address(entry)
|
||||||
|
except ValueError:
|
||||||
|
continue
|
||||||
|
resolve_ips = True
|
||||||
|
break
|
||||||
|
|
||||||
filtered_results = []
|
filtered_results = []
|
||||||
|
|
||||||
for result in results:
|
for result in results:
|
||||||
@@ -25,12 +36,13 @@ def get_filtered_results(results, filter_list):
|
|||||||
|
|
||||||
hostnames = [domain]
|
hostnames = [domain]
|
||||||
|
|
||||||
try:
|
if resolve_ips:
|
||||||
ipv4_addresses, ipv6_addresses = resolve_hostname(domain)
|
try:
|
||||||
hostnames.extend(ipv4_addresses)
|
ipv4_addresses, ipv6_addresses = resolve_hostname(domain)
|
||||||
hostnames.extend(ipv6_addresses)
|
hostnames.extend(ipv4_addresses)
|
||||||
except Exception:
|
hostnames.extend(ipv6_addresses)
|
||||||
pass
|
except Exception:
|
||||||
|
pass
|
||||||
|
|
||||||
if is_host_allowed(hostnames, filter_list):
|
if is_host_allowed(hostnames, filter_list):
|
||||||
filtered_results.append(result)
|
filtered_results.append(result)
|
||||||
|
|||||||
Reference in new issue
Block a user