From 6cfdd67cf076d79220c5a046d9d588b1c25f8fa8 Mon Sep 17 00:00:00 2001 From: IonutParau Date: Tue, 8 Jul 2025 23:38:09 +0200 Subject: [PATCH] forgot to add a file --- src/data.zig | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 src/data.zig diff --git a/src/data.zig b/src/data.zig new file mode 100644 index 0000000..e125d84 --- /dev/null +++ b/src/data.zig @@ -0,0 +1,20 @@ +const std = @import("std"); +const c = @cImport({ + @cInclude("neonucleus.h"); +}); + +pub export fn nn_data_crc32(inBuf: [*]const u8, len: usize, outBuf: [*]u8) void { + var digest = std.hash.Crc32.hash(inBuf[0..len]); + digest = std.mem.nativeToLittle(u32, digest); + + const digestBuf: [4]u8 = @bitCast(digest); + std.mem.copyForwards(u8, outBuf[0..4], &digestBuf); +} + +pub export fn nn_data_md5(inBuf: [*]const u8, len: usize, outBuf: [*]u8) void { + std.crypto.hash.Md5.hash(inBuf[0..len], @ptrCast(outBuf), .{}); +} + +pub export fn nn_data_sha256(inBuf: [*]const u8, len: usize, outBuf: [*]u8) void { + std.crypto.hash.sha2.Sha256.hash(inBuf[0..len], @ptrCast(outBuf), .{}); +}