acl/0008-libacl-Make-sure-that-acl_from_text-always-sets-errn.patch
Marcus Meissner 5439477a49 Accepting request 347209 from home:jeff_mahoney:branches:Base:System
- Update to git snapshot dated 21 Sep 2015.
  - Added:
    * 0001-Install-the-libraries-to-the-appropriate-directory.patch
    * 0002-setfacl.1-fix-typo-inclu-de-include.patch
    * 0003-test-fix-insufficient-quoting-of.patch
    * 0004-Makefile-rename-configure.in-to-configure.ac.patch
    * 0005-Bad-markup-in-acl.5-page.patch
    * 0006-.gitignore-ignore-and-config.h.in.patch
    * 0007-Use-autoreconf-rather-than-autoconf-to-regenerate-th.patch
    * 0008-libacl-Make-sure-that-acl_from_text-always-sets-errn.patch
    * 0009-libacl-fix-SIGSEGV-of-getfacl-e-on-overly-long-group.patch
    * 0010-punt-debian-rpm-packaging-logic.patch
    * 0011-move-gettext-logic-into-misc.h.patch
    * 0012-test-make-running-parallel-out-of-tree-safe.patch
    * 0013-modernize-build-system.patch
    * 0014-po-regenerate-files-after-move.patch
    * 0015-build-drop-aclincludedir-use-pkgincludedir.patch
    * 0016-build-make-use-of-an-aux-dir-to-stow-away-helper-scr.patch
    * 0017-build-ship-a-pkgconfig-file-for-libacl.patch
    * 0018-read_acl_-comments-seq-rename-line-to-lineno.patch
    * 0019-read_acl_-comments-seq-switch-to-next_line.patch
    * 0020-telldir-return-value-and-seekdir-second-parameters-a.patch
    * 0021-mark-libmisc-funcs-as-hidden-so-they-are-not-exporte.patch
    * 0022-add-__acl_-prefixes-to-internal-symbols.patch
    * 0023-cp.test-Check-permissions-of-the-right-file.patch
    * 0024-libacl-acl_set_file-Remove-unnecesary-racy-check.patch
    * 0025-fix-compilation-with-latest-xattr-git.patch
    * 0026-getfacl-Fix-memory-leak.patch
    * 0027-Fix-the-display-block-nesting-in-acl.5.patch
    * 0028-setfacl-man-page-Minor-wording-improvements.patch

OBS-URL: https://build.opensuse.org/request/show/347209
OBS-URL: https://build.opensuse.org/package/show/Base:System/acl?expand=0&rev=43
2015-12-03 14:58:36 +00:00

51 lines
1.2 KiB
Diff

From 3f079d4e0512c9a241fb23c56a0421441c83621e Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@linbit.com>
Date: Wed, 23 Oct 2013 19:40:57 +0200
Subject: [PATCH 08/34] libacl: Make sure that acl_from_text() always sets
errno when it fails
The getpwnam() and getgrnam() functions may or may not set errno when
they fail. If they don't, set it to EINVAL so that errno is always set
when acl_from_text() fails.
---
libacl/acl_from_text.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libacl/acl_from_text.c b/libacl/acl_from_text.c
index 1e05322..c08bd3b 100644
--- a/libacl/acl_from_text.c
+++ b/libacl/acl_from_text.c
@@ -152,11 +152,14 @@ get_uid(const char *token, uid_t *uid_p)
if (get_id(token, uid_p) == 0)
return 0;
+ errno = 0;
passwd = getpwnam(token);
if (passwd) {
*uid_p = passwd->pw_uid;
return 0;
}
+ if (errno == 0)
+ errno = EINVAL;
return -1;
}
@@ -168,11 +171,14 @@ get_gid(const char *token, gid_t *gid_p)
if (get_id(token, (uid_t *)gid_p) == 0)
return 0;
+ errno = 0;
group = getgrnam(token);
if (group) {
*gid_p = group->gr_gid;
return 0;
}
+ if (errno == 0)
+ errno = EINVAL;
return -1;
}
--
2.5.2