From 531e08b2394fb7935fdd128f52445e5191c8ca6b Mon Sep 17 00:00:00 2001 From: Daniel Kahn Gillmor Date: Sat, 13 Sep 2008 13:26:39 -0400 Subject: replace stat with ls (sigh) and make su more portable. --- src/common | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'src/common') diff --git a/src/common b/src/common index 48739d9..22ed1b1 100644 --- a/src/common +++ b/src/common @@ -399,9 +399,9 @@ check_key_file_permissions() { local gAccess local oAccess - # function to check that an octal corresponds to writability + # function to check that the given permission corresponds to writability is_write() { - [ "$1" -eq 2 -o "$1" -eq 3 -o "$1" -eq 6 -o "$1" -eq 7 ] + [ "$1" = "w" ] } user="$1" @@ -410,10 +410,9 @@ check_key_file_permissions() { # return 0 is path does not exist [ -e "$path" ] || return 0 - owner=$(stat --format '%U' "$path") - access=$(stat --format '%a' "$path") - gAccess=$(echo "$access" | cut -c2) - oAccess=$(echo "$access" | cut -c3) + owner=$(ls -l "$path" | awk '{ print $3 }') + gAccess=$(ls -l "$path" | cut -c6) + oAccess=$(ls -l "$path" | cut -c9) # check owner if [ "$owner" != "$user" -a "$owner" != 'root' ] ; then -- cgit v1.2.3