--- /dev/null
+#!/bin/sh
+# Update the ls-lR.
+
+set -e
+. $SCRIPTVARS
+
+cd $ftpdir
+
+filename=ls-lR
+
+echo "Removing any core files ..."
+find -type f -name core -print0 | xargs -0r rm -v
+
+echo "Checking permissions on files in the FTP tree ..."
+find -type f \( \! -perm -444 -o -perm +002 \) -ls
+find -type d \( \! -perm -555 -o -perm +002 \) -ls
+
+echo "Checking symlinks ..."
+symlinks -rd .
+
+echo "Creating recursive directory listing ... "
+rm -f .$filename.new
+TZ=UTC ls -lR | grep -v Archive_Maintenance_In_Progress > .$filename.new
+
+if [ -r ${filename}.gz ] ; then
+ mv -f ${filename}.gz $filename.old.gz
+ mv -f .$filename.new $filename
+ rm -f $filename.patch.gz
+ zcat $filename.old.gz | diff -u - $filename | gzip -9cfn - >$filename.patch.gz
+ rm -f $filename.old.gz
+else
+ mv -f .$filename.new $filename
+fi
+
+gzip -9cfN $filename >$filename.gz
+rm -f $filename