8d1447c569
but acl_set_fd is not
68 lines
1.7 KiB
Diff
68 lines
1.7 KiB
Diff
Index: logrotate.c
|
|
===================================================================
|
|
--- logrotate.c (revision 335)
|
|
+++ logrotate.c (working copy)
|
|
@@ -410,13 +410,15 @@
|
|
}
|
|
if (prev_acl) {
|
|
if (acl_set_fd(outFile, prev_acl) == -1) {
|
|
- message(MESS_ERROR, "setting ACL for %s: %s\n",
|
|
- compressedName, strerror(errno));
|
|
- acl_free(prev_acl);
|
|
- prev_acl = NULL;
|
|
- close(inFile);
|
|
- close(outFile);
|
|
- return 1;
|
|
+ if (errno != ENOTSUP) {
|
|
+ message(MESS_ERROR, "setting ACL for %s: %s\n",
|
|
+ compressedName, strerror(errno));
|
|
+ acl_free(prev_acl);
|
|
+ prev_acl = NULL;
|
|
+ close(inFile);
|
|
+ close(outFile);
|
|
+ return 1;
|
|
+ }
|
|
}
|
|
acl_free(prev_acl);
|
|
prev_acl = NULL;
|
|
@@ -624,14 +626,16 @@
|
|
}
|
|
#ifdef WITH_ACL
|
|
if (prev_acl) {
|
|
- if (acl_set_fd(fdsave, prev_acl) == -1) {
|
|
- message(MESS_ERROR, "setting ACL for %s: %s\n",
|
|
- saveLog, strerror(errno));
|
|
- acl_free(prev_acl);
|
|
- prev_acl = NULL;
|
|
- close(fdsave);
|
|
- close(fdcurr);
|
|
- return 1;
|
|
+ if ((fdsave, prev_acl) == -1) {
|
|
+ if (errno != ENOTSUP) {
|
|
+ message(MESS_ERROR, "setting ACL for %s: %s\n",
|
|
+ saveLog, strerror(errno));
|
|
+ acl_free(prev_acl);
|
|
+ prev_acl = NULL;
|
|
+ close(fdsave);
|
|
+ close(fdcurr);
|
|
+ return 1;
|
|
+ }
|
|
}
|
|
acl_free(prev_acl);
|
|
prev_acl = NULL;
|
|
@@ -1331,9 +1335,11 @@
|
|
#ifdef WITH_ACL
|
|
if (prev_acl) {
|
|
if (acl_set_fd(fd, prev_acl) == -1) {
|
|
- message(MESS_ERROR, "setting ACL for %s: %s\n",
|
|
- log->files[logNum], strerror(errno));
|
|
- hasErrors = 1;
|
|
+ if (errno != ENOTSUP) {
|
|
+ message(MESS_ERROR, "setting ACL for %s: %s\n",
|
|
+ log->files[logNum], strerror(errno));
|
|
+ hasErrors = 1;
|
|
+ }
|
|
}
|
|
acl_free(prev_acl);
|
|
prev_acl = NULL;
|