|
NAMEFascistCheck - check a potential password for guessabilityLIBRARYCracklib (libcrack, -lcrack)SYNOPSIS#include <packer.h>
DESCRIPTIONCrackLib is a library containing a C function which may be used in a passwd(1)-like program.The idea is simple: try to prevent users from choosing passwords that could be guessed by Crack by filtering them out, at source. FascistCheck() takes two arguments:
CrackLib is an offshoot of the the version 5 Crack software, and contains a considerable number of ideas nicked from the new software. CrackLib makes literally hundreds of tests to determine whether you've chosen a bad password.
After all that, it's probably a safe(-ish) password. RETURN VALUEFascistCheck() returns the NULL pointer for a good password or a pointer to a diagnostic string if it is a bad password.BUGSIt can't catch everything. Just most things.It calls getpwuid(getuid()) to look up the user, which may affect poorly written programs. Using more than one dictionary file, e.g.: char *msg; if (msg = FascistCheck(pw, "onepath") || msg = FascistCheck(pw, "anotherpath")) { printf("Bad Password: because %s\n", msg); } works, but it's a kludge. Avoid it if possible. Using just the one dictionary is more efficient, anyway. PWOpen() routines should cope with having more than one dictionary open at a time. SEE ALSOpasswd(1), getpwuid(3), Visit the GSP FreeBSD Man Page Interface. |