| /* SPDX-License-Identifier: LGPL-2.1+ */ |
| #pragma once |
| |
| #if HAVE_CRYPT_H |
| /* libxcrypt is a replacement for glibc's libcrypt, and libcrypt might be |
| * removed from glibc at some point. As part of the removal, defines for |
| * crypt(3) are dropped from unistd.h, and we must include crypt.h instead. |
| * |
| * Newer versions of glibc (v2.0+) already ship crypt.h with a definition |
| * of crypt(3) as well, so we simply include it if it is present. MariaDB, |
| * MySQL, PostgreSQL, Perl and some other wide-spread packages do it the |
| * same way since ages without any problems. |
| */ |
| #include <crypt.h> |
| #endif |
| |
| #include <stdbool.h> |
| #include <stdlib.h> |
| |
| int make_salt(char **ret); |
| |
| bool hashed_password_valid(const char *s); |