Modern systems use xinetd anyway, so this code just creates useless junk and error messages on installation.
281 lines
4.6 KiB
Plaintext
Executable File
281 lines
4.6 KiB
Plaintext
Executable File
XCOMM! /bin/ksh
|
|
XCOMM #######
|
|
XCOMM Product: CDE
|
|
XCOMM Fileset: CDE-MIN
|
|
XCOMM configure
|
|
XCOMM @(#) $TOG: configMin.src /main/1 1998/03/11 16:18:12 mgreess $
|
|
XCOMM #######
|
|
#define HASH #
|
|
|
|
PRODUCT=CDE
|
|
FILESET=CDE-MIN
|
|
DO_CONFIGURATION=""
|
|
retval=0
|
|
|
|
FixEtcServices()
|
|
{
|
|
FILE=/etc/services
|
|
TMPFILE=/tmp/services
|
|
|
|
XCOMM
|
|
XCOMM check for existence of /etc/services
|
|
XCOMM
|
|
|
|
if [ ! -f $FILE ] # highly unlikely
|
|
then
|
|
echo "" >$FILE
|
|
fi
|
|
|
|
XCOMM
|
|
XCOMM see if it already exists
|
|
XCOMM
|
|
|
|
awk '{if ($1 == "dtspc")
|
|
print $0 > "/tmp/dtspc-already-there"
|
|
}' $FILE >/dev/null
|
|
|
|
if [ ! -f /tmp/dtspc-already-there ]
|
|
then
|
|
echo "dtspc\t6112/tcp\t#subprocess control" >>$FILE
|
|
else
|
|
rm /tmp/dtspc-already-there
|
|
fi
|
|
|
|
XCOMM
|
|
XCOMM remove legacy entries like dtspcd
|
|
XCOMM
|
|
|
|
awk '{if ($1 == "dtspcd" || $1 == "#dtspcd")
|
|
;
|
|
else
|
|
print $0
|
|
}' $FILE >$TMPFILE
|
|
|
|
cp $TMPFILE $FILE
|
|
rm $TMPFILE
|
|
}
|
|
|
|
UnfixEtcServices()
|
|
{
|
|
FILE=/etc/services
|
|
TMPFILE=/tmp/services
|
|
|
|
awk '{if ($1 == "dtspc" && $2 == "6112/tcp")
|
|
;
|
|
else
|
|
print $0
|
|
}' $FILE >$TMPFILE
|
|
|
|
cp $TMPFILE $FILE
|
|
rm $TMPFILE
|
|
}
|
|
|
|
FixEtcInetdDotConf()
|
|
{
|
|
FILE=/etc/inetd.conf
|
|
TMPFILE=/tmp/inetd.conf
|
|
|
|
XCOMM
|
|
XCOMM check for existence of /etc/inetd.conf
|
|
XCOMM
|
|
|
|
if [ ! -f $FILE ] # highly unlikely (in the 1990s, quite likely in 2018)
|
|
then
|
|
return
|
|
fi
|
|
|
|
XCOMM
|
|
XCOMM see if it already exists
|
|
XCOMM
|
|
|
|
awk '{if ($1 == "dtspc")
|
|
print $0 > "/tmp/dtspc-already-there"
|
|
}' $FILE >/dev/null
|
|
|
|
DTSPCD=CDE_INSTALLATION_TOP/bin/dtspcd
|
|
|
|
if [ ! -f /tmp/dtspc-already-there ]
|
|
then
|
|
echo "dtspc stream tcp nowait root $DTSPCD $DTSPCD" >>$FILE
|
|
else
|
|
rm /tmp/dtspc-already-there
|
|
fi
|
|
|
|
XCOMM
|
|
XCOMM remove legacy entries like dtspcd
|
|
XCOMM
|
|
|
|
awk '{if ($1 == "dtspcd" || $1 == "#dtspcd")
|
|
;
|
|
else
|
|
print $0
|
|
}' $FILE >$TMPFILE
|
|
|
|
cp $TMPFILE $FILE
|
|
rm $TMPFILE
|
|
}
|
|
|
|
UnfixEtcInetdDotConf()
|
|
{
|
|
FILE=/etc/inetd.conf
|
|
TMPFILE=/tmp/inetd.conf
|
|
|
|
if [ ! -f $FILE ] # highly unlikely (in the 1990s, quite likely in 2018)
|
|
then
|
|
return
|
|
fi
|
|
|
|
awk '{if ($1 == "dtspc")
|
|
;
|
|
else
|
|
print $0
|
|
}' $FILE >$TMPFILE
|
|
|
|
cp $TMPFILE $FILE
|
|
rm $TMPFILE
|
|
}
|
|
|
|
FixEtcPamDotConf()
|
|
{
|
|
FILE=/etc/pam.conf
|
|
ORIGFILE=/etc/pam.conf.preCDE
|
|
|
|
XCOMM
|
|
XCOMM check for existence of /etc/pam.conf
|
|
XCOMM
|
|
|
|
if [ -f $FILE ]
|
|
then
|
|
echo "" > $ORIGFILE
|
|
cp CDE_INSTALLATION_TOP/config/sys.pam.conf $FILE
|
|
chmod 644 $FILE
|
|
else
|
|
echo "Warning: $FILE already exists. Leaving it alone." 1>&2
|
|
cp CDE_INSTALLATION_TOP/config/sys.pam.conf $ORIGFILE
|
|
fi
|
|
|
|
}
|
|
|
|
UnfixEtcPamDotConf()
|
|
{
|
|
FILE=/etc/pam.conf
|
|
TMPFILE=/etc/pam.conf.CDE
|
|
ORIGFILE=/etc/pam.conf.preCDE
|
|
|
|
if [ ! -f $FILE ]
|
|
then
|
|
echo "Warning: $FILE does not exist." 1>&2
|
|
elif [ ! -f $ORIGFILE ]
|
|
then
|
|
echo "Warning: $ORIGFILE does not exist. Leaving $FILE alone." 1>&2
|
|
else
|
|
mv $FILE $TMPFILE
|
|
cp $ORIGFILE $FILE
|
|
chmod 664 $FILE
|
|
fi
|
|
}
|
|
|
|
RemoveMinFiles()
|
|
{
|
|
while read SRC
|
|
do
|
|
if [ "$SRC" != "" ]
|
|
then
|
|
rm -f $SRC
|
|
dirname=${SRC%/STAR}
|
|
if [ -d $dirname ]
|
|
then
|
|
cd $dirname
|
|
while [ "$dirname" != "$CDE_TOP" ]
|
|
do
|
|
cd ..
|
|
rmdir ${dirname##STAR/} >/dev/null 2>/dev/null
|
|
dirname=${dirname%/STAR}
|
|
done
|
|
fi
|
|
fi
|
|
done <<-EOF
|
|
#include "CDE-MIN.list"
|
|
EOF
|
|
}
|
|
|
|
VerifyInstalledFiles()
|
|
{
|
|
echo "Status mode owner group filename"
|
|
echo "-----------------------------------------"
|
|
XCOMM exists correct correct correct /usr/dt/foo1
|
|
XCOMM MISSING WRONG WRONG WRONG /usr/dt/foo2
|
|
XCOMM exists the link is correct /usr/dt/link
|
|
|
|
while read SRC
|
|
do
|
|
#include "../verify.func"
|
|
done <<-EOF
|
|
#include "CDE-MIN.lst"
|
|
EOF
|
|
}
|
|
|
|
#include "../option.func"
|
|
|
|
XCOMM ###############################################################
|
|
XCOMM
|
|
XCOMM Main Body
|
|
XCOMM
|
|
XCOMM ###############################################################
|
|
|
|
HandleOption $*
|
|
|
|
if [ "$OPERATION" = "configure" ]
|
|
then
|
|
|
|
FixEtcServices
|
|
|
|
FixEtcInetdDotConf
|
|
|
|
HASH FixEtcPamDotConf
|
|
|
|
HASH
|
|
HASH create the /var/dt/tmp directory for the dtspcd
|
|
HASH
|
|
|
|
if [ ! -d CDE_LOGFILES_TOP/tmp ]
|
|
then
|
|
mkdir -p CDE_LOGFILES_TOP/tmp
|
|
fi
|
|
|
|
elif [ "$OPERATION" = "deconfigure" ]
|
|
then
|
|
|
|
UnfixEtcServices
|
|
|
|
UnfixEtcInetdDotConf
|
|
|
|
UnfixEtcPamDotConf
|
|
|
|
RemoveMinFiles
|
|
|
|
VerifyInstalledFiles
|
|
|
|
elif [ "$OPERATION" = "verify" ]
|
|
then
|
|
|
|
VerifyInstalledFiles
|
|
|
|
fi
|
|
|
|
if [ "$OPERATION" != "verify" ]
|
|
then
|
|
|
|
HASH issue a SIGHUP to the inetd process
|
|
|
|
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
|
|
if [ -s /tmp/tmppsout ]
|
|
then
|
|
awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
|
|
else
|
|
[ -x /usr/sbin/inetd ] && /usr/sbin/inetd
|
|
fi
|
|
fi
|
|
|
|
return $retval
|