netcmd: Fix passwordsettings --max-pwd-age command
authorTim Beale <timbeale@catalyst.net.nz>
Tue, 2 Apr 2019 20:10:55 +0000 (09:10 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 5 Apr 2019 08:03:08 +0000 (08:03 +0000)
commit7a410ccb5f6f2958d56fa6f16d8780c69a3830dd
treea6f40f4234b7d1b22953b6d8158789461a947229
parent940306a24a8d14fbb8c76c5a60b3d5f2773873a0
netcmd: Fix passwordsettings --max-pwd-age command

The min_pwd_age and max_pwd_age parameters are both optional and default
to None. However, if we just set the max-pwd-age, then the check
'min_pwd_age >= max_pwd_age' will throw a Python exception because it's
trying to compare an int to NoneType (min_pwd_age). This works on Python 2
but is a problem on Python 3.

We could just add a check that min_pwd_age is not None, but that defeats
the point of having the check if you're only setting either the min or
max age indepedently.

This patch gets the current min/max password age from the DB (in ticks).
If either setting is changed, the ticks will be updated. Then at the end
we check the min is still less than the max (to do this, we convert the
ticks back to days in the interests of readability).

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13873

Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Fri Apr  5 08:03:08 UTC 2019 on sn-devel-144
python/samba/netcmd/domain.py
selftest/knownfail.d/passwordsettings [deleted file]