diff options
author | Martin Sebor <msebor@redhat.com> | 2020-05-04 11:21:50 -0600 |
---|---|---|
committer | Martin Sebor <msebor@redhat.com> | 2020-05-04 11:21:50 -0600 |
commit | 06febd8c6705c816b2f32ee7aa1f4c0184b05248 (patch) | |
tree | 71586b8485abc1c6b220cb6aba340e76286b3087 /libio/stdio.h | |
parent | 38c67888183db1b6ac21f2f9681b8a384987dfe8 (diff) | |
download | glibc-06febd8c6705c816b2f32ee7aa1f4c0184b05248.tar glibc-06febd8c6705c816b2f32ee7aa1f4c0184b05248.tar.gz glibc-06febd8c6705c816b2f32ee7aa1f4c0184b05248.tar.bz2 glibc-06febd8c6705c816b2f32ee7aa1f4c0184b05248.zip |
improve out-of-bounds checking with GCC 10 attribute access [BZ #25219]
Adds the access attribute newly introduced in GCC 10 to the subset of
function declarations that are already covered by _FORTIFY_SOURCE and
that don't have corresponding GCC built-in equivalents.
Reviewed-by: DJ Delorie <dj@redhat.com>
Diffstat (limited to 'libio/stdio.h')
-rw-r--r-- | libio/stdio.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libio/stdio.h b/libio/stdio.h index 21ef36ae70..07f2d9afb5 100644 --- a/libio/stdio.h +++ b/libio/stdio.h @@ -566,7 +566,7 @@ extern int putw (int __w, FILE *__stream); This function is a possible cancellation point and therefore not marked with __THROW. */ extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) - __wur; + __wur __attr_access ((__write_only__, 1, 2)); #if __GLIBC_USE (DEPRECATED_GETS) /* Get a newline-terminated string from stdin, removing the newline. @@ -589,7 +589,8 @@ extern char *gets (char *__s) __wur __attribute_deprecated__; or due to the implementation it is a cancellation point and therefore not marked with __THROW. */ extern char *fgets_unlocked (char *__restrict __s, int __n, - FILE *__restrict __stream) __wur; + FILE *__restrict __stream) __wur + __attr_access ((__write_only__, 1, 2)); #endif |