]> jfr.im git - irc/quakenet/newserv.git/blobdiff - lib/hmac.h
Update README.
[irc/quakenet/newserv.git] / lib / hmac.h
index f074cd9ff22f9121d10bc45f2f700c341be55eb8..e73a4def53ef2c42f445b82c92a7f8a051a73a6a 100644 (file)
@@ -1,10 +1,31 @@
 #include "sha2.h"
+#include "sha1.h"
+#include "md5.h"
 
 typedef struct {
   SHA256_CTX outer, inner;
 } hmacsha256;
 
+typedef struct {
+  SHA1_CTX outer, inner;
+} hmacsha1;
+
+typedef struct {
+  MD5Context outer, inner;
+} hmacmd5;
+
 void hmacsha256_final(hmacsha256 *c, unsigned char *digest);
 void hmacsha256_update(hmacsha256 *c, unsigned char *message, int messagelen);
 void hmacsha256_init(hmacsha256 *c, unsigned char *key, int keylen);
 
+void hmacsha1_final(hmacsha1 *c, unsigned char *digest);
+void hmacsha1_update(hmacsha1 *c, unsigned char *message, int messagelen);
+void hmacsha1_init(hmacsha1 *c, unsigned char *key, int keylen);
+
+void hmacmd5_final(hmacmd5 *c, unsigned char *digest);
+void hmacmd5_update(hmacmd5 *c, unsigned char *message, int messagelen);
+void hmacmd5_init(hmacmd5 *c, unsigned char *key, int keylen);
+
+char *hmac_printhex(unsigned char *data, char *out, size_t len);
+
+int hmac_strcmp(const char *a, const char *b);