diff options
| author | Daniel Kolesa | 2022-10-26 00:30:00 +0200 |
|---|---|---|
| committer | jvoisin | 2025-10-31 22:16:21 +0100 |
| commit | f46714c2f9eb13c12c8218f1b7c045182041fdc9 (patch) | |
| tree | b1285c57cd600790ce86890927504e59f1cbd7d7 /include/unistd.h | |
| parent | 8915dc13de44fed3a076a9fd51eb1ab2b5502d7b (diff) | |
add initial clang support
Co-Authored-By: jvoisin <julien.voisin@dustri.org>
Diffstat (limited to 'include/unistd.h')
| -rw-r--r-- | include/unistd.h | 30 |
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 | ||
