summaryrefslogtreecommitdiffstats
path: root/libcrypt/crypt.c
diff options
context:
space:
mode:
authorWilliam Pitcock <nenolod@dereferenced.org>2011-12-19 01:25:09 -0600
committerNatanael Copa <ncopa@alpinelinux.org>2011-12-23 15:49:02 +0100
commit243a437f9345fd7182bb4b2f60d892cc86794e8d (patch)
treefce5b1205b8b697549385620d0baa87e6b5147d4 /libcrypt/crypt.c
parent0b68c872deb676b0cb104bfb30a1f356072b5edf (diff)
downloaduClibc-alpine-243a437f9345fd7182bb4b2f60d892cc86794e8d.tar.bz2
uClibc-alpine-243a437f9345fd7182bb4b2f60d892cc86794e8d.tar.xz
libcrypt: add support for SHA256-CRYPT password hashing
This is based on Ulrich Drepper's implementation in GLIBC, but hacked up to work in uClibc. The differences from the GLIBC version are as follows: - b64_from_24bit() has been converted into a macro - Usage of GLIBC-isms (such as libc_freeres_ptr) have been removed It is enabled by the UCLIBC_HAS_SHA256_CRYPT_IMPL configuration symbol. You must have UCLIBC_HAS_CRYPT_IMPL enabled as well. Signed-off-by: William Pitcock <nenolod@dereferenced.org> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> (cherry picked from commit 3ac5fd7ecaeb6721d812c2b93e446bf9a31acdde)
Diffstat (limited to 'libcrypt/crypt.c')
-rw-r--r--libcrypt/crypt.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libcrypt/crypt.c b/libcrypt/crypt.c
index b5bf9ee0f..188a6a081 100644
--- a/libcrypt/crypt.c
+++ b/libcrypt/crypt.c
@@ -19,6 +19,9 @@ static const struct {
const crypt_impl_f crypt_impl;
} crypt_impl_tab[] = {
{ "$1$", __md5_crypt },
+#ifdef __UCLIBC_HAS_SHA256_CRYPT_IMPL__
+ { "$5$", __sha256_crypt },
+#endif
#ifdef __UCLIBC_HAS_SHA512_CRYPT_IMPL__
{ "$6$", __sha512_crypt },
#endif