diff options
author | Andi Shyti <andi@etezian.org> | 2012-09-03 23:13:36 +0200 |
---|---|---|
committer | Andi Shyti <andi@etezian.org> | 2012-09-03 23:13:36 +0200 |
commit | d45a9d3d0e39b929c48153141377a8cc03ebabac (patch) | |
tree | f2d705c3386427bb9860324fbdad374e32004559 | |
parent | 983119577046905c6303222f2c871b0cfd49e2fa (diff) |
crypt_sha256: strings should be treated as unsigned char
Signed-off-by: Andi Shyti <andi@etezian.org>
-rw-r--r-- | src/crypt_sha256.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/crypt_sha256.c b/src/crypt_sha256.c index 5bbed5e..6484ea4 100644 --- a/src/crypt_sha256.c +++ b/src/crypt_sha256.c @@ -29,10 +29,10 @@ char* get_crypt_sha256(const char *p) int rand_fd; ssize_t size; size_t len = strlen(p); - char rand_str[LEN_RAND_STR]; - char passwd_buff[LEN_BUFFER]; - char sha_pwd[SHA256_DIGEST_LENGTH]; - char enc64_pwd[LEN_ENC64]; + unsigned char rand_str[LEN_RAND_STR]; + unsigned char passwd_buff[LEN_BUFFER]; + unsigned char sha_pwd[SHA256_DIGEST_LENGTH]; + unsigned char enc64_pwd[LEN_ENC64]; char *final_pwd; rand_fd = open(RAND_FILE, O_RDONLY); @@ -52,12 +52,11 @@ char* get_crypt_sha256(const char *p) memcpy(passwd_buff + SHA256_DIGEST_LENGTH + len, rand_str, LEN_RAND_STR); - SHA256((unsigned char*) passwd_buff + SHA256_DIGEST_LENGTH, - len + LEN_RAND_STR, (unsigned char*) sha_pwd); + SHA256(passwd_buff + SHA256_DIGEST_LENGTH, len + LEN_RAND_STR, sha_pwd); memcpy(passwd_buff, sha_pwd, SHA256_DIGEST_LENGTH); - EVP_EncodeBlock((unsigned char*) enc64_pwd, (unsigned char*) sha_pwd, + EVP_EncodeBlock(enc64_pwd, sha_pwd, SHA256_DIGEST_LENGTH + len + LEN_RAND_STR); |