about summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2016-11-18 16:41:00 -0200
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2016-11-18 16:49:08 -0200
commite92bd6e362470aa0a79cfb19a512944f0761184b (patch)
treec890d3d7f2a9680c4f9d6ac9d9b7f1e7b7328784 /include
parentc73c7fc07c001f2a907a9c6d50c57d377ce0351f (diff)
downloadglibc-e92bd6e362470aa0a79cfb19a512944f0761184b.tar.gz
glibc-e92bd6e362470aa0a79cfb19a512944f0761184b.tar.xz
glibc-e92bd6e362470aa0a79cfb19a512944f0761184b.zip
Fix hurd __access_noerrno implementation.
This patch fixes some hurd bits from commit afcf3cd8eb that added the
__access_noerrno internal symbol.  It basically removes the nonrequired
__hurd_fail_noerrno (since the 'err' argument is ignored) and fixes
a typo for EACCES.

However, as stated on maillist [1] this __access_noerrno may still be
unsafe to run during initialization of tunables on the Hurd.  The
access_common calls __hurd_file_name_lookup, which calls
__hurd_file_name_lookup_retry, which can set errno.

[1] https://sourceware.org/ml/libc-alpha/2016-11/msg00646.html
Diffstat (limited to 'include')
-rw-r--r--include/unistd.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/unistd.h b/include/unistd.h
index 6144f411aa..16d68a1505 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -183,7 +183,8 @@ extern int __getlogin_r_loginuid (char *name, size_t namesize)
 
 #  if IS_IN (rtld) || !defined SHARED
 /* __access variant that does not set errno.  Used in very early initialization
-   code in libc.a and ld.so.  */
+   code in libc.a and ld.so.  It follows access return semantics (zero for
+   sucess otherwise a value different than 0).  */
 extern __typeof (__access) __access_noerrno attribute_hidden;
 #  endif