summaryrefslogtreecommitdiff
path: root/libinterp/keyring.c
diff options
context:
space:
mode:
authorforsyth <forsyth@vitanuova.com>2010-02-03 20:48:47 +0000
committerforsyth <forsyth@vitanuova.com>2010-02-03 20:48:47 +0000
commitf1dcfd03b4648fd6c0221d14436b391cd368beac (patch)
tree23466fba69e89b4ba065c150ac33a096f09e0b3f /libinterp/keyring.c
parentad7de9e8db6963f4e715c21ee894011b62d0c984 (diff)
20100203-2048
Diffstat (limited to 'libinterp/keyring.c')
-rw-r--r--libinterp/keyring.c56
1 files changed, 56 insertions, 0 deletions
diff --git a/libinterp/keyring.c b/libinterp/keyring.c
index 56971cf4..7bc5b5d3 100644
--- a/libinterp/keyring.c
+++ b/libinterp/keyring.c
@@ -1263,6 +1263,62 @@ Keyring_sha1(void *fp)
}
void
+Keyring_sha224(void *fp)
+{
+ F_Keyring_sha224 *f;
+ void *r;
+
+ f = fp;
+ r = *f->ret;
+ *f->ret = H;
+ destroy(r);
+
+ *f->ret = keyring_digest_x(f->buf, f->n, f->digest, SHA224dlen, f->state, sha224);
+}
+
+void
+Keyring_sha256(void *fp)
+{
+ F_Keyring_sha256 *f;
+ void *r;
+
+ f = fp;
+ r = *f->ret;
+ *f->ret = H;
+ destroy(r);
+
+ *f->ret = keyring_digest_x(f->buf, f->n, f->digest, SHA256dlen, f->state, sha256);
+}
+
+void
+Keyring_sha384(void *fp)
+{
+ F_Keyring_sha384 *f;
+ void *r;
+
+ f = fp;
+ r = *f->ret;
+ *f->ret = H;
+ destroy(r);
+
+ *f->ret = keyring_digest_x(f->buf, f->n, f->digest, SHA384dlen, f->state, sha384);
+}
+
+void
+Keyring_sha512(void *fp)
+{
+ F_Keyring_sha512 *f;
+ void *r;
+
+ f = fp;
+ r = *f->ret;
+ *f->ret = H;
+ destroy(r);
+
+ *f->ret = keyring_digest_x(f->buf, f->n, f->digest, SHA512dlen, f->state, sha512);
+}
+
+void
Keyring_md5(void *fp)
{
F_Keyring_md5 *f;