summaryrefslogtreecommitdiff
path: root/arm9/lib/NitroSDK/include/MATH_dgt.h
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/lib/NitroSDK/include/MATH_dgt.h')
-rw-r--r--arm9/lib/NitroSDK/include/MATH_dgt.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/arm9/lib/NitroSDK/include/MATH_dgt.h b/arm9/lib/NitroSDK/include/MATH_dgt.h
new file mode 100644
index 00000000..140b4f98
--- /dev/null
+++ b/arm9/lib/NitroSDK/include/MATH_dgt.h
@@ -0,0 +1,45 @@
+#ifndef GUARD_MATH_DGT_H
+#define GUARD_MATH_DGT_H
+
+#include "dgt.h"
+#include "nitro/types.h"
+
+typedef struct DGTHash1Context MATHMD5Context;
+typedef struct DGTHash2Context MATHSHA1Context;
+
+static inline void MATH_MD5Init(MATHMD5Context *context) {
+ DGT_Hash1Reset(context);
+}
+
+static inline void MATH_MD5Update(MATHMD5Context *context, const void *input, u32 length) {
+ DGT_Hash1SetSource(context, (u8*)input, length);
+}
+
+static inline void MATH_MD5GetHash(MATHMD5Context *context, void *digest) {
+ DGT_Hash1GetDigest_R((u8*)digest, context);
+}
+
+static inline void MATH_MD5GetDigest(MATHMD5Context *context, void *digest) {
+ MATH_MD5GetHash(context, digest);
+}
+
+static inline void MATH_SHA1Init(MATHSHA1Context *context) {
+ DGT_Hash2Reset(context);
+}
+
+static inline void MATH_SHA1Update(MATHSHA1Context *context, const void *input, u32 length) {
+ DGT_Hash2SetSource(context, (u8*)input, length);
+}
+
+static inline void MATH_SHA1GetHash(MATHSHA1Context *context, void *digest) {
+ DGT_Hash2GetDigest(context, (u8*)digest);
+}
+
+static inline void MATH_SHA1GetDigest(MATHSHA1Context *context, void *digest) {
+ MATH_SHA1GetHash(context, digest);
+}
+
+void MATH_CalcMD5(void *digest, const void *data, u32 dataLength);
+void MATH_CalcSHA1(void *digest, const void *data, u32 dataLength);
+
+#endif