1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* Copyright (C) 2020 Steffen Jaeckel <jaeckel-floss@eyet-services.de> */ 3 4 #include <linux/errno.h> 5 #include <linux/kernel.h> 6 #include <linux/string.h> 7 #include <linux/types.h> 8 #include <vsprintf.h> 9 10 #define NO_GENSALT 11 #define CRYPT_OUTPUT_SIZE 384 12 #define ALG_SPECIFIC_SIZE 8192 13 14 #define ARG_UNUSED(x) (x) 15 16 #define static_assert(a, b) _Static_assert(a, b) 17 18 #define strtoul(cp, endp, base) simple_strtoul(cp, endp, base) 19 20 extern const unsigned char ascii64[65]; 21 22 #define b64t ((const char *)ascii64) 23 24 int crypt_sha256crypt_rn_wrapped(const char *phrase, size_t phr_size, 25 const char *setting, 26 size_t ARG_UNUSED(set_size), uint8_t *output, 27 size_t out_size, void *scratch, 28 size_t scr_size); 29 int crypt_sha512crypt_rn_wrapped(const char *phrase, size_t phr_size, 30 const char *setting, 31 size_t ARG_UNUSED(set_size), uint8_t *output, 32 size_t out_size, void *scratch, 33 size_t scr_size); 34