diff options
author | Stef Walter <stef@memberwebs.com> | 2004-08-12 00:49:18 +0000 |
---|---|---|
committer | Stef Walter <stef@memberwebs.com> | 2004-08-12 00:49:18 +0000 |
commit | c44a74e52a8b227857f28289a91d126b7edc959c (patch) | |
tree | 60905e29cdd6de0e1ceefeb16b21170a8926ea52 /common | |
parent | e73ec5a0bd0c052d3ce8b621381fc5f58014aa2b (diff) |
Added convenience functions for doing sha1 with strings.
Diffstat (limited to 'common')
-rw-r--r-- | common/sha1.c | 15 | ||||
-rw-r--r-- | common/sha1.h | 2 |
2 files changed, 17 insertions, 0 deletions
diff --git a/common/sha1.c b/common/sha1.c index 0666837..d2005b9 100644 --- a/common/sha1.c +++ b/common/sha1.c @@ -161,4 +161,19 @@ void sha1_final(uchar digest[20], sha1_ctx_t* context) #endif } +void +sha1_string(unsigned char digest[SHA1_LEN], const char* str) +{ + sha1_ctx_t sha1; + sha1_init(&sha1); + sha1_update(&sha1, str, strlen(str)); + sha1_final(digest, &sha1); +} +int +sha1_strcmp(unsigned char digest[SHA1_LEN], const char* str) +{ + unsigned char other[SHA1_LEN]; + sha1_string(other, str); + return memcmp(digest, other, SHA1_LEN); +} diff --git a/common/sha1.h b/common/sha1.h index 37f734f..208b7f2 100644 --- a/common/sha1.h +++ b/common/sha1.h @@ -22,6 +22,8 @@ sha1_ctx_t; void sha1_init(sha1_ctx_t* context); void sha1_update(sha1_ctx_t* context, const void* data, unsigned int len); void sha1_final(unsigned char digest[SHA1_LEN], sha1_ctx_t* context); +void sha1_string(unsigned char digest[SHA1_LEN], const char* str); +int sha1_strcmp(unsigned char digest[SHA1_LEN], const char* str); #ifdef __cplusplus } |