summaryrefslogtreecommitdiff
path: root/include/unistd.h
diff options
context:
space:
mode:
authorDaniel Kolesa2022-10-26 00:30:00 +0200
committerjvoisin2025-10-31 22:16:21 +0100
commitf46714c2f9eb13c12c8218f1b7c045182041fdc9 (patch)
treeb1285c57cd600790ce86890927504e59f1cbd7d7 /include/unistd.h
parent8915dc13de44fed3a076a9fd51eb1ab2b5502d7b (diff)
add initial clang support
Co-Authored-By: jvoisin <julien.voisin@dustri.org>
Diffstat (limited to 'include/unistd.h')
-rw-r--r--include/unistd.h30
1 files changed, 18 insertions, 12 deletions
diff --git a/include/unistd.h b/include/unistd.h
index 818adaa..3e5c040 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -1,5 +1,6 @@
1/* 1/*
2 * Copyright (C) 2015-2016 Dimitris Papastamos <sin@2f30.org> 2 * Copyright (C) 2015-2016 Dimitris Papastamos <sin@2f30.org>
3 * Copyright (C) 2022 q66 <q66@chimera-linux.org>
3 * 4 *
4 * Permission to use, copy, modify, and/or distribute this software for any 5 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted. 6 * purpose with or without fee is hereby granted.
@@ -40,7 +41,7 @@ extern "C" {
40#undef ttyname_r 41#undef ttyname_r
41#undef write 42#undef write
42 43
43_FORTIFY_FN(confstr) size_t confstr(int __n, char *__s, size_t __l) 44_FORTIFY_FN(confstr) size_t confstr(int __n, char * _FORTIFY_POS0 __s, size_t __l)
44{ 45{
45 size_t __b = __bos(__s, 0); 46 size_t __b = __bos(__s, 0);
46 size_t __r = __orig_confstr(__n, __s, __b > __l ? __l : __b); 47 size_t __r = __orig_confstr(__n, __s, __b > __l ? __l : __b);
@@ -50,7 +51,7 @@ _FORTIFY_FN(confstr) size_t confstr(int __n, char *__s, size_t __l)
50 return __r; 51 return __r;
51} 52}
52 53
53_FORTIFY_FN(getcwd) char *getcwd(char *__s, size_t __l) 54_FORTIFY_FN(getcwd) char *getcwd(char * _FORTIFY_POS0 __s, size_t __l)
54{ 55{
55 size_t __b = __bos(__s, 0); 56 size_t __b = __bos(__s, 0);
56 57
@@ -61,7 +62,7 @@ _FORTIFY_FN(getcwd) char *getcwd(char *__s, size_t __l)
61 62
62#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) 63#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
63#undef getdomainname 64#undef getdomainname
64_FORTIFY_FN(getdomainname) int getdomainname(char *__s, size_t __l) 65_FORTIFY_FN(getdomainname) int getdomainname(char * _FORTIFY_POS0 __s, size_t __l)
65{ 66{
66 size_t __b = __bos(__s, 0); 67 size_t __b = __bos(__s, 0);
67 68
@@ -71,7 +72,7 @@ _FORTIFY_FN(getdomainname) int getdomainname(char *__s, size_t __l)
71} 72}
72#endif 73#endif
73 74
74_FORTIFY_FN(getgroups) int getgroups(int __l, gid_t *__s) 75_FORTIFY_FN(getgroups) int getgroups(int __l, gid_t * _FORTIFY_POS0 __s)
75{ 76{
76 size_t __b = __bos(__s, 0); 77 size_t __b = __bos(__s, 0);
77 78
@@ -80,7 +81,7 @@ _FORTIFY_FN(getgroups) int getgroups(int __l, gid_t *__s)
80 return __orig_getgroups(__l, __s); 81 return __orig_getgroups(__l, __s);
81} 82}
82 83
83_FORTIFY_FN(gethostname) int gethostname(char *__s, size_t __l) 84_FORTIFY_FN(gethostname) int gethostname(char * _FORTIFY_POS0 __s, size_t __l)
84{ 85{
85 size_t __b = __bos(__s, 0); 86 size_t __b = __bos(__s, 0);
86 87
@@ -89,7 +90,7 @@ _FORTIFY_FN(gethostname) int gethostname(char *__s, size_t __l)
89 return __orig_gethostname(__s, __l); 90 return __orig_gethostname(__s, __l);
90} 91}
91 92
92_FORTIFY_FN(getlogin_r) int getlogin_r(char *__s, size_t __l) 93_FORTIFY_FN(getlogin_r) int getlogin_r(char * _FORTIFY_POS0 __s, size_t __l)
93{ 94{
94 size_t __b = __bos(__s, 0); 95 size_t __b = __bos(__s, 0);
95 96
@@ -98,7 +99,8 @@ _FORTIFY_FN(getlogin_r) int getlogin_r(char *__s, size_t __l)
98 return __orig_getlogin_r(__s, __l); 99 return __orig_getlogin_r(__s, __l);
99} 100}
100 101
101_FORTIFY_FN(pread) ssize_t pread(int __f, void *__s, size_t __n, off_t __o) 102_FORTIFY_FN(pread) ssize_t pread(int __f, void * _FORTIFY_POS0 __s,
103 size_t __n, off_t __o)
102{ 104{
103 size_t __b = __bos(__s, 0); 105 size_t __b = __bos(__s, 0);
104 106
@@ -107,7 +109,7 @@ _FORTIFY_FN(pread) ssize_t pread(int __f, void *__s, size_t __n, off_t __o)
107 return __orig_pread(__f, __s, __n, __o); 109 return __orig_pread(__f, __s, __n, __o);
108} 110}
109 111
110_FORTIFY_FN(read) ssize_t read(int __f, void *__s, size_t __n) 112_FORTIFY_FN(read) ssize_t read(int __f, void * _FORTIFY_POS0 __s, size_t __n)
111{ 113{
112 size_t __b = __bos(__s, 0); 114 size_t __b = __bos(__s, 0);
113 115
@@ -116,7 +118,8 @@ _FORTIFY_FN(read) ssize_t read(int __f, void *__s, size_t __n)
116 return __orig_read(__f, __s, __n); 118 return __orig_read(__f, __s, __n);
117} 119}
118 120
119_FORTIFY_FN(readlink) ssize_t readlink(const char *__p, char *__s, size_t __n) 121_FORTIFY_FN(readlink) ssize_t readlink(const char *__p,
122 char * _FORTIFY_POS0 __s, size_t __n)
120{ 123{
121 size_t __b = __bos(__s, 0); 124 size_t __b = __bos(__s, 0);
122 125
@@ -125,7 +128,8 @@ _FORTIFY_FN(readlink) ssize_t readlink(const char *__p, char *__s, size_t __n)
125 return __orig_readlink(__p, __s, __n); 128 return __orig_readlink(__p, __s, __n);
126} 129}
127 130
128_FORTIFY_FN(readlinkat) ssize_t readlinkat(int __f, const char *__p, char *__s, size_t __n) 131_FORTIFY_FN(readlinkat) ssize_t readlinkat(int __f, const char *__p,
132 char * _FORTIFY_POS0 __s, size_t __n)
129{ 133{
130 size_t __b = __bos(__s, 0); 134 size_t __b = __bos(__s, 0);
131 135
@@ -134,7 +138,8 @@ _FORTIFY_FN(readlinkat) ssize_t readlinkat(int __f, const char *__p, char *__s,
134 return __orig_readlinkat(__f, __p, __s, __n); 138 return __orig_readlinkat(__f, __p, __s, __n);
135} 139}
136 140
137_FORTIFY_FN(ttyname_r) int ttyname_r(int __f, char *__s, size_t __n) 141_FORTIFY_FN(ttyname_r) int ttyname_r(int __f, char * _FORTIFY_POS0 __s,
142 size_t __n)
138{ 143{
139 size_t __b = __bos(__s, 0); 144 size_t __b = __bos(__s, 0);
140 145
@@ -143,7 +148,8 @@ _FORTIFY_FN(ttyname_r) int ttyname_r(int __f, char *__s, size_t __n)
143 return __orig_ttyname_r(__f, __s, __n); 148 return __orig_ttyname_r(__f, __s, __n);
144} 149}
145 150
146_FORTIFY_FN(write) ssize_t write(int __f, const void *__s, size_t __n) 151_FORTIFY_FN(write) ssize_t write(int __f, const void * _FORTIFY_POS0 __s,
152 size_t __n)
147{ 153{
148 size_t __b = __bos(__s, 0); 154 size_t __b = __bos(__s, 0);
149 155