Commit b875f79dd8

Al Hoang <3811822-hoanga@users.noreply.gitlab.com>
2021-11-01 03:25:20
add fork case for haiku
1 parent 406baf4
Changed files (1)
lib
std
lib/std/crypto/tlcsprng.zig
@@ -40,6 +40,7 @@ const maybe_have_wipe_on_fork = builtin.os.isAtLeast(.linux, .{
     .major = 4,
     .minor = 14,
 }) orelse true;
+const is_haiku = builtin.os.tag == .haiku;
 
 const Context = struct {
     init_state: enum(u8) { uninitialized = 0, initialized, failed },
@@ -72,7 +73,7 @@ fn tlsCsprngFill(_: *c_void, buffer: []u8) void {
 
     if (wipe_mem.len == 0) {
         // Not initialized yet.
-        if (want_fork_safety and maybe_have_wipe_on_fork) {
+        if (want_fork_safety and maybe_have_wipe_on_fork or is_haiku) {
             // Allocate a per-process page, madvise operates with page
             // granularity.
             wipe_mem = os.mmap(