freebsd-ports/databases/mariadb100-server/files/patch-mysys_stacktrace.c
Bernard Spil d9ebfe17ee MFH: r476674
databases/mariadb100-server: Security update to 10.0.36

Security:	909be51b-9b3b-11e8-add2-b499baebfeaf

Approved by:	ports-secteam (miwi)
2018-08-09 16:38:05 +00:00

49 lines
964 B
C

https://jira.mariadb.org/browse/MDEV-15961
--- mysys/stacktrace.c.orig 2018-01-27 18:40:37 UTC
+++ mysys/stacktrace.c
@@ -34,19 +34,19 @@
#include <execinfo.h>
#endif
+#ifdef __linux__
#define PTR_SANE(p) ((p) && (char*)(p) >= heap_start && (char*)(p) <= heap_end)
-
static char *heap_start;
-
-#ifdef HAVE_BSS_START
extern char *__bss_start;
-#endif
+#else
+#define PTR_SANE(p) (p)
+#endif /* __linux */
void my_init_stacktrace()
{
-#ifdef HAVE_BSS_START
+#ifdef __linux__
heap_start = (char*) &__bss_start;
-#endif
+#endif /* __linux__ */
}
#ifdef __linux__
@@ -149,15 +149,15 @@ static int safe_print_str(const char *ad
int my_safe_print_str(const char* val, int max_len)
{
+#ifdef __linux__
char *heap_end;
-#ifdef __linux__
// Try and make use of /proc filesystem to safely print memory contents.
if (!safe_print_str(val, max_len))
return 0;
-#endif
heap_end= (char*) sbrk(0);
+#endif
if (!PTR_SANE(val))
{