Drop attr defaultServerList if removing the last server

This otherwise returns a syntax error if trying to set
an empty value.

Related: https://pagure.io/freeipa/issue/6760

Signed-off-by: Rob Crittenden <rcritten@redhat.com>
Reviewed-By: Stanislav Laznicka <slaznick@redhat.com>
Reviewed-By: Christian Heimes <cheimes@redhat.com>
This commit is contained in:
Rob Crittenden
2018-05-02 11:42:02 -04:00
committed by Tibor Dudlák
parent b96906156b
commit 8ea227451f

View File

@@ -615,8 +615,10 @@ class server_del(LDAPDelete):
srvlist = srvlist.split()
if master in srvlist:
srvlist.remove(master)
attr = ' '.join(srvlist)
ret['defaultServerList'] = attr
if not srvlist:
del ret['defaultServerList']
else:
ret['defaultServerList'] = ' '.join(srvlist)
conn.update_entry(ret)
except (errors.NotFound, errors.MidairCollision,
errors.EmptyModlist):