#
#ident "@(#)postinstall 1.7 96/02/29 SMI"
#
# Copyright 1995 Sun Microsystems, Inc. All Rights Reserved
#

ASPPP=/etc/init.d/asppp
TMP=/tmp/asppp.$$

#
# Add an exit to the old starting script
#
if [ -f ${ASPPP} ]; then
	sed -e 's/^PATH/\
pppexit_for3_X() { 	# Do not remove. Change for Solstice PPP 3.X \
	exit 0 \
}\
pppexit_for3_X \
\
\
PATH/' ${ASPPP} > ${TMP}

	cp ${TMP} ${ASPPP}
	rm ${TMP}
fi

#
# Add the ttydefs lines
# TODO: make it directly in the package with sed section
#
#
TTYDEFS=/etc/ttydefs
STTYDEFS=/usr/sbin/sttydefs
PPPDEFS="ppp115200 ppp57600 ppp38400 ppp19200 ppp9600 ppp4800"
UUDEFS="uu115200 uu57600 uu38400 uu19200 uu9600 uu4800"
DEFS="${PPPDEFS} ${UUDEFS}"
PPPFLAGS="cs8 -parenb hupcl"
UUFLAGS="cs7 parenb parodd hupcl"
#
# remove existing entries 
#
for E in $DEFS; do
	$STTYDEFS -r $E > /dev/null 2>&1
done

#
# Add new one
#
for D in $PPPDEFS; do
	SPEED=`echo $D | sed 's/^ppp//'`
	FLAGS="${SPEED} ${PPPFLAGS}"
	NEXT="uu${SPEED}"
	#
	# The sttydefs always set set autobaud flag
	#
	# $STTYDEFS -a $D -n $NEXT -i "$FLAGS" -f "$FLAGS"
	LINE="${D}:${FLAGS}:${FLAGS}::${NEXT}"
	echo "${LINE}" >> /etc/ttydefs
done
#
# Add the one for uucp
#
for D in $UUDEFS; do
	SPEED=`echo $D | sed 's/^uu//'`
	FLAGS="${SPEED} ${UUFLAGS}"
	#
	# Compute the link
	#
	case $D in
	uu115200) NEXT=ppp57600 ;;
	uu57600)  NEXT=ppp38400 ;;
	uu38400)  NEXT=ppp19200 ;;
	uu19200)  NEXT=ppp9600  ;;
	uu9600)   NEXT=ppp4800  ;;
	uu4800)   NEXT=ppp2400  ;;
	uu2400)   NEXT=ppp1200  ;;
	uu1200)   NEXT=ppp38400 ;;
	*)        NEXT=$D       ;;
	esac
	LINE="${D}:${FLAGS}:${FLAGS}::${NEXT}"
	echo "${LINE}" >> /etc/ttydefs
done

#
# Add ppp the password entry
#
# useradd check the shell
# We have to be sure about the order of the pkg installation
# useradd -c 'Solstice PPP 3.0' -g 5 -o -u 10 -d / -s /usr/sbin/pppls ppp

PASSWD_ENTRY="ppp:x:10:5:Solstice PPP 3.0 pppls:/:/usr/sbin/pppls"
SHADOW_ENTRY="ppp:*LK*:::::::"

grep '^ppp' /etc/passwd > /dev/null 2>&1
if [ $? -eq 1 ]; then
	echo "$PASSWD_ENTRY" >> /etc/passwd
	echo "$SHADOW_ENTRY" >> /etc/shadow
fi

exit 0
