summaryrefslogtreecommitdiff
path: root/include/stdio.h
diff options
context:
space:
mode:
authorjvoisin2023-08-20 20:50:31 +0200
committerjvoisin2023-08-20 21:09:05 +0200
commitbfbaa577f6fc46ebb965724e0f261e79e26ec9fb (patch)
tree65e422e5f76c71d250dcdb5bd1537ea4c560fae4 /include/stdio.h
parentd6afda7207b7a8a144923ab5813d8a0816813907 (diff)
Make use of __diagnose_as_builtin
Diffstat (limited to 'include/stdio.h')
-rw-r--r--include/stdio.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/stdio.h b/include/stdio.h
index b31299b..1d06dae 100644
--- a/include/stdio.h
+++ b/include/stdio.h
@@ -42,12 +42,14 @@ extern "C" {
42#undef vsprintf 42#undef vsprintf
43 43
44__access(read_only, 2) 44__access(read_only, 2)
45__diagnose_as_builtin(__builtin_fdopen, 1, 2)
45_FORTIFY_FN(fdopen) FILE *fdopen(int __f, const char* _FORTIFY_POS0 __m) 46_FORTIFY_FN(fdopen) FILE *fdopen(int __f, const char* _FORTIFY_POS0 __m)
46{ 47{
47 return __orig_fdopen(__f, __m); 48 return __orig_fdopen(__f, __m);
48} 49}
49 50
50__access(write_only, 1, 2) 51__access(write_only, 1, 2)
52__diagnose_as_builtin(__builtin_fgets, 1, 2, 3)
51_FORTIFY_FN(fgets) char *fgets(char * _FORTIFY_POS0 __s, int __n, FILE *__f) 53_FORTIFY_FN(fgets) char *fgets(char * _FORTIFY_POS0 __s, int __n, FILE *__f)
52{ 54{
53 size_t __b = __bos(__s, 0); 55 size_t __b = __bos(__s, 0);
@@ -58,6 +60,7 @@ _FORTIFY_FN(fgets) char *fgets(char * _FORTIFY_POS0 __s, int __n, FILE *__f)
58} 60}
59 61
60__malloc(malloc (fclose, 1)) 62__malloc(malloc (fclose, 1))
63__diagnose_as_builtin(__builtin_fmemopen, 1, 2, 3)
61_FORTIFY_FN(fmemopen) FILE *fmemopen(void* _FORTIFY_POS0 __b, size_t __s, const char* _FORTIFY_POS0 __m) 64_FORTIFY_FN(fmemopen) FILE *fmemopen(void* _FORTIFY_POS0 __b, size_t __s, const char* _FORTIFY_POS0 __m)
62{ 65{
63 return __orig_fmemopen(__b, __s, __m); 66 return __orig_fmemopen(__b, __s, __m);
@@ -66,12 +69,14 @@ _FORTIFY_FN(fmemopen) FILE *fmemopen(void* _FORTIFY_POS0 __b, size_t __s, const
66__access(read_only, 1) 69__access(read_only, 1)
67__access(read_only, 2) 70__access(read_only, 2)
68__malloc(malloc (fclose, 1)) 71__malloc(malloc (fclose, 1))
72__diagnose_as_builtin(__builtin_fopen, 1, 2)
69_FORTIFY_FN(fopen) FILE *fopen(const char* _FORTIFY_POS0 __p, const char* _FORTIFY_POS0 __m) 73_FORTIFY_FN(fopen) FILE *fopen(const char* _FORTIFY_POS0 __p, const char* _FORTIFY_POS0 __m)
70{ 74{
71 return __orig_fopen(__p, __m); 75 return __orig_fopen(__p, __m);
72} 76}
73 77
74__access(write_only, 1) 78__access(write_only, 1)
79__diagnose_as_builtin(__builtin_fread, 1, 2, 3, 4)
75_FORTIFY_FN(fread) size_t fread(void * _FORTIFY_POS0 __d, size_t __n, 80_FORTIFY_FN(fread) size_t fread(void * _FORTIFY_POS0 __d, size_t __n,
76 size_t __m, FILE *__f) 81 size_t __m, FILE *__f)
77{ 82{
@@ -85,6 +90,7 @@ _FORTIFY_FN(fread) size_t fread(void * _FORTIFY_POS0 __d, size_t __n,
85} 90}
86 91
87__access(read_only, 1) 92__access(read_only, 1)
93__diagnose_as_builtin(__builtin_fwrite, 1, 2, 3, 4)
88_FORTIFY_FN(fwrite) size_t fwrite(const void * _FORTIFY_POS0 __d, size_t __n, 94_FORTIFY_FN(fwrite) size_t fwrite(const void * _FORTIFY_POS0 __d, size_t __n,
89 size_t __m, FILE *__f) 95 size_t __m, FILE *__f)
90{ 96{
@@ -98,6 +104,7 @@ _FORTIFY_FN(fwrite) size_t fwrite(const void * _FORTIFY_POS0 __d, size_t __n,
98} 104}
99 105
100__malloc(malloc (pclose, 1)) 106__malloc(malloc (pclose, 1))
107__diagnose_as_builtin(__builtin_fwrite, 1, 2)
101_FORTIFY_FN(popen) FILE *popen(const char* _FORTIFY_POS0 __c, const char* _FORTIFY_POS0 __t) 108_FORTIFY_FN(popen) FILE *popen(const char* _FORTIFY_POS0 __c, const char* _FORTIFY_POS0 __t)
102{ 109{
103 return __orig_popen(__c, __t); 110 return __orig_popen(__c, __t);
@@ -113,6 +120,7 @@ _FORTIFY_FN(tmpfile) FILE *tmpfile(void)
113#endif 120#endif
114 121
115__access(read_write, 1, 2) 122__access(read_write, 1, 2)
123__diagnose_as_builtin(__builtin_vsnprintf, 1, 2, 3, 4)
116_FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, size_t __n, 124_FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, size_t __n,
117 const char *__f, __builtin_va_list __v) 125 const char *__f, __builtin_va_list __v)
118{ 126{
@@ -123,6 +131,7 @@ _FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, size_t __n,
123 return __orig_vsnprintf(__s, __n, __f, __v); 131 return __orig_vsnprintf(__s, __n, __f, __v);
124} 132}
125 133
134__diagnose_as_builtin(__builtin_vsprintf, 1, 2, 3)
126_FORTIFY_FN(vsprintf) int vsprintf(char * _FORTIFY_POS0 __s, const char *__f, 135_FORTIFY_FN(vsprintf) int vsprintf(char * _FORTIFY_POS0 __s, const char *__f,
127 __builtin_va_list __v) 136 __builtin_va_list __v)
128{ 137{