aboutsummaryrefslogtreecommitdiff
path: root/src/lib.h
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2023-12-31 08:49:16 -0300
committerEuAndreh <eu@euandre.org>2025-06-04 20:11:50 -0300
commitbf54d3bc7be151ee3de15e3cc9fabea68369008e (patch)
tree6ee57bf4e6d57f3aaba9155a3088323a446d5df8 /src/lib.h
parentAdd complete "Makefile" for standard packaging (diff)
downloadsiphash-bf54d3bc7be151ee3de15e3cc9fabea68369008e.tar.gz
siphash-bf54d3bc7be151ee3de15e3cc9fabea68369008e.tar.xz
Rewrite code, but keeping the exact same semantic and behaviourHEADmain
- assert that the generated `siphash.o` code is identical to the original code, available at `tests/assert-identical.sh`; - remove unneeded `#define`s; - rewrite code with the correct indentation, spacing and formatting; - use C99 constructs over C89 (for loop variable declarations inside the parentheses); - fix the public API.
Diffstat (limited to 'src/lib.h')
-rw-r--r--src/lib.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/lib.h b/src/lib.h
new file mode 100644
index 0000000..ae16870
--- /dev/null
+++ b/src/lib.h
@@ -0,0 +1,15 @@
+enum {
+ SIPHASH_KEY_LENGTH = 16U,
+ SIPHASH_OUTPUT_LENGTH = 16U,
+};
+
+void
+siphash(
+ const u8 key[SIPHASH_KEY_LENGTH],
+ const size_t inlen,
+ const void *const restrict in,
+ u8 out[SIPHASH_OUTPUT_LENGTH]
+);
+
+int
+siphash_main(int argc, char *argv[]);