summaryrefslogtreecommitdiff
path: root/searx/search.py
diff options
context:
space:
mode:
authorNoémi Ványi <sitbackandwait@gmail.com>2020-02-01 11:01:17 +0100
committerNoémi Ványi <sitbackandwait@gmail.com>2020-02-08 11:47:39 +0100
commit99435381a84072b110c32004b2fb778af9b96f77 (patch)
tree9ad5fd222e6717312ef05dbcd871ef46a97857e5 /searx/search.py
parentf9c7a678d273c55a0e8a1a7a2dbfd696b2046e60 (diff)
[enh] introduce private engines
This PR adds a new setting to engines named `tokens`. It expects a list of tokens which lets searx validate if the request should be accepted or not.
Diffstat (limited to 'searx/search.py')
-rw-r--r--searx/search.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/searx/search.py b/searx/search.py
index 5c268cc5d..2dcc4c8f7 100644
--- a/searx/search.py
+++ b/searx/search.py
@@ -407,7 +407,7 @@ def get_search_query_from_webapp(preferences, form):
return (SearchQuery(query, query_engines, query_categories,
query_lang, query_safesearch, query_pageno,
- query_time_range, query_timeout),
+ query_time_range, query_timeout, preferences),
raw_text_query)
@@ -459,6 +459,9 @@ class Search(object):
engine = engines[selected_engine['name']]
+ if not search_query.preferences.validate_token(engine):
+ continue
+
# skip suspended engines
if engine.suspend_end_time >= time():
logger.debug('Engine currently suspended: %s', selected_engine['name'])