From: Douglas Bagnall Date: Mon, 13 Nov 2023 00:34:57 +0000 (+1300) Subject: pytest: conditional_ace_claims: write_c_test_on_failure() copes with claims X-Git-Tag: talloc-2.4.2~513 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bc9da9568223ddfc8b70384f895c41b7cb6a9b13;p=thirdparty%2Fsamba.git pytest: conditional_ace_claims: write_c_test_on_failure() copes with claims *copes badly, but better than crashing. Signed-off-by: Douglas Bagnall Reviewed-by: Andrew Bartlett --- diff --git a/python/samba/tests/conditional_ace_claims.py b/python/samba/tests/conditional_ace_claims.py index 9b2aaef259f..e7fef5aed43 100644 --- a/python/samba/tests/conditional_ace_claims.py +++ b/python/samba/tests/conditional_ace_claims.py @@ -20,6 +20,7 @@ from samba.dcerpc import security from samba.security import access_check from samba.tests.token_factory import token as Token +from samba.dcerpc.security import CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 from samba.tests import TestCase, DynamicTestCase, get_env_dir from samba.colour import c_RED, c_GREEN import os @@ -73,10 +74,14 @@ def write_c_test_on_failure(f): if s in token: macro = s.upper() for name, values in token[s].items(): - if not isinstance(values, (list, tuple)): - values = [values] - v = ', '.join(q(x) for x in values) - v = q(f"{v}") + if isinstance(values, + CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1): + v = '...' + else: + if not isinstance(values, (list, tuple)): + values = [values] + v = ', '.join(q(x) for x in values) + v = q(f"{v}") print(f'\t{macro}({q(name)}, {v});') print(f'\tSD({q(sddl)});') if 'allow' in f.__name__: