diff options
Diffstat (limited to 'include/stdlib.h')
| -rw-r--r-- | include/stdlib.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/include/stdlib.h b/include/stdlib.h index 5566ab4..2b67235 100644 --- a/include/stdlib.h +++ b/include/stdlib.h | |||
| @@ -31,20 +31,20 @@ extern "C" { | |||
| 31 | 31 | ||
| 32 | #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) | 32 | #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) |
| 33 | #undef realpath | 33 | #undef realpath |
| 34 | fortify_fn(realpath) char *realpath(const char *path, char *resolved) | 34 | _FORTIFY_FN(realpath) char *realpath(const char *__p, char *__r) |
| 35 | { | 35 | { |
| 36 | size_t bos; | 36 | size_t __b; |
| 37 | 37 | ||
| 38 | if (resolved) { | 38 | if (__r) { |
| 39 | #ifndef PATH_MAX | 39 | #ifndef PATH_MAX |
| 40 | #error PATH_MAX unset. A fortified realpath will not work. | 40 | #error PATH_MAX unset. A fortified realpath will not work. |
| 41 | #else | 41 | #else |
| 42 | bos = __builtin_object_size(resolved, 0); | 42 | __b = __builtin_object_size(__r, 0); |
| 43 | if (PATH_MAX > bos) | 43 | if (PATH_MAX > __b) |
| 44 | __builtin_trap(); | 44 | __builtin_trap(); |
| 45 | #endif | 45 | #endif |
| 46 | } | 46 | } |
| 47 | return __orig_realpath(path, resolved); | 47 | return __orig_realpath(__p, __r); |
| 48 | } | 48 | } |
| 49 | #endif | 49 | #endif |
| 50 | 50 | ||
