summaryrefslogtreecommitdiff
path: root/include (follow)
AgeCommit message (Collapse)Author
2023-12-27Improve __fh_overlap implementationjvoisin
2023-12-27Don't check for overlapping in strncpy/stpncpy for nowjvoisin
They check overlap across the whole range of the given length, but the given length is not what will actually be copied, rather it's the maximum length (if src is shorter, only length of src will be copied). This triggers false positives and traps where it shouldn't (e.g. in ICU tests). Reported-by: q66
2023-12-18fix typo for __builtin_memcpypsykose
2023-12-16Disable str(r)chr hardeningq66
It's UB to subtract null pointers, which these potentially may be. It also makes python test suite fail.
2023-12-15Rename some macros to be more namespace-friendlyq66
2023-12-15Fix missing } for extern "C" when using clangq66
2023-12-15Move wctomb to stdlib.h and disable it for nowq66
2023-12-15Guard some conditional stdio APIs with the right macrosq66
Fixes https://github.com/jvoisin/fortify-headers/issues/34
2023-12-15Do not use static inline for C++ to avoid ODR violationsq66
Fixes https://github.com/jvoisin/fortify-headers/issues/31
2023-12-15Add missing include in select.hq66
2023-12-15Remove superfluous includesjvoisin
This should fix #32
2023-12-07Add qsortjvoisin
2023-12-07Add a global test to ensure that all headers are compilingjvoisin
2023-12-06Work around an erroneous `-Wformat-nonliteral` bug in gccjvoisin
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110834 Reported-by: ksperling-apple
2023-11-16Add hardening for select()jvoisin
This is unlikely to be used, since fd_set is usually manipulated by macros, but it doesn't hurt to add a simple comparison.
2023-11-01Add support for FD_ISSETjvoisin
2023-10-16Add a check about redefined macrosjvoisin
2023-10-01Add vfprintf`jvoisin
2023-10-01Add `fprintf`jvoisin
2023-09-30Add `vprintf`jvoisin
2023-09-30Fix a typojvoisin
2023-09-30Add `strlen`jvoisin
2023-09-29Make use of the native _chk variants for realjvoisin
2023-09-28Add `printf` hardeningjvoisin
2023-09-27Add support for more builtin compiler provided _chk variantsjvoisin
2023-09-27Add an option to make use of compiler-provided _chk builtinsjvoisin
2023-09-22Add more __diagnose_as_builtin annotationsjvoisin
2023-09-21Properly enable diagnose_as_builtin attributejvoisin
2023-09-20Add tests for compile-time errorsjvoisin
2023-09-20Replace a strlen+condition with strnlenjvoisin
2023-09-11Factorize overlap checks into a macrojvoisin
2023-09-11Add a warning for _FORTIFY_SOURCE>3jvoisin
2023-09-11Add a warning if realpath is called with path set to NULLjvoisin
2023-09-11Add the warn_unused_result attribute to alloc-related functionsjvoisin
2023-08-22Clean up some includesjvoisin
- Remove a superfluous `#if defined(__has_builtin)` since it's already accounted for in include/fortify-headers.h - Replace `_FORTIFY_FD_POS0` with the already existing `_FORTIFY_POS0` - Factorise some duplicate code into a macro
2023-08-22Increase portabilityjvoisin
If the compiler doesn't know about `__builtin_trap`, use `abort` instead.
2023-08-22Add hardening for pwritejvoisin
2023-08-21Harden umaskjvoisin
2023-08-21Make use of __diagnose_ifjvoisin
2023-08-21Remove some todo in __bmo's implementationjvoisin
2023-08-21Add tests for fgetws and mbsrtowcsjvoisin
2023-08-20Add more __access annotations in stdio.hjvoisin
2023-08-20Add two __format annotationsjvoisin
2023-08-20Make use of __diagnose_as_builtinjvoisin
2023-08-20Use pass_dynamic_object_size only for FORTIFY_SOURCE > 2jvoisin
2023-08-20Make use of pass_dynamic_object_size when availablejvoisin
2023-08-20Fix clang buildjvoisin
- s/CLFAGS/CFLAGS/ - provide paths to local includes - sprinkle more __pass_object_size__ - remove a problematic test
2023-08-20Add hardening for strrchrjvoisin
2023-08-20Add hardening for strchrjvoisin
2023-08-20Remove memrchr hardening for nowjvoisin
It doesn't play nice with gcc.