Support for shells without 'stat' (busybox ash)

- the _stat command can now return an error
- the issue() command chown command isn't run if _stat fails
This commit is contained in:
Tim O'Brien 2016-07-22 14:17:33 -07:00
parent c9c31c04c3
commit 32fdc19697
1 changed files with 7 additions and 3 deletions

10
acme.sh
View File

@ -549,6 +549,7 @@ _stat() {
if stat -f '%Su:%Sg' "$1" 2>/dev/null ; then
return
fi
return 3; #error, 'stat' not found
}
#keyfile
@ -1656,9 +1657,12 @@ issue() {
mkdir -p "$wellknown_path"
printf "%s" "$keyauthorization" > "$wellknown_path/$token"
if [ ! "$usingApache" ] ; then
webroot_owner=$(_stat $_currentRoot)
_debug "Changing owner/group of .well-known to $webroot_owner"
chown -R $webroot_owner "$_currentRoot/.well-known"
if webroot_owner=$(_stat $_currentRoot) ; then
_debug "Changing owner/group of .well-known to $webroot_owner"
chown -R $webroot_owner "$_currentRoot/.well-known"
else
_debug "not chaning owner/group of webroot";
fi
fi
fi