summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@vyos.io>2026-10-02 09:27:31 -0500
committerGitHub <noreply@github.com>2026-10-02 09:27:31 -0500
commit5c515753eafa43aceba3eb4dc03c6935cbf0fdb5 (patch)
treede3352b310d90bb53d8167d0ace005ee37f777e4 /python
parent954afbf43c52460c4c7385a8b5cb44af66835064 (diff)
parent8609d63a3f16c3a1484e87ea6e7724e295d33ea2 (diff)
downloadvyos-1x-5c515753eafa43aceba3eb4dc03c6935cbf0fdb5.tar.gz
vyos-1x-5c515753eafa43aceba3eb4dc03c6935cbf0fdb5.zip
Merge pull request #5513 from jestabro/expose-refpath
T9365: add bindings for reference tree path from config path util
Diffstat (limited to 'python')
-rw-r--r--python/vyos/configtree.py2
-rw-r--r--python/vyos/referencetree.py18
2 files changed, 20 insertions, 0 deletions
diff --git a/python/vyos/configtree.py b/python/vyos/configtree.py
index dceb205ab..b8de379eb 100644
--- a/python/vyos/configtree.py
+++ b/python/vyos/configtree.py
@@ -97,6 +97,8 @@ _PROTOTYPES = {
'get_nodes_of_kind': ([c_void_p, c_char_p, c_char_p], c_char_p),
'get_rdeps_of_kind': ([c_void_p, c_char_p, c_char_p], c_char_p),
'get_rdeps_of_kind_data': ([c_void_p, c_char_p, c_char_p], c_char_p),
+ 'reference_path_from_config_path': ([c_void_p, c_char_p], c_char_p),
+ 'reference_path_from_partial_path': ([c_void_p, c_char_p], c_char_p),
}
diff --git a/python/vyos/referencetree.py b/python/vyos/referencetree.py
index 2f50b19d4..0cd969762 100644
--- a/python/vyos/referencetree.py
+++ b/python/vyos/referencetree.py
@@ -115,3 +115,21 @@ class ReferenceTree:
).decode()
sort = sorted(json.loads(res))
return list(map(tuple, sort)) if as_tuple else sort
+
+ def reference_path_from_config_path(self, path):
+ import json
+
+ check_path(path)
+ path_str = ' '.join(map(str, path)).encode()
+
+ path = self.__lib.reference_path_from_config_path(self.__pointer, path_str)
+ return json.loads(path)
+
+ def reference_path_from_partial_path(self, path):
+ import json
+
+ check_path(path)
+ path_str = ' '.join(map(str, path)).encode()
+
+ path = self.__lib.reference_path_from_partial_path(self.__pointer, path_str)
+ return json.loads(path)