ec6044
diff -up c50a/Crack.FHS c50a/Crack
f5bc6a
--- c50a/Crack.FHS	2010-03-31 10:07:08.233610673 -0400
f5bc6a
+++ c50a/Crack	2010-03-31 10:07:08.236608122 -0400
f5bc6a
@@ -36,7 +36,9 @@ node=`uname -n`                         
ec6044
 
ec6044
 old_wd=`pwd`
ec6044
 
ec6044
-CRACK_HOME=${CRACK_HOME:-"/var/lib/crack"}
ec6044
+CRACK_HOME=${CRACK_HOME:-"/usr/share/crack"}
ec6044
+CRACK_BIN_HOME=${CRACK_BIN_HOME:-"/usr/libexec/crack/"}
f5bc6a
+CRACK_STATE_DIR=${CRACK_STATE_DIR:-"/var/lib/crack"}
ec6044
 
ec6044
 if cd $CRACK_HOME
ec6044
 then
f5bc6a
@@ -47,6 +49,7 @@ else
ec6044
 fi
ec6044
 
ec6044
 export CRACK_HOME
ec6044
+export CRACK_BIN_HOME
ec6044
 
ec6044
 ###
ec6044
 # Flagwaving
f5bc6a
@@ -56,6 +59,7 @@ echo "Crack $version: The Password Crack
ec6044
 echo "(c) Alec Muffett, 1991, 1992, 1993, 1994, 1995, 1996"
ec6044
 echo "System:" `uname -a 2>/dev/null`
ec6044
 echo "Home: $CRACK_HOME"
ec6044
+echo "Script Home: $CRACK_BIN_HOME"
ec6044
 echo "Invoked: $0 $*"
ec6044
 
ec6044
 ###
f5bc6a
@@ -205,7 +209,7 @@ fi
ec6044
 # Reset PATH in advance
ec6044
 ###
ec6044
 
ec6044
-PATH=$CRACK_HOME/scripts:$CRACK_HOME/$bindir:$PATH
ec6044
+PATH=$CRACK_HOME/scripts:$CRACK_BIN_HOME/$bindir:$PATH
ec6044
 export PATH
ec6044
 
ec6044
 ###
f5bc6a
@@ -222,7 +226,7 @@ fi
ec6044
 # Make the dictionary passes
ec6044
 ###
ec6044
 
ec6044
-dp=run/dict
f5bc6a
+dp=$CRACK_STATE_DIR/run/dict
ec6044
 dplf=$dp/.dictmade
ec6044
 
ec6044
 if [ ! -f $dplf ]
f5bc6a
@@ -253,21 +257,21 @@ fi
ec6044
 ###
ec6044
 
ec6044
 # F-files are feedback
ec6044
-crackin=run/I$node.$$           # I-files are input to the cracker
ec6044
-crackfb=run/D.boot.$$           # D-files are data from the cracker/fb
ec6044
-crackout=run/D$node.$$
ec6044
-crackerr=run/E$node.$$          # E-files are errors from the cracker
f5bc6a
+crackin=$CRACK_STATE_DIR/run/I$node.$$           # I-files are input to the cracker
f5bc6a
+crackfb=$CRACK_STATE_DIR/run/D.boot.$$           # D-files are data from the cracker/fb
f5bc6a
+crackout=$CRACK_STATE_DIR/run/D$node.$$
f5bc6a
+crackerr=$CRACK_STATE_DIR/run/E$node.$$          # E-files are errors from the cracker
ec6044
 
ec6044
 if [ "x$killflag" = "x" ]
ec6044
 then
ec6044
-	crackkf=run/K$node.$$   # K-files are kill file for 'plaster'
f5bc6a
+	crackkf=$CRACK_STATE_DIR/run/K$node.$$   # K-files are kill file for 'plaster'
ec6044
 else
ec6044
 	crackkf=$killflag
ec6044
 fi
ec6044
 
ec6044
 if [ "x$mailflag" != "x" ]
ec6044
 then
ec6044
-	crackmf=run/M$node.$$   # M-files are for mail commands
f5bc6a
+	crackmf=$CRACK_STATE_DIR/run/M$node.$$   # M-files are for mail commands
ec6044
 fi
ec6044
 
ec6044
 
f5bc6a
@@ -302,7 +306,7 @@ then
ec6044
 	echo "Crack: Merging password files..."
ec6044
 
ec6044
 	(
ec6044
-		cat run/F-merged        # first the feedback
f5bc6a
+		cat $CRACK_STATE_DIR/run/F-merged        # first the feedback
ec6044
 
ec6044
 		while [ "x$1" != "x" ]
ec6044
 		do
ec6044
diff -up c50a/Reporter.FHS c50a/Reporter
f5bc6a
--- c50a/Reporter.FHS	2010-03-31 10:07:08.233610673 -0400
f5bc6a
+++ c50a/Reporter	2010-03-31 10:07:08.236608122 -0400
f5bc6a
@@ -10,8 +10,8 @@
ec6044
 # document which accompanies distributions of Crack v5.0 and upwards.
ec6044
 ###
ec6044
 
ec6044
-CRACK_HOME=${CRACK_HOME:-"/var/lib/crack"}
f5bc6a
-cd $CRACK_HOME
f5bc6a
+CRACK_STATE_DIR=${CRACK_STATE_DIR:-"/var/lib/crack/"}
f5bc6a
+cd $CRACK_STATE_DIR
ec6044
 
ec6044
 tfile=run/T$$
f5bc6a
 date=`date`
f5bc6a
diff -up c50a/src/util/kickdict.c.FHS c50a/src/util/kickdict.c
f5bc6a
--- c50a/src/util/kickdict.c.FHS	2010-03-31 10:12:34.665486313 -0400
f5bc6a
+++ c50a/src/util/kickdict.c	2010-03-31 10:12:44.187480349 -0400
f5bc6a
@@ -15,7 +15,7 @@
f5bc6a
 #undef DEBUG2
f5bc6a
 
f5bc6a
 static char dictconf[] = "conf/dictrun.conf";
f5bc6a
-static char dictgrps[] = "run/dict";
f5bc6a
+static char dictgrps[] = "/var/lib/crack/run/dict";
f5bc6a
 static char xprogram[] = "dictfilt | crack-sort | uniq";
f5bc6a
 
f5bc6a
 int