opnsense-src/include
Kyle Evans c10d567ea0 include: de-macro __ssp_overlap(), improve semantics and checking
Switch away from pointer arithmetic to provide more obvious semantics
for checking overlap on pointer ranges.  This lets us remove some casts
that need not exist and removes some possible fragility in its use.

While we're here, check for overflow just in case; sometimes we use a
caller-supplied size if __builtin_object_size(3) can't deduce the buffer
size, and we should fail the check if the size is nonsensical for the
provided buffers.

Reviewed by:	markj
Sponsored by:	Klara, Inc.
Sponsored by:	Stormshield
2024-07-13 00:16:23 -05:00
..
arm arm64 lib32: prepare arm64 headers to redirect to arm 2023-07-25 18:59:26 -05:00
arpa include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
gssapi Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
i386 include/i386: fix release builds 2022-06-13 21:37:34 +01:00
protocols dumprestore.h: Fix typos in source code comments 2024-02-27 13:49:21 +01:00
rpc sccs: Manual changes 2023-11-26 22:23:58 -07:00
rpcsvc include: Remove repeated words 2024-04-11 11:53:36 -06:00
ssp include: de-macro __ssp_overlap(), improve semantics and checking 2024-07-13 00:16:23 -05:00
xlocale Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
_ctype.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
a.out.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
ar.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
assert.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
bitstring.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
byteswap.h byteswap.h: Add a glibc/linux compatible byteswap.h 2023-01-20 16:37:39 -07:00
complex.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
cpio.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
ctype.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
db.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
dirent.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
dlfcn.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
elf-hints.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
elf.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
endian.h endian.h: Define uint{16,32,64}_t 2024-05-06 10:43:14 -06:00
err.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
fmtmsg.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
fnmatch.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
fstab.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
fts.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
ftw.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
getopt.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
glob.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
grp.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
gssapi.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
hesiod.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
iconv.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
ieeefp.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
ifaddrs.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
inttypes.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
iso646.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
kenv.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
langinfo.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
libgen.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
limits.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
link.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
locale.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
Makefile Import _FORTIFY_SOURCE implementation from NetBSD 2024-05-13 00:23:49 -05:00
Makefile.depend dirdeps: Update/fix Makefile.depend* for toolchain 2023-11-26 20:50:13 -05:00
Makefile.inc pkgbase: Move headers and libs out of runtime and utilities 2023-09-12 13:22:21 +01:00
malloc.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
malloc_np.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
memory.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
mk-osreldate.sh Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
monetary.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
mpool.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
mqueue.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
ndbm.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
netconfig.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
netdb.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
nl_types.h Revert "nl_types.h: explicitly include cdefs.h" 2024-01-24 22:50:49 -05:00
nlist.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
nss.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
nsswitch.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
paths.h Remove gbde support from swapon(8) 2024-05-07 07:21:46 +00:00
printf.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
proc_service.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
pthread.h libthr: add pthread_sigqueue(3) 2024-04-23 19:51:22 +03:00
pthread_np.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
pwd.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
ranlib.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
readpassphrase.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
regex.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
res_update.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
resolv.h resolv: Add a required include to resolv.h 2024-01-08 20:52:08 +09:00
runetype.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
sched.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
search.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
semaphore.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
setjmp.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
signal.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
spawn.h posix_spawn(3): add POSIX_SPAWN_DISABLE_ASLR_NP 2024-03-04 03:00:38 +02:00
stab.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
stdalign.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
stdbool.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
stdckdint.h include: Implement N2867. 2023-09-07 06:40:14 +00:00
stddef.h stddef.h/stdlib.h: Remove unused rune_t 2024-06-02 19:41:22 +01:00
stdio.h ssp: appease -Wgnu-statement-expression-from-macro-expansion 2024-05-14 18:22:18 -05:00
stdlib.h stdlib: Support compiling with tinyc by omitting compat qsort code 2024-06-21 09:53:07 -06:00
stdnoreturn.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
string.h ssp: appease -Wgnu-statement-expression-from-macro-expansion 2024-05-14 18:22:18 -05:00
stringlist.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
strings.h ssp: appease -Wgnu-statement-expression-from-macro-expansion 2024-05-14 18:22:18 -05:00
sysexits.h sysexits: Tidy deprecated header and manual 2024-05-09 20:50:48 -06:00
tar.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
termios.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
tgmath.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
time.h timezone: Move to the XSI/POSIX definition for timezone. 2024-03-11 22:19:31 -06:00
timeconv.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
timers.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
ttyent.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
uchar.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
ulimit.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
unistd.h ssp: appease -Wgnu-statement-expression-from-macro-expansion 2024-05-14 18:22:18 -05:00
utime.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
utmpx.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
uuid.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
varargs.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
wchar.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
wctype.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
wordexp.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
xlocale.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00