61 lines
1.3 KiB
C
61 lines
1.3 KiB
C
|
/*
|
||
|
* This program is copyright Alec Muffett 1993. The author disclaims all
|
||
|
* responsibility or liability with respect to it's usage or its effect
|
||
|
* upon hardware or computer systems, and maintains copyright as set out
|
||
|
* in the "LICENCE" document which accompanies distributions of Crack v4.0
|
||
|
* and upwards.
|
||
|
*/
|
||
|
|
||
|
#include <stdio.h>
|
||
|
#include <ctype.h>
|
||
|
|
||
|
#define STRINGSIZE 1024
|
||
|
#define TRUNCSTRINGSIZE (STRINGSIZE/4)
|
||
|
|
||
|
typedef unsigned char int8;
|
||
|
typedef unsigned short int int16;
|
||
|
typedef unsigned long int int32;
|
||
|
#ifndef NUMWORDS
|
||
|
#define NUMWORDS 16
|
||
|
#endif
|
||
|
#define MAXWORDLEN 32
|
||
|
#define MAXBLOCKLEN (MAXWORDLEN * NUMWORDS)
|
||
|
|
||
|
struct pi_header
|
||
|
{
|
||
|
int32 pih_magic;
|
||
|
int32 pih_numwords;
|
||
|
int16 pih_blocklen;
|
||
|
int16 pih_pad;
|
||
|
};
|
||
|
|
||
|
typedef struct
|
||
|
{
|
||
|
FILE *ifp;
|
||
|
FILE *dfp;
|
||
|
FILE *wfp;
|
||
|
|
||
|
int32 flags;
|
||
|
#define PFOR_WRITE 0x0001
|
||
|
#define PFOR_FLUSH 0x0002
|
||
|
#define PFOR_USEHWMS 0x0004
|
||
|
|
||
|
int32 hwms[256];
|
||
|
|
||
|
struct pi_header header;
|
||
|
|
||
|
int count;
|
||
|
char data[NUMWORDS][MAXWORDLEN];
|
||
|
} PWDICT;
|
||
|
|
||
|
#define PW_WORDS(x) ((x)->header.pih_numwords)
|
||
|
#define PIH_MAGIC 0x70775631
|
||
|
|
||
|
extern PWDICT *PWOpen();
|
||
|
extern char *Mangle();
|
||
|
extern char *FascistCheck();
|
||
|
|
||
|
#define CRACK_TOLOWER(a) (isupper(a)?tolower(a):(a))
|
||
|
#define CRACK_TOUPPER(a) (islower(a)?toupper(a):(a))
|
||
|
#define STRCMP(a,b) strcmp((a),(b))
|