From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2206) id 58CF0385840E; Thu, 10 Mar 2022 00:27:45 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 58CF0385840E Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Siddhesh Poyarekar To: glibc-cvs@sourceware.org Subject: [glibc] Add some missing access function attributes X-Act-Checkin: glibc X-Git-Author: Steve Grubb X-Git-Refname: refs/heads/master X-Git-Oldrev: edc696a73a7cb07b1aa68792a845a98d036ee7eb X-Git-Newrev: 590f5992b66a0f105eabf2eae35e8704cbf9a59e Message-Id: <20220310002745.58CF0385840E@sourceware.org> Date: Thu, 10 Mar 2022 00:27:45 +0000 (GMT) X-BeenThere: glibc-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Glibc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Mar 2022 00:27:45 -0000 https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=590f5992b66a0f105eabf2eae35e8704cbf9a59e commit 590f5992b66a0f105eabf2eae35e8704cbf9a59e Author: Steve Grubb Date: Thu Mar 10 05:56:33 2022 +0530 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 Diff: --- misc/sys/xattr.h | 22 +++++++++++++--------- stdlib/sys/random.h | 6 ++++-- 2 files changed, 17 insertions(+), 11 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. */ diff --git a/stdlib/sys/random.h b/stdlib/sys/random.h index ea5b98d166..8c2ef9ca81 100644 --- a/stdlib/sys/random.h +++ b/stdlib/sys/random.h @@ -32,11 +32,13 @@ __BEGIN_DECLS /* Write LENGTH bytes of randomness starting at BUFFER. Return the number of bytes written, or -1 on error. */ ssize_t getrandom (void *__buffer, size_t __length, - unsigned int __flags) __wur; + unsigned int __flags) __wur + __attr_access ((__write_only__, 1, 2)); /* Write LENGTH bytes of randomness starting at BUFFER. Return 0 on success or -1 on error. */ -int getentropy (void *__buffer, size_t __length) __wur; +int getentropy (void *__buffer, size_t __length) __wur + __attr_access ((__write_only__, 1, 2)); __END_DECLS