86045f2d65
Upstream commit: 33adeaa3e2b9143c38884bc5aa65ded222ed274e - nptl: Avoid setxid deadlock with blocked signals in thread exit [BZ #28361] - Use support_open_dev_null_range io/tst-closefrom, misc/tst-close_range, and posix/tst-spawn5 (BZ #28260) - support: Add support_open_dev_null_range - nptl: Fix type of pthread_mutexattr_getrobust_np, pthread_mutexattr_setrobust_np (bug 28036) - nptl: pthread_kill needs to return ESRCH for old programs (bug 19193)
45 lines
1.8 KiB
Diff
45 lines
1.8 KiB
Diff
commit 433ec4f14a5753c7689c83c20c9972915c53c204
|
|
Author: Aurelien Jarno <aurelien@aurel32.net>
|
|
Date: Fri Sep 10 19:39:35 2021 +0200
|
|
|
|
posix: Fix attribute access mode on getcwd [BZ #27476]
|
|
|
|
There is a GNU extension that allows to call getcwd(NULL, >0). It is
|
|
described in the documentation, but also directly in the unistd.h
|
|
header, just above the declaration.
|
|
|
|
Therefore the attribute access mode added in commit 06febd8c6705
|
|
is not correct. Drop it.
|
|
|
|
diff --git a/posix/bits/unistd.h b/posix/bits/unistd.h
|
|
index f0831386c7ddb574..622adeb2b28ed298 100644
|
|
--- a/posix/bits/unistd.h
|
|
+++ b/posix/bits/unistd.h
|
|
@@ -199,10 +199,9 @@ __NTH (readlinkat (int __fd, const char *__restrict __path,
|
|
#endif
|
|
|
|
extern char *__getcwd_chk (char *__buf, size_t __size, size_t __buflen)
|
|
- __THROW __wur __attr_access ((__write_only__, 1, 2));
|
|
+ __THROW __wur;
|
|
extern char *__REDIRECT_NTH (__getcwd_alias,
|
|
- (char *__buf, size_t __size), getcwd)
|
|
- __wur __attr_access ((__write_only__, 1, 2));
|
|
+ (char *__buf, size_t __size), getcwd) __wur;
|
|
extern char *__REDIRECT_NTH (__getcwd_chk_warn,
|
|
(char *__buf, size_t __size, size_t __buflen),
|
|
__getcwd_chk)
|
|
diff --git a/posix/unistd.h b/posix/unistd.h
|
|
index 3dca65732fdde52f..8224c5fbc956306f 100644
|
|
--- a/posix/unistd.h
|
|
+++ b/posix/unistd.h
|
|
@@ -528,8 +528,7 @@ extern int fchdir (int __fd) __THROW __wur;
|
|
an array is allocated with `malloc'; the array is SIZE
|
|
bytes long, unless SIZE == 0, in which case it is as
|
|
big as necessary. */
|
|
-extern char *getcwd (char *__buf, size_t __size) __THROW __wur
|
|
- __attr_access ((__write_only__, 1, 2));
|
|
+extern char *getcwd (char *__buf, size_t __size) __THROW __wur;
|
|
|
|
#ifdef __USE_GNU
|
|
/* Return a malloc'd string containing the current directory name.
|