From: Rob van der Linde Date: Mon, 12 Feb 2024 02:53:53 +0000 (+1300) Subject: netcmd: json encoder supports security descriptor objects X-Git-Tag: tdb-1.4.11~1773 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ea63b058fc4716f0017acfb75ace96bee20a6c21;p=thirdparty%2Fsamba.git netcmd: json encoder supports security descriptor objects Signed-off-by: Rob van der Linde Reviewed-by: Andrew Bartlett Reviewed-by: Jo Sutton --- diff --git a/python/samba/netcmd/encoders.py b/python/samba/netcmd/encoders.py index 7d32b683acc..5d13f989a72 100644 --- a/python/samba/netcmd/encoders.py +++ b/python/samba/netcmd/encoders.py @@ -27,6 +27,8 @@ from enum import Enum from ldb import Dn +from samba.dcerpc.security import descriptor + class JSONEncoder(json.JSONEncoder): """Custom JSON encoder class to help out with some data types. @@ -44,6 +46,8 @@ class JSONEncoder(json.JSONEncoder): return str(obj.value) elif isinstance(obj, datetime): return obj.isoformat() + elif isinstance(obj, descriptor): + return obj.as_sddl() elif getattr(obj, "__json__", None) and callable(obj.__json__): return obj.__json__() return obj