summaryrefslogtreecommitdiff
path: root/src/services
diff options
context:
space:
mode:
Diffstat (limited to 'src/services')
-rwxr-xr-xsrc/services/vyos-hostsd16
-rwxr-xr-xsrc/services/vyos-http-api-server2
2 files changed, 9 insertions, 9 deletions
diff --git a/src/services/vyos-hostsd b/src/services/vyos-hostsd
index 5c2ea71c8..5fb7a68ab 100755
--- a/src/services/vyos-hostsd
+++ b/src/services/vyos-hostsd
@@ -22,6 +22,7 @@ import time
import json
import signal
import traceback
+import re
import zmq
@@ -154,14 +155,10 @@ def add_name_servers(data, entries, tag):
def delete_name_servers(data, tag):
name_servers = data['name_servers']
- keys_for_deletion = []
-
- for ns in name_servers:
- if name_servers[ns]['tag'] == tag:
- keys_for_deletion.append(ns)
-
- for k in keys_for_deletion:
- del name_servers[k]
+ regex_filter = re.compile(tag)
+ for ns in list(name_servers.keys()):
+ if regex_filter.match(name_servers[ns]['tag']):
+ del name_servers[ns]
def set_host_name(state, data):
if data['host_name']:
@@ -174,8 +171,9 @@ def set_host_name(state, data):
def get_name_servers(state, tag):
ns = []
data = state['name_servers']
+ regex_filter = re.compile(tag)
for n in data:
- if data[n]['tag'] == tag:
+ if regex_filter.match(data[n]['tag']):
ns.append(n)
return ns
diff --git a/src/services/vyos-http-api-server b/src/services/vyos-http-api-server
index 1abaed873..9b6d7e979 100755
--- a/src/services/vyos-http-api-server
+++ b/src/services/vyos-http-api-server
@@ -24,6 +24,7 @@ import traceback
import threading
import vyos.config
+import vyos.util
import bottle
@@ -212,6 +213,7 @@ def get_value():
config_format = command['configFormat']
res = session.show_config(path=command['path'])
+ res = vyos.util.escape_backslash(res)
if config_format == 'json':
config_tree = vyos.configtree.ConfigTree(res)
res = json.loads(config_tree.to_json())