1N/A/*
1N/A * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
1N/A * Use is subject to license terms.
1N/A */
1N/A
1N/A/*
1N/A * This program is copyright Alec Muffett 1993. The author disclaims all
1N/A * responsibility or liability with respect to it's usage or its effect
1N/A * upon hardware or computer systems, and maintains copyright as set out
1N/A * in the "LICENCE" document which accompanies distributions of Crack v4.0
1N/A * and upwards.
1N/A */
1N/A
1N/A#include "packer.h"
1N/A
1N/A
1N/Astatic char *r_destructors[] = {
1N/A ":", /* noop - must do this to test raw word. */
1N/A "[", /* trimming leading/trailing junk */
1N/A "]",
1N/A "[[",
1N/A "]]",
1N/A "[[[",
1N/A "]]]",
1N/A
1N/A "/?p@?p", /* purging out punctuation/symbols/junk */
1N/A "/?s@?s",
1N/A "/?X@?X",
1N/A /* attempt reverse engineering of password strings */
1N/A "/$s$s",
1N/A "/$s$s/0s0o",
1N/A "/$s$s/0s0o/2s2a",
1N/A "/$s$s/0s0o/2s2a/3s3e",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/1s1i",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/1s1l",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/1s1i/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/1s1i/4s4h",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/1s1l/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/1s1l/4s4h",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/4s4h",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/5s5s/4s4h",
1N/A "/$s$s/0s0o/2s2a/3s3e/1s1i",
1N/A "/$s$s/0s0o/2s2a/3s3e/1s1l",
1N/A "/$s$s/0s0o/2s2a/3s3e/1s1i/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/1s1i/4s4h",
1N/A "/$s$s/0s0o/2s2a/3s3e/1s1l/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/1s1l/4s4h",
1N/A "/$s$s/0s0o/2s2a/3s3e/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/4s4h",
1N/A "/$s$s/0s0o/2s2a/3s3e/4s4a",
1N/A "/$s$s/0s0o/2s2a/3s3e/4s4h",
1N/A "/$s$s/0s0o/2s2a/5s5s",
1N/A "/$s$s/0s0o/2s2a/5s5s/1s1i",
1N/A "/$s$s/0s0o/2s2a/5s5s/1s1l",
1N/A "/$s$s/0s0o/2s2a/5s5s/1s1i/4s4a",
1N/A "/$s$s/0s0o/2s2a/5s5s/1s1i/4s4h",
1N/A "/$s$s/0s0o/2s2a/5s5s/1s1l/4s4a",
1N/A "/$s$s/0s0o/2s2a/5s5s/1s1l/4s4h",
1N/A "/$s$s/0s0o/2s2a/5s5s/4s4a",
1N/A "/$s$s/0s0o/2s2a/5s5s/4s4h",
1N/A "/$s$s/0s0o/2s2a/5s5s/4s4a",
1N/A "/$s$s/0s0o/2s2a/5s5s/4s4h",
1N/A "/$s$s/0s0o/2s2a/1s1i",
1N/A "/$s$s/0s0o/2s2a/1s1l",
1N/A "/$s$s/0s0o/2s2a/1s1i/4s4a",
1N/A "/$s$s/0s0o/2s2a/1s1i/4s4h",
1N/A "/$s$s/0s0o/2s2a/1s1l/4s4a",
1N/A "/$s$s/0s0o/2s2a/1s1l/4s4h",
1N/A "/$s$s/0s0o/2s2a/4s4a",
1N/A "/$s$s/0s0o/2s2a/4s4h",
1N/A "/$s$s/0s0o/2s2a/4s4a",
1N/A "/$s$s/0s0o/2s2a/4s4h",
1N/A "/$s$s/0s0o/3s3e",
1N/A "/$s$s/0s0o/3s3e/5s5s",
1N/A "/$s$s/0s0o/3s3e/5s5s/1s1i",
1N/A "/$s$s/0s0o/3s3e/5s5s/1s1l",
1N/A "/$s$s/0s0o/3s3e/5s5s/1s1i/4s4a",
1N/A "/$s$s/0s0o/3s3e/5s5s/1s1i/4s4h",
1N/A "/$s$s/0s0o/3s3e/5s5s/1s1l/4s4a",
1N/A "/$s$s/0s0o/3s3e/5s5s/1s1l/4s4h",
1N/A "/$s$s/0s0o/3s3e/5s5s/4s4a",
1N/A "/$s$s/0s0o/3s3e/5s5s/4s4h",
1N/A "/$s$s/0s0o/3s3e/5s5s/4s4a",
1N/A "/$s$s/0s0o/3s3e/5s5s/4s4h",
1N/A "/$s$s/0s0o/3s3e/1s1i",
1N/A "/$s$s/0s0o/3s3e/1s1l",
1N/A "/$s$s/0s0o/3s3e/1s1i/4s4a",
1N/A "/$s$s/0s0o/3s3e/1s1i/4s4h",
1N/A "/$s$s/0s0o/3s3e/1s1l/4s4a",
1N/A "/$s$s/0s0o/3s3e/1s1l/4s4h",
1N/A "/$s$s/0s0o/3s3e/4s4a",
1N/A "/$s$s/0s0o/3s3e/4s4h",
1N/A "/$s$s/0s0o/3s3e/4s4a",
1N/A "/$s$s/0s0o/3s3e/4s4h",
1N/A "/$s$s/0s0o/5s5s",
1N/A "/$s$s/0s0o/5s5s/1s1i",
1N/A "/$s$s/0s0o/5s5s/1s1l",
1N/A "/$s$s/0s0o/5s5s/1s1i/4s4a",
1N/A "/$s$s/0s0o/5s5s/1s1i/4s4h",
1N/A "/$s$s/0s0o/5s5s/1s1l/4s4a",
1N/A "/$s$s/0s0o/5s5s/1s1l/4s4h",
1N/A "/$s$s/0s0o/5s5s/4s4a",
1N/A "/$s$s/0s0o/5s5s/4s4h",
1N/A "/$s$s/0s0o/5s5s/4s4a",
1N/A "/$s$s/0s0o/5s5s/4s4h",
1N/A "/$s$s/0s0o/1s1i",
1N/A "/$s$s/0s0o/1s1l",
1N/A "/$s$s/0s0o/1s1i/4s4a",
1N/A "/$s$s/0s0o/1s1i/4s4h",
1N/A "/$s$s/0s0o/1s1l/4s4a",
1N/A "/$s$s/0s0o/1s1l/4s4h",
1N/A "/$s$s/0s0o/4s4a",
1N/A "/$s$s/0s0o/4s4h",
1N/A "/$s$s/0s0o/4s4a",
1N/A "/$s$s/0s0o/4s4h",
1N/A "/$s$s/2s2a",
1N/A "/$s$s/2s2a/3s3e",
1N/A "/$s$s/2s2a/3s3e/5s5s",
1N/A "/$s$s/2s2a/3s3e/5s5s/1s1i",
1N/A "/$s$s/2s2a/3s3e/5s5s/1s1l",
1N/A "/$s$s/2s2a/3s3e/5s5s/1s1i/4s4a",
1N/A "/$s$s/2s2a/3s3e/5s5s/1s1i/4s4h",
1N/A "/$s$s/2s2a/3s3e/5s5s/1s1l/4s4a",
1N/A "/$s$s/2s2a/3s3e/5s5s/1s1l/4s4h",
1N/A "/$s$s/2s2a/3s3e/5s5s/4s4a",
1N/A "/$s$s/2s2a/3s3e/5s5s/4s4h",
1N/A "/$s$s/2s2a/3s3e/5s5s/4s4a",
1N/A "/$s$s/2s2a/3s3e/5s5s/4s4h",
1N/A "/$s$s/2s2a/3s3e/1s1i",
1N/A "/$s$s/2s2a/3s3e/1s1l",
1N/A "/$s$s/2s2a/3s3e/1s1i/4s4a",
1N/A "/$s$s/2s2a/3s3e/1s1i/4s4h",
1N/A "/$s$s/2s2a/3s3e/1s1l/4s4a",
1N/A "/$s$s/2s2a/3s3e/1s1l/4s4h",
1N/A "/$s$s/2s2a/3s3e/4s4a",
1N/A "/$s$s/2s2a/3s3e/4s4h",
1N/A "/$s$s/2s2a/3s3e/4s4a",
1N/A "/$s$s/2s2a/3s3e/4s4h",
1N/A "/$s$s/2s2a/5s5s",
1N/A "/$s$s/2s2a/5s5s/1s1i",
1N/A "/$s$s/2s2a/5s5s/1s1l",
1N/A "/$s$s/2s2a/5s5s/1s1i/4s4a",
1N/A "/$s$s/2s2a/5s5s/1s1i/4s4h",
1N/A "/$s$s/2s2a/5s5s/1s1l/4s4a",
1N/A "/$s$s/2s2a/5s5s/1s1l/4s4h",
1N/A "/$s$s/2s2a/5s5s/4s4a",
1N/A "/$s$s/2s2a/5s5s/4s4h",
1N/A "/$s$s/2s2a/5s5s/4s4a",
1N/A "/$s$s/2s2a/5s5s/4s4h",
1N/A "/$s$s/2s2a/1s1i",
1N/A "/$s$s/2s2a/1s1l",
1N/A "/$s$s/2s2a/1s1i/4s4a",
1N/A "/$s$s/2s2a/1s1i/4s4h",
1N/A "/$s$s/2s2a/1s1l/4s4a",
1N/A "/$s$s/2s2a/1s1l/4s4h",
1N/A "/$s$s/2s2a/4s4a",
1N/A "/$s$s/2s2a/4s4h",
1N/A "/$s$s/2s2a/4s4a",
1N/A "/$s$s/2s2a/4s4h",
1N/A "/$s$s/3s3e",
1N/A "/$s$s/3s3e/5s5s",
1N/A "/$s$s/3s3e/5s5s/1s1i",
1N/A "/$s$s/3s3e/5s5s/1s1l",
1N/A "/$s$s/3s3e/5s5s/1s1i/4s4a",
1N/A "/$s$s/3s3e/5s5s/1s1i/4s4h",
1N/A "/$s$s/3s3e/5s5s/1s1l/4s4a",
1N/A "/$s$s/3s3e/5s5s/1s1l/4s4h",
1N/A "/$s$s/3s3e/5s5s/4s4a",
1N/A "/$s$s/3s3e/5s5s/4s4h",
1N/A "/$s$s/3s3e/5s5s/4s4a",
1N/A "/$s$s/3s3e/5s5s/4s4h",
1N/A "/$s$s/3s3e/1s1i",
1N/A "/$s$s/3s3e/1s1l",
1N/A "/$s$s/3s3e/1s1i/4s4a",
1N/A "/$s$s/3s3e/1s1i/4s4h",
1N/A "/$s$s/3s3e/1s1l/4s4a",
1N/A "/$s$s/3s3e/1s1l/4s4h",
1N/A "/$s$s/3s3e/4s4a",
1N/A "/$s$s/3s3e/4s4h",
1N/A "/$s$s/3s3e/4s4a",
1N/A "/$s$s/3s3e/4s4h",
1N/A "/$s$s/5s5s",
1N/A "/$s$s/5s5s/1s1i",
1N/A "/$s$s/5s5s/1s1l",
1N/A "/$s$s/5s5s/1s1i/4s4a",
1N/A "/$s$s/5s5s/1s1i/4s4h",
1N/A "/$s$s/5s5s/1s1l/4s4a",
1N/A "/$s$s/5s5s/1s1l/4s4h",
1N/A "/$s$s/5s5s/4s4a",
1N/A "/$s$s/5s5s/4s4h",
1N/A "/$s$s/5s5s/4s4a",
1N/A "/$s$s/5s5s/4s4h",
1N/A "/$s$s/1s1i",
1N/A "/$s$s/1s1l",
1N/A "/$s$s/1s1i/4s4a",
1N/A "/$s$s/1s1i/4s4h",
1N/A "/$s$s/1s1l/4s4a",
1N/A "/$s$s/1s1l/4s4h",
1N/A "/$s$s/4s4a",
1N/A "/$s$s/4s4h",
1N/A "/$s$s/4s4a",
1N/A "/$s$s/4s4h",
1N/A "/0s0o",
1N/A "/0s0o/2s2a",
1N/A "/0s0o/2s2a/3s3e",
1N/A "/0s0o/2s2a/3s3e/5s5s",
1N/A "/0s0o/2s2a/3s3e/5s5s/1s1i",
1N/A "/0s0o/2s2a/3s3e/5s5s/1s1l",
1N/A "/0s0o/2s2a/3s3e/5s5s/1s1i/4s4a",
1N/A "/0s0o/2s2a/3s3e/5s5s/1s1i/4s4h",
1N/A "/0s0o/2s2a/3s3e/5s5s/1s1l/4s4a",
1N/A "/0s0o/2s2a/3s3e/5s5s/1s1l/4s4h",
1N/A "/0s0o/2s2a/3s3e/5s5s/4s4a",
1N/A "/0s0o/2s2a/3s3e/5s5s/4s4h",
1N/A "/0s0o/2s2a/3s3e/5s5s/4s4a",
1N/A "/0s0o/2s2a/3s3e/5s5s/4s4h",
1N/A "/0s0o/2s2a/3s3e/1s1i",
1N/A "/0s0o/2s2a/3s3e/1s1l",
1N/A "/0s0o/2s2a/3s3e/1s1i/4s4a",
1N/A "/0s0o/2s2a/3s3e/1s1i/4s4h",
1N/A "/0s0o/2s2a/3s3e/1s1l/4s4a",
1N/A "/0s0o/2s2a/3s3e/1s1l/4s4h",
1N/A "/0s0o/2s2a/3s3e/4s4a",
1N/A "/0s0o/2s2a/3s3e/4s4h",
1N/A "/0s0o/2s2a/3s3e/4s4a",
1N/A "/0s0o/2s2a/3s3e/4s4h",
1N/A "/0s0o/2s2a/5s5s",
1N/A "/0s0o/2s2a/5s5s/1s1i",
1N/A "/0s0o/2s2a/5s5s/1s1l",
1N/A "/0s0o/2s2a/5s5s/1s1i/4s4a",
1N/A "/0s0o/2s2a/5s5s/1s1i/4s4h",
1N/A "/0s0o/2s2a/5s5s/1s1l/4s4a",
1N/A "/0s0o/2s2a/5s5s/1s1l/4s4h",
1N/A "/0s0o/2s2a/5s5s/4s4a",
1N/A "/0s0o/2s2a/5s5s/4s4h",
1N/A "/0s0o/2s2a/5s5s/4s4a",
1N/A "/0s0o/2s2a/5s5s/4s4h",
1N/A "/0s0o/2s2a/1s1i",
1N/A "/0s0o/2s2a/1s1l",
1N/A "/0s0o/2s2a/1s1i/4s4a",
1N/A "/0s0o/2s2a/1s1i/4s4h",
1N/A "/0s0o/2s2a/1s1l/4s4a",
1N/A "/0s0o/2s2a/1s1l/4s4h",
1N/A "/0s0o/2s2a/4s4a",
1N/A "/0s0o/2s2a/4s4h",
1N/A "/0s0o/2s2a/4s4a",
1N/A "/0s0o/2s2a/4s4h",
1N/A "/0s0o/3s3e",
1N/A "/0s0o/3s3e/5s5s",
1N/A "/0s0o/3s3e/5s5s/1s1i",
1N/A "/0s0o/3s3e/5s5s/1s1l",
1N/A "/0s0o/3s3e/5s5s/1s1i/4s4a",
1N/A "/0s0o/3s3e/5s5s/1s1i/4s4h",
1N/A "/0s0o/3s3e/5s5s/1s1l/4s4a",
1N/A "/0s0o/3s3e/5s5s/1s1l/4s4h",
1N/A "/0s0o/3s3e/5s5s/4s4a",
1N/A "/0s0o/3s3e/5s5s/4s4h",
1N/A "/0s0o/3s3e/5s5s/4s4a",
1N/A "/0s0o/3s3e/5s5s/4s4h",
1N/A "/0s0o/3s3e/1s1i",
1N/A "/0s0o/3s3e/1s1l",
1N/A "/0s0o/3s3e/1s1i/4s4a",
1N/A "/0s0o/3s3e/1s1i/4s4h",
1N/A "/0s0o/3s3e/1s1l/4s4a",
1N/A "/0s0o/3s3e/1s1l/4s4h",
1N/A "/0s0o/3s3e/4s4a",
1N/A "/0s0o/3s3e/4s4h",
1N/A "/0s0o/3s3e/4s4a",
1N/A "/0s0o/3s3e/4s4h",
1N/A "/0s0o/5s5s",
1N/A "/0s0o/5s5s/1s1i",
1N/A "/0s0o/5s5s/1s1l",
1N/A "/0s0o/5s5s/1s1i/4s4a",
1N/A "/0s0o/5s5s/1s1i/4s4h",
1N/A "/0s0o/5s5s/1s1l/4s4a",
1N/A "/0s0o/5s5s/1s1l/4s4h",
1N/A "/0s0o/5s5s/4s4a",
1N/A "/0s0o/5s5s/4s4h",
1N/A "/0s0o/5s5s/4s4a",
1N/A "/0s0o/5s5s/4s4h",
1N/A "/0s0o/1s1i",
1N/A "/0s0o/1s1l",
1N/A "/0s0o/1s1i/4s4a",
1N/A "/0s0o/1s1i/4s4h",
1N/A "/0s0o/1s1l/4s4a",
1N/A "/0s0o/1s1l/4s4h",
1N/A "/0s0o/4s4a",
1N/A "/0s0o/4s4h",
1N/A "/0s0o/4s4a",
1N/A "/0s0o/4s4h",
1N/A "/2s2a",
1N/A "/2s2a/3s3e",
1N/A "/2s2a/3s3e/5s5s",
1N/A "/2s2a/3s3e/5s5s/1s1i",
1N/A "/2s2a/3s3e/5s5s/1s1l",
1N/A "/2s2a/3s3e/5s5s/1s1i/4s4a",
1N/A "/2s2a/3s3e/5s5s/1s1i/4s4h",
1N/A "/2s2a/3s3e/5s5s/1s1l/4s4a",
1N/A "/2s2a/3s3e/5s5s/1s1l/4s4h",
1N/A "/2s2a/3s3e/5s5s/4s4a",
1N/A "/2s2a/3s3e/5s5s/4s4h",
1N/A "/2s2a/3s3e/5s5s/4s4a",
1N/A "/2s2a/3s3e/5s5s/4s4h",
1N/A "/2s2a/3s3e/1s1i",
1N/A "/2s2a/3s3e/1s1l",
1N/A "/2s2a/3s3e/1s1i/4s4a",
1N/A "/2s2a/3s3e/1s1i/4s4h",
1N/A "/2s2a/3s3e/1s1l/4s4a",
1N/A "/2s2a/3s3e/1s1l/4s4h",
1N/A "/2s2a/3s3e/4s4a",
1N/A "/2s2a/3s3e/4s4h",
1N/A "/2s2a/3s3e/4s4a",
1N/A "/2s2a/3s3e/4s4h",
1N/A "/2s2a/5s5s",
1N/A "/2s2a/5s5s/1s1i",
1N/A "/2s2a/5s5s/1s1l",
1N/A "/2s2a/5s5s/1s1i/4s4a",
1N/A "/2s2a/5s5s/1s1i/4s4h",
1N/A "/2s2a/5s5s/1s1l/4s4a",
1N/A "/2s2a/5s5s/1s1l/4s4h",
1N/A "/2s2a/5s5s/4s4a",
1N/A "/2s2a/5s5s/4s4h",
1N/A "/2s2a/5s5s/4s4a",
1N/A "/2s2a/5s5s/4s4h",
1N/A "/2s2a/1s1i",
1N/A "/2s2a/1s1l",
1N/A "/2s2a/1s1i/4s4a",
1N/A "/2s2a/1s1i/4s4h",
1N/A "/2s2a/1s1l/4s4a",
1N/A "/2s2a/1s1l/4s4h",
1N/A "/2s2a/4s4a",
1N/A "/2s2a/4s4h",
1N/A "/2s2a/4s4a",
1N/A "/2s2a/4s4h",
1N/A "/3s3e",
1N/A "/3s3e/5s5s",
1N/A "/3s3e/5s5s/1s1i",
1N/A "/3s3e/5s5s/1s1l",
1N/A "/3s3e/5s5s/1s1i/4s4a",
1N/A "/3s3e/5s5s/1s1i/4s4h",
1N/A "/3s3e/5s5s/1s1l/4s4a",
1N/A "/3s3e/5s5s/1s1l/4s4h",
1N/A "/3s3e/5s5s/4s4a",
1N/A "/3s3e/5s5s/4s4h",
1N/A "/3s3e/5s5s/4s4a",
1N/A "/3s3e/5s5s/4s4h",
1N/A "/3s3e/1s1i",
1N/A "/3s3e/1s1l",
1N/A "/3s3e/1s1i/4s4a",
1N/A "/3s3e/1s1i/4s4h",
1N/A "/3s3e/1s1l/4s4a",
1N/A "/3s3e/1s1l/4s4h",
1N/A "/3s3e/4s4a",
1N/A "/3s3e/4s4h",
1N/A "/3s3e/4s4a",
1N/A "/3s3e/4s4h",
1N/A "/5s5s",
1N/A "/5s5s/1s1i",
1N/A "/5s5s/1s1l",
1N/A "/5s5s/1s1i/4s4a",
1N/A "/5s5s/1s1i/4s4h",
1N/A "/5s5s/1s1l/4s4a",
1N/A "/5s5s/1s1l/4s4h",
1N/A "/5s5s/4s4a",
1N/A "/5s5s/4s4h",
1N/A "/5s5s/4s4a",
1N/A "/5s5s/4s4h",
1N/A "/1s1i",
1N/A "/1s1l",
1N/A "/1s1i/4s4a",
1N/A "/1s1i/4s4h",
1N/A "/1s1l/4s4a",
1N/A "/1s1l/4s4h",
1N/A "/4s4a",
1N/A "/4s4h",
1N/A "/4s4a",
1N/A "/4s4h",
1N/A /* done */
1N/A (char *)0
1N/A};
1N/A
1N/A
1N/Aint
1N/AFascistLook(PWDICT *pwp, char *instring)
1N/A{
1N/A int i;
1N/A char *password;
1N/A uint32_t notfound;
1N/A char rpassword[PATH_MAX];
1N/A
1N/A notfound = PW_WORDS(pwp);
1N/A
1N/A (void) strlcpy(rpassword, instring, TRUNCSTRINGSIZE);
1N/A password = rpassword;
1N/A
1N/A (void) strcpy(password, Lowercase(password));
1N/A (void) Trim(password);
1N/A
1N/A /*
1N/A * it should be safe to use Mangle with its reliance on PATH_SIZE
1N/A * since password cannot be longer than TRUNCSTRINGSIZE;
1N/A * nonetheless this is not an elegant solution
1N/A */
1N/A
1N/A for (i = 0; r_destructors[i]; i++) {
1N/A char *a;
1N/A
1N/A if (!(a = Mangle(password, r_destructors[i]))) {
1N/A continue;
1N/A }
1N/A
1N/A if (FindPW(pwp, a) != notfound) {
1N/A return (DICTIONARY_WORD);
1N/A }
1N/A }
1N/A
1N/A (void) strlcpy(password, Reverse(password), PATH_MAX);
1N/A
1N/A for (i = 0; r_destructors[i]; i++) {
1N/A char *a;
1N/A
1N/A if (!(a = Mangle(password, r_destructors[i]))) {
1N/A continue;
1N/A }
1N/A if (FindPW(pwp, a) != notfound) {
1N/A return (REVERSE_DICTIONARY_WORD);
1N/A }
1N/A }
1N/A
1N/A return (0);
1N/A}
1N/A
1N/Aint
1N/ADictCheck(char *password, char *path)
1N/A{
1N/A PWDICT *pwp;
1N/A int r;
1N/A
1N/A if ((pwp = PWOpen(path, "rF")) == NULL)
1N/A return (DATABASE_OPEN_FAIL);
1N/A
1N/A r = FascistLook(pwp, password);
1N/A (void) PWClose(pwp);
1N/A return (r);
1N/A}