From f7efc1cd171a77974f33bbbe3cea683df6419c01 Mon Sep 17 00:00:00 2001 From: moamoak Date: Thu, 21 Jun 2018 14:10:57 +0200 Subject: [PATCH] Remove `dn` and "modifying values" from output --- print_ldap_entries.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/print_ldap_entries.py b/print_ldap_entries.py index 1b28a81..bd46084 100644 --- a/print_ldap_entries.py +++ b/print_ldap_entries.py @@ -25,8 +25,17 @@ template = ( "}})" ) for ldif in ldifs: + # Delete all modifying values (non-permitted by ldapadd) + del ldif['modifyTimestamp'] + del ldif['structuralObjectClass'] + del ldif['entryCSN'] + del ldif['modifiersName'] + del ldif['creatorsName'] + del ldif['createTimestamp'] + del ldif['entryUUID'] # Cast all values to str instead of bytes + dn = ldif.pop('dn', [b'CHANGE_ME'])[0].decode() data = '\n'.join("'{}': {},".format(k,[vv.decode() for vv in v]) for k, v in ldif.items()) name = ldif.get('cn', ldif.get('ou', [b'CHANGE_ME']))[0].decode() - print(template.format(name=name, dn=ldif['dn'][0].decode(), data=data)) + print(template.format(name=name, dn=dn, data=data)) print() \ No newline at end of file