|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T c
Length: 3267 (0xcc3)
Types: TextFile
Names: »checkpasswd.h«
└─⟦4f9d7c866⟧ Bits:30007245 EUUGD6: Sikkerheds distributionen
└─⟦123909933⟧ »./npasswd/npasswd.tar.Z«
└─⟦22a202e7d⟧
└─⟦this⟧ »npass-new/npasswd_jpl/old.checkpasswd/checkpasswd.h«
/* -------------------------------------------------------------------- */
/* */
/* Author: Clyde Hoover */
/* Computation Center */
/* The University of Texas at Austin */
/* Austin, Texas 78712 */
/* clyde@emx.utexas.edu */
/* uunet!cs.utexas.edu!ut-emx!clyde */
/* */
/*This code may be distributed freely, provided this notice is retained. */
/* */
/* -------------------------------------------------------------------- */
/*
* checkpasswd.h - Master include for checkpasswd
*
* @(#)checkpasswd.h 1.4 11/26/90 (cc.utexas.edu) /tmp_mnt/usr/share/src/private/ut/share/bin/passwd/checkpasswd/SCCS/s.checkpasswd.h
*/
#include <stdio.h>
#include <ctype.h>
#ifdef SYSV
#include <string.h>
#define index strchr
#else
#include <strings.h>
#endif
/*
* Return codes from checkpasswd() and pwck_*
* Also used as exit codes from main()
*/
#define PWCK_FAIL -1 /* Failure during check process */
#define PWCK_OK 0 /* Password is ok to use */
#define PWCK_NULL 1 /* Password is the null string */
#define PWCK_OBVIOUS 2 /* Password is 'too obvious' */
#define PWCK_FINGER 3 /* Password is part of users finger info */
#define PWCK_INDICT 4 /* Password found in a dictionary */
#define PWCK_ILLCHAR 5 /* Illegal character in password */
#define PWCK_SHORT 6 /* Password too short */
/*
* Dictionary info
*/
typedef struct _dict {
char *dict_path, /* Path to dictionary */
*dict_desc; /* Descriptive phrase */
struct _dict *dict_next; /* Link to next dict */
} dictionary;
extern dictionary *dictionaries; /* List of dictionaries to check */
/*
* This is the default dicitonary to look in
* If you have some DBM dictionaries, either repoint this
* define or comment it out and place dictionaries in
* the configuration file.
*/
#define DEFAULT_DICT "/usr/dict/words" /* Default dictionary */
#ifndef CONFIG_FILE
/* Set configuration file name */
# ifdef DEBUG
# define CONFIG_FILE "checkpasswd.cf"
# else
# define CONFIG_FILE "/usr/adm/checkpasswd.cf"
# endif /* DEBUG */
#endif /* CONFIG_FILE */
/*
* Password preferences
*/
int single_case, /* Single-case passwords ok or not */
print_only, /* Printable characters only */
run_length, /* Maximum length of character runs */
min_length, /* Minimum password length */
max_length; /* Maximum effective length */
#define sizeof_illegalcc 128
extern char illegalcc[]; /* Control characters not allowed */
/*
* Misc inline subroutine macros
*/
/* Single string comparasion */
#define try(P,C,V) { \
if (_cistrcmp((P),(C)) == 0) \
return(V); \
}
/* Multiple string comparasion */
#define mtry(P,C,V) { \
int i; \
if ((i = _instring((P),(C),(V))) != PWCK_OK) \
return(i); \
}
/* Compact string compare */
#define streq(X,S) (_cistrncmp((X),(S), strlen(X)) == 0)
/* End checkpasswd.h */