aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/ticket200665
-rw-r--r--src/test/test-memwipe.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/changes/ticket20066 b/changes/ticket20066
new file mode 100644
index 0000000000..970793d4ee
--- /dev/null
+++ b/changes/ticket20066
@@ -0,0 +1,5 @@
+ o Minor features (testing):
+ - Disable memory protections on OpenBSD when testing memwipe().
+ The test deliberately invokes undefined behaviour which the
+ protections interfere with. Patch from "rubiate". Closes ticket
+ 20066.
diff --git a/src/test/test-memwipe.c b/src/test/test-memwipe.c
index 2d40283fb1..8187c45461 100644
--- a/src/test/test-memwipe.c
+++ b/src/test/test-memwipe.c
@@ -35,6 +35,12 @@ const char *s = NULL;
sum += (unsigned char)buf[i]; \
}
+#ifdef __OpenBSD__
+/* Disable some of OpenBSD's malloc protections for this test. This helps
+ * us do bad things, such as access freed buffers, without crashing. */
+const char *malloc_options="sufjj";
+#endif
+
static unsigned
fill_a_buffer_memset(void)
{