5 kx .\" copyright:
5 kx .\" Copyright (C) 1998, 1999 Jean Pierre LeJacq <jplejacq@quoininc.com>
5 kx .\"
5 kx .\" Distributed under the GNU GENERAL PUBLIC LICENSE.
5 kx .\"
5 kx .TH cracklib\-format 8 "Jun 21, 2008" "Alec Muffett" "GNU/Linux manual"
5 kx .SH NAME
5 kx cracklib\-format, cracklib\-packer, cracklib\-unpacker \- cracklib dictionary utilities
5 kx .SH SYNOPSIS
5 kx .B cracklib\-format
5 kx .IR file
5 kx .IR ...
5 kx
5 kx .B cracklib\-packer
5 kx .IR cracklib_dictpath
5 kx
5 kx .B cracklib\-unpacker
5 kx .IR cracklib_dictpath
5 kx .SH DESCRIPTION
5 kx .B cracklib\-format
5 kx takes a list of text files each containing a list of words, one per line, It
5 kx lowercases all words, removes control characters, and sorts the lists. It
5 kx outputs the cleaned up list to standard output. The text files may be
5 kx optionally compressed with
5 kx .BR gzip (1).
5 kx
5 kx If you supply massive amounts of text to
5 kx .B cracklib\-format
5 kx you must have enough free space available for use by the
5 kx .BR sort (1)
5 kx command. If you do not have 20Mb free in /var/tmp (or whatever
5 kx temporary area your
5 kx .BR sort (1)
5 kx command uses), have a look at the
5 kx .B /usr/sbin/cracklib\-format
5 kx program which is a
5 kx .BR sh (1)
5 kx program. You can usually tweak the
5 kx .BR sort (1)
5 kx command to use any large area of disk you desire, by use of the
5 kx .B \-T
5 kx option.
5 kx .B cracklib\-format
5 kx has a hook for this.
5 kx
5 kx .B cracklib\-packer
5 kx reads from standard input a list of sorted and cleaned words and
5 kx creates a database in the directory and prefix given by the command
5 kx line argument
5 kx .B cracklib_dictpath.
5 kx Three files are created with the suffixes of .hwm, .pwd, and .pwi.
5 kx These three files are in the format that the
5 kx .BR FascistCheck (3)
5 kx subroutine,
5 kx .BR cracklib\-unpacker (8),
5 kx and
5 kx .BR cracklib\-check (8),
5 kx utilities understand. The number of words read and written are printed on
5 kx .BR stdout (3).
5 kx
5 kx .B cracklib\-unpacker
5 kx reads from the database in the directory and prefix given by the command
5 kx line argument
5 kx .B cracklib_dictpath
5 kx and outputs on standard output the list of words that make up the
5 kx database.
5 kx
5 kx The database is in a binary format generated by the utilities
5 kx .BR cracklib\-format (8)
5 kx and
5 kx .BR cracklib\-packer (8).
5 kx On a Debian system the database is located in the directory
5 kx /var/cache/cracklib/pq_dict and is generated daily with the program
5 kx /etc/cron.daily/cracklib. The location is also defined in the
5 kx header file
5 kx .B crack.h
5 kx using the constant
5 kx .B CRACKLIB_DICTPATH
5 kx though none of the subroutines in the cracklib libraries have this
5 kx location hardcoded into their implementations.
5 kx
5 kx .SH FILES
5 kx .TP
5 kx .I /var/cache/cracklib/pq_dict.[hwm|pwd|pwi]
5 kx cracklib dictionary database files used by utilities.
5 kx .TP
5 kx .I /etc/cron.daily/cracklib
5 kx cracklib daily cron program to rebuild the cracklib dictionary database.
5 kx .TP
5 kx .I /etc/cracklib/cracklib.conf
5 kx cracklib configuration file used by the cracklib daily cron program to
5 kx rebuild the cracklib dictionary database.
5 kx .TP
5 kx .I /usr/include/crack.h
5 kx cracklib header file defining the subroutine
5 kx .BR FascistCheck(3)
5 kx and the constant
5 kx .B CRACKLIB_DICTPATH
5 kx used to compile in the location of the cracklib dictionary database for
5 kx these utilities.
5 kx .TP
5 kx .I /usr/sbin/cracklib\-format
5 kx cracklib shell script to create initial list of words for dictionary
5 kx database.
5 kx .SH SEE ALSO
5 kx .BR FascistCheck (3),
5 kx .BR cracklib\-check (8),
5 kx .BR update\-cracklib (8),
5 kx .BR create\-cracklib\-dict (8)
5 kx .SH AUTHOR
5 kx .B cracklib
5 kx is written by Alec Muffett <alecm@crypto.dircon.co.uk>. Manual added
5 kx by Jean Pierre LeJacq <jplejacq@quoininc.com>.