10b0ecb56SDag-Erling Smørgrav /* 2402783abSDag-Erling Smørgrav * Copyright (c) 2000-2002 by Solar Designer. See LICENSE. 30b0ecb56SDag-Erling Smørgrav */ 40b0ecb56SDag-Erling Smørgrav 50b0ecb56SDag-Erling Smørgrav #ifndef _PASSWDQC_H 60b0ecb56SDag-Erling Smørgrav #define _PASSWDQC_H 70b0ecb56SDag-Erling Smørgrav 80b0ecb56SDag-Erling Smørgrav #include <pwd.h> 90b0ecb56SDag-Erling Smørgrav 100b0ecb56SDag-Erling Smørgrav typedef struct { 110b0ecb56SDag-Erling Smørgrav int min[5], max; 120b0ecb56SDag-Erling Smørgrav int passphrase_words; 130b0ecb56SDag-Erling Smørgrav int match_length; 140b0ecb56SDag-Erling Smørgrav int similar_deny; 150b0ecb56SDag-Erling Smørgrav int random_bits; 160b0ecb56SDag-Erling Smørgrav } passwdqc_params_t; 170b0ecb56SDag-Erling Smørgrav 180b0ecb56SDag-Erling Smørgrav extern char _passwdqc_wordset_4k[0x1000][6]; 190b0ecb56SDag-Erling Smørgrav 20402783abSDag-Erling Smørgrav extern const char *_passwdqc_check(passwdqc_params_t *params, 21402783abSDag-Erling Smørgrav const char *newpass, const char *oldpass, struct passwd *pw); 220b0ecb56SDag-Erling Smørgrav extern char *_passwdqc_random(passwdqc_params_t *params); 230b0ecb56SDag-Erling Smørgrav 240b0ecb56SDag-Erling Smørgrav #endif 25