diff options
author | Arthur de Jong <arthur@arthurdejong.org> | 2017-06-25 16:25:27 +0200 |
---|---|---|
committer | Arthur de Jong <arthur@arthurdejong.org> | 2017-06-25 16:48:53 +0200 |
commit | 7920d85ef806cda6a37db16aff75f895cc67a3e1 (patch) | |
tree | c7d339908c9242c31aed89ec86af9a0562a574e0 | |
parent | 65695aa1d0fbc0a4aa5e7b1bb28c66fbb4879e01 (diff) |
Ignore password hashes in consistent manner
This changes the getent and getent.ldap tests to ignore password hashes
that may be present in shadow lookups in a consistent manner.
This also adds minor compatibility improvements.
-rwxr-xr-x | tests/test_ldapcmds.sh | 11 | ||||
-rwxr-xr-x | tests/test_nsscmds.sh | 9 |
2 files changed, 13 insertions, 7 deletions
diff --git a/tests/test_ldapcmds.sh b/tests/test_ldapcmds.sh index 8485d2b..a9c2efb 100755 --- a/tests/test_ldapcmds.sh +++ b/tests/test_ldapcmds.sh @@ -37,7 +37,7 @@ export PYTHONPATH "$srcdir/testenv.sh" check_nslcd || exit 77 # if Python is missing, ignore -if ! ${python} --version > /dev/null 2> /dev/null +if [ -z "${python}" ] || ! ${python} --version > /dev/null 2> /dev/null then echo "Python (${python}) not found" exit 77 @@ -472,13 +472,16 @@ EOM echo "test_ldapcmds.sh: testing shadow..." -# NOTE: the output of this should depend on whether we are root or not +# function to remove the password field from output +rmpasswd() { + sed 's/^\([^:]*\):[^:]*:/\1:*:/' +} -check "getent.ldap shadow ecordas | sed 's/^\([^:]*\):[^:]*:/\1:*:/'" << EOM +check "getent.ldap shadow ecordas | rmpasswd" << EOM ecordas:*::::7:2::0 EOM -check "getent.ldap shadow adishaw | sed 's/^\([^:]*\):[^:]*:/\1:*:/'" << EOM +check "getent.ldap shadow adishaw | rmpasswd" << EOM adishaw:*:12302:::7:2::0 EOM diff --git a/tests/test_nsscmds.sh b/tests/test_nsscmds.sh index 846ad43..ef489e2 100755 --- a/tests/test_nsscmds.sh +++ b/tests/test_nsscmds.sh @@ -490,13 +490,16 @@ if grep '^shadow.*ldap' /etc/nsswitch.conf > /dev/null 2>&1 then echo "test_nsscmds.sh: testing shadow..." -# NOTE: the output of this should depend on whether we are root or not +# function to remove the password field from output +rmpasswd() { + sed 's/^\([^:]*\):[^:]*:/\1:*:/' +} -check "getent shadow ecordas" << EOM +check "getent shadow ecordas | rmpasswd" << EOM ecordas:*::::7:2::0 EOM -check "getent shadow adishaw" << EOM +check "getent shadow adishaw | rmpasswd" << EOM adishaw:*:12302:::7:2::0 EOM |