浏览代码

[fix] do not allow underscore in engine names - closes #708

Adam Tauber 8 年前
父节点
当前提交
86daef2063
共有 2 个文件被更改,包括 10 次插入4 次删除
  1. 9
    3
      searx/engines/__init__.py
  2. 1
    1
      searx/settings.yml

+ 9
- 3
searx/engines/__init__.py 查看文件

57
 
57
 
58
 
58
 
59
 def load_engine(engine_data):
59
 def load_engine(engine_data):
60
-    engine_name = engine_data['engine']
60
+
61
+    if '_' in engine_data['name']:
62
+        logger.error('Engine name conains underscore: "{}"'.format(engine_data['name']))
63
+        sys.exit(1)
64
+
65
+    engine_module = engine_data['engine']
66
+
61
     try:
67
     try:
62
-        engine = load_module(engine_name + '.py')
68
+        engine = load_module(engine_module + '.py')
63
     except:
69
     except:
64
-        logger.exception('Cannot load engine "{}"'.format(engine_name))
70
+        logger.exception('Cannot load engine "{}"'.format(engine_module))
65
         return None
71
         return None
66
 
72
 
67
     for param_name in engine_data:
73
     for param_name in engine_data:

+ 1
- 1
searx/settings.yml 查看文件

377
     timeout : 10.0
377
     timeout : 10.0
378
     disabled : True
378
     disabled : True
379
 
379
 
380
-  - name : scanr_structures
380
+  - name : scanr structures
381
     shortcut: scs
381
     shortcut: scs
382
     engine : scanr_structures
382
     engine : scanr_structures
383
     disabled : True
383
     disabled : True