1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-03 04:22:09 +03:00

dsdb python tests: convert 'except X, (tuple)' to 'except X as e'

In addition to converting the except line another line is also added
for each except to extract the tuple contents.

Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
Noel Power
2018-02-23 14:34:23 +00:00
committed by Douglas Bagnall
parent 9f61bf115e
commit 0c31d38794
19 changed files with 904 additions and 452 deletions

View File

@ -199,7 +199,8 @@ class AclAddTests(AclTests):
self.ldb_user.newuser(self.test_user1, self.user_pass, userou=self.ou2) self.ldb_user.newuser(self.test_user1, self.user_pass, userou=self.ou2)
self.ldb_user.newgroup("test_add_group1", groupou="OU=test_add_ou2,OU=test_add_ou1", self.ldb_user.newgroup("test_add_group1", groupou="OU=test_add_ou2,OU=test_add_ou1",
grouptype=samba.dsdb.GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP) grouptype=samba.dsdb.GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP)
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -223,7 +224,8 @@ class AclAddTests(AclTests):
try: try:
self.ldb_user.newgroup("test_add_group1", groupou="OU=test_add_ou2,OU=test_add_ou1", self.ldb_user.newgroup("test_add_group1", groupou="OU=test_add_ou2,OU=test_add_ou1",
grouptype=samba.dsdb.GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP) grouptype=samba.dsdb.GTYPE_DISTRIBUTION_DOMAIN_LOCAL_GROUP)
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -259,7 +261,8 @@ class AclAddTests(AclTests):
anonymous = SamDB(url=ldaphost, credentials=self.creds_tmp, lp=lp) anonymous = SamDB(url=ldaphost, credentials=self.creds_tmp, lp=lp)
try: try:
anonymous.newuser("test_add_anonymous", self.user_pass) anonymous.newuser("test_add_anonymous", self.user_pass)
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
else: else:
self.fail() self.fail()
@ -370,7 +373,8 @@ replace: url
url: www.samba.org""" url: www.samba.org"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -398,7 +402,8 @@ replace: url
url: www.samba.org""" url: www.samba.org"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e4:
(num, _) = e4.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -413,7 +418,8 @@ replace: displayName
displayName: test_changed""" displayName: test_changed"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e5:
(num, _) = e5.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -440,7 +446,8 @@ replace: url
url: www.samba.org""" url: www.samba.org"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e6:
(num, _) = e6.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -459,7 +466,8 @@ replace: url
url: www.samba.org""" url: www.samba.org"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e7:
(num, _) = e7.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -477,7 +485,8 @@ replace: url
url: www.samba.org""" url: www.samba.org"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e8:
(num, _) = e8.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -495,7 +504,8 @@ replace: url
url: www.samba.org""" url: www.samba.org"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e9:
(num, _) = e9.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -511,7 +521,8 @@ add: adminDescription
adminDescription: blah blah blah""" adminDescription: blah blah blah"""
try: try:
self.ldb_user.modify_ldif(ldif) self.ldb_user.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e10:
(num, _) = e10.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -535,7 +546,8 @@ Member: """ + self.get_user_dn(self.user_with_sm)
#the user has no rights granted, this should fail #the user has no rights granted, this should fail
try: try:
self.ldb_user2.modify_ldif(ldif) self.ldb_user2.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e11:
(num, _) = e11.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This 'modify' operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -557,7 +569,8 @@ add: Member
Member: CN=test_modify_user2,CN=Users,""" + self.base_dn Member: CN=test_modify_user2,CN=Users,""" + self.base_dn
try: try:
self.ldb_user2.modify_ldif(ldif) self.ldb_user2.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e12:
(num, _) = e12.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -577,7 +590,8 @@ Member: CN=test_modify_user2,CN=Users,""" + self.base_dn
self.sd_utils.dacl_add_ace("CN=test_modify_group2,CN=Users," + self.base_dn, mod) self.sd_utils.dacl_add_ace("CN=test_modify_group2,CN=Users," + self.base_dn, mod)
try: try:
self.ldb_user2.modify_ldif(ldif) self.ldb_user2.modify_ldif(ldif)
except LdbError, (num, _): except LdbError as e13:
(num, _) = e13.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -624,7 +638,8 @@ Member: CN=test_modify_user2,CN=Users,""" + self.base_dn
"description") "description")
try: try:
anonymous.modify(m) anonymous.modify(m)
except LdbError, (num, _): except LdbError as e14:
(num, _) = e14.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
else: else:
self.fail() self.fail()
@ -734,20 +749,23 @@ class AclSearchTests(AclTests):
anonymous = SamDB(url=ldaphost, credentials=self.creds_tmp, lp=lp) anonymous = SamDB(url=ldaphost, credentials=self.creds_tmp, lp=lp)
try: try:
res = anonymous.search("", expression="(objectClass=*)", scope=SCOPE_SUBTREE) res = anonymous.search("", expression="(objectClass=*)", scope=SCOPE_SUBTREE)
except LdbError, (num, _): except LdbError as e15:
(num, _) = e15.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
else: else:
self.fail() self.fail()
try: try:
res = anonymous.search(self.base_dn, expression="(objectClass=*)", scope=SCOPE_SUBTREE) res = anonymous.search(self.base_dn, expression="(objectClass=*)", scope=SCOPE_SUBTREE)
except LdbError, (num, _): except LdbError as e16:
(num, _) = e16.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
else: else:
self.fail() self.fail()
try: try:
res = anonymous.search(anonymous.get_config_basedn(), expression="(objectClass=*)", res = anonymous.search(anonymous.get_config_basedn(), expression="(objectClass=*)",
scope=SCOPE_SUBTREE) scope=SCOPE_SUBTREE)
except LdbError, (num, _): except LdbError as e17:
(num, _) = e17.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
else: else:
self.fail() self.fail()
@ -857,7 +875,8 @@ class AclSearchTests(AclTests):
try: try:
self.ldb_user3.search("OU=ou3,OU=ou2,OU=ou1," + self.base_dn, expression="(objectClass=*)", self.ldb_user3.search("OU=ou3,OU=ou2,OU=ou1," + self.base_dn, expression="(objectClass=*)",
scope=SCOPE_BASE) scope=SCOPE_BASE)
except LdbError, (num, _): except LdbError as e18:
(num, _) = e18.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
else: else:
self.fail() self.fail()
@ -1023,7 +1042,8 @@ class AclDeleteTests(AclTests):
# Here delete User object should ALWAYS through exception # Here delete User object should ALWAYS through exception
try: try:
self.ldb_user.delete(self.get_user_dn("test_delete_user1")) self.ldb_user.delete(self.get_user_dn("test_delete_user1"))
except LdbError, (num, _): except LdbError as e19:
(num, _) = e19.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1061,7 +1081,8 @@ class AclDeleteTests(AclTests):
try: try:
anonymous.delete(self.get_user_dn("test_anonymous")) anonymous.delete(self.get_user_dn("test_anonymous"))
except LdbError, (num, _): except LdbError as e20:
(num, _) = e20.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
else: else:
self.fail() self.fail()
@ -1114,7 +1135,8 @@ class AclRenameTests(AclTests):
try: try:
self.ldb_user.rename("CN=%s,%s,%s" % (self.testuser1, self.ou1, self.base_dn), \ self.ldb_user.rename("CN=%s,%s,%s" % (self.testuser1, self.ou1, self.base_dn), \
"CN=%s,%s,%s" % (self.testuser5, self.ou1, self.base_dn)) "CN=%s,%s,%s" % (self.testuser5, self.ou1, self.base_dn))
except LdbError, (num, _): except LdbError as e21:
(num, _) = e21.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1271,7 +1293,8 @@ class AclRenameTests(AclTests):
self.sd_utils.dacl_add_ace(ou2_dn, mod) self.sd_utils.dacl_add_ace(ou2_dn, mod)
try: try:
self.ldb_user.rename(ou2_dn, ou3_dn) self.ldb_user.rename(ou2_dn, ou3_dn)
except LdbError, (num, _): except LdbError as e22:
(num, _) = e22.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
# This rename operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS # This rename operation should always throw ERR_INSUFFICIENT_ACCESS_RIGHTS
@ -1302,7 +1325,8 @@ class AclRenameTests(AclTests):
# Rename 'User object' having SD and CC to AU # Rename 'User object' having SD and CC to AU
try: try:
self.ldb_admin.rename(user_dn, rename_user_dn) self.ldb_admin.rename(user_dn, rename_user_dn)
except LdbError, (num, _): except LdbError as e23:
(num, _) = e23.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1362,7 +1386,8 @@ unicodePwd:: """ + base64.b64encode("\"samba123@\"".encode('utf-16-le')) + """
add: unicodePwd add: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """
""") """)
except LdbError, (num, _): except LdbError as e24:
(num, _) = e24.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
else: else:
# for some reason we get constraint violation instead of insufficient access error # for some reason we get constraint violation instead of insufficient access error
@ -1388,7 +1413,8 @@ unicodePwd:: """ + base64.b64encode("\"samba123@\"".encode('utf-16-le')) + """
add: unicodePwd add: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """
""") """)
except LdbError, (num, _): except LdbError as e25:
(num, _) = e25.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
else: else:
# for some reason we get constraint violation instead of insufficient access error # for some reason we get constraint violation instead of insufficient access error
@ -1427,7 +1453,8 @@ dBCSPwd: XXXXXXXXXXXXXXXX
add: dBCSPwd add: dBCSPwd
dBCSPwd: YYYYYYYYYYYYYYYY dBCSPwd: YYYYYYYYYYYYYYYY
""") """)
except LdbError, (num, _): except LdbError as e26:
(num, _) = e26.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
else: else:
self.fail() self.fail()
@ -1445,7 +1472,8 @@ userPassword: thatsAcomplPASS1
add: userPassword add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
except LdbError, (num, _): except LdbError as e27:
(num, _) = e27.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1463,7 +1491,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
# This fails on Windows 2000 domain level with constraint violation # This fails on Windows 2000 domain level with constraint violation
except LdbError, (num, _): except LdbError as e28:
(num, _) = e28.args
self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or
num == ERR_UNWILLING_TO_PERFORM) num == ERR_UNWILLING_TO_PERFORM)
else: else:
@ -1504,7 +1533,8 @@ changetype: modify
replace: unicodePwd replace: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS1\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS1\"".encode('utf-16-le')) + """
""") """)
except LdbError, (num, _): except LdbError as e29:
(num, _) = e29.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1526,7 +1556,8 @@ changetype: modify
replace: userPassword replace: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
except LdbError, (num, _): except LdbError as e30:
(num, _) = e30.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1540,7 +1571,8 @@ replace: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
# This fails on Windows 2000 domain level with constraint violation # This fails on Windows 2000 domain level with constraint violation
except LdbError, (num, _): except LdbError as e31:
(num, _) = e31.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
def test_reset_password3(self): def test_reset_password3(self):
@ -1554,7 +1586,8 @@ changetype: modify
replace: unicodePwd replace: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS1\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS1\"".encode('utf-16-le')) + """
""") """)
except LdbError, (num, _): except LdbError as e32:
(num, _) = e32.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1570,7 +1603,8 @@ changetype: modify
replace: userPassword replace: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
except LdbError, (num, _): except LdbError as e33:
(num, _) = e33.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
self.fail() self.fail()
@ -1598,7 +1632,8 @@ replace: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
# This fails on Windows 2000 domain level with constraint violation # This fails on Windows 2000 domain level with constraint violation
except LdbError, (num, _): except LdbError as e34:
(num, _) = e34.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
class AclExtendedTests(AclTests): class AclExtendedTests(AclTests):
@ -1756,7 +1791,8 @@ class AclUndeleteTests(AclTests):
try: try:
self.undelete_deleted(self.deleted_dn1, self.testuser1_dn) self.undelete_deleted(self.deleted_dn1, self.testuser1_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e35:
(num, _) = e35.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
# seems that permissions on isDeleted and distinguishedName are irrelevant # seems that permissions on isDeleted and distinguishedName are irrelevant
@ -1772,7 +1808,8 @@ class AclUndeleteTests(AclTests):
try: try:
self.undelete_deleted_with_mod(self.deleted_dn3, self.testuser3_dn) self.undelete_deleted_with_mod(self.deleted_dn3, self.testuser3_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e36:
(num, _) = e36.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
# undelete in an ou, in which we have no right to create children # undelete in an ou, in which we have no right to create children
@ -1781,7 +1818,8 @@ class AclUndeleteTests(AclTests):
try: try:
self.undelete_deleted(self.deleted_dn4, self.new_dn_ou) self.undelete_deleted(self.deleted_dn4, self.new_dn_ou)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e37:
(num, _) = e37.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
# delete is not required # delete is not required
@ -1795,7 +1833,8 @@ class AclUndeleteTests(AclTests):
try: try:
self.undelete_deleted(self.deleted_dn4, self.testuser4_dn) self.undelete_deleted(self.deleted_dn4, self.testuser4_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e38:
(num, _) = e38.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
class AclSPNTests(AclTests): class AclSPNTests(AclTests):
@ -1905,7 +1944,8 @@ class AclSPNTests(AclTests):
netbiosdomain = self.dcctx.get_domain_name() netbiosdomain = self.dcctx.get_domain_name()
try: try:
self.replace_spn(self.ldb_user1, ctx.acct_dn, "HOST/%s/%s" % (ctx.myname, netbiosdomain)) self.replace_spn(self.ldb_user1, ctx.acct_dn, "HOST/%s/%s" % (ctx.myname, netbiosdomain))
except LdbError, (num, _): except LdbError as e39:
(num, _) = e39.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
mod = "(OA;;SW;f3a64788-5306-11d1-a9c5-0000f80367c1;;%s)" % str(self.user_sid1) mod = "(OA;;SW;f3a64788-5306-11d1-a9c5-0000f80367c1;;%s)" % str(self.user_sid1)
@ -1942,26 +1982,31 @@ class AclSPNTests(AclTests):
try: try:
self.replace_spn(self.ldb_user1, ctx.acct_dn, "ldap/%s.%s/ForestDnsZones.%s" % self.replace_spn(self.ldb_user1, ctx.acct_dn, "ldap/%s.%s/ForestDnsZones.%s" %
(ctx.myname, ctx.dnsdomain, ctx.dnsdomain)) (ctx.myname, ctx.dnsdomain, ctx.dnsdomain))
except LdbError, (num, _): except LdbError as e40:
(num, _) = e40.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, ctx.acct_dn, "ldap/%s.%s/DomainDnsZones.%s" % self.replace_spn(self.ldb_user1, ctx.acct_dn, "ldap/%s.%s/DomainDnsZones.%s" %
(ctx.myname, ctx.dnsdomain, ctx.dnsdomain)) (ctx.myname, ctx.dnsdomain, ctx.dnsdomain))
except LdbError, (num, _): except LdbError as e41:
(num, _) = e41.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, ctx.acct_dn, "nosuchservice/%s/%s" % ("abcd", "abcd")) self.replace_spn(self.ldb_user1, ctx.acct_dn, "nosuchservice/%s/%s" % ("abcd", "abcd"))
except LdbError, (num, _): except LdbError as e42:
(num, _) = e42.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, ctx.acct_dn, "GC/%s.%s/%s" % self.replace_spn(self.ldb_user1, ctx.acct_dn, "GC/%s.%s/%s" %
(ctx.myname, ctx.dnsdomain, netbiosdomain)) (ctx.myname, ctx.dnsdomain, netbiosdomain))
except LdbError, (num, _): except LdbError as e43:
(num, _) = e43.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, ctx.acct_dn, "E3514235-4B06-11D1-AB04-00C04FC2DCD2/%s/%s" % self.replace_spn(self.ldb_user1, ctx.acct_dn, "E3514235-4B06-11D1-AB04-00C04FC2DCD2/%s/%s" %
(ctx.ntds_guid, ctx.dnsdomain)) (ctx.ntds_guid, ctx.dnsdomain))
except LdbError, (num, _): except LdbError as e44:
(num, _) = e44.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
def test_computer_spn(self): def test_computer_spn(self):
@ -2005,7 +2050,8 @@ class AclSPNTests(AclTests):
#user has neither WP nor Validated-SPN, access denied expected #user has neither WP nor Validated-SPN, access denied expected
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s/%s" % (self.computername, netbiosdomain)) self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s/%s" % (self.computername, netbiosdomain))
except LdbError, (num, _): except LdbError as e45:
(num, _) = e45.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
mod = "(OA;;SW;f3a64788-5306-11d1-a9c5-0000f80367c1;;%s)" % str(self.user_sid1) mod = "(OA;;SW;f3a64788-5306-11d1-a9c5-0000f80367c1;;%s)" % str(self.user_sid1)
@ -2022,36 +2068,43 @@ class AclSPNTests(AclTests):
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s/%s" % (self.computername, netbiosdomain)) self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s/%s" % (self.computername, netbiosdomain))
except LdbError, (num, _): except LdbError as e46:
(num, _) = e46.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s.%s/%s" % self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s.%s/%s" %
(self.computername, self.dcctx.dnsdomain, netbiosdomain)) (self.computername, self.dcctx.dnsdomain, netbiosdomain))
except LdbError, (num, _): except LdbError as e47:
(num, _) = e47.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s/%s" % self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s/%s" %
(self.computername, self.dcctx.dnsdomain)) (self.computername, self.dcctx.dnsdomain))
except LdbError, (num, _): except LdbError as e48:
(num, _) = e48.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s.%s/%s" % self.replace_spn(self.ldb_user1, self.computerdn, "HOST/%s.%s/%s" %
(self.computername, self.dcctx.dnsdomain, self.dcctx.dnsdomain)) (self.computername, self.dcctx.dnsdomain, self.dcctx.dnsdomain))
except LdbError, (num, _): except LdbError as e49:
(num, _) = e49.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "GC/%s.%s/%s" % self.replace_spn(self.ldb_user1, self.computerdn, "GC/%s.%s/%s" %
(self.computername, self.dcctx.dnsdomain, self.dcctx.dnsforest)) (self.computername, self.dcctx.dnsdomain, self.dcctx.dnsforest))
except LdbError, (num, _): except LdbError as e50:
(num, _) = e50.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "ldap/%s/%s" % (self.computername, netbiosdomain)) self.replace_spn(self.ldb_user1, self.computerdn, "ldap/%s/%s" % (self.computername, netbiosdomain))
except LdbError, (num, _): except LdbError as e51:
(num, _) = e51.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
self.replace_spn(self.ldb_user1, self.computerdn, "ldap/%s.%s/ForestDnsZones.%s" % self.replace_spn(self.ldb_user1, self.computerdn, "ldap/%s.%s/ForestDnsZones.%s" %
(self.computername, self.dcctx.dnsdomain, self.dcctx.dnsdomain)) (self.computername, self.dcctx.dnsdomain, self.dcctx.dnsdomain))
except LdbError, (num, _): except LdbError as e52:
(num, _) = e52.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
def test_spn_rwdc(self): def test_spn_rwdc(self):

View File

@ -216,7 +216,8 @@ class UserTests(samba.tests.TestCase):
self.ldb.search(dn, self.ldb.search(dn,
scope=SCOPE_BASE, scope=SCOPE_BASE,
attrs=['cn']) attrs=['cn'])
except LdbError as (num, msg): except LdbError as e:
(num, msg) = e.args
if num != 32: if num != 32:
raise raise

View File

@ -114,7 +114,8 @@ class BasicDeleteTests(BaseDeleteTests):
try: try:
ldb.delete(dn) ldb.delete(dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
def test_delete_protection(self): def test_delete_protection(self):
@ -139,7 +140,8 @@ class BasicDeleteTests(BaseDeleteTests):
try: try:
self.ldb.delete("cn=ldaptestcontainer," + self.base_dn) self.ldb.delete("cn=ldaptestcontainer," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF) self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF)
self.ldb.delete("cn=ldaptestcontainer," + self.base_dn, ["tree_delete:1"]) self.ldb.delete("cn=ldaptestcontainer," + self.base_dn, ["tree_delete:1"])
@ -148,19 +150,22 @@ class BasicDeleteTests(BaseDeleteTests):
res = self.ldb.search("cn=ldaptestcontainer," + self.base_dn, res = self.ldb.search("cn=ldaptestcontainer," + self.base_dn,
scope=SCOPE_BASE, attrs=[]) scope=SCOPE_BASE, attrs=[])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
try: try:
res = self.ldb.search("cn=entry1,cn=ldaptestcontainer," + self.base_dn, res = self.ldb.search("cn=entry1,cn=ldaptestcontainer," + self.base_dn,
scope=SCOPE_BASE, attrs=[]) scope=SCOPE_BASE, attrs=[])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
try: try:
res = self.ldb.search("cn=entry2,cn=ldaptestcontainer," + self.base_dn, res = self.ldb.search("cn=entry2,cn=ldaptestcontainer," + self.base_dn,
scope=SCOPE_BASE, attrs=[]) scope=SCOPE_BASE, attrs=[])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e4:
(num, _) = e4.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
delete_force(self.ldb, "cn=entry1,cn=ldaptestcontainer," + self.base_dn) delete_force(self.ldb, "cn=entry1,cn=ldaptestcontainer," + self.base_dn)
@ -177,7 +182,8 @@ class BasicDeleteTests(BaseDeleteTests):
try: try:
self.ldb.delete(res[0]["dsServiceName"][0]) self.ldb.delete(res[0]["dsServiceName"][0])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e5:
(num, _) = e5.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
res = self.ldb.search(self.base_dn, attrs=["rIDSetReferences"], res = self.ldb.search(self.base_dn, attrs=["rIDSetReferences"],
@ -188,12 +194,14 @@ class BasicDeleteTests(BaseDeleteTests):
try: try:
self.ldb.delete(res[0]["rIDSetReferences"][0]) self.ldb.delete(res[0]["rIDSetReferences"][0])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e6:
(num, _) = e6.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
self.ldb.delete(res[0]["rIDSetReferences"][0], ["tree_delete:1"]) self.ldb.delete(res[0]["rIDSetReferences"][0], ["tree_delete:1"])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e7:
(num, _) = e7.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Deletes failing since three main crossRef objects are protected # Deletes failing since three main crossRef objects are protected
@ -201,23 +209,27 @@ class BasicDeleteTests(BaseDeleteTests):
try: try:
self.ldb.delete("cn=Enterprise Schema,cn=Partitions," + self.configuration_dn) self.ldb.delete("cn=Enterprise Schema,cn=Partitions," + self.configuration_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e8:
(num, _) = e8.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
self.ldb.delete("cn=Enterprise Schema,cn=Partitions," + self.configuration_dn, ["tree_delete:1"]) self.ldb.delete("cn=Enterprise Schema,cn=Partitions," + self.configuration_dn, ["tree_delete:1"])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e9:
(num, _) = e9.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
self.ldb.delete("cn=Enterprise Configuration,cn=Partitions," + self.configuration_dn) self.ldb.delete("cn=Enterprise Configuration,cn=Partitions," + self.configuration_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e10:
(num, _) = e10.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF) self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF)
try: try:
self.ldb.delete("cn=Enterprise Configuration,cn=Partitions," + self.configuration_dn, ["tree_delete:1"]) self.ldb.delete("cn=Enterprise Configuration,cn=Partitions," + self.configuration_dn, ["tree_delete:1"])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e11:
(num, _) = e11.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF) self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF)
res = self.ldb.search("cn=Partitions," + self.configuration_dn, attrs=[], res = self.ldb.search("cn=Partitions," + self.configuration_dn, attrs=[],
@ -227,26 +239,30 @@ class BasicDeleteTests(BaseDeleteTests):
try: try:
self.ldb.delete(res[0].dn) self.ldb.delete(res[0].dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e12:
(num, _) = e12.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF) self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF)
try: try:
self.ldb.delete(res[0].dn, ["tree_delete:1"]) self.ldb.delete(res[0].dn, ["tree_delete:1"])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e13:
(num, _) = e13.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF) self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF)
# Delete failing since "SYSTEM_FLAG_DISALLOW_DELETE" # Delete failing since "SYSTEM_FLAG_DISALLOW_DELETE"
try: try:
self.ldb.delete("CN=Users," + self.base_dn) self.ldb.delete("CN=Users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e14:
(num, _) = e14.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Tree-delete failing since "isCriticalSystemObject" # Tree-delete failing since "isCriticalSystemObject"
try: try:
self.ldb.delete("CN=Computers," + self.base_dn, ["tree_delete:1"]) self.ldb.delete("CN=Computers," + self.base_dn, ["tree_delete:1"])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e15:
(num, _) = e15.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
def test_all(self): def test_all(self):

View File

@ -140,7 +140,8 @@ systemOnly: FALSE
attr_dn_new = attr_dn.replace(attr_name, attr_name + "-NEW") attr_dn_new = attr_dn.replace(attr_name, attr_name + "-NEW")
try: try:
self.sam_db.rename(attr_dn, attr_dn_new) self.sam_db.rename(attr_dn, attr_dn_new)
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.fail("failed to change CN for %s: %s" % (attr_name, _)) self.fail("failed to change CN for %s: %s" % (attr_name, _))
# compare resulting schemaInfo # compare resulting schemaInfo
@ -186,7 +187,8 @@ systemOnly: FALSE
class_dn_new = class_dn.replace(class_name, class_name + "-NEW") class_dn_new = class_dn.replace(class_name, class_name + "-NEW")
try: try:
self.sam_db.rename(class_dn, class_dn_new) self.sam_db.rename(class_dn, class_dn_new)
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.fail("failed to change CN for %s: %s" % (class_name, _)) self.fail("failed to change CN for %s: %s" % (class_name, _))
# compare resulting schemaInfo # compare resulting schemaInfo

View File

@ -116,7 +116,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectClass": [] }) "objectClass": [] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# Invalid objectclass specified # Invalid objectclass specified
@ -125,7 +126,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectClass": "X" }) "objectClass": "X" })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
# Invalid objectCategory specified # Invalid objectCategory specified
@ -135,7 +137,8 @@ class BasicTests(samba.tests.TestCase):
"objectClass": "person", "objectClass": "person",
"objectCategory": self.base_dn }) "objectCategory": self.base_dn })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Multi-valued "systemFlags" # Multi-valued "systemFlags"
@ -145,7 +148,8 @@ class BasicTests(samba.tests.TestCase):
"objectClass": "person", "objectClass": "person",
"systemFlags": ["0", str(SYSTEM_FLAG_DOMAIN_DISALLOW_MOVE)] }) "systemFlags": ["0", str(SYSTEM_FLAG_DOMAIN_DISALLOW_MOVE)] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e4:
(num, _) = e4.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# We cannot instanciate from an abstract object class ("connectionPoint" # We cannot instanciate from an abstract object class ("connectionPoint"
@ -159,14 +163,16 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectClass": "connectionPoint" }) "objectClass": "connectionPoint" })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e5:
(num, _) = e5.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
self.ldb.add({ self.ldb.add({
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectClass": ["person", "leaf"] }) "objectClass": ["person", "leaf"] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e6:
(num, _) = e6.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Objects instanciated using "satisfied" abstract classes (concrete # Objects instanciated using "satisfied" abstract classes (concrete
@ -183,7 +189,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectClass": ["person", "container"] }) "objectClass": ["person", "container"] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e7:
(num, _) = e7.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Test allowed system flags # Test allowed system flags
@ -225,7 +232,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e8:
(num, _) = e8.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# We cannot delete classes which weren't specified # We cannot delete classes which weren't specified
@ -236,7 +244,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e9:
(num, _) = e9.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
# An invalid class cannot be added # An invalid class cannot be added
@ -247,7 +256,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e10:
(num, _) = e10.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
# We cannot add a the new top-most structural class "user" here since # We cannot add a the new top-most structural class "user" here since
@ -260,7 +270,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e11:
(num, _) = e11.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# An already specified objectclass cannot be added another time # An already specified objectclass cannot be added another time
@ -271,7 +282,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e12:
(num, _) = e12.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
# Auxiliary classes can always be added # Auxiliary classes can always be added
@ -290,7 +302,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e13:
(num, _) = e13.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Objectclass replace operations can be performed as well # Objectclass replace operations can be performed as well
@ -315,7 +328,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e14:
(num, _) = e14.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# More than one change operation is allowed # More than one change operation is allowed
@ -332,7 +346,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e15:
(num, _) = e15.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
m = Message() m = Message()
@ -342,7 +357,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e16:
(num, _) = e16.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Classes can be removed unless attributes of them are used. # Classes can be removed unless attributes of them are used.
@ -379,7 +395,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e17:
(num, _) = e17.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Remove the previously specified attribute # Remove the previously specified attribute
@ -411,7 +428,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e18:
(num, _) = e18.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Add a new top-most structural class "inetOrgPerson" and remove it # Add a new top-most structural class "inetOrgPerson" and remove it
@ -466,7 +484,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=ldaptestobject," + self.base_dn, "dn": "cn=ldaptestobject," + self.base_dn,
"objectclass": "configuration"}) "objectclass": "configuration"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e19:
(num, _) = e19.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -474,7 +493,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=Test Secret,cn=system," + self.base_dn, "dn": "cn=Test Secret,cn=system," + self.base_dn,
"objectclass": "secret"}) "objectclass": "secret"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e20:
(num, _) = e20.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn) delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
@ -500,7 +520,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e21:
(num, _) = e21.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=Test Secret,cn=system," + self.base_dn) delete_force(self.ldb, "cn=Test Secret,cn=system," + self.base_dn)
@ -511,7 +532,8 @@ class BasicTests(samba.tests.TestCase):
"objectclass": "container", "objectclass": "container",
"isCriticalSystemObject": "TRUE"}) "isCriticalSystemObject": "TRUE"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e22:
(num, _) = e22.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
self.ldb.add({ self.ldb.add({
@ -525,7 +547,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e23:
(num, _) = e23.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn) delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
@ -552,7 +575,8 @@ class BasicTests(samba.tests.TestCase):
+ self.base_dn, + self.base_dn,
"objectclass": "group"}) "objectclass": "group"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e24:
(num, _) = e24.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
delete_force(self.ldb, "cn=ldaptestgroup,cn=thisdoesnotexist123," delete_force(self.ldb, "cn=ldaptestgroup,cn=thisdoesnotexist123,"
@ -563,7 +587,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "ou=testou,cn=users," + self.base_dn, "dn": "ou=testou,cn=users," + self.base_dn,
"objectclass": "organizationalUnit"}) "objectclass": "organizationalUnit"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e25:
(num, _) = e25.args
self.assertEquals(num, ERR_NAMING_VIOLATION) self.assertEquals(num, ERR_NAMING_VIOLATION)
delete_force(self.ldb, "ou=testou,cn=users," + self.base_dn) delete_force(self.ldb, "ou=testou,cn=users," + self.base_dn)
@ -580,7 +605,8 @@ class BasicTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"thisdoesnotexist": "x"}) "thisdoesnotexist": "x"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e26:
(num, _) = e26.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
self.ldb.add({ self.ldb.add({
@ -596,7 +622,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e27:
(num, _) = e27.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -613,7 +640,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=ldaptestobject," + self.base_dn, "dn": "cn=ldaptestobject," + self.base_dn,
"objectclass": "ipProtocol"}) "objectclass": "ipProtocol"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e28:
(num, _) = e28.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# inadequate but schema-valid attribute specified # inadequate but schema-valid attribute specified
@ -624,7 +652,8 @@ class BasicTests(samba.tests.TestCase):
"ipProtocolNumber": "1", "ipProtocolNumber": "1",
"uid" : "0"}) "uid" : "0"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e29:
(num, _) = e29.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
self.ldb.add({ self.ldb.add({
@ -641,7 +670,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e30:
(num, _) = e30.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# mandatory attribute delete trial # mandatory attribute delete trial
@ -652,7 +682,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e31:
(num, _) = e31.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# mandatory attribute delete trial # mandatory attribute delete trial
@ -663,7 +694,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e32:
(num, _) = e32.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn) delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
@ -676,7 +708,8 @@ class BasicTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"sAMAccountName": ["nam1", "nam2"]}) "sAMAccountName": ["nam1", "nam2"]})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e33:
(num, _) = e33.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.ldb.add({ self.ldb.add({
@ -690,7 +723,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e34:
(num, _) = e34.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -706,7 +740,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e35:
(num, _) = e35.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -740,7 +775,8 @@ class BasicTests(samba.tests.TestCase):
"managedBy": managers "managedBy": managers
}) })
self.fail("failed to fail to add multiple managedBy attributes") self.fail("failed to fail to add multiple managedBy attributes")
except LdbError as (num, _): except LdbError as e36:
(num, _) = e36.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
managee = "cn=group2," + ou managee = "cn=group2," + ou
@ -756,7 +792,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e37:
(num, _) = e37.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -772,7 +809,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e38:
(num, _) = e38.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
self.ldb.delete(ou, ['tree_delete:1']) self.ldb.delete(ou, ['tree_delete:1'])
@ -859,7 +897,8 @@ class BasicTests(samba.tests.TestCase):
"objectClass": "person", "objectClass": "person",
"sn": "" }) "sn": "" })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e39:
(num, _) = e39.args
self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX) self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX)
# Too long (max. 64) # Too long (max. 64)
@ -883,7 +922,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e40:
(num, _) = e40.args
self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX) self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX)
# Too long (max. 64) # Too long (max. 64)
@ -911,13 +951,15 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.add(m) ldb.add(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e41:
(num, _) = e41.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e42:
(num, _) = e42.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -932,7 +974,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.add(m) ldb.add(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e43:
(num, _) = e43.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.ldb.add({ self.ldb.add({
@ -946,7 +989,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e44:
(num, _) = e44.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -960,7 +1004,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e45:
(num, _) = e45.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -974,7 +1019,8 @@ class BasicTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"instanceType": ["0", "1"]}) "instanceType": ["0", "1"]})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e46:
(num, _) = e46.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# The head NC flag cannot be set without the write flag # The head NC flag cannot be set without the write flag
@ -984,7 +1030,8 @@ class BasicTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"instanceType": "1" }) "instanceType": "1" })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e47:
(num, _) = e47.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# We cannot manipulate NCs without the head NC flag # We cannot manipulate NCs without the head NC flag
@ -994,7 +1041,8 @@ class BasicTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"instanceType": "32" }) "instanceType": "32" })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e48:
(num, _) = e48.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
self.ldb.add({ self.ldb.add({
@ -1008,7 +1056,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e49:
(num, _) = e49.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -1018,7 +1067,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e50:
(num, _) = e50.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -1027,7 +1077,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e51:
(num, _) = e51.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -1039,7 +1090,8 @@ class BasicTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"instanceType": "3" }) "instanceType": "3" })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e52:
(num, _) = e52.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestuser2,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser2,cn=users," + self.base_dn)
@ -1054,7 +1106,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.add(m) ldb.add(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e53:
(num, _) = e53.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
# a wrong "distinguishedName" attribute is obviously tolerated # a wrong "distinguishedName" attribute is obviously tolerated
@ -1080,7 +1133,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e54:
(num, _) = e54.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
m = Message() m = Message()
@ -1092,7 +1146,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e55:
(num, _) = e55.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -1104,7 +1159,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e56:
(num, _) = e56.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -1116,7 +1172,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e57:
(num, _) = e57.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -1129,20 +1186,23 @@ class BasicTests(samba.tests.TestCase):
try: try:
self.ldb.search("=,cn=users," + self.base_dn, scope=SCOPE_BASE) self.ldb.search("=,cn=users," + self.base_dn, scope=SCOPE_BASE)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e58:
(num, _) = e58.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# empty RDN name # empty RDN name
try: try:
self.ldb.search("cn=,cn=users," + self.base_dn, scope=SCOPE_BASE) self.ldb.search("cn=,cn=users," + self.base_dn, scope=SCOPE_BASE)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e59:
(num, _) = e59.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
try: try:
self.ldb.search("=ldaptestgroup,cn=users," + self.base_dn, scope=SCOPE_BASE) self.ldb.search("=ldaptestgroup,cn=users," + self.base_dn, scope=SCOPE_BASE)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e60:
(num, _) = e60.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# Add # Add
@ -1153,7 +1213,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "=,cn=users," + self.base_dn, "dn": "=,cn=users," + self.base_dn,
"objectclass": "group"}) "objectclass": "group"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e61:
(num, _) = e61.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# empty RDN name # empty RDN name
@ -1162,7 +1223,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "=ldaptestgroup,cn=users," + self.base_dn, "dn": "=ldaptestgroup,cn=users," + self.base_dn,
"objectclass": "group"}) "objectclass": "group"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e62:
(num, _) = e62.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# empty RDN value # empty RDN value
@ -1171,7 +1233,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "cn=,cn=users," + self.base_dn, "dn": "cn=,cn=users," + self.base_dn,
"objectclass": "group"}) "objectclass": "group"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e63:
(num, _) = e63.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# a wrong RDN candidate # a wrong RDN candidate
@ -1180,7 +1243,8 @@ class BasicTests(samba.tests.TestCase):
"dn": "description=xyz,cn=users," + self.base_dn, "dn": "description=xyz,cn=users," + self.base_dn,
"objectclass": "group"}) "objectclass": "group"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e64:
(num, _) = e64.args
self.assertEquals(num, ERR_NAMING_VIOLATION) self.assertEquals(num, ERR_NAMING_VIOLATION)
delete_force(self.ldb, "description=xyz,cn=users," + self.base_dn) delete_force(self.ldb, "description=xyz,cn=users," + self.base_dn)
@ -1207,7 +1271,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e65:
(num, _) = e65.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# Delete # Delete
@ -1216,7 +1281,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
self.ldb.delete("cn=,cn=users," + self.base_dn) self.ldb.delete("cn=,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e66:
(num, _) = e66.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# Rename # Rename
@ -1226,7 +1292,8 @@ class BasicTests(samba.tests.TestCase):
self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn, self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn,
"=,cn=users," + self.base_dn) "=,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e67:
(num, _) = e67.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# new empty RDN name # new empty RDN name
@ -1234,7 +1301,8 @@ class BasicTests(samba.tests.TestCase):
self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn, self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn,
"=ldaptestgroup,cn=users," + self.base_dn) "=ldaptestgroup,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e68:
(num, _) = e68.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# new empty RDN value # new empty RDN value
@ -1242,7 +1310,8 @@ class BasicTests(samba.tests.TestCase):
self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn, self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn,
"cn=,cn=users," + self.base_dn) "cn=,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e69:
(num, _) = e69.args
self.assertEquals(num, ERR_NAMING_VIOLATION) self.assertEquals(num, ERR_NAMING_VIOLATION)
# new wrong RDN candidate # new wrong RDN candidate
@ -1250,7 +1319,8 @@ class BasicTests(samba.tests.TestCase):
self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn, self.ldb.rename("cn=ldaptestgroup,cn=users," + self.base_dn,
"description=xyz,cn=users," + self.base_dn) "description=xyz,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e70:
(num, _) = e70.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "description=xyz,cn=users," + self.base_dn) delete_force(self.ldb, "description=xyz,cn=users," + self.base_dn)
@ -1260,7 +1330,8 @@ class BasicTests(samba.tests.TestCase):
self.ldb.rename("cn=,cn=users," + self.base_dn, self.ldb.rename("cn=,cn=users," + self.base_dn,
"cn=ldaptestgroup,cn=users," + self.base_dn) "cn=ldaptestgroup,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e71:
(num, _) = e71.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
# names # names
@ -1272,7 +1343,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e72:
(num, _) = e72.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_RDN) self.assertEquals(num, ERR_NOT_ALLOWED_ON_RDN)
m = Message() m = Message()
@ -1282,7 +1354,8 @@ class BasicTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e73:
(num, _) = e73.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_RDN) self.assertEquals(num, ERR_NOT_ALLOWED_ON_RDN)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -1310,7 +1383,8 @@ objectClass: container
""" """
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e74:
(num, _) = e74.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
delete_force(self.ldb, "%s,%s" % (rdn, self.base_dn)) delete_force(self.ldb, "%s,%s" % (rdn, self.base_dn))
@ -1320,14 +1394,16 @@ objectClass: container
# cannot rename to be a child of itself # cannot rename to be a child of itself
ldb.rename(self.base_dn, "dc=test," + self.base_dn) ldb.rename(self.base_dn, "dc=test," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e75:
(num, _) = e75.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
# inexistent object # inexistent object
ldb.rename("cn=ldaptestuser2,cn=users," + self.base_dn, "cn=ldaptestuser2,cn=users," + self.base_dn) ldb.rename("cn=ldaptestuser2,cn=users," + self.base_dn, "cn=ldaptestuser2,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e76:
(num, _) = e76.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
self.ldb.add({ self.ldb.add({
@ -1342,28 +1418,32 @@ objectClass: container
# containment problem: a user entry cannot contain user entries # containment problem: a user entry cannot contain user entries
ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "cn=ldaptestuser4,cn=ldaptestuser3,cn=users," + self.base_dn) ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "cn=ldaptestuser4,cn=ldaptestuser3,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e77:
(num, _) = e77.args
self.assertEquals(num, ERR_NAMING_VIOLATION) self.assertEquals(num, ERR_NAMING_VIOLATION)
try: try:
# invalid parent # invalid parent
ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "cn=ldaptestuser3,cn=people,cn=users," + self.base_dn) ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "cn=ldaptestuser3,cn=people,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e78:
(num, _) = e78.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
try: try:
# invalid target DN syntax # invalid target DN syntax
ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, ",cn=users," + self.base_dn) ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, ",cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e79:
(num, _) = e79.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
try: try:
# invalid RDN name # invalid RDN name
ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "ou=ldaptestuser3,cn=users," + self.base_dn) ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "ou=ldaptestuser3,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e80:
(num, _) = e80.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestuser3,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser3,cn=users," + self.base_dn)
@ -1374,21 +1454,24 @@ objectClass: container
try: try:
ldb.rename("CN=DisplaySpecifiers," + self.configuration_dn, "CN=DisplaySpecifiers,CN=Services," + self.configuration_dn) ldb.rename("CN=DisplaySpecifiers," + self.configuration_dn, "CN=DisplaySpecifiers,CN=Services," + self.configuration_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e81:
(num, _) = e81.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Limited move failing since no "SYSTEM_FLAG_CONFIG_ALLOW_LIMITED_MOVE" # Limited move failing since no "SYSTEM_FLAG_CONFIG_ALLOW_LIMITED_MOVE"
try: try:
ldb.rename("CN=Directory Service,CN=Windows NT,CN=Services," + self.configuration_dn, "CN=Directory Service,CN=RRAS,CN=Services," + self.configuration_dn) ldb.rename("CN=Directory Service,CN=Windows NT,CN=Services," + self.configuration_dn, "CN=Directory Service,CN=RRAS,CN=Services," + self.configuration_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e82:
(num, _) = e82.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Rename failing since no "SYSTEM_FLAG_CONFIG_ALLOW_RENAME" # Rename failing since no "SYSTEM_FLAG_CONFIG_ALLOW_RENAME"
try: try:
ldb.rename("CN=DisplaySpecifiers," + self.configuration_dn, "CN=DisplaySpecifiers2," + self.configuration_dn) ldb.rename("CN=DisplaySpecifiers," + self.configuration_dn, "CN=DisplaySpecifiers2," + self.configuration_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e83:
(num, _) = e83.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# It's not really possible to test moves on the schema partition since # It's not really possible to test moves on the schema partition since
@ -1398,21 +1481,24 @@ objectClass: container
try: try:
ldb.rename("CN=Top," + self.schema_dn, "CN=Top2," + self.schema_dn) ldb.rename("CN=Top," + self.schema_dn, "CN=Top2," + self.schema_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e84:
(num, _) = e84.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Move failing since "SYSTEM_FLAG_DOMAIN_DISALLOW_MOVE" # Move failing since "SYSTEM_FLAG_DOMAIN_DISALLOW_MOVE"
try: try:
ldb.rename("CN=Users," + self.base_dn, "CN=Users,CN=Computers," + self.base_dn) ldb.rename("CN=Users," + self.base_dn, "CN=Users,CN=Computers," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e85:
(num, _) = e85.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Rename failing since "SYSTEM_FLAG_DOMAIN_DISALLOW_RENAME" # Rename failing since "SYSTEM_FLAG_DOMAIN_DISALLOW_RENAME"
try: try:
ldb.rename("CN=Users," + self.base_dn, "CN=Users2," + self.base_dn) ldb.rename("CN=Users," + self.base_dn, "CN=Users2," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e86:
(num, _) = e86.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Performs some other constraints testing # Performs some other constraints testing
@ -1420,7 +1506,8 @@ objectClass: container
try: try:
ldb.rename("CN=Policies,CN=System," + self.base_dn, "CN=Users2," + self.base_dn) ldb.rename("CN=Policies,CN=System," + self.base_dn, "CN=Users2," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e87:
(num, _) = e87.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
def test_rename_twice(self): def test_rename_twice(self):
@ -1451,7 +1538,8 @@ objectClass: container
objectGUID: bd3480c9-58af-4cd8-92df-bc4a18b6e44d objectGUID: bd3480c9-58af-4cd8-92df-bc4a18b6e44d
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e88:
(num, _) = e88.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
self.ldb.add({ self.ldb.add({
@ -1467,7 +1555,8 @@ replace: objectGUID
objectGUID: bd3480c9-58af-4cd8-92df-bc4a18b6e44d objectGUID: bd3480c9-58af-4cd8-92df-bc4a18b6e44d
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e89:
(num, _) = e89.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn) delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
@ -1726,7 +1815,8 @@ delete: description
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectclass": "user", "objectclass": "user",
"memberOf": "cn=ldaptestgroup,cn=users," + self.base_dn}) "memberOf": "cn=ldaptestgroup,cn=users," + self.base_dn})
except LdbError, (num, _): except LdbError as e90:
(num, _) = e90.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
ldb.add({ ldb.add({
@ -1740,7 +1830,8 @@ delete: description
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e91:
(num, _) = e91.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -1756,7 +1847,8 @@ delete: description
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e92:
(num, _) = e92.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -1766,7 +1858,8 @@ delete: description
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e93:
(num, _) = e93.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -1862,7 +1955,8 @@ delete: description
"cn": "LDAPtest2COMPUTER" "cn": "LDAPtest2COMPUTER"
}) })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e94:
(num, _) = e94.args
self.assertEquals(num, ERR_INVALID_DN_SYNTAX) self.assertEquals(num, ERR_INVALID_DN_SYNTAX)
try: try:
@ -1872,7 +1966,8 @@ delete: description
"sAMAccountType": str(ATYPE_NORMAL_ACCOUNT) "sAMAccountType": str(ATYPE_NORMAL_ACCOUNT)
}) })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e95:
(num, _) = e95.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
ldb.add({"dn": "cn=ldaptestcomputer3,cn=computers," + self.base_dn, ldb.add({"dn": "cn=ldaptestcomputer3,cn=computers," + self.base_dn,
@ -1912,7 +2007,8 @@ servicePrincipalName: host/ldaptest2computer
servicePrincipalName: cifs/ldaptest2computer servicePrincipalName: cifs/ldaptest2computer
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e96:
(num, msg) = e96.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
ldb.modify_ldif(""" ldb.modify_ldif("""
@ -1930,7 +2026,8 @@ add: servicePrincipalName
servicePrincipalName: host/ldaptest2computer servicePrincipalName: host/ldaptest2computer
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e97:
(num, msg) = e97.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
# Testing ranged results # Testing ranged results
@ -2164,7 +2261,8 @@ servicePrincipalName: host/ldaptest2computer29
"objectClass": "user", "objectClass": "user",
"cn": "LDAPtestUSER3"}) "cn": "LDAPtestUSER3"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e98:
(num, _) = e98.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# rename back # rename back
@ -2175,7 +2273,8 @@ servicePrincipalName: host/ldaptest2computer29
ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn,
"cn=ldaptestuser2,cn=users," + self.base_dn) "cn=ldaptestuser2,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e99:
(num, _) = e99.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# ensure can now use that name # ensure can now use that name
@ -2187,12 +2286,14 @@ servicePrincipalName: host/ldaptest2computer29
try: try:
ldb.rename("cn=ldaptestuser2,cn=users," + self.base_dn, "cn=ldaptestuser3,cn=users," + self.base_dn) ldb.rename("cn=ldaptestuser2,cn=users," + self.base_dn, "cn=ldaptestuser3,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e100:
(num, _) = e100.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
try: try:
ldb.rename("cn=ldaptestuser3,cn=users,%s" % self.base_dn, "cn=ldaptestuser3,%s" % ldb.get_config_basedn()) ldb.rename("cn=ldaptestuser3,cn=users,%s" % self.base_dn, "cn=ldaptestuser3,%s" % ldb.get_config_basedn())
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e101:
(num, _) = e101.args
self.assertTrue(num in (71, 64)) self.assertTrue(num in (71, 64))
ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "cn=ldaptestuser5,cn=users," + self.base_dn) ldb.rename("cn=ldaptestuser3,cn=users," + self.base_dn, "cn=ldaptestuser5,cn=users," + self.base_dn)
@ -2243,7 +2344,8 @@ member: cn=ldaptestuser2,cn=users,""" + self.base_dn + """
expression="(&(cn=ldaptestuser4)(objectClass=user))", expression="(&(cn=ldaptestuser4)(objectClass=user))",
scope=SCOPE_SUBTREE) scope=SCOPE_SUBTREE)
self.fail(res) self.fail(res)
except LdbError, (num, _): except LdbError as e102:
(num, _) = e102.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# Testing one-level ldb.search for (&(cn=ldaptestuser4)(objectClass=user)) in (just renamed from) cn=ldaptestcontainer," + self.base_dn # Testing one-level ldb.search for (&(cn=ldaptestuser4)(objectClass=user)) in (just renamed from) cn=ldaptestcontainer," + self.base_dn
@ -2251,7 +2353,8 @@ member: cn=ldaptestuser2,cn=users,""" + self.base_dn + """
res = ldb.search("cn=ldaptestcontainer," + self.base_dn, res = ldb.search("cn=ldaptestcontainer," + self.base_dn,
expression="(&(cn=ldaptestuser4)(objectClass=user))", scope=SCOPE_ONELEVEL) expression="(&(cn=ldaptestuser4)(objectClass=user))", scope=SCOPE_ONELEVEL)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e103:
(num, _) = e103.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# Testing ldb.search for (&(cn=ldaptestuser4)(objectClass=user)) in renamed container" # Testing ldb.search for (&(cn=ldaptestuser4)(objectClass=user)) in renamed container"
@ -2271,21 +2374,24 @@ member: cn=ldaptestuser2,cn=users,""" + self.base_dn + """
try: try:
ldb.rename("cn=ldaptestcontainer2," + self.base_dn, "cn=ldaptestcontainer,cn=ldaptestcontainer2," + self.base_dn) ldb.rename("cn=ldaptestcontainer2," + self.base_dn, "cn=ldaptestcontainer,cn=ldaptestcontainer2," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e104:
(num, _) = e104.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Testing ldb.rename (into non-existent container) of cn=ldaptestcontainer2," + self.base_dn + " to cn=ldaptestcontainer,cn=ldaptestcontainer3," + self.base_dn # Testing ldb.rename (into non-existent container) of cn=ldaptestcontainer2," + self.base_dn + " to cn=ldaptestcontainer,cn=ldaptestcontainer3," + self.base_dn
try: try:
ldb.rename("cn=ldaptestcontainer2," + self.base_dn, "cn=ldaptestcontainer,cn=ldaptestcontainer3," + self.base_dn) ldb.rename("cn=ldaptestcontainer2," + self.base_dn, "cn=ldaptestcontainer,cn=ldaptestcontainer3," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e105:
(num, _) = e105.args
self.assertTrue(num in (ERR_UNWILLING_TO_PERFORM, ERR_OTHER)) self.assertTrue(num in (ERR_UNWILLING_TO_PERFORM, ERR_OTHER))
# Testing delete (should fail, not a leaf node) of renamed cn=ldaptestcontainer2," + self.base_dn # Testing delete (should fail, not a leaf node) of renamed cn=ldaptestcontainer2," + self.base_dn
try: try:
ldb.delete("cn=ldaptestcontainer2," + self.base_dn) ldb.delete("cn=ldaptestcontainer2," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e106:
(num, _) = e106.args
self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF) self.assertEquals(num, ERR_NOT_ALLOWED_ON_NON_LEAF)
# Testing base ldb.search for CN=ldaptestuser4,CN=ldaptestcontainer2," + self.base_dn # Testing base ldb.search for CN=ldaptestuser4,CN=ldaptestcontainer2," + self.base_dn
@ -2717,7 +2823,8 @@ objectClass: posixAccount"""% (self.base_dn))
"sAMAccountName": user_name, "sAMAccountName": user_name,
"nTSecurityDescriptor": [] }) "nTSecurityDescriptor": [] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e107:
(num, _) = e107.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
finally: finally:
delete_force(self.ldb, user_dn) delete_force(self.ldb, user_dn)
@ -2803,7 +2910,8 @@ nTSecurityDescriptor:: """ + desc_base64)
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e108:
(num, _) = e108.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -2813,7 +2921,8 @@ nTSecurityDescriptor:: """ + desc_base64)
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e109:
(num, _) = e109.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -2823,7 +2932,8 @@ nTSecurityDescriptor:: """ + desc_base64)
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e110:
(num, _) = e110.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, user_dn) delete_force(self.ldb, user_dn)
@ -2962,7 +3072,8 @@ nTSecurityDescriptor:: """ + desc_base64
try: try:
self.ldb.set_dsheuristics(dshstr + "x") self.ldb.set_dsheuristics(dshstr + "x")
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
dshstr = dshstr + str(i) dshstr = dshstr + str(i)
else: else:

View File

@ -166,7 +166,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
ldif = """ ldif = """
@ -342,7 +343,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add duplicate attributeID value") self.fail("Should have failed to add duplicate attributeID value")
except LdbError, (enum, estr): except LdbError as e2:
(enum, estr) = e2.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
@ -386,7 +388,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add duplicate governsID conflicting with attributeID value") self.fail("Should have failed to add duplicate governsID conflicting with attributeID value")
except LdbError, (enum, estr): except LdbError as e3:
(enum, estr) = e3.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
@ -429,7 +432,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add attribute with duplicate CN") self.fail("Should have failed to add attribute with duplicate CN")
except LdbError, (enum, estr): except LdbError as e4:
(enum, estr) = e4.args
self.assertEquals(enum, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(enum, ERR_ENTRY_ALREADY_EXISTS)
def test_duplicate_implicit_ldapdisplayname(self): def test_duplicate_implicit_ldapdisplayname(self):
@ -472,7 +476,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add attribute with duplicate of the implicit ldapDisplayName") self.fail("Should have failed to add attribute with duplicate of the implicit ldapDisplayName")
except LdbError, (enum, estr): except LdbError as e5:
(enum, estr) = e5.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
@ -517,7 +522,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add attribute with duplicate ldapDisplayName") self.fail("Should have failed to add attribute with duplicate ldapDisplayName")
except LdbError, (enum, estr): except LdbError as e6:
(enum, estr) = e6.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
@ -565,7 +571,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add class with duplicate ldapDisplayName") self.fail("Should have failed to add class with duplicate ldapDisplayName")
except LdbError, (enum, estr): except LdbError as e7:
(enum, estr) = e7.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
@ -619,7 +626,8 @@ ldapDisplayName: """ + attr_ldap_display_name + """
try: try:
self.ldb.modify_ldif(ldif) self.ldb.modify_ldif(ldif)
self.fail("Should have failed to modify schema to have attribute with duplicate ldapDisplayName") self.fail("Should have failed to modify schema to have attribute with duplicate ldapDisplayName")
except LdbError, (enum, estr): except LdbError as e8:
(enum, estr) = e8.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
@ -673,7 +681,8 @@ attributeId: """ + attributeID + """
try: try:
self.ldb.modify_ldif(ldif) self.ldb.modify_ldif(ldif)
self.fail("Should have failed to modify schema to have attribute with duplicate attributeID") self.fail("Should have failed to modify schema to have attribute with duplicate attributeID")
except LdbError, (enum, estr): except LdbError as e9:
(enum, estr) = e9.args
self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION) self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION)
def test_remove_ldapdisplayname(self): def test_remove_ldapdisplayname(self):
@ -708,7 +717,8 @@ replace: ldapDisplayName
try: try:
self.ldb.modify_ldif(ldif) self.ldb.modify_ldif(ldif)
self.fail("Should have failed to remove the ldapdisplayname") self.fail("Should have failed to remove the ldapdisplayname")
except LdbError, (enum, estr): except LdbError as e10:
(enum, estr) = e10.args
self.assertEquals(enum, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(enum, ERR_OBJECT_CLASS_VIOLATION)
def test_rename_ldapdisplayname(self): def test_rename_ldapdisplayname(self):
@ -777,7 +787,8 @@ attributeId: """ + attributeID + """.1
try: try:
self.ldb.modify_ldif(ldif) self.ldb.modify_ldif(ldif)
self.fail("Should have failed to modify schema to have different attributeID") self.fail("Should have failed to modify schema to have different attributeID")
except LdbError, (enum, estr): except LdbError as e11:
(enum, estr) = e11.args
self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION) self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION)
@ -814,7 +825,8 @@ attributeId: """ + attributeID + """
try: try:
self.ldb.modify_ldif(ldif) self.ldb.modify_ldif(ldif)
self.fail("Should have failed to modify schema to have the same attributeID") self.fail("Should have failed to modify schema to have the same attributeID")
except LdbError, (enum, estr): except LdbError as e12:
(enum, estr) = e12.args
self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION) self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION)
@ -860,7 +872,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (enum, estr): except LdbError as e13:
(enum, estr) = e13.args
self.fail(estr) self.fail(estr)
attr_name_2 = "test-generated-linkID-2" + time.strftime("%s", time.gmtime()) + "-" + rand attr_name_2 = "test-generated-linkID-2" + time.strftime("%s", time.gmtime()) + "-" + rand
@ -885,7 +898,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (enum, estr): except LdbError as e14:
(enum, estr) = e14.args
self.fail(estr) self.fail(estr)
res = self.ldb.search("CN=%s,%s" % (attr_name_1, self.schema_dn), res = self.ldb.search("CN=%s,%s" % (attr_name_1, self.schema_dn),
@ -946,7 +960,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add duplicate linkID value") self.fail("Should have failed to add duplicate linkID value")
except LdbError, (enum, estr): except LdbError as e15:
(enum, estr) = e15.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
# If we add another attribute with the attributeID or lDAPDisplayName # If we add another attribute with the attributeID or lDAPDisplayName
@ -974,7 +989,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (enum, estr): except LdbError as e16:
(enum, estr) = e16.args
self.fail(estr) self.fail(estr)
res = self.ldb.search("CN=%s,%s" % (attr_name_3, self.schema_dn), res = self.ldb.search("CN=%s,%s" % (attr_name_3, self.schema_dn),
@ -1006,7 +1022,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (enum, estr): except LdbError as e17:
(enum, estr) = e17.args
self.fail(estr) self.fail(estr)
res = self.ldb.search("CN=%s,%s" % (attr_name_4, self.schema_dn), res = self.ldb.search("CN=%s,%s" % (attr_name_4, self.schema_dn),
@ -1042,7 +1059,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add duplicate backlink") self.fail("Should have failed to add duplicate backlink")
except LdbError, (enum, estr): except LdbError as e18:
(enum, estr) = e18.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
# If we try to supply the attributeID or ldapDisplayName # If we try to supply the attributeID or ldapDisplayName
@ -1072,7 +1090,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add backlink of backlink") self.fail("Should have failed to add backlink of backlink")
except LdbError, (enum, estr): except LdbError as e19:
(enum, estr) = e19.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
attr_name = "test-generated-linkID-backlink-invalid-2" + time.strftime("%s", time.gmtime()) + "-" + rand attr_name = "test-generated-linkID-backlink-invalid-2" + time.strftime("%s", time.gmtime()) + "-" + rand
@ -1098,7 +1117,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add backlink of backlink") self.fail("Should have failed to add backlink of backlink")
except LdbError, (enum, estr): except LdbError as e20:
(enum, estr) = e20.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
def test_generated_mAPIID(self): def test_generated_mAPIID(self):
@ -1133,7 +1153,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (enum, estr): except LdbError as e21:
(enum, estr) = e21.args
self.fail(estr) self.fail(estr)
res = self.ldb.search("CN=%s,%s" % (attr_name_1, self.schema_dn), res = self.ldb.search("CN=%s,%s" % (attr_name_1, self.schema_dn),
@ -1174,7 +1195,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
self.fail("Should have failed to add duplicate mAPIID value") self.fail("Should have failed to add duplicate mAPIID value")
except LdbError, (enum, estr): except LdbError as e22:
(enum, estr) = e22.args
self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM) self.assertEquals(enum, ERR_UNWILLING_TO_PERFORM)
@ -1212,7 +1234,8 @@ governsId: """ + governsID + """.1
try: try:
self.ldb.modify_ldif(ldif) self.ldb.modify_ldif(ldif)
self.fail("Should have failed to modify schema to have different governsID") self.fail("Should have failed to modify schema to have different governsID")
except LdbError, (enum, estr): except LdbError as e23:
(enum, estr) = e23.args
self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION) self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION)
@ -1250,7 +1273,8 @@ governsId: """ + governsID + """.1
try: try:
self.ldb.modify_ldif(ldif) self.ldb.modify_ldif(ldif)
self.fail("Should have failed to modify schema to have the same governsID") self.fail("Should have failed to modify schema to have the same governsID")
except LdbError, (enum, estr): except LdbError as e24:
(enum, estr) = e24.args
self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION) self.assertEquals(enum, ERR_CONSTRAINT_VIOLATION)
@ -1391,7 +1415,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif_fail) self.ldb.add_ldif(ldif_fail)
self.fail("Adding attribute with preset msDS-IntId should fail") self.fail("Adding attribute with preset msDS-IntId should fail")
except LdbError, (num, _): except LdbError as e25:
(num, _) = e25.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# add the new attribute and update schema # add the new attribute and update schema
@ -1418,7 +1443,8 @@ systemOnly: FALSE
try: try:
self.ldb.modify(msg) self.ldb.modify(msg)
self.fail("Modifying msDS-IntId should return error") self.fail("Modifying msDS-IntId should return error")
except LdbError, (num, _): except LdbError as e26:
(num, _) = e26.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# 2. Create attribute with systemFlags = FLAG_SCHEMA_BASE_OBJECT # 2. Create attribute with systemFlags = FLAG_SCHEMA_BASE_OBJECT
@ -1434,7 +1460,8 @@ systemOnly: FALSE
try: try:
self.ldb.add_ldif(ldif_fail) self.ldb.add_ldif(ldif_fail)
self.fail("Adding attribute with preset msDS-IntId should fail") self.fail("Adding attribute with preset msDS-IntId should fail")
except LdbError, (num, _): except LdbError as e27:
(num, _) = e27.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# add the new attribute and update schema # add the new attribute and update schema
@ -1461,7 +1488,8 @@ systemOnly: FALSE
try: try:
self.ldb.modify(msg) self.ldb.modify(msg)
self.fail("Modifying msDS-IntId should return error") self.fail("Modifying msDS-IntId should return error")
except LdbError, (num, _): except LdbError as e28:
(num, _) = e28.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
@ -1521,7 +1549,8 @@ systemOnly: FALSE
try: try:
self.ldb.modify(msg) self.ldb.modify(msg)
self.fail("Modifying msDS-IntId should return error") self.fail("Modifying msDS-IntId should return error")
except LdbError, (num, _): except LdbError as e29:
(num, _) = e29.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# 2. Create Class with systemFlags = FLAG_SCHEMA_BASE_OBJECT # 2. Create Class with systemFlags = FLAG_SCHEMA_BASE_OBJECT
@ -1559,7 +1588,8 @@ systemOnly: FALSE
try: try:
self.ldb.modify(msg) self.ldb.modify(msg)
self.fail("Modifying msDS-IntId should return error") self.fail("Modifying msDS-IntId should return error")
except LdbError, (num, _): except LdbError as e30:
(num, _) = e30.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
res = self.ldb.search(class_dn, scope=SCOPE_BASE, attrs=["msDS-IntId"]) res = self.ldb.search(class_dn, scope=SCOPE_BASE, attrs=["msDS-IntId"])
self.assertEquals(len(res), 1) self.assertEquals(len(res), 1)
@ -1613,7 +1643,8 @@ class SchemaTests_msDS_isRODC(samba.tests.TestCase):
ntds_search_dn = "CN=NTDS Settings,%s" % ldb_msg['dn'] ntds_search_dn = "CN=NTDS Settings,%s" % ldb_msg['dn']
try: try:
res_check = self.ldb.search(ntds_search_dn, attrs=["objectCategory"]) res_check = self.ldb.search(ntds_search_dn, attrs=["objectCategory"])
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
print("Server entry %s doesn't have a NTDS settings object" % res[0]['dn']) print("Server entry %s doesn't have a NTDS settings object" % res[0]['dn'])
else: else:

View File

@ -222,7 +222,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:ABCD:" + self.base_dn) self.dn_string_attribute, ": S:5:ABCD:" + self.base_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX) self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX)
# add object with the same dn but with different string value in case # add object with the same dn but with different string value in case
@ -230,7 +231,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:abcde:" + self.base_dn) self.dn_string_attribute, ": S:5:abcde:" + self.base_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# add object with the same dn but with different string value # add object with the same dn but with different string value
@ -238,7 +240,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:FGHIJ:" + self.base_dn) self.dn_string_attribute, ": S:5:FGHIJ:" + self.base_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# add object with the same dn but with different dn and string value # add object with the same dn but with different dn and string value
@ -246,7 +249,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:FGHIJ:" + self.schema_dn) self.dn_string_attribute, ": S:5:FGHIJ:" + self.schema_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# add object with the same dn but with different dn value # add object with the same dn but with different dn value
@ -254,7 +258,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:ABCDE:" + self.schema_dn) self.dn_string_attribute, ": S:5:ABCDE:" + self.schema_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e4:
(num, _) = e4.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# add object with GUID instead of DN # add object with GUID instead of DN
@ -263,7 +268,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:ABCDE:<GUID=%s>" % str(uuid.uuid4())) self.dn_string_attribute, ": S:5:ABCDE:<GUID=%s>" % str(uuid.uuid4()))
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e5:
(num, _) = e5.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# add object with SID instead of DN # add object with SID instead of DN
@ -272,7 +278,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:ABCDE:<SID=%s>" % self.ldb.get_domain_sid()) self.dn_string_attribute, ": S:5:ABCDE:<SID=%s>" % self.ldb.get_domain_sid())
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e6:
(num, _) = e6.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# add object with random string instead of DN # add object with random string instead of DN
@ -281,7 +288,8 @@ name: """ + object_name + """
self.dn_string_attribute, ": S:5:ABCDE:randomSTRING") self.dn_string_attribute, ": S:5:ABCDE:randomSTRING")
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e7:
(num, _) = e7.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
def test_dn_binary(self): def test_dn_binary(self):
@ -315,7 +323,8 @@ name: """ + object_name + """
self.dn_binary_attribute, ": B:5:67890:" + self.base_dn) self.dn_binary_attribute, ": B:5:67890:" + self.base_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e8:
(num, _) = e8.args
self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX) self.assertEquals(num, ERR_INVALID_ATTRIBUTE_SYNTAX)
# add object with the same dn but with different binary value # add object with the same dn but with different binary value
@ -323,7 +332,8 @@ name: """ + object_name + """
self.dn_binary_attribute, ": B:4:5678:" + self.base_dn) self.dn_binary_attribute, ": B:4:5678:" + self.base_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e9:
(num, _) = e9.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# add object with the same dn but with different binary and dn value # add object with the same dn but with different binary and dn value
@ -331,7 +341,8 @@ name: """ + object_name + """
self.dn_binary_attribute, ": B:4:5678:" + self.schema_dn) self.dn_binary_attribute, ": B:4:5678:" + self.schema_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e10:
(num, _) = e10.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# add object with the same dn but with different dn value # add object with the same dn but with different dn value
@ -339,7 +350,8 @@ name: """ + object_name + """
self.dn_binary_attribute, ": B:4:1234:" + self.schema_dn) self.dn_binary_attribute, ": B:4:1234:" + self.schema_dn)
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e11:
(num, _) = e11.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# add object with GUID instead of DN # add object with GUID instead of DN
@ -348,7 +360,8 @@ name: """ + object_name + """
self.dn_binary_attribute, ": B:4:1234:<GUID=%s>" % str(uuid.uuid4())) self.dn_binary_attribute, ": B:4:1234:<GUID=%s>" % str(uuid.uuid4()))
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e12:
(num, _) = e12.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# add object with SID instead of DN # add object with SID instead of DN
@ -357,7 +370,8 @@ name: """ + object_name + """
self.dn_binary_attribute, ": B:4:1234:<SID=%s>" % self.ldb.get_domain_sid()) self.dn_binary_attribute, ": B:4:1234:<SID=%s>" % self.ldb.get_domain_sid())
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e13:
(num, _) = e13.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# add object with random string instead of DN # add object with random string instead of DN
@ -366,7 +380,8 @@ name: """ + object_name + """
self.dn_binary_attribute, ": B:4:1234:randomSTRING") self.dn_binary_attribute, ": B:4:1234:randomSTRING")
try: try:
self.ldb.add_ldif(ldif) self.ldb.add_ldif(ldif)
except LdbError, (num, _): except LdbError as e14:
(num, _) = e14.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
TestProgram(module=__name__, opts=subunitopts) TestProgram(module=__name__, opts=subunitopts)

View File

@ -169,7 +169,8 @@ class LATests(samba.tests.TestCase):
"""Assert a function raises a particular LdbError.""" """Assert a function raises a particular LdbError."""
try: try:
f(*args, **kwargs) f(*args, **kwargs)
except ldb.LdbError as (num, msg): except ldb.LdbError as e:
(num, msg) = e.args
if num != errcode: if num != errcode:
lut = {v: k for k, v in vars(ldb).iteritems() lut = {v: k for k, v in vars(ldb).iteritems()
if k.startswith('ERR_') and isinstance(v, int)} if k.startswith('ERR_') and isinstance(v, int)}

View File

@ -143,7 +143,8 @@ otherLoginWorkstations: AFTER"
try: try:
res = notify1.result() res = notify1.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e10:
(num, _) = e10.args
self.assertEquals(num, ERR_TIME_LIMIT_EXCEEDED) self.assertEquals(num, ERR_TIME_LIMIT_EXCEEDED)
self.assertIsNotNone(msg3) self.assertIsNotNone(msg3)
@ -176,7 +177,8 @@ delete: otherLoginWorkstations
continue continue
res = notifies[i].result() res = notifies[i].result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
if num == ERR_ADMIN_LIMIT_EXCEEDED: if num == ERR_ADMIN_LIMIT_EXCEEDED:
num_admin_limit += 1 num_admin_limit += 1
continue continue
@ -206,7 +208,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_TIME_LIMIT_EXCEEDED) self.assertEquals(num, ERR_TIME_LIMIT_EXCEEDED)
try: try:
@ -220,7 +223,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_TIME_LIMIT_EXCEEDED) self.assertEquals(num, ERR_TIME_LIMIT_EXCEEDED)
try: try:
@ -234,7 +238,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -248,7 +253,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e4:
(num, _) = e4.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -262,7 +268,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e5:
(num, _) = e5.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -276,7 +283,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e6:
(num, _) = e6.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -290,7 +298,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e7:
(num, _) = e7.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -304,7 +313,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e8:
(num, _) = e8.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
res = self.ldb.search(base=self.ldb.get_schema_basedn(), res = self.ldb.search(base=self.ldb.get_schema_basedn(),
@ -328,7 +338,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e9:
(num, _) = e9.args
if num != ERR_UNWILLING_TO_PERFORM: if num != ERR_UNWILLING_TO_PERFORM:
print "va[%s]" % va print "va[%s]" % va
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
@ -345,7 +356,8 @@ delete: otherLoginWorkstations
self.fail() self.fail()
res = hnd.result() res = hnd.result()
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e11:
(num, _) = e11.args
if num != ERR_UNWILLING_TO_PERFORM: if num != ERR_UNWILLING_TO_PERFORM:
print "va[%s]" % va print "va[%s]" % va
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)

View File

@ -169,7 +169,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e:
(num, msg) = e.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -215,7 +216,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e1:
(num, msg) = e1.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -243,7 +245,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e2:
(num, msg) = e2.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -271,7 +274,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e3:
(num, msg) = e3.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -297,7 +301,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e4:
(num, msg) = e4.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -323,7 +328,8 @@ add: userPassword
userPassword: thatsAcomplPASS2x userPassword: thatsAcomplPASS2x
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e5:
(num, msg) = e5.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -368,7 +374,8 @@ add: userPassword
userPassword: thatsAcomplPASS2x userPassword: thatsAcomplPASS2x
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e6:
(num, msg) = e6.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -415,7 +422,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2x\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2x\"".encode('utf-16-le')) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e7:
(num, msg) = e7.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -479,7 +487,8 @@ add: userPassword
userPassword: thatsAcomplPASS2XYZ userPassword: thatsAcomplPASS2XYZ
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e8:
(num, msg) = e8.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -506,7 +515,8 @@ add: userPassword
userPassword: thatsAcomplPASS2XYZ userPassword: thatsAcomplPASS2XYZ
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e9:
(num, msg) = e9.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -608,7 +618,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e10:
(num, msg) = e10.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -660,7 +671,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(new_utf16) + """ unicodePwd:: """ + base64.b64encode(new_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e11:
(num, msg) = e11.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -703,7 +715,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(new_utf16) + """ unicodePwd:: """ + base64.b64encode(new_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e12:
(num, msg) = e12.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -732,7 +745,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(new_utf16) + """ unicodePwd:: """ + base64.b64encode(new_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e13:
(num, msg) = e13.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -758,7 +772,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(new_utf16) + """ unicodePwd:: """ + base64.b64encode(new_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e14:
(num, msg) = e14.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -784,7 +799,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(invalid_utf16) + """ unicodePwd:: """ + base64.b64encode(invalid_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e15:
(num, msg) = e15.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000775' in msg, msg) self.assertTrue('00000775' in msg, msg)
@ -851,7 +867,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(new_utf16) + """ unicodePwd:: """ + base64.b64encode(new_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e16:
(num, msg) = e16.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -878,7 +895,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(new_utf16) + """ unicodePwd:: """ + base64.b64encode(new_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e17:
(num, msg) = e17.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -920,7 +938,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode(new_utf16) + """ unicodePwd:: """ + base64.b64encode(new_utf16) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e18:
(num, msg) = e18.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg, msg) self.assertTrue('00000056' in msg, msg)
@ -1053,7 +1072,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e19:
(num, msg) = e19.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# Windows (2008 at least) seems to have some small bug here: it # Windows (2008 at least) seems to have some small bug here: it
# returns "0000056A" on longer (always wrong) previous passwords. # returns "0000056A" on longer (always wrong) previous passwords.

View File

@ -236,7 +236,8 @@ userPassword: """ + userpass + """
try: try:
ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp) ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e:
(num, msg) = e.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
# Succeed to reset everything to 0 # Succeed to reset everything to 0
@ -248,7 +249,8 @@ userPassword: """ + userpass + """
try: try:
ldb = SamDB(url=url, credentials=creds, lp=lp) ldb = SamDB(url=url, credentials=creds, lp=lp)
self.fail("Login unexpectedly succeeded") self.fail("Login unexpectedly succeeded")
except LdbError, (num, msg): except LdbError as e1:
(num, msg) = e1.args
if errno is not None: if errno is not None:
self.assertEquals(num, errno, ("Login failed in the wrong way" self.assertEquals(num, errno, ("Login failed in the wrong way"
"(got err %d, expected %d)" % "(got err %d, expected %d)" %
@ -479,7 +481,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e2:
(num, msg) = e2.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -502,7 +505,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e3:
(num, msg) = e3.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -523,7 +527,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e4:
(num, msg) = e4.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -542,7 +547,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e5:
(num, msg) = e5.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -561,7 +567,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e6:
(num, msg) = e6.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -619,7 +626,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e7:
(num, msg) = e7.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -639,7 +647,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e8:
(num, msg) = e8.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -672,7 +681,8 @@ lockoutThreshold: """ + str(lockoutThreshold) + """
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e9:
(num, msg) = e9.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,

View File

@ -113,7 +113,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e:
(num, msg) = e.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# Windows (2008 at least) seems to have some small bug here: it # Windows (2008 at least) seems to have some small bug here: it
# returns "0000056A" on longer (always wrong) previous passwords. # returns "0000056A" on longer (always wrong) previous passwords.
@ -141,7 +142,8 @@ userPassword: thatsAcomplPASS1
add: userPassword add: userPassword
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# Enables the user account # Enables the user account
@ -171,7 +173,8 @@ add: userPassword
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
def test_unicodePwd_hash_change(self): def test_unicodePwd_hash_change(self):
@ -189,7 +192,8 @@ add: unicodePwd
unicodePwd: YYYYYYYYYYYYYYYY unicodePwd: YYYYYYYYYYYYYYYY
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
def test_unicodePwd_clear_set(self): def test_unicodePwd_clear_set(self):
@ -224,7 +228,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS4\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS4\"".encode('utf-16-le')) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e4:
(num, msg) = e4.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg) self.assertTrue('00000056' in msg)
@ -239,7 +244,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le')) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e5:
(num, msg) = e5.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('0000052D' in msg) self.assertTrue('0000052D' in msg)
@ -254,7 +260,8 @@ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS2\"".encode('utf-16-le'))
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e6:
(num, _) = e6.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
def test_dBCSPwd_hash_change(self): def test_dBCSPwd_hash_change(self):
@ -271,7 +278,8 @@ add: dBCSPwd
dBCSPwd: YYYYYYYYYYYYYYYY dBCSPwd: YYYYYYYYYYYYYYYY
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e7:
(num, _) = e7.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
def test_userPassword_clear_set(self): def test_userPassword_clear_set(self):
@ -310,7 +318,8 @@ add: userPassword
userPassword: thatsAcomplPASS4 userPassword: thatsAcomplPASS4
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e8:
(num, msg) = e8.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('00000056' in msg) self.assertTrue('00000056' in msg)
@ -325,7 +334,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e9:
(num, msg) = e9.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
self.assertTrue('0000052D' in msg) self.assertTrue('0000052D' in msg)
@ -340,7 +350,8 @@ userPassword: thatsAcomplPASS2
FLAG_MOD_REPLACE, "clearTextPassword") FLAG_MOD_REPLACE, "clearTextPassword")
self.ldb.modify(m) self.ldb.modify(m)
# this passes against s4 # this passes against s4
except LdbError, (num, msg): except LdbError as e10:
(num, msg) = e10.args
# "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it # "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it
if num != ERR_NO_SUCH_ATTRIBUTE: if num != ERR_NO_SUCH_ATTRIBUTE:
raise LdbError(num, msg) raise LdbError(num, msg)
@ -359,7 +370,8 @@ add: clearTextPassword
clearTextPassword:: """ + base64.b64encode("thatsAcomplPASS2".encode('utf-16-le')) + """ clearTextPassword:: """ + base64.b64encode("thatsAcomplPASS2".encode('utf-16-le')) + """
""") """)
# this passes against s4 # this passes against s4
except LdbError, (num, msg): except LdbError as e11:
(num, msg) = e11.args
# "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it # "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it
if num != ERR_NO_SUCH_ATTRIBUTE: if num != ERR_NO_SUCH_ATTRIBUTE:
raise LdbError(num, msg) raise LdbError(num, msg)
@ -375,7 +387,8 @@ add: clearTextPassword
clearTextPassword:: """ + base64.b64encode("thatsAcomplPASS4".encode('utf-16-le')) + """ clearTextPassword:: """ + base64.b64encode("thatsAcomplPASS4".encode('utf-16-le')) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e12:
(num, msg) = e12.args
# "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it # "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it
if num != ERR_NO_SUCH_ATTRIBUTE: if num != ERR_NO_SUCH_ATTRIBUTE:
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
@ -392,7 +405,8 @@ add: clearTextPassword
clearTextPassword:: """ + base64.b64encode("thatsAcomplPASS2".encode('utf-16-le')) + """ clearTextPassword:: """ + base64.b64encode("thatsAcomplPASS2".encode('utf-16-le')) + """
""") """)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e13:
(num, msg) = e13.args
# "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it # "NO_SUCH_ATTRIBUTE" is returned by Windows -> ignore it
if num != ERR_NO_SUCH_ATTRIBUTE: if num != ERR_NO_SUCH_ATTRIBUTE:
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
@ -409,7 +423,8 @@ delete: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e14:
(num, _) = e14.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -420,7 +435,8 @@ delete: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e15:
(num, _) = e15.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -430,7 +446,8 @@ changetype: modify
delete: userPassword delete: userPassword
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e16:
(num, _) = e16.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -440,7 +457,8 @@ changetype: modify
delete: userPassword delete: userPassword
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e17:
(num, _) = e17.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -451,7 +469,8 @@ add: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e18:
(num, _) = e18.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -462,7 +481,8 @@ add: userPassword
userPassword: thatsAcomplPASS1 userPassword: thatsAcomplPASS1
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e19:
(num, _) = e19.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
try: try:
@ -476,7 +496,8 @@ userPassword: thatsAcomplPASS2
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e20:
(num, _) = e20.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -490,7 +511,8 @@ userPassword: thatsAcomplPASS2
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e21:
(num, _) = e21.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -504,7 +526,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e22:
(num, _) = e22.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -518,7 +541,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e23:
(num, _) = e23.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -533,7 +557,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e24:
(num, _) = e24.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -548,7 +573,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e25:
(num, _) = e25.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
try: try:
@ -563,7 +589,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e26:
(num, _) = e26.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -578,7 +605,8 @@ add: userPassword
userPassword: thatsAcomplPASS2 userPassword: thatsAcomplPASS2
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e27:
(num, _) = e27.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
try: try:
@ -593,7 +621,8 @@ replace: userPassword
userPassword: thatsAcomplPASS3 userPassword: thatsAcomplPASS3
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e28:
(num, _) = e28.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -608,7 +637,8 @@ replace: userPassword
userPassword: thatsAcomplPASS3 userPassword: thatsAcomplPASS3
""") """)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e29:
(num, _) = e29.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
# Reverse order does work # Reverse order does work
@ -631,7 +661,8 @@ add: unicodePwd
unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS3\"".encode('utf-16-le')) + """ unicodePwd:: """ + base64.b64encode("\"thatsAcomplPASS3\"".encode('utf-16-le')) + """
""") """)
# this passes against s4 # this passes against s4
except LdbError, (num, _): except LdbError as e30:
(num, _) = e30.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
try: try:
@ -644,7 +675,8 @@ add: userPassword
userPassword: thatsAcomplPASS4 userPassword: thatsAcomplPASS4
""") """)
# this passes against s4 # this passes against s4
except LdbError, (num, _): except LdbError as e31:
(num, _) = e31.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
# Several password changes at once are allowed # Several password changes at once are allowed
@ -692,7 +724,8 @@ userPassword: thatsAcomplPASS4
"objectclass": "user", "objectclass": "user",
"unicodePwd": [] }) "unicodePwd": [] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e32:
(num, _) = e32.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -701,7 +734,8 @@ userPassword: thatsAcomplPASS4
"objectclass": "user", "objectclass": "user",
"dBCSPwd": [] }) "dBCSPwd": [] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e33:
(num, _) = e33.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -710,7 +744,8 @@ userPassword: thatsAcomplPASS4
"objectclass": "user", "objectclass": "user",
"userPassword": [] }) "userPassword": [] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e34:
(num, _) = e34.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
try: try:
@ -719,7 +754,8 @@ userPassword: thatsAcomplPASS4
"objectclass": "user", "objectclass": "user",
"clearTextPassword": [] }) "clearTextPassword": [] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e35:
(num, _) = e35.args
self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or
num == ERR_NO_SUCH_ATTRIBUTE) # for Windows num == ERR_NO_SUCH_ATTRIBUTE) # for Windows
@ -731,7 +767,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e36:
(num, _) = e36.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -740,7 +777,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e37:
(num, _) = e37.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -749,7 +787,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e38:
(num, _) = e38.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -758,7 +797,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e39:
(num, _) = e39.args
self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or
num == ERR_NO_SUCH_ATTRIBUTE) # for Windows num == ERR_NO_SUCH_ATTRIBUTE) # for Windows
@ -768,7 +808,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e40:
(num, _) = e40.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -777,7 +818,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e41:
(num, _) = e41.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -786,7 +828,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e42:
(num, _) = e42.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -795,7 +838,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e43:
(num, _) = e43.args
self.assertTrue(num == ERR_UNWILLING_TO_PERFORM or self.assertTrue(num == ERR_UNWILLING_TO_PERFORM or
num == ERR_NO_SUCH_ATTRIBUTE) # for Windows num == ERR_NO_SUCH_ATTRIBUTE) # for Windows
@ -805,7 +849,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e44:
(num, _) = e44.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -814,7 +859,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e45:
(num, _) = e45.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -823,7 +869,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e46:
(num, _) = e46.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
m = Message() m = Message()
@ -832,7 +879,8 @@ userPassword: thatsAcomplPASS4
try: try:
self.ldb.modify(m) self.ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e47:
(num, _) = e47.args
self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or self.assertTrue(num == ERR_CONSTRAINT_VIOLATION or
num == ERR_NO_SUCH_ATTRIBUTE) # for Windows num == ERR_NO_SUCH_ATTRIBUTE) # for Windows

View File

@ -67,7 +67,8 @@ class RodcTests(samba.tests.TestCase):
try: try:
self.samdb.add(o) self.samdb.add(o)
self.fail("Failed to fail to add %s" % o['dn']) self.fail("Failed to fail to add %s" % o['dn'])
except ldb.LdbError as (ecode, emsg): except ldb.LdbError as e:
(ecode, emsg) = e.args
if ecode != ldb.ERR_REFERRAL: if ecode != ldb.ERR_REFERRAL:
print emsg print emsg
self.fail("Adding %s: ldb error: %s %s, wanted referral" % self.fail("Adding %s: ldb error: %s %s, wanted referral" %
@ -103,7 +104,8 @@ class RodcTests(samba.tests.TestCase):
try: try:
self.samdb.modify(msg) self.samdb.modify(msg)
self.fail("Failed to fail to modify %s %s" % (dn, attr)) self.fail("Failed to fail to modify %s %s" % (dn, attr))
except ldb.LdbError as (ecode, emsg): except ldb.LdbError as e1:
(ecode, emsg) = e1.args
if ecode != ldb.ERR_REFERRAL: if ecode != ldb.ERR_REFERRAL:
self.fail("Failed to REFER when trying to modify %s %s" % self.fail("Failed to REFER when trying to modify %s %s" %
(dn, attr)) (dn, attr))
@ -138,7 +140,8 @@ class RodcTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail("Failed to fail to modify %s %s" % (dn, attr)) self.fail("Failed to fail to modify %s %s" % (dn, attr))
except ldb.LdbError as (ecode, emsg): except ldb.LdbError as e2:
(ecode, emsg) = e2.args
if ecode != ldb.ERR_REFERRAL: if ecode != ldb.ERR_REFERRAL:
self.fail("Failed to REFER when trying to modify %s %s" % self.fail("Failed to REFER when trying to modify %s %s" %
(dn, attr)) (dn, attr))
@ -172,7 +175,8 @@ class RodcTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail("Failed to fail to modify %s %s" % (dn, attr)) self.fail("Failed to fail to modify %s %s" % (dn, attr))
except ldb.LdbError as (ecode, emsg): except ldb.LdbError as e3:
(ecode, emsg) = e3.args
if ecode != ldb.ERR_REFERRAL: if ecode != ldb.ERR_REFERRAL:
self.fail("Failed to REFER when trying to modify %s %s" % self.fail("Failed to REFER when trying to modify %s %s" %
(dn, attr)) (dn, attr))
@ -190,7 +194,8 @@ class RodcTests(samba.tests.TestCase):
try: try:
self.samdb.delete(dn) self.samdb.delete(dn)
self.fail("Failed to fail to delete %s" % (dn)) self.fail("Failed to fail to delete %s" % (dn))
except ldb.LdbError as (ecode, emsg): except ldb.LdbError as e4:
(ecode, emsg) = e4.args
if ecode != ldb.ERR_REFERRAL: if ecode != ldb.ERR_REFERRAL:
print ecode, emsg print ecode, emsg
self.fail("Failed to REFER when trying to delete %s" % dn) self.fail("Failed to REFER when trying to delete %s" % dn)
@ -208,7 +213,8 @@ class RodcTests(samba.tests.TestCase):
try: try:
self.samdb.delete(dn) self.samdb.delete(dn)
self.fail("Failed to fail to delete %s" % (dn)) self.fail("Failed to fail to delete %s" % (dn))
except ldb.LdbError as (ecode, emsg): except ldb.LdbError as e5:
(ecode, emsg) = e5.args
if ecode != ldb.ERR_NO_SUCH_OBJECT: if ecode != ldb.ERR_NO_SUCH_OBJECT:
print ecode, emsg print ecode, emsg
self.fail("Failed to NO_SUCH_OBJECT when trying to delete " self.fail("Failed to NO_SUCH_OBJECT when trying to delete "

View File

@ -471,7 +471,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e1:
(num, msg) = e1.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -494,7 +495,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e2:
(num, msg) = e2.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -515,7 +517,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e3:
(num, msg) = e3.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -534,7 +537,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e4:
(num, msg) = e4.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -553,7 +557,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e5:
(num, msg) = e5.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -608,7 +613,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e6:
(num, msg) = e6.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -628,7 +634,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e7:
(num, msg) = e7.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -661,7 +668,8 @@ class RodcRwdcCachedTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp) ldb_lockout = SamDB(url=self.host_url, credentials=creds_lockout, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e8:
(num, msg) = e8.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
res = self._check_account(userdn, res = self._check_account(userdn,
@ -781,7 +789,8 @@ class RodcRwdcTests(password_lockout_base.BasePasswordTestCase):
try: try:
fn(*args, **kwargs) fn(*args, **kwargs)
self.fail("failed to raise ldap referral") self.fail("failed to raise ldap referral")
except ldb.LdbError as (code, msg): except ldb.LdbError as e9:
(code, msg) = e9.args
self.assertEqual(code, ldb.ERR_REFERRAL, self.assertEqual(code, ldb.ERR_REFERRAL,
"expected referral, got %s %s" % (code, msg)) "expected referral, got %s %s" % (code, msg))
@ -824,7 +833,8 @@ class RodcRwdcTests(password_lockout_base.BasePasswordTestCase):
try: try:
self.rwdc_db.add(o) self.rwdc_db.add(o)
except ldb.LdbError as (ecode, emsg): except ldb.LdbError as e:
(ecode, emsg) = e.args
self.fail("Failed to add %s to rwdc: ldb error: %s %s" % self.fail("Failed to add %s to rwdc: ldb error: %s %s" %
(ecode, emsg)) (ecode, emsg))
@ -1022,7 +1032,8 @@ class RodcRwdcTests(password_lockout_base.BasePasswordTestCase):
session_info=system_session(LP), lp=LP) session_info=system_session(LP), lp=LP)
if errno is not None: if errno is not None:
self.fail("logon failed to fail with ldb error %s" % errno) self.fail("logon failed to fail with ldb error %s" % errno)
except ldb.LdbError as (code, msg): except ldb.LdbError as e10:
(code, msg) = e10.args
if code != errno: if code != errno:
if errno is None: if errno is None:
self.fail("logon incorrectly raised ldb error (code=%s)" % self.fail("logon incorrectly raised ldb error (code=%s)" %
@ -1172,7 +1183,8 @@ class RodcRwdcTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp) ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e11:
(num, msg) = e11.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
# Succeed to reset everything to 0 # Succeed to reset everything to 0
@ -1201,7 +1213,8 @@ class RodcRwdcTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp) ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e12:
(num, msg) = e12.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
# Succeed to reset everything to 0 # Succeed to reset everything to 0
@ -1225,7 +1238,8 @@ class RodcRwdcTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp) ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e13:
(num, msg) = e13.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
# Succeed to reset everything to 0 # Succeed to reset everything to 0
@ -1254,7 +1268,8 @@ class RodcRwdcTests(password_lockout_base.BasePasswordTestCase):
try: try:
ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp) ldb = SamDB(url=self.host_url, credentials=fail_creds, lp=self.lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e14:
(num, msg) = e14.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
# Succeed to reset everything to 0 # Succeed to reset everything to 0

View File

@ -120,7 +120,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"sAMAccountName": "administrator"}) "sAMAccountName": "administrator"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e9:
(num, _) = e9.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -131,7 +132,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"sAMAccountName": []}) "sAMAccountName": []})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e10:
(num, _) = e10.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -142,7 +144,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"primaryGroupID": "0"}) "primaryGroupID": "0"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e11:
(num, _) = e11.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -153,7 +156,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"primaryGroupID": str(group_rid_1)}) "primaryGroupID": str(group_rid_1)})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e12:
(num, _) = e12.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -166,7 +170,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e13:
(num, _) = e13.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# Test to see how we should behave when the account isn't a user # Test to see how we should behave when the account isn't a user
@ -177,7 +182,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e14:
(num, _) = e14.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
# Test default primary groups on add operations # Test default primary groups on add operations
@ -332,7 +338,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e15:
(num, _) = e15.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# But to reset the actual "sAMAccountName" should still be possible # But to reset the actual "sAMAccountName" should still be possible
@ -367,7 +374,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e16:
(num, _) = e16.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Try to make group 1 primary - should be denied since it is not yet # Try to make group 1 primary - should be denied since it is not yet
@ -379,7 +387,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e17:
(num, _) = e17.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Make group 1 secondary # Make group 1 secondary
@ -400,7 +409,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.delete("cn=ldaptestgroup,cn=users," + self.base_dn) ldb.delete("cn=ldaptestgroup,cn=users," + self.base_dn)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e18:
(num, _) = e18.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# Try to add group 1 also as secondary - should be denied # Try to add group 1 also as secondary - should be denied
@ -411,7 +421,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e19:
(num, _) = e19.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# Try to add invalid member to group 1 - should be denied # Try to add invalid member to group 1 - should be denied
@ -423,7 +434,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e20:
(num, _) = e20.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# Make group 2 secondary # Make group 2 secondary
@ -471,7 +483,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e21:
(num, _) = e21.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Delete invalid group member # Delete invalid group member
@ -482,7 +495,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e22:
(num, _) = e22.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Also this should be denied # Also this should be denied
@ -492,7 +506,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"primaryGroupID": "0"}) "primaryGroupID": "0"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e23:
(num, _) = e23.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Recreate user accounts # Recreate user accounts
@ -521,7 +536,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e24:
(num, _) = e24.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# Already added, but as <SID=...> # Already added, but as <SID=...>
@ -537,7 +553,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e25:
(num, _) = e25.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
# Invalid member # Invalid member
@ -548,7 +565,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e26:
(num, _) = e26.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# Invalid member # Invalid member
@ -560,7 +578,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e27:
(num, _) = e27.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# Invalid member # Invalid member
@ -573,7 +592,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e28:
(num, _) = e28.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
m = Message() m = Message()
@ -612,7 +632,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e29:
(num, _) = e29.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
# Delete protection tests # Delete protection tests
@ -626,7 +647,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -635,7 +657,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -645,7 +668,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e30:
(num, _) = e30.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -655,7 +679,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e31:
(num, _) = e31.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -665,7 +690,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e32:
(num, _) = e32.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -675,7 +701,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e33:
(num, _) = e33.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -685,7 +712,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e34:
(num, _) = e34.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
# Delete protection tests # Delete protection tests
@ -702,7 +730,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -711,7 +740,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -727,7 +757,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"primaryGroupToken": "100"}) "primaryGroupToken": "100"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e35:
(num, _) = e35.args
self.assertEquals(num, ERR_UNDEFINED_ATTRIBUTE_TYPE) self.assertEquals(num, ERR_UNDEFINED_ATTRIBUTE_TYPE)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -785,7 +816,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e36:
(num, _) = e36.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -851,7 +883,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"groupType": "0"}) "groupType": "0"})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e37:
(num, _) = e37.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -861,7 +894,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"groupType": str(GTYPE_SECURITY_BUILTIN_LOCAL_GROUP)}) "groupType": str(GTYPE_SECURITY_BUILTIN_LOCAL_GROUP)})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e38:
(num, _) = e38.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
@ -962,7 +996,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e39:
(num, _) = e39.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Security groups # Security groups
@ -992,7 +1027,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e40:
(num, _) = e40.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Change to "universal" # Change to "universal"
@ -1065,7 +1101,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e41:
(num, _) = e41.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Change to "builtin local" (shouldn't work) # Change to "builtin local" (shouldn't work)
@ -1078,7 +1115,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e42:
(num, _) = e42.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -1109,7 +1147,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e43:
(num, _) = e43.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Change back to "global" # Change back to "global"
@ -1137,7 +1176,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e44:
(num, _) = e44.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Distribution groups # Distribution groups
@ -1167,7 +1207,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e45:
(num, _) = e45.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Change to "universal" # Change to "universal"
@ -1240,7 +1281,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e46:
(num, _) = e46.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Change back to "universal" # Change back to "universal"
@ -1254,7 +1296,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e47:
(num, _) = e47.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
# Make group 2 secondary # Make group 2 secondary
@ -1314,7 +1357,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e48:
(num, _) = e48.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Change to "universal" # Change to "universal"
@ -1387,7 +1431,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "groupType") FLAG_MOD_REPLACE, "groupType")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e49:
(num, _) = e49.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# Change back to "universal" # Change back to "universal"
@ -1465,7 +1510,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"pwdLastSet": str(1)}) "pwdLastSet": str(1)})
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e50:
(num, msg) = e50.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
self.assertTrue('00000057' in msg) self.assertTrue('00000057' in msg)
@ -1475,7 +1521,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"pwdLastSet": str(lastset)}) "pwdLastSet": str(lastset)})
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e51:
(num, msg) = e51.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
self.assertTrue('00000057' in msg) self.assertTrue('00000057' in msg)
@ -1538,7 +1585,8 @@ class SamTests(samba.tests.TestCase):
"pwdLastSet") "pwdLastSet")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e52:
(num, msg) = e52.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
self.assertTrue('00002085' in msg) self.assertTrue('00002085' in msg)
@ -1553,7 +1601,8 @@ class SamTests(samba.tests.TestCase):
"pwdLastSet") "pwdLastSet")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e53:
(num, msg) = e53.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
self.assertTrue('00002085' in msg) self.assertTrue('00002085' in msg)
@ -1588,7 +1637,8 @@ class SamTests(samba.tests.TestCase):
"pwdLastSet") "pwdLastSet")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e54:
(num, msg) = e54.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
self.assertTrue('00000057' in msg) self.assertTrue('00000057' in msg)
@ -1737,7 +1787,8 @@ class SamTests(samba.tests.TestCase):
simple_ldb = SamDB(url=host, credentials=simple_creds, lp=lp) simple_ldb = SamDB(url=host, credentials=simple_creds, lp=lp)
self.assertIsNotNone(simple_ldb) self.assertIsNotNone(simple_ldb)
simple_ldb = None simple_ldb = None
except LdbError, (num, msg): except LdbError as e55:
(num, msg) = e55.args
if num != ERR_STRONG_AUTH_REQUIRED: if num != ERR_STRONG_AUTH_REQUIRED:
raise raise
requires_strong_auth = True requires_strong_auth = True
@ -1750,7 +1801,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb_fail = SamDB(url=host, credentials=sasl_wrong_creds, lp=lp) ldb_fail = SamDB(url=host, credentials=sasl_wrong_creds, lp=lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e56:
(num, msg) = e56.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
self.assertTrue(error_msg_sasl_wrong_pw in msg) self.assertTrue(error_msg_sasl_wrong_pw in msg)
@ -1758,7 +1810,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb_fail = SamDB(url=host, credentials=simple_wrong_creds, lp=lp) ldb_fail = SamDB(url=host, credentials=simple_wrong_creds, lp=lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e4:
(num, msg) = e4.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
assertLDAPErrorMsg(msg, error_msg_simple_wrong_pw) assertLDAPErrorMsg(msg, error_msg_simple_wrong_pw)
@ -1776,14 +1829,16 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb_fail = SamDB(url=host, credentials=sasl_wrong_creds, lp=lp) ldb_fail = SamDB(url=host, credentials=sasl_wrong_creds, lp=lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e57:
(num, msg) = e57.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
assertLDAPErrorMsg(msg, error_msg_sasl_wrong_pw) assertLDAPErrorMsg(msg, error_msg_sasl_wrong_pw)
try: try:
ldb_fail = SamDB(url=host, credentials=sasl_creds, lp=lp) ldb_fail = SamDB(url=host, credentials=sasl_creds, lp=lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e58:
(num, msg) = e58.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
assertLDAPErrorMsg(msg, error_msg_sasl_must_change) assertLDAPErrorMsg(msg, error_msg_sasl_must_change)
@ -1791,14 +1846,16 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb_fail = SamDB(url=host, credentials=simple_wrong_creds, lp=lp) ldb_fail = SamDB(url=host, credentials=simple_wrong_creds, lp=lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e5:
(num, msg) = e5.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
assertLDAPErrorMsg(msg, error_msg_simple_wrong_pw) assertLDAPErrorMsg(msg, error_msg_simple_wrong_pw)
try: try:
ldb_fail = SamDB(url=host, credentials=simple_creds, lp=lp) ldb_fail = SamDB(url=host, credentials=simple_creds, lp=lp)
self.fail() self.fail()
except LdbError, (num, msg): except LdbError as e6:
(num, msg) = e6.args
self.assertEquals(num, ERR_INVALID_CREDENTIALS) self.assertEquals(num, ERR_INVALID_CREDENTIALS)
assertLDAPErrorMsg(msg, error_msg_simple_must_change) assertLDAPErrorMsg(msg, error_msg_simple_must_change)
@ -1874,7 +1931,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"userAccountControl": str(UF_TEMP_DUPLICATE_ACCOUNT)}) "userAccountControl": str(UF_TEMP_DUPLICATE_ACCOUNT)})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e59:
(num, _) = e59.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -1884,7 +1942,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"userAccountControl": str(UF_SERVER_TRUST_ACCOUNT)}) "userAccountControl": str(UF_SERVER_TRUST_ACCOUNT)})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e60:
(num, _) = e60.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -1893,7 +1952,8 @@ class SamTests(samba.tests.TestCase):
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectclass": "user", "objectclass": "user",
"userAccountControl": str(UF_WORKSTATION_TRUST_ACCOUNT)}) "userAccountControl": str(UF_WORKSTATION_TRUST_ACCOUNT)})
except LdbError, (num, _): except LdbError as e61:
(num, _) = e61.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -1902,7 +1962,8 @@ class SamTests(samba.tests.TestCase):
"dn": "cn=ldaptestuser,cn=users," + self.base_dn, "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
"objectclass": "user", "objectclass": "user",
"userAccountControl": str(UF_WORKSTATION_TRUST_ACCOUNT | UF_PARTIAL_SECRETS_ACCOUNT)}) "userAccountControl": str(UF_WORKSTATION_TRUST_ACCOUNT | UF_PARTIAL_SECRETS_ACCOUNT)})
except LdbError, (num, _): except LdbError as e62:
(num, _) = e62.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -1912,7 +1973,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "user", "objectclass": "user",
"userAccountControl": str(UF_INTERDOMAIN_TRUST_ACCOUNT)}) "userAccountControl": str(UF_INTERDOMAIN_TRUST_ACCOUNT)})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e63:
(num, _) = e63.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn) delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
@ -1944,7 +2006,8 @@ class SamTests(samba.tests.TestCase):
m["userAccountControl"] = MessageElement("0", m["userAccountControl"] = MessageElement("0",
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
except LdbError, (num, _): except LdbError as e64:
(num, _) = e64.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -1954,7 +2017,8 @@ class SamTests(samba.tests.TestCase):
str(UF_NORMAL_ACCOUNT), str(UF_NORMAL_ACCOUNT),
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
except LdbError, (num, _): except LdbError as e65:
(num, _) = e65.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -2020,7 +2084,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e66:
(num, _) = e66.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
try: try:
@ -2031,7 +2096,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e67:
(num, _) = e67.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -2049,7 +2115,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e68:
(num, _) = e68.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
res1 = ldb.search("cn=ldaptestuser,cn=users," + self.base_dn, res1 = ldb.search("cn=ldaptestuser,cn=users," + self.base_dn,
@ -2079,7 +2146,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e69:
(num, _) = e69.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
# With a computer object # With a computer object
@ -2148,7 +2216,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "computer", "objectclass": "computer",
"userAccountControl": str(UF_TEMP_DUPLICATE_ACCOUNT)}) "userAccountControl": str(UF_TEMP_DUPLICATE_ACCOUNT)})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e70:
(num, _) = e70.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn) delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn)
@ -2169,7 +2238,8 @@ class SamTests(samba.tests.TestCase):
"dn": "cn=ldaptestcomputer,cn=computers," + self.base_dn, "dn": "cn=ldaptestcomputer,cn=computers," + self.base_dn,
"objectclass": "computer", "objectclass": "computer",
"userAccountControl": str(UF_WORKSTATION_TRUST_ACCOUNT)}) "userAccountControl": str(UF_WORKSTATION_TRUST_ACCOUNT)})
except LdbError, (num, _): except LdbError as e71:
(num, _) = e71.args
self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION) self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn) delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn)
@ -2179,7 +2249,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "computer", "objectclass": "computer",
"userAccountControl": str(UF_INTERDOMAIN_TRUST_ACCOUNT)}) "userAccountControl": str(UF_INTERDOMAIN_TRUST_ACCOUNT)})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e72:
(num, _) = e72.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn) delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn)
@ -2212,7 +2283,8 @@ class SamTests(samba.tests.TestCase):
m["userAccountControl"] = MessageElement("0", m["userAccountControl"] = MessageElement("0",
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
except LdbError, (num, _): except LdbError as e73:
(num, _) = e73.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -2222,7 +2294,8 @@ class SamTests(samba.tests.TestCase):
str(UF_NORMAL_ACCOUNT), str(UF_NORMAL_ACCOUNT),
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
except LdbError, (num, _): except LdbError as e74:
(num, _) = e74.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -2288,7 +2361,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e75:
(num, _) = e75.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
m = Message() m = Message()
@ -2377,7 +2451,8 @@ class SamTests(samba.tests.TestCase):
FLAG_MOD_REPLACE, "userAccountControl") FLAG_MOD_REPLACE, "userAccountControl")
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e76:
(num, _) = e76.args
self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEquals(num, ERR_INSUFFICIENT_ACCESS_RIGHTS)
# "primaryGroupID" does not change if account type remains the same # "primaryGroupID" does not change if account type remains the same
@ -3299,7 +3374,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e77:
(num, _) = e77.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -3379,7 +3455,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e78:
(num, _) = e78.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -3434,7 +3511,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e79:
(num, _) = e79.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -3444,7 +3522,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e80:
(num, _) = e80.args
self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE) self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
m = Message() m = Message()
@ -3464,7 +3543,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e81:
(num, _) = e81.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -3474,7 +3554,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e82:
(num, _) = e82.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
m = Message() m = Message()
@ -3521,7 +3602,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"fSMORoleOwner": self.base_dn}) "fSMORoleOwner": self.base_dn})
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e83:
(num, _) = e83.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
try: try:
@ -3530,7 +3612,8 @@ class SamTests(samba.tests.TestCase):
"objectclass": "group", "objectclass": "group",
"fSMORoleOwner": [] }) "fSMORoleOwner": [] })
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e84:
(num, _) = e84.args
self.assertEquals(num, ERR_CONSTRAINT_VIOLATION) self.assertEquals(num, ERR_CONSTRAINT_VIOLATION)
# We are able to set it to a valid "nTDSDSA" entry if the server is # We are able to set it to a valid "nTDSDSA" entry if the server is
@ -3553,7 +3636,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e85:
(num, _) = e85.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
m = Message() m = Message()
@ -3562,7 +3646,8 @@ class SamTests(samba.tests.TestCase):
try: try:
ldb.modify(m) ldb.modify(m)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e86:
(num, _) = e86.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
# We are able to set it to a valid "nTDSDSA" entry if the server is # We are able to set it to a valid "nTDSDSA" entry if the server is
@ -3599,7 +3684,8 @@ class SamTests(samba.tests.TestCase):
for pr_object in protected_list: for pr_object in protected_list:
try: try:
self.ldb.delete(pr_object[0] + "," + pr_object[1] + self.base_dn) self.ldb.delete(pr_object[0] + "," + pr_object[1] + self.base_dn)
except LdbError, (num, _): except LdbError as e7:
(num, _) = e7.args
self.assertEquals(num, ERR_OTHER) self.assertEquals(num, ERR_OTHER)
else: else:
self.fail("Deleted " + pr_object[0]) self.fail("Deleted " + pr_object[0])
@ -3607,7 +3693,8 @@ class SamTests(samba.tests.TestCase):
try: try:
self.ldb.rename(pr_object[0] + "," + pr_object[1] + self.base_dn, self.ldb.rename(pr_object[0] + "," + pr_object[1] + self.base_dn,
pr_object[0] + "2," + pr_object[1] + self.base_dn) pr_object[0] + "2," + pr_object[1] + self.base_dn)
except LdbError, (num, _): except LdbError as e8:
(num, _) = e8.args
self.fail("Could not rename " + pr_object[0]) self.fail("Could not rename " + pr_object[0])
self.ldb.rename(pr_object[0] + "2," + pr_object[1] + self.base_dn, self.ldb.rename(pr_object[0] + "2," + pr_object[1] + self.base_dn,

View File

@ -71,7 +71,8 @@ class DescriptorTests(samba.tests.TestCase):
class_dn = "CN=%s,%s" % (class_name, self.schema_dn) class_dn = "CN=%s,%s" % (class_name, self.schema_dn)
try: try:
self.ldb_admin.search(base=class_dn, attrs=["name"]) self.ldb_admin.search(base=class_dn, attrs=["name"])
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
break break

View File

@ -205,7 +205,8 @@ class BaseRestoreObjectTestCase(RestoredObjectAttributesBaseTestCase):
FLAG_MOD_ADD, "enableOptionalFeature") FLAG_MOD_ADD, "enableOptionalFeature")
try: try:
self.samdb.modify(msg) self.samdb.modify(msg)
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS) self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
def test_undelete(self): def test_undelete(self):
@ -242,13 +243,15 @@ class BaseRestoreObjectTestCase(RestoredObjectAttributesBaseTestCase):
try: try:
self.samdb.rename(str(objDeleted1.dn), usr1) self.samdb.rename(str(objDeleted1.dn), usr1)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e1:
(num, _) = e1.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
try: try:
self.samdb.rename(str(objDeleted1.dn), usr1, ["show_deleted:1"]) self.samdb.rename(str(objDeleted1.dn), usr1, ["show_deleted:1"])
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e2:
(num, _) = e2.args
self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
def test_undelete_with_mod(self): def test_undelete_with_mod(self):
@ -307,7 +310,8 @@ class BaseRestoreObjectTestCase(RestoredObjectAttributesBaseTestCase):
try: try:
self.restore_deleted_object(self.samdb, objDeleted1.dn, usr1) self.restore_deleted_object(self.samdb, objDeleted1.dn, usr1)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e3:
(num, _) = e3.args
self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS) self.assertEquals(num, ERR_ENTRY_ALREADY_EXISTS)
def test_undelete_cross_nc(self): def test_undelete_cross_nc(self):
@ -338,13 +342,15 @@ class BaseRestoreObjectTestCase(RestoredObjectAttributesBaseTestCase):
try: try:
self.restore_deleted_object(self.samdb, objDeleted1.dn, c3) self.restore_deleted_object(self.samdb, objDeleted1.dn, c3)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e4:
(num, _) = e4.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
#try to undelete from config to base dn #try to undelete from config to base dn
try: try:
self.restore_deleted_object(self.samdb, objDeleted2.dn, c4) self.restore_deleted_object(self.samdb, objDeleted2.dn, c4)
self.fail() self.fail()
except LdbError, (num, _): except LdbError as e5:
(num, _) = e5.args
self.assertEquals(num, ERR_OPERATIONS_ERROR) self.assertEquals(num, ERR_OPERATIONS_ERROR)
#assert undeletion will work in same nc #assert undeletion will work in same nc
self.restore_deleted_object(self.samdb, objDeleted1.dn, c4) self.restore_deleted_object(self.samdb, objDeleted1.dn, c4)

View File

@ -38,7 +38,8 @@ class UrgentReplicationTests(samba.tests.TestCase):
def delete_force(self, ldb, dn): def delete_force(self, ldb, dn):
try: try:
ldb.delete(dn, ["relax:0"]) ldb.delete(dn, ["relax:0"])
except LdbError, (num, _): except LdbError as e:
(num, _) = e.args
self.assertEquals(num, ERR_NO_SUCH_OBJECT) self.assertEquals(num, ERR_NO_SUCH_OBJECT)
def setUp(self): def setUp(self):

View File

@ -227,7 +227,8 @@ class UserAccountControlTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail("Unexpectedly able to set userAccountControl to be a DC on %s" % m.dn) self.fail("Unexpectedly able to set userAccountControl to be a DC on %s" % m.dn)
except LdbError, (enum, estr): except LdbError as e5:
(enum, estr) = e5.args
self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum) self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum)
m = ldb.Message() m = ldb.Message()
@ -237,7 +238,8 @@ class UserAccountControlTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail("Unexpectedly able to set userAccountControl to be an RODC on %s" % m.dn) self.fail("Unexpectedly able to set userAccountControl to be an RODC on %s" % m.dn)
except LdbError, (enum, estr): except LdbError as e6:
(enum, estr) = e6.args
self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum) self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum)
m = ldb.Message() m = ldb.Message()
@ -247,7 +249,8 @@ class UserAccountControlTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail("Unexpectedly able to set userAccountControl to be an Workstation on %s" % m.dn) self.fail("Unexpectedly able to set userAccountControl to be an Workstation on %s" % m.dn)
except LdbError, (enum, estr): except LdbError as e7:
(enum, estr) = e7.args
self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum) self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum)
m = ldb.Message() m = ldb.Message()
@ -262,7 +265,8 @@ class UserAccountControlTests(samba.tests.TestCase):
ldb.FLAG_MOD_REPLACE, "primaryGroupID") ldb.FLAG_MOD_REPLACE, "primaryGroupID")
try: try:
self.samdb.modify(m) self.samdb.modify(m)
except LdbError, (enum, estr): except LdbError as e8:
(enum, estr) = e8.args
self.assertEqual(ldb.ERR_UNWILLING_TO_PERFORM, enum) self.assertEqual(ldb.ERR_UNWILLING_TO_PERFORM, enum)
return return
self.fail() self.fail()
@ -297,7 +301,8 @@ class UserAccountControlTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail("Unexpectedly able to set userAccountControl on %s" % m.dn) self.fail("Unexpectedly able to set userAccountControl on %s" % m.dn)
except LdbError, (enum, estr): except LdbError as e9:
(enum, estr) = e9.args
self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum) self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum)
m = ldb.Message() m = ldb.Message()
@ -307,7 +312,8 @@ class UserAccountControlTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail() self.fail()
except LdbError, (enum, estr): except LdbError as e10:
(enum, estr) = e10.args
self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum) self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum)
m = ldb.Message() m = ldb.Message()
@ -323,7 +329,8 @@ class UserAccountControlTests(samba.tests.TestCase):
try: try:
self.samdb.modify(m) self.samdb.modify(m)
self.fail("Unexpectedly able to set userAccountControl to be an Workstation on %s" % m.dn) self.fail("Unexpectedly able to set userAccountControl to be an Workstation on %s" % m.dn)
except LdbError, (enum, estr): except LdbError as e11:
(enum, estr) = e11.args
self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum) self.assertEqual(ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS, enum)
@ -345,7 +352,8 @@ class UserAccountControlTests(samba.tests.TestCase):
try: try:
self.admin_samdb.modify(m) self.admin_samdb.modify(m)
self.fail("Unexpectedly able to set userAccountControl to UF_WORKSTATION_TRUST_ACCOUNT|UF_PARTIAL_SECRETS_ACCOUNT|UF_TRUSTED_FOR_DELEGATION on %s" % m.dn) self.fail("Unexpectedly able to set userAccountControl to UF_WORKSTATION_TRUST_ACCOUNT|UF_PARTIAL_SECRETS_ACCOUNT|UF_TRUSTED_FOR_DELEGATION on %s" % m.dn)
except LdbError, (enum, estr): except LdbError as e12:
(enum, estr) = e12.args
self.assertEqual(ldb.ERR_OTHER, enum) self.assertEqual(ldb.ERR_OTHER, enum)
m = ldb.Message() m = ldb.Message()
@ -417,7 +425,8 @@ class UserAccountControlTests(samba.tests.TestCase):
self.samdb.modify(m) self.samdb.modify(m)
if (bit in priv_bits): if (bit in priv_bits):
self.fail("Unexpectedly able to set userAccountControl bit 0x%08X on %s" % (bit, m.dn)) self.fail("Unexpectedly able to set userAccountControl bit 0x%08X on %s" % (bit, m.dn))
except LdbError, (enum, estr): except LdbError as e:
(enum, estr) = e.args
if bit in invalid_bits: if bit in invalid_bits:
self.assertEqual(enum, ldb.ERR_OTHER, "was not able to set 0x%08X on %s" % (bit, m.dn)) self.assertEqual(enum, ldb.ERR_OTHER, "was not able to set 0x%08X on %s" % (bit, m.dn))
# No point going on, try the next bit # No point going on, try the next bit
@ -492,7 +501,8 @@ class UserAccountControlTests(samba.tests.TestCase):
if bit in invalid_bits: if bit in invalid_bits:
self.fail("Should have been unable to set userAccountControl bit 0x%08X on %s" % (bit, m.dn)) self.fail("Should have been unable to set userAccountControl bit 0x%08X on %s" % (bit, m.dn))
except LdbError, (enum, estr): except LdbError as e1:
(enum, estr) = e1.args
if bit in invalid_bits: if bit in invalid_bits:
self.assertEqual(enum, ldb.ERR_OTHER) self.assertEqual(enum, ldb.ERR_OTHER)
# No point going on, try the next bit # No point going on, try the next bit
@ -524,7 +534,8 @@ class UserAccountControlTests(samba.tests.TestCase):
ldb.FLAG_MOD_REPLACE, "userAccountControl") ldb.FLAG_MOD_REPLACE, "userAccountControl")
self.samdb.modify(m) self.samdb.modify(m)
except LdbError, (enum, estr): except LdbError as e2:
(enum, estr) = e2.args
self.fail("Unable to set userAccountControl bit 0x%08X on %s: %s" % (bit, m.dn, estr)) self.fail("Unable to set userAccountControl bit 0x%08X on %s: %s" % (bit, m.dn, estr))
res = self.admin_samdb.search("%s" % self.base_dn, res = self.admin_samdb.search("%s" % self.base_dn,
@ -561,7 +572,8 @@ class UserAccountControlTests(samba.tests.TestCase):
if bit in priv_to_remove_bits: if bit in priv_to_remove_bits:
self.fail("Should have been unable to remove userAccountControl bit 0x%08X on %s" % (bit, m.dn)) self.fail("Should have been unable to remove userAccountControl bit 0x%08X on %s" % (bit, m.dn))
except LdbError, (enum, estr): except LdbError as e3:
(enum, estr) = e3.args
if bit in priv_to_remove_bits: if bit in priv_to_remove_bits:
self.assertEqual(enum, ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS) self.assertEqual(enum, ldb.ERR_INSUFFICIENT_ACCESS_RIGHTS)
else: else:
@ -618,7 +630,8 @@ class UserAccountControlTests(samba.tests.TestCase):
if bit in priv_bits: if bit in priv_bits:
self.fail("Unexpectdly able to set userAccountControl bit 0x%08X on %s" % (bit, computername)) self.fail("Unexpectdly able to set userAccountControl bit 0x%08X on %s" % (bit, computername))
except LdbError, (enum, estr): except LdbError as e4:
(enum, estr) = e4.args
if bit in invalid_bits: if bit in invalid_bits:
self.assertEqual(enum, ldb.ERR_OTHER, "Invalid bit 0x%08X was able to be set on %s" % (bit, computername)) self.assertEqual(enum, ldb.ERR_OTHER, "Invalid bit 0x%08X was able to be set on %s" % (bit, computername))
# No point going on, try the next bit # No point going on, try the next bit
@ -642,7 +655,8 @@ class UserAccountControlTests(samba.tests.TestCase):
# When creating a new object, you can not ever set the primaryGroupID # When creating a new object, you can not ever set the primaryGroupID
self.add_computer_ldap(computername, others={"primaryGroupID": [str(security.DOMAIN_RID_ADMINS)]}) self.add_computer_ldap(computername, others={"primaryGroupID": [str(security.DOMAIN_RID_ADMINS)]})
self.fail("Unexpectedly able to set primaryGruopID to be an admin on %s" % computername) self.fail("Unexpectedly able to set primaryGruopID to be an admin on %s" % computername)
except LdbError, (enum, estr): except LdbError as e13:
(enum, estr) = e13.args
self.assertEqual(enum, ldb.ERR_UNWILLING_TO_PERFORM) self.assertEqual(enum, ldb.ERR_UNWILLING_TO_PERFORM)
@ -676,7 +690,8 @@ class UserAccountControlTests(samba.tests.TestCase):
# When creating a new object, you can not ever set the primaryGroupID # When creating a new object, you can not ever set the primaryGroupID
self.fail("Unexpectedly able to set primaryGroupID to be other than DCS on %s" % computername) self.fail("Unexpectedly able to set primaryGroupID to be other than DCS on %s" % computername)
except LdbError, (enum, estr): except LdbError as e14:
(enum, estr) = e14.args
self.assertEqual(enum, ldb.ERR_UNWILLING_TO_PERFORM) self.assertEqual(enum, ldb.ERR_UNWILLING_TO_PERFORM)
def test_primarygroupID_priv_member_modify(self): def test_primarygroupID_priv_member_modify(self):
@ -709,7 +724,8 @@ class UserAccountControlTests(samba.tests.TestCase):
# When creating a new object, you can not ever set the primaryGroupID # When creating a new object, you can not ever set the primaryGroupID
self.fail("Unexpectedly able to set primaryGroupID to be other than DCS on %s" % computername) self.fail("Unexpectedly able to set primaryGroupID to be other than DCS on %s" % computername)
except LdbError, (enum, estr): except LdbError as e15:
(enum, estr) = e15.args
self.assertEqual(enum, ldb.ERR_UNWILLING_TO_PERFORM) self.assertEqual(enum, ldb.ERR_UNWILLING_TO_PERFORM)