tar-util: fix error code on failure (#43688)

This commit is contained in:
Yu Watanabe
2026-09-09 04:27:38 +09:00
committed by GitHub
2 changed files with 5 additions and 4 deletions
+2 -1
View File
@@ -2,6 +2,7 @@
#pragma once
#include "dlopen-note.h"
#include "errno-util.h"
#include "forward.h"
#if HAVE_ACL
@@ -62,7 +63,7 @@ DEFINE_TRIVIAL_CLEANUP_FUNC_FULL_RENAME(uid_t*, sym_acl_free, acl_free_uid_tpp,
DEFINE_TRIVIAL_CLEANUP_FUNC_FULL_RENAME(gid_t*, sym_acl_free, acl_free_gid_tpp, NULL);
static inline int acl_set_perm(acl_permset_t ps, acl_perm_t p, bool b) {
return (b ? sym_acl_add_perm : sym_acl_delete_perm)(ps, p);
return RET_NERRNO((b ? sym_acl_add_perm : sym_acl_delete_perm)(ps, p));
}
#else
+3 -3
View File
@@ -1366,17 +1366,17 @@ static int archive_write_acl(
int permset = 0;
r = sym_acl_get_perm(p, ACL_READ);
if (r < 0)
return log_error_errno(r, "Failed to get ACL entry read bit: %m");
return log_error_errno(errno, "Failed to get ACL entry read bit: %m");
SET_FLAG(permset, ARCHIVE_ENTRY_ACL_READ, r);
r = sym_acl_get_perm(p, ACL_WRITE);
if (r < 0)
return log_error_errno(r, "Failed to get ACL entry write bit: %m");
return log_error_errno(errno, "Failed to get ACL entry write bit: %m");
SET_FLAG(permset, ARCHIVE_ENTRY_ACL_WRITE, r);
r = sym_acl_get_perm(p, ACL_EXECUTE);
if (r < 0)
return log_error_errno(r, "Failed to get ACL entry execute bit: %m");
return log_error_errno(errno, "Failed to get ACL entry execute bit: %m");
SET_FLAG(permset, ARCHIVE_ENTRY_ACL_EXECUTE, r);
r = sym_archive_entry_acl_add_entry(entry, type, permset, tag, qualifier, /* name= */ NULL);