summaryrefslogtreecommitdiffstats
path: root/main/fortify-headers/0001-fix-realpath-when-stdlib.h-is-included-before-limits.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2015-05-29 12:25:57 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2015-05-29 12:26:04 +0000
commit2e13d49d9449cb2fab62471594f3980307bf4cef (patch)
tree9addaa1b1015b38853a3a888784895e44f153f6e /main/fortify-headers/0001-fix-realpath-when-stdlib.h-is-included-before-limits.patch
parent14ac979cf1fa72d638e104e5daee9b44ed5269c5 (diff)
downloadaports-2e13d49d9449cb2fab62471594f3980307bf4cef.tar.bz2
aports-2e13d49d9449cb2fab62471594f3980307bf4cef.tar.xz
main/fortify-headers: upgrade to 0.5
Diffstat (limited to 'main/fortify-headers/0001-fix-realpath-when-stdlib.h-is-included-before-limits.patch')
-rw-r--r--main/fortify-headers/0001-fix-realpath-when-stdlib.h-is-included-before-limits.patch56
1 files changed, 0 insertions, 56 deletions
diff --git a/main/fortify-headers/0001-fix-realpath-when-stdlib.h-is-included-before-limits.patch b/main/fortify-headers/0001-fix-realpath-when-stdlib.h-is-included-before-limits.patch
deleted file mode 100644
index 17d0624ee..000000000
--- a/main/fortify-headers/0001-fix-realpath-when-stdlib.h-is-included-before-limits.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 31d62b60c5b4f1baa795537da898a83e39be9dd1 Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Thu, 7 May 2015 14:41:36 +0200
-Subject: [PATCH fortify-headers] fix realpath when stdlib.h is included before
- limits.h
-To: sin@2f30.org
-
-If program includes stdlib.h before limits.h without _XOPEN_SOURCE,
-_GNU_SOURCE or _BSD_SOURCE explicitly set, then will it always trigger
-the trap with musl libc.
-
-This is becase stdlib.h will pull in features.h which will set
-_GNU_SOURCE. This means that the fortify stdlib.h will not include
-limits.h but it will still trigger the fortified realpath(), but without
-PATH_MAX set.
-
-We fix this by including system stdlib.h before testing if limits.h
-should be included.
-
-Since PATH_MAX is known at compile time we can also error at compile
-time, instead of compiling a broken realpath().
----
- include/stdlib.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/include/stdlib.h b/include/stdlib.h
-index 22f1f2b..6629652 100644
---- a/include/stdlib.h
-+++ b/include/stdlib.h
-@@ -1,12 +1,12 @@
- #ifndef _FORTIFY_STDLIB_H
- #define _FORTIFY_STDLIB_H
-
-+#include_next <stdlib.h>
-+
- #if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
- #include_next <limits.h>
- #endif
-
--#include_next <stdlib.h>
--
- #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 && defined(__OPTIMIZE__) && __OPTIMIZE__ > 0
-
- #ifdef __cplusplus
-@@ -23,7 +23,7 @@ char *realpath(const char *path, char *resolved)
-
- if (resolved) {
- #ifndef PATH_MAX
-- __builtin_trap();
-+# error PATH_MAX unset. A fortified realpath will not work.
- #else
- bos = __builtin_object_size(resolved, 0);
- if (PATH_MAX > bos)
---
-2.4.0
-