From d32e87b86f6ddad2c2e427718bc9f480e0905055 Mon Sep 17 00:00:00 2001 From: mo khan Date: Mon, 14 Oct 2019 10:22:27 -0600 Subject: add unit tests for missing expiration date --- bin/duplicate-ids | 1 + bin/missing-expiration-date | 15 ++++++++++----- bin/no-password | 1 + bin/uid-zero | 1 + 4 files changed, 13 insertions(+), 5 deletions(-) (limited to 'bin') diff --git a/bin/duplicate-ids b/bin/duplicate-ids index a1e2b39..841b895 100755 --- a/bin/duplicate-ids +++ b/bin/duplicate-ids @@ -1,5 +1,6 @@ #!/bin/bash +cd "$(dirname "$0")/.." FILE=${1:-'/etc/passwd'} ids=$(grep -v -E '^#' "$FILE" | awk -F: '{ print $3 }' | sort -n | uniq -d) diff --git a/bin/missing-expiration-date b/bin/missing-expiration-date index 8a0c7fe..d0caa28 100755 --- a/bin/missing-expiration-date +++ b/bin/missing-expiration-date @@ -1,12 +1,17 @@ #!/bin/bash -cd "..$(dirname $PWD)" +cd "$(dirname "$0")/.." +FILE=${1:-'/etc/shadow'} +EXITSTATUS=0 -for i in `cat /etc/shadow`; do - login=$(echo $i | cut -d: -f1) - expiration=$(echo $i | cut -d: -f8) +while read entry; do + login=$(echo $entry | cut -d: -f1) + expiration=$(echo $entry | cut -d: -f8) if [ -z "$expiration" ]; then echo $login: does not have an expiration date + let "EXITSTATUS++" fi -done +done < "$FILE" + +exit $EXITSTATUS diff --git a/bin/no-password b/bin/no-password index 4705ddd..9e2c04d 100755 --- a/bin/no-password +++ b/bin/no-password @@ -1,5 +1,6 @@ #!/bin/bash +cd "$(dirname "$0")/.." FILE=${1:-'/etc/passwd'} grep -E '^\w+::.*' "$FILE" diff --git a/bin/uid-zero b/bin/uid-zero index 64adac7..c4b854c 100755 --- a/bin/uid-zero +++ b/bin/uid-zero @@ -1,5 +1,6 @@ #!/bin/bash +cd "$(dirname "$0")/.." FILE=${1:-'/etc/passwd'} cat "$FILE" | cut -d: -f1,3 | grep ':0' -- cgit v1.2.3