aboutsummaryrefslogtreecommitdiff
path: root/src/hash/sysvchecksum.h
diff options
context:
space:
mode:
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*);