summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Kahn Gillmor <dkg@fifthhorseman.net>2008-09-13 13:26:39 -0400
committerDaniel Kahn Gillmor <dkg@fifthhorseman.net>2008-09-13 13:26:39 -0400
commit531e08b2394fb7935fdd128f52445e5191c8ca6b (patch)
treef5463960d2dfa3ee19b53145bc040981fd287faf /src
parentc34410402a7e49030666553c731c267e14e9a508 (diff)
replace stat with ls (sigh) and make su more portable.
Diffstat (limited to 'src')
-rw-r--r--src/common11
-rwxr-xr-xsrc/monkeysphere-server4
2 files changed, 7 insertions, 8 deletions
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
diff --git a/src/monkeysphere-server b/src/monkeysphere-server
index 111f777..6798fab 100755
--- a/src/monkeysphere-server
+++ b/src/monkeysphere-server
@@ -67,7 +67,7 @@ EOF
}
su_monkeysphere_user() {
- su --preserve-environment "$MONKEYSPHERE_USER" -- -c "$@"
+ su -m "$MONKEYSPHERE_USER" -c "$@"
}
# function to interact with the host gnupg keyring
@@ -642,7 +642,7 @@ diagnostics() {
if [ ! -s "${VARLIB}/ssh_host_rsa_key" ] ; then
echo "! The host key as prepared for SSH (${VARLIB}/ssh_host_rsa_key) is missing or empty."
else
- if [ $(stat -c '%a' "${VARLIB}/ssh_host_rsa_key") != 600 ] ; then
+ if [ $(ls -l "${VARLIB}/ssh_host_rsa_key" | cut -f1 -d\ ) != '-rw-------' ] ; then
echo "! Permissions seem wrong for ${VARLIB}/ssh_host_rsa_key -- should be 0600."
fi