diff options
| author | Jernej Jakob <jernej.jakob@gmail.com> | 2020-06-11 09:20:13 +0200 | 
|---|---|---|
| committer | Jernej Jakob <jernej.jakob@gmail.com> | 2020-06-11 22:10:47 +0200 | 
| commit | 1cb120a035ede068ac55de017759dc3333935981 (patch) | |
| tree | 430a0377a3df4d797d11283f792eab2d1ddfd561 /python | |
| parent | 0eb30e29f9e97f55679970d8dbe65b192b7bf7ca (diff) | |
| download | vyos-1x-1cb120a035ede068ac55de017759dc3333935981.tar.gz vyos-1x-1cb120a035ede068ac55de017759dc3333935981.zip | |
hostsd_client.py: T2583: update for hostsd rewrite
Diffstat (limited to 'python')
| -rw-r--r-- | python/vyos/hostsd_client.py | 100 | 
1 files changed, 75 insertions, 25 deletions
| diff --git a/python/vyos/hostsd_client.py b/python/vyos/hostsd_client.py index f009aba98..303b6ea47 100644 --- a/python/vyos/hostsd_client.py +++ b/python/vyos/hostsd_client.py @@ -1,15 +1,11 @@  import json -  import zmq - -SOCKET_PATH = "ipc:///run/vyos-hostsd.sock" - +SOCKET_PATH = "ipc:///run/vyos-hostsd/vyos-hostsd.sock"  class VyOSHostsdError(Exception):      pass -  class Client(object):      def __init__(self):          try: @@ -35,35 +31,89 @@ class Client(object):          except zmq.error.Again:              raise VyOSHostsdError("Could not connect to vyos-hostsd") -    def set_host_name(self, host_name, domain_name, search_domains): -        msg = { -            'type': 'host_name', -            'op': 'set', -            'data': { -                'host_name': host_name, -                'domain_name': domain_name, -                'search_domains': search_domains -            } -        } +    def add_name_servers(self, data): +        msg = {'type': 'name_servers', 'op': 'add', 'data': data}          self._communicate(msg) -    def add_hosts(self, tag, hosts): -        msg = {'type': 'hosts', 'op': 'add',  'tag': tag, 'data': hosts} +    def delete_name_servers(self, data): +        msg = {'type': 'name_servers', 'op': 'delete', 'data': data}          self._communicate(msg) -    def delete_hosts(self, tag): -        msg = {'type': 'hosts', 'op': 'delete', 'tag': tag} +    def get_name_servers(self, tag_regex): +        msg = {'type': 'name_servers', 'op': 'get', 'tag_regex': tag_regex} +        return self._communicate(msg) + +    def add_name_server_tags_recursor(self, data): +        msg = {'type': 'name_server_tags_recursor', 'op': 'add', 'data': data} +        self._communicate(msg) + +    def delete_name_server_tags_recursor(self, data): +        msg = {'type': 'name_server_tags_recursor', 'op': 'delete', 'data': data} +        self._communicate(msg) + +    def get_name_server_tags_recursor(self): +        msg = {'type': 'name_server_tags_recursor', 'op': 'get'} +        return self._communicate(msg) + +    def add_name_server_tags_system(self, data): +        msg = {'type': 'name_server_tags_system', 'op': 'add', 'data': data} +        self._communicate(msg) + +    def delete_name_server_tags_system(self, data): +        msg = {'type': 'name_server_tags_system', 'op': 'delete', 'data': data}          self._communicate(msg) -    def add_name_servers(self, tag, servers): -        msg = {'type': 'name_servers', 'op': 'add', 'tag': tag, 'data': servers} +    def get_name_server_tags_system(self): +        msg = {'type': 'name_server_tags_system', 'op': 'get'} +        return self._communicate(msg) + +    def add_forward_zones(self, data): +        msg = {'type': 'forward_zones', 'op': 'add', 'data': data}          self._communicate(msg) -    def delete_name_servers(self, tag): -        msg = {'type': 'name_servers', 'op': 'delete', 'tag': tag} +    def delete_forward_zones(self, data): +        msg = {'type': 'forward_zones', 'op': 'delete', 'data': data}          self._communicate(msg) -    def get_name_servers(self, tag): -        msg = {'type': 'name_servers', 'op': 'get', 'tag': tag} +    def get_forward_zones(self): +        msg = {'type': 'forward_zones', 'op': 'get'}          return self._communicate(msg) +    def add_search_domains(self, data): +        msg = {'type': 'search_domains', 'op': 'add', 'data': data} +        self._communicate(msg) + +    def delete_search_domains(self, data): +        msg = {'type': 'search_domains', 'op': 'delete', 'data': data} +        self._communicate(msg) + +    def get_search_domains(self, tag_regex): +        msg = {'type': 'search_domains', 'op': 'get', 'tag_regex': tag_regex} +        return self._communicate(msg) + +    def add_hosts(self, data): +        msg = {'type': 'hosts', 'op': 'add', 'data': data} +        self._communicate(msg) + +    def delete_hosts(self, data): +        msg = {'type': 'hosts', 'op': 'delete', 'data': data} +        self._communicate(msg) + +    def get_hosts(self, tag_regex): +        msg = {'type': 'hosts', 'op': 'get', 'tag_regex': tag_regex} +        return self._communicate(msg) + +    def set_host_name(self, host_name, domain_name): +        msg = { +            'type': 'host_name', +            'op': 'set', +            'data': { +                'host_name': host_name, +                'domain_name': domain_name, +            } +        } +        self._communicate(msg) + +    def apply(self): +        msg = {'op': 'apply'} +        return self._communicate(msg) | 
