about summary refs log tree commit diff
path: root/misc
diff options
context:
space:
mode:
authorSteve Grubb <sgrubb@redhat.com>2022-03-10 05:56:33 +0530
committerSiddhesh Poyarekar <siddhesh@sourceware.org>2022-03-10 05:56:33 +0530
commit590f5992b66a0f105eabf2eae35e8704cbf9a59e (patch)
tree9eb2407a20f0af1723058451a94ef13d2003cf21 /misc
parentedc696a73a7cb07b1aa68792a845a98d036ee7eb (diff)
downloadglibc-590f5992b66a0f105eabf2eae35e8704cbf9a59e.tar.gz
glibc-590f5992b66a0f105eabf2eae35e8704cbf9a59e.tar.xz
glibc-590f5992b66a0f105eabf2eae35e8704cbf9a59e.zip
Add some missing access function attributes
This patch adds some missing access function attributes to getrandom /
getentropy and several functions in sys/xattr.h

Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
Diffstat (limited to 'misc')
-rw-r--r--misc/sys/xattr.h22
1 files changed, 13 insertions, 9 deletions
diff --git a/misc/sys/xattr.h b/misc/sys/xattr.h
index 2d53a38268..bf8f35c514 100644
--- a/misc/sys/xattr.h
+++ b/misc/sys/xattr.h
@@ -40,52 +40,56 @@ enum
    is SIZE bytes long).  Return 0 on success, -1 for errors.  */
 extern int setxattr (const char *__path, const char *__name,
 		     const void *__value, size_t __size, int __flags)
-	__THROW;
+	__THROW __attr_access ((__read_only__, 3, 4));
 
 /* Set the attribute NAME of the file pointed to by PATH to VALUE (which is
    SIZE bytes long), not following symlinks for the last pathname component.
    Return 0 on success, -1 for errors.  */
 extern int lsetxattr (const char *__path, const char *__name,
 		      const void *__value, size_t __size, int __flags)
-	__THROW;
+	__THROW __attr_access ((__read_only__, 3, 4));
 
 /* Set the attribute NAME of the file descriptor FD to VALUE (which is SIZE
    bytes long).  Return 0 on success, -1 for errors.  */
 extern int fsetxattr (int __fd, const char *__name, const void *__value,
-		      size_t __size, int __flags) __THROW;
+		      size_t __size, int __flags)
+	__THROW __attr_access ((__read_only__, 3, 4));
 
 /* Get the attribute NAME of the file pointed to by PATH to VALUE (which is
    SIZE bytes long).  Return 0 on success, -1 for errors.  */
 extern ssize_t getxattr (const char *__path, const char *__name,
-			 void *__value, size_t __size) __THROW;
+			 void *__value, size_t __size)
+	__THROW __attr_access ((__write_only__, 3, 4));
 
 /* Get the attribute NAME of the file pointed to by PATH to VALUE (which is
    SIZE bytes long), not following symlinks for the last pathname component.
    Return 0 on success, -1 for errors.  */
 extern ssize_t lgetxattr (const char *__path, const char *__name,
-			  void *__value, size_t __size) __THROW;
+			  void *__value, size_t __size)
+	__THROW __attr_access ((__write_only__, 3, 4));
 
 /* Get the attribute NAME of the file descriptor FD to VALUE (which is SIZE
    bytes long).  Return 0 on success, -1 for errors.  */
 extern ssize_t fgetxattr (int __fd, const char *__name, void *__value,
-			  size_t __size) __THROW;
+			  size_t __size)
+	__THROW __attr_access ((__write_only__, 3, 4));
 
 /* List attributes of the file pointed to by PATH into the user-supplied
    buffer LIST (which is SIZE bytes big).  Return 0 on success, -1 for
    errors.  */
 extern ssize_t listxattr (const char *__path, char *__list, size_t __size)
-	__THROW;
+	__THROW __attr_access ((__write_only__, 2, 3));
 
 /* List attributes of the file pointed to by PATH into the user-supplied
    buffer LIST (which is SIZE bytes big), not following symlinks for the
    last pathname component.  Return 0 on success, -1 for errors.  */
 extern ssize_t llistxattr (const char *__path, char *__list, size_t __size)
-	__THROW;
+	__THROW __attr_access ((__write_only__, 2, 3));
 
 /* List attributes of the file descriptor FD into the user-supplied buffer
    LIST (which is SIZE bytes big).  Return 0 on success, -1 for errors.  */
 extern ssize_t flistxattr (int __fd, char *__list, size_t __size)
-	__THROW;
+	__THROW __attr_access ((__write_only__, 2, 3));
 
 /* Remove the attribute NAME from the file pointed to by PATH.  Return 0
    on success, -1 for errors.  */