diff options
Diffstat (limited to 'riemann.fmi.uni-sofia.bg/programs/nlogin-0.3-pre/pass_check.c')
| -rw-r--r-- | riemann.fmi.uni-sofia.bg/programs/nlogin-0.3-pre/pass_check.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/riemann.fmi.uni-sofia.bg/programs/nlogin-0.3-pre/pass_check.c b/riemann.fmi.uni-sofia.bg/programs/nlogin-0.3-pre/pass_check.c new file mode 100644 index 0000000..6628e99 --- /dev/null +++ b/riemann.fmi.uni-sofia.bg/programs/nlogin-0.3-pre/pass_check.c @@ -0,0 +1,20 @@ +#include "str_defs.h" +#define PASS_CHECK_C +#include "config.h" + +#define del_str(X) byte_zero(X, str_len(X)) + +int pass_check(char *buf, char *cr_ps) /*EXTRACT_INCL*/{ + char *pass; + int OK = 0; + + if (str_len(cr_ps) < 10) goto do_it; + + pass = pass_crypt_appl(buf, cr_ps); + if (!str_diff(pass, cr_ps)) OK=1; + del_str(pass); + + do_it: + del_str(cr_ps); + return OK; /* return 1 if good password */ +} |
