aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-02-25 18:21:44 -0800
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-02-25 18:23:01 -0800
commit8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35 (patch)
treea46cd8cc292091e9c52e26d7e00dc3c737380e95
parent4149b9554325106cab4a0057e192cc3c1986d503 (diff)
downloadbun-8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35.tar.gz
bun-8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35.tar.zst
bun-8ba65a4f0bbd38b5c6a677d93d1fa13d0042bb35.zip
Fixes #2194 (most likely)
-rw-r--r--src/boringssl.zig19
1 files changed, 8 insertions, 11 deletions
diff --git a/src/boringssl.zig b/src/boringssl.zig
index a6e767428..de5277a98 100644
--- a/src/boringssl.zig
+++ b/src/boringssl.zig
@@ -15,11 +15,8 @@ pub fn load() void {
boring.OpenSSL_add_all_algorithms();
if (!builtin.is_test) {
- comptime {
- @export(bun.Mimalloc.mi_malloc, .{ .name = "OPENSSL_memory_alloc", .linkage = .Strong });
- @export(bun.Mimalloc.mi_usable_size, .{ .name = "OPENSSL_memory_get_size", .linkage = .Strong });
- }
-
+ std.mem.doNotOptimizeAway(&OPENSSL_memory_alloc);
+ std.mem.doNotOptimizeAway(&OPENSSL_memory_get_size);
std.mem.doNotOptimizeAway(&OPENSSL_memory_free);
}
}
@@ -62,9 +59,9 @@ pub fn initClient() *boring.SSL {
// into the process, including pthreads locks. Failing to meet these constraints
// may result in deadlocks, crashes, or memory corruption.
-// export fn OPENSSL_memory_alloc(size: usize) ?*anyopaque {
-// return
-// }
+export fn OPENSSL_memory_alloc(size: usize) ?*anyopaque {
+ return bun.Mimalloc.mi_malloc(size);
+}
// BoringSSL always expects memory to be zero'd
export fn OPENSSL_memory_free(ptr: *anyopaque) void {
@@ -72,9 +69,9 @@ export fn OPENSSL_memory_free(ptr: *anyopaque) void {
bun.Mimalloc.mi_free(ptr);
}
-// export fn OPENSSL_memory_get_size(ptr: ?*const anyopaque) usize {
-// return bun.Mimalloc.mi_usable_size(ptr);
-// }
+export fn OPENSSL_memory_get_size(ptr: ?*const anyopaque) usize {
+ return bun.Mimalloc.mi_usable_size(ptr);
+}
test "load" {
load();