aboutsummaryrefslogtreecommitdiff
path: root/src/hash/sysvchecksum.h
diff options
context:
space:
mode:
authorame <[email protected]>2024-04-04 10:06:53 -0500
committerame <[email protected]>2024-04-04 10:06:53 -0500
commitdae9e34168b56a399b2b1e04e657e322b9c6f803 (patch)
tree174eef159441750b71e720d6639b9b221502fd1c /src/hash/sysvchecksum.h
parent35c37ef1221d5860731435137059dc4533adff42 (diff)
all basic hash funcs
Diffstat (limited to 'src/hash/sysvchecksum.h')
-rw-r--r--src/hash/sysvchecksum.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/hash/sysvchecksum.h b/src/hash/sysvchecksum.h
index e45cff8..3414f7f 100644
--- a/src/hash/sysvchecksum.h
+++ b/src/hash/sysvchecksum.h
@@ -1,13 +1,16 @@
#include "../lua.h"
#include <stdint.h>
-/**
- * calculates a sysv checksum of (len) bytes
- *
- * @param {uint8_t*} input bytes
- * @param {size_t} input length
- * @return {uint32_t} 32 bit checksum
-*/
-uint32_t i_sysvchecksum(uint8_t*, size_t);
+struct sysvchecksum_hash {
+ uint32_t check;
+};
+
+struct sysvchecksum_hash sysvchecksum_init();
+void sysvchecksum_update(uint8_t*, size_t, struct sysvchecksum_hash*);
+uint32_t sysvchecksum_final(struct sysvchecksum_hash*);
+uint32_t sysvchecksum(uint8_t*, size_t);
int l_sysvchecksum(lua_State*);
+int l_sysvchecksum_init(lua_State*);
+int l_sysvchecksum_update(lua_State*);
+int l_sysvchecksum_final(lua_State*);