Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Update copyright dates with scripts/update-copyrights | 2024-01-01 | 1 | -1/+1 | |
| | |||||
* | libio: Add nonnull attribute for most FILE * arguments in stdio.h | 2023-09-26 | 1 | -6/+9 | |
| | | | | | | | | | | | | | | | | | | | | | | During the review of a GCC analyzer test case, we found most stdio functions accepting a FILE * argument expect it to be nonnull and just segfault when the argument is NULL. Add nonnull attribute for them. fflush and fflush_unlocked are well defined when __stream is NULL so they are not touched. For fputs, fgets, fread, fwrite, fprintf, vfprintf, and their unlocked version, if __stream is empty but there is nothing to read or write, they did not segfault. But the standard disallow __stream to be empty here, so nonnull attribute is also added for them. Note that this may blow up some old code already subtly broken. Also add __nonnull for _chk variants and __fortify_function versions for them. Signed-off-by: Xi Ruoyao <xry111@xry111.site> Reviewed-by: Alejandro Colomar <alx@kernel.org> Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org> | ||||
* | libio/bits/stdio2-decl.h: Avoid PLT entries with _FORTIFY_SOURCE | 2023-07-05 | 1 | -1/+1 | |
| | | | | | | | The change is meant to avoid unwanted PLT entry for the fgets_unlocked routine when _FORTIFY_SOURCE is set. Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org> | ||||
* | libio/bits/stdio2.h: Clearly separate declaration from definitions | 2023-07-05 | 1 | -0/+49 | |
| | | | | | | | | Move declarations from libio/bits/stdio.h to existing libio/bits/stdio2-decl.h. This will enable future use of __REDIRECT_FORTIFY in place of some __REDIRECT. Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org> | ||||
* | Update copyright dates with scripts/update-copyrights | 2023-01-06 | 1 | -1/+1 | |
| | |||||
* | Apply asm redirections in stdio.h before first use [BZ #27087] | 2022-07-14 | 1 | -0/+111 | |
Compilers may not be able to apply asm redirections to functions after these functions are used for the first time, e.g. clang 13. Fix [BZ #27087] by applying all long double-related asm redirections before using functions in bits/stdio.h. However, as these asm redirections depend on the declarations provided by libio/bits/stdio2.h, this header was split in 2: - libio/bits/stdio2-decl.h contains all function declarations; - libio/bits/stdio2.h remains with the remaining contents, including redirections. This also adds the access attribute to __vsnprintf_chk that was missing. Tested with build-many-glibcs.py. Reviewed-by: Paul E. Murphy <murphyp@linux.ibm.com> |