summaryrefslogtreecommitdiffstats
path: root/bin/setfacl
diff options
context:
space:
mode:
authorjh <jh@FreeBSD.org>2011-01-03 17:17:31 +0000
committerjh <jh@FreeBSD.org>2011-01-03 17:17:31 +0000
commit4c78089710b5ccf0a0c579c50abd36518cd0921d (patch)
treeb77d9bc055ea5784599ab9bdf943157dc8ede965 /bin/setfacl
parent22fce0b1c2fdbd43dc60c768421ef81a407a98a0 (diff)
downloadFreeBSD-src-4c78089710b5ccf0a0c579c50abd36518cd0921d.zip
FreeBSD-src-4c78089710b5ccf0a0c579c50abd36518cd0921d.tar.gz
Increase carried_error if we skip a file due to an error. This ensures
that setfacl(1) exits with proper exit status on failure. PR: bin/149780 Submitted by: Ævar Arnfjörð Bjarmason (original version) Reviewed by: trasz MFC after: 3 weeks
Diffstat (limited to 'bin/setfacl')
-rw-r--r--bin/setfacl/setfacl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/bin/setfacl/setfacl.c b/bin/setfacl/setfacl.c
index 42f4731..7534794 100644
--- a/bin/setfacl/setfacl.c
+++ b/bin/setfacl/setfacl.c
@@ -201,12 +201,14 @@ main(int argc, char *argv[])
if (stat(file->filename, &sb) == -1) {
warn("%s: stat() failed", file->filename);
+ carried_error++;
continue;
}
if (acl_type == ACL_TYPE_DEFAULT && S_ISDIR(sb.st_mode) == 0) {
warnx("%s: default ACL may only be set on a directory",
file->filename);
+ carried_error++;
continue;
}
@@ -218,6 +220,7 @@ main(int argc, char *argv[])
if (acl_type == ACL_TYPE_DEFAULT) {
warnx("%s: there are no default entries "
"in NFSv4 ACLs", file->filename);
+ carried_error++;
continue;
}
acl_type = ACL_TYPE_NFS4;
@@ -240,6 +243,7 @@ main(int argc, char *argv[])
else
warn("%s: acl_get_file() failed",
file->filename);
+ carried_error++;
continue;
}
OpenPOWER on IntegriCloud