From c44a74e52a8b227857f28289a91d126b7edc959c Mon Sep 17 00:00:00 2001 From: Stef Walter Date: Thu, 12 Aug 2004 00:49:18 +0000 Subject: Added convenience functions for doing sha1 with strings. --- common/sha1.c | 15 +++++++++++++++ common/sha1.h | 2 ++ 2 files changed, 17 insertions(+) (limited to 'common') 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 } -- cgit v1.2.3