/usr/include/x86_64-linux-gnu/bits
NameSizeModeActions
platform/-0755rm
types/-0755rm
a.out.h2680644editdlrm
argp-ldbl.h10100644editdlrm
atomic_wide_counter.h12830644editdlrm
byteswap.h24500644editdlrm
cmathcalls.h41390644editdlrm
confname.h238280644editdlrm
cpu-set.h45160644editdlrm
dirent.h17710644editdlrm
dirent_ext.h12750644editdlrm
dlfcn.h25210644editdlrm
dl_find_object.h11190644editdlrm
elfclass.h4260644editdlrm
endian.h19050644editdlrm
endianness.h2730644editdlrm
environments.h37910644editdlrm
epoll.h10710644editdlrm
err-ldbl.h11480644editdlrm
errno.h14260644editdlrm
error-ldbl.h10120644editdlrm
error.h26840644editdlrm
eventfd.h11290644editdlrm
fcntl-linux.h149670644editdlrm
fcntl.h22460644editdlrm
fcntl2.h55750644editdlrm
fenv.h33700644editdlrm
floatn-common.h97650644editdlrm
floatn.h43730644editdlrm
flt-eval-method.h12150644editdlrm
fp-fast.h12160644editdlrm
fp-logb.h10120644editdlrm
getopt_core.h36670644editdlrm
getopt_ext.h30380644editdlrm
getopt_posix.h18100644editdlrm
hwcap.h9720644editdlrm
in.h95960644editdlrm
indirect-return.h15910644editdlrm
initspin.h250644editdlrm
inotify.h10800644editdlrm
ioctl-types.h24560644editdlrm
ioctls.h44780644editdlrm
ipc-perm.h17450644editdlrm
ipc.h15230644editdlrm
ipctypes.h11760644editdlrm
iscanonical.h24790644editdlrm
libc-header-start.h42860644editdlrm
libm-simd-decl-stubs.h89330644editdlrm
link.h43230644editdlrm
link_lavcurrent.h11040644editdlrm
locale.h13680644editdlrm
local_lim.h31760644editdlrm
long-double.h9700644editdlrm
math-vector.h54020644editdlrm
mathcalls-helper-functions.h18630644editdlrm
mathcalls-narrow.h15150644editdlrm
mathcalls.h145610644editdlrm
mathdef.h8910644editdlrm
mman-linux.h50860644editdlrm
mman-map-flags-generic.h19970644editdlrm
mman-shared.h28410644editdlrm
mman.h13090644editdlrm
monetary-ldbl.h10470644editdlrm
mqueue.h12460644editdlrm
mqueue2.h21510644editdlrm
msq.h17930644editdlrm
netdb.h12640644editdlrm
param.h14330644editdlrm
poll.h20760644editdlrm
poll2.h26660644editdlrm
posix1_lim.h51890644editdlrm
posix2_lim.h28670644editdlrm
posix_opt.h59130644editdlrm
printf-ldbl.h9920644editdlrm
procfs-extra.h9630644editdlrm
procfs-id.h11480644editdlrm
procfs-prregset.h10500644editdlrm
procfs.h20250644editdlrm
pthreadtypes-arch.h18380644editdlrm
pthreadtypes.h30720644editdlrm
pthread_stack_min-dynamic.h12140644editdlrm
pthread_stack_min.h9510644editdlrm
ptrace-shared.h43020644editdlrm
resource.h63080644editdlrm
rseq.h12480644editdlrm
sched.h39470644editdlrm
select.h15050644editdlrm
select2.h14380644editdlrm
sem.h22590644editdlrm
semaphore.h12150644editdlrm
setjmp.h12870644editdlrm
setjmp2.h17050644editdlrm
shm.h27660644editdlrm
shmlba.h11060644editdlrm
sigaction.h29350644editdlrm
sigcontext.h42660644editdlrm
sigevent-consts.h14710644editdlrm
siginfo-arch.h7290644editdlrm
siginfo-consts-arch.h2040644editdlrm
siginfo-consts.h70360644editdlrm
signalfd.h10670644editdlrm
signal_ext.h12850644editdlrm
signum-arch.h25800644editdlrm
signum-generic.h33130644editdlrm
sigstack.h11680644editdlrm
sigstksz.h12830644editdlrm
sigthread.h16920644editdlrm
sockaddr.h15140644editdlrm
socket-constants.h24970644editdlrm
socket.h123540644editdlrm
socket2.h30370644editdlrm
socket_type.h22160644editdlrm
ss_flags.h11880644editdlrm
stab.def90400644editdlrm
stat.h22310644editdlrm
statfs.h19170644editdlrm
statvfs.h34230644editdlrm
statx-generic.h21870644editdlrm
statx.h14000644editdlrm
stdint-intn.h10370644editdlrm
stdint-uintn.h10490644editdlrm
stdio-ldbl.h34810644editdlrm
stdio.h55990644editdlrm
stdio2.h129420644editdlrm
stdio_lim.h12130644editdlrm
stdlib-bsearch.h15570644editdlrm
stdlib-float.h11150644editdlrm
stdlib-ldbl.h20200644editdlrm
stdlib.h54600644editdlrm
strings_fortified.h12400644editdlrm
string_fortified.h43470644editdlrm
struct_mutex.h18100644editdlrm
struct_rwlock.h20270644editdlrm
struct_stat.h61900644editdlrm
struct_stat_time64_helper.h26060644editdlrm
syscall.h455530644editdlrm
syslog-ldbl.h12040644editdlrm
syslog-path.h10610644editdlrm
syslog.h16850644editdlrm
sysmacros.h29530644editdlrm
termios-baud.h18240644editdlrm
termios-c_cc.h12790644editdlrm
termios-c_cflag.h12300644editdlrm
termios-c_iflag.h19360644editdlrm
termios-c_lflag.h25940644editdlrm
termios-c_oflag.h28220644editdlrm
termios-misc.h9690644editdlrm
termios-struct.h14330644editdlrm
termios-tcflow.h10620644editdlrm
termios.h21680644editdlrm
thread-shared-types.h39120644editdlrm
time.h32960644editdlrm
time64.h13400644editdlrm
timerfd.h11030644editdlrm
timesize.h11090644editdlrm
timex.h61980644editdlrm
types.h88060644editdlrm
typesizes.h37370644editdlrm
uintn-identity.h15420644editdlrm
uio-ext.h19230644editdlrm
uio_lim.h13850644editdlrm
unistd.h116530644editdlrm
unistd_ext.h20350644editdlrm
utmp.h40670644editdlrm
utmpx.h35780644editdlrm
utsname.h12130644editdlrm
waitflags.h16970644editdlrm
waitstatus.h22870644editdlrm
wchar-ldbl.h30830644editdlrm
wchar.h19060644editdlrm
wchar2.h182220644editdlrm
wctype-wchar.h63070644editdlrm
wordsize.h4420644editdlrm
xopen_lim.h38580644editdlrm
Edit: /usr/include/x86_64-linux-gnu/bits/stdio2.h (12942B)
/* Checking macros for stdio functions. Copyright (C) 2004-2022 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see . */ #ifndef _BITS_STDIO2_H #define _BITS_STDIO2_H 1 #ifndef _STDIO_H # error "Never include directly; use instead." #endif extern int __sprintf_chk (char *__restrict __s, int __flag, size_t __slen, const char *__restrict __format, ...) __THROW __attr_access ((__write_only__, 1, 3)); extern int __vsprintf_chk (char *__restrict __s, int __flag, size_t __slen, const char *__restrict __format, __gnuc_va_list __ap) __THROW __attr_access ((__write_only__, 1, 3)); #ifdef __va_arg_pack __fortify_function int __NTH (sprintf (char *__restrict __s, const char *__restrict __fmt, ...)) { return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, __glibc_objsize (__s), __fmt, __va_arg_pack ()); } #elif !defined __cplusplus # define sprintf(str, ...) \ __builtin___sprintf_chk (str, __USE_FORTIFY_LEVEL - 1, \ __glibc_objsize (str), __VA_ARGS__) #endif __fortify_function int __NTH (vsprintf (char *__restrict __s, const char *__restrict __fmt, __gnuc_va_list __ap)) { return __builtin___vsprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, __glibc_objsize (__s), __fmt, __ap); } #if defined __USE_ISOC99 || defined __USE_UNIX98 extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag, size_t __slen, const char *__restrict __format, ...) __THROW __attr_access ((__write_only__, 1, 2)); extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag, size_t __slen, const char *__restrict __format, __gnuc_va_list __ap) __THROW; # ifdef __va_arg_pack __fortify_function int __NTH (snprintf (char *__restrict __s, size_t __n, const char *__restrict __fmt, ...)) { return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, __glibc_objsize (__s), __fmt, __va_arg_pack ()); } # elif !defined __cplusplus # define snprintf(str, len, ...) \ __builtin___snprintf_chk (str, len, __USE_FORTIFY_LEVEL - 1, \ __glibc_objsize (str), __VA_ARGS__) # endif __fortify_function int __NTH (vsnprintf (char *__restrict __s, size_t __n, const char *__restrict __fmt, __gnuc_va_list __ap)) { return __builtin___vsnprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1, __glibc_objsize (__s), __fmt, __ap); } #endif #if __USE_FORTIFY_LEVEL > 1 extern int __fprintf_chk (FILE *__restrict __stream, int __flag, const char *__restrict __format, ...); extern int __printf_chk (int __flag, const char *__restrict __format, ...); extern int __vfprintf_chk (FILE *__restrict __stream, int __flag, const char *__restrict __format, __gnuc_va_list __ap); extern int __vprintf_chk (int __flag, const char *__restrict __format, __gnuc_va_list __ap); # ifdef __va_arg_pack __fortify_function int fprintf (FILE *__restrict __stream, const char *__restrict __fmt, ...) { return __fprintf_chk (__stream, __USE_FORTIFY_LEVEL - 1, __fmt, __va_arg_pack ()); } __fortify_function int printf (const char *__restrict __fmt, ...) { return __printf_chk (__USE_FORTIFY_LEVEL - 1, __fmt, __va_arg_pack ()); } # elif !defined __cplusplus # define printf(...) \ __printf_chk (__USE_FORTIFY_LEVEL - 1, __VA_ARGS__) # define fprintf(stream, ...) \ __fprintf_chk (stream, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__) # endif __fortify_function int vprintf (const char *__restrict __fmt, __gnuc_va_list __ap) { #ifdef __USE_EXTERN_INLINES return __vfprintf_chk (stdout, __USE_FORTIFY_LEVEL - 1, __fmt, __ap); #else return __vprintf_chk (__USE_FORTIFY_LEVEL - 1, __fmt, __ap); #endif } __fortify_function int vfprintf (FILE *__restrict __stream, const char *__restrict __fmt, __gnuc_va_list __ap) { return __vfprintf_chk (__stream, __USE_FORTIFY_LEVEL - 1, __fmt, __ap); } # ifdef __USE_XOPEN2K8 extern int __dprintf_chk (int __fd, int __flag, const char *__restrict __fmt, ...) __attribute__ ((__format__ (__printf__, 3, 4))); extern int __vdprintf_chk (int __fd, int __flag, const char *__restrict __fmt, __gnuc_va_list __arg) __attribute__ ((__format__ (__printf__, 3, 0))); # ifdef __va_arg_pack __fortify_function int dprintf (int __fd, const char *__restrict __fmt, ...) { return __dprintf_chk (__fd, __USE_FORTIFY_LEVEL - 1, __fmt, __va_arg_pack ()); } # elif !defined __cplusplus # define dprintf(fd, ...) \ __dprintf_chk (fd, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__) # endif __fortify_function int vdprintf (int __fd, const char *__restrict __fmt, __gnuc_va_list __ap) { return __vdprintf_chk (__fd, __USE_FORTIFY_LEVEL - 1, __fmt, __ap); } # endif # ifdef __USE_GNU extern int __asprintf_chk (char **__restrict __ptr, int __flag, const char *__restrict __fmt, ...) __THROW __attribute__ ((__format__ (__printf__, 3, 4))) __wur; extern int __vasprintf_chk (char **__restrict __ptr, int __flag, const char *__restrict __fmt, __gnuc_va_list __arg) __THROW __attribute__ ((__format__ (__printf__, 3, 0))) __wur; extern int __obstack_printf_chk (struct obstack *__restrict __obstack, int __flag, const char *__restrict __format, ...) __THROW __attribute__ ((__format__ (__printf__, 3, 4))); extern int __obstack_vprintf_chk (struct obstack *__restrict __obstack, int __flag, const char *__restrict __format, __gnuc_va_list __args) __THROW __attribute__ ((__format__ (__printf__, 3, 0))); # ifdef __va_arg_pack __fortify_function int __NTH (asprintf (char **__restrict __ptr, const char *__restrict __fmt, ...)) { return __asprintf_chk (__ptr, __USE_FORTIFY_LEVEL - 1, __fmt, __va_arg_pack ()); } __fortify_function int __NTH (__asprintf (char **__restrict __ptr, const char *__restrict __fmt, ...)) { return __asprintf_chk (__ptr, __USE_FORTIFY_LEVEL - 1, __fmt, __va_arg_pack ()); } __fortify_function int __NTH (obstack_printf (struct obstack *__restrict __obstack, const char *__restrict __fmt, ...)) { return __obstack_printf_chk (__obstack, __USE_FORTIFY_LEVEL - 1, __fmt, __va_arg_pack ()); } # elif !defined __cplusplus # define asprintf(ptr, ...) \ __asprintf_chk (ptr, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__) # define __asprintf(ptr, ...) \ __asprintf_chk (ptr, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__) # define obstack_printf(obstack, ...) \ __obstack_printf_chk (obstack, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__) # endif __fortify_function int __NTH (vasprintf (char **__restrict __ptr, const char *__restrict __fmt, __gnuc_va_list __ap)) { return __vasprintf_chk (__ptr, __USE_FORTIFY_LEVEL - 1, __fmt, __ap); } __fortify_function int __NTH (obstack_vprintf (struct obstack *__restrict __obstack, const char *__restrict __fmt, __gnuc_va_list __ap)) { return __obstack_vprintf_chk (__obstack, __USE_FORTIFY_LEVEL - 1, __fmt, __ap); } # endif #endif #if __GLIBC_USE (DEPRECATED_GETS) extern char *__gets_chk (char *__str, size_t) __wur; extern char *__REDIRECT (__gets_warn, (char *__str), gets) __wur __warnattr ("please use fgets or getline instead, gets can't " "specify buffer size"); __fortify_function __wur char * gets (char *__str) { if (__glibc_objsize (__str) != (size_t) -1) return __gets_chk (__str, __glibc_objsize (__str)); return __gets_warn (__str); } #endif extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __wur __attr_access ((__write_only__, 1, 3)); extern char *__REDIRECT (__fgets_alias, (char *__restrict __s, int __n, FILE *__restrict __stream), fgets) __wur __attr_access ((__write_only__, 1, 2)); extern char *__REDIRECT (__fgets_chk_warn, (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream), __fgets_chk) __wur __warnattr ("fgets called with bigger size than length " "of destination buffer"); __fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) char * fgets (char *__restrict __s, int __n, FILE *__restrict __stream) { size_t sz = __glibc_objsize (__s); if (__glibc_safe_or_unknown_len (__n, sizeof (char), sz)) return __fgets_alias (__s, __n, __stream); if (__glibc_unsafe_len (__n, sizeof (char), sz)) return __fgets_chk_warn (__s, sz, __n, __stream); return __fgets_chk (__s, sz, __n, __stream); } extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __wur; extern size_t __REDIRECT (__fread_alias, (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream), fread) __wur; extern size_t __REDIRECT (__fread_chk_warn, (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream), __fread_chk) __wur __warnattr ("fread called with bigger size * nmemb than length " "of destination buffer"); __fortify_function __wur size_t fread (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) { size_t sz = __glibc_objsize0 (__ptr); if (__glibc_safe_or_unknown_len (__n, __size, sz)) return __fread_alias (__ptr, __size, __n, __stream); if (__glibc_unsafe_len (__n, __size, sz)) return __fread_chk_warn (__ptr, sz, __size, __n, __stream); return __fread_chk (__ptr, sz, __size, __n, __stream); } #ifdef __USE_GNU extern char *__fgets_unlocked_chk (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __wur __attr_access ((__write_only__, 1, 3)); extern char *__REDIRECT (__fgets_unlocked_alias, (char *__restrict __s, int __n, FILE *__restrict __stream), fgets_unlocked) __wur __attr_access ((__write_only__, 1, 2)); extern char *__REDIRECT (__fgets_unlocked_chk_warn, (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream), __fgets_unlocked_chk) __wur __warnattr ("fgets_unlocked called with bigger size than length " "of destination buffer"); __fortify_function __wur __fortified_attr_access (__write_only__, 1, 2) char * fgets_unlocked (char *__restrict __s, int __n, FILE *__restrict __stream) { size_t sz = __glibc_objsize (__s); if (__glibc_safe_or_unknown_len (__n, sizeof (char), sz)) return __fgets_unlocked_alias (__s, __n, __stream); if (__glibc_unsafe_len (__n, sizeof (char), sz)) return __fgets_unlocked_chk_warn (__s, sz, __n, __stream); return __fgets_unlocked_chk (__s, sz, __n, __stream); } #endif #ifdef __USE_MISC # undef fread_unlocked extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __wur; extern size_t __REDIRECT (__fread_unlocked_alias, (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream), fread_unlocked) __wur; extern size_t __REDIRECT (__fread_unlocked_chk_warn, (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream), __fread_unlocked_chk) __wur __warnattr ("fread_unlocked called with bigger size * nmemb than " "length of destination buffer"); __fortify_function __wur size_t fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) { size_t sz = __glibc_objsize0 (__ptr); if (__glibc_safe_or_unknown_len (__n, __size, sz)) { # ifdef __USE_EXTERN_INLINES if (__builtin_constant_p (__size) && __builtin_constant_p (__n) && (__size | __n) < (((size_t) 1) << (8 * sizeof (size_t) / 2)) && __size * __n <= 8) { size_t __cnt = __size * __n; char *__cptr = (char *) __ptr; if (__cnt == 0) return 0; for (; __cnt > 0; --__cnt) { int __c = getc_unlocked (__stream); if (__c == EOF) break; *__cptr++ = __c; } return (__cptr - (char *) __ptr) / __size; } # endif return __fread_unlocked_alias (__ptr, __size, __n, __stream); } if (__glibc_unsafe_len (__n, __size, sz)) return __fread_unlocked_chk_warn (__ptr, sz, __size, __n, __stream); return __fread_unlocked_chk (__ptr, sz, __size, __n, __stream); } #endif #endif /* bits/stdio2.h. */