#! /bin/sh

# Vorlufiges Skript zur Installation von CAPI4Linux (binr)

. /etc/rc.config.d/i4l_default.rc.config
. ./install.card

# TEST: Bin ich root?
user=`id -u`
if [ "$user" != "0" ]; then
	echo -e "./install mu von \"root\" gestartet werden."
	exit 1
fi

# TEST: Existiert pppd?
which pppd > /dev/null
if [ 0 != $? ]; then
	echo pppd ist nicht installiert!
	exit 2
fi

# TEST: Version von pppd?
pppd --version 2> install.log
ver=`cat install.log | cut -d" " -f3`
vmajor=`echo $ver | cut -d. -f1`
vminor=`echo $ver | cut -d. -f2`
vpatch=`echo $ver | cut -d. -f3`
case $vmajor in
        0|1)	verok=0
                ;;
        2)      case $vminor in
                        0|1|2)	verok=0
                                ;;
                        3)      case $vpatch in
					0|1|2|3|4|5|6|7|8|9|10)
						verok=0
						;;
					*)	verok=1
						;;
				esac
                                ;;
                        *)      verok=1
				;;
                esac
		;;
        *)      verok=1
		;;
esac
if [ "$verok" == "0" ]; then
        echo pppd mu mindestens in Version 2.3.11 vorliegen.
        echo Installiert ist Version $ver ...
        exit 3
fi
 
# TEST: Existiert /dev/capi?
# if ! test -d /dev/capi; then
# 	mkdir /dev/capi
# fi

# TEST: i4l vorhanden & aktiv?
if [ "$I4L_START" == "yes" ]; then
	if ! test -f /sbin/init.d/i4l_hardware.old; then
        	mv -vf /sbin/init.d/i4l_hardware /sbin/init.d/i4l_hardware.old
	fi
        cp -vf i4l_hardware /sbin/init.d
        chmod 744 /sbin/init.d/i4l_hardware
	i4l=1
else
        if ! test -f /sbin/init.d/c4l_start; then
                cp -vf c4l_start /sbin/init.d
                chmod 744 /sbin/init.d/c4l_start
                ln -s /sbin/init.d/c4l_start /sbin/init.d/rc2.d/S03c4l
                ln -s /sbin/init.d/c4l_start /sbin/init.d/rc3.d/S03c4l
                ln -s /sbin/init.d/c4l_start /sbin/init.d/rc2.d/K44c4l
                ln -s /sbin/init.d/c4l_start /sbin/init.d/rc3.d/K44c4l
        fi
	i4l=0
fi

# TEST: Existiert /usr/doc/CAPI4Linux/...?
if ! test -d /usr/doc; then
	mkdir /usr/doc
fi
if ! test -d /usr/doc/CAPI4Linux; then
        mkdir /usr/doc/CAPI4Linux
        mkdir /usr/doc/CAPI4Linux/de
        mkdir /usr/doc/CAPI4Linux/en
fi

echo Kopiere CAPI-Treiber...
rpm --upgrade --force c4l-sys-2001.01.22-1.i386.rpm 2>  install.log
echo Kopiere CAPI-Tools...
rpm --upgrade --force c4l-lib-2001.01.15-1.i386.rpm 2>> install.log
cp -vf fcpcmcia.o    /lib/modules/2.2.13/misc
cp -vf fcpcmcia_cs.o /lib/modules/2.2.13/pcmcia
cp -vf pcmcia.conf   /etc/capi.conf
cp -vf avm           /etc/pcmcia
cp -vf avm.opts      /etc/pcmcia
cp -vf install_passive.de /usr/doc/CAPI4Linux/de/install_passive.txt
cp -vf install_passive.en /usr/doc/CAPI4Linux/en/install_passive.txt
depmod -a 2>> install.log 

# Aufruf der karten-spezifischen finalize-Methode...
finalize
 
case $i4l in

        1)      echo -e "\n\aFalls dies nicht bereits geschehen ist:"
                echo -e "ISDN4Linux auf AVM B1 umstellen, Reboot...\n"
		;;
	0)	echo -e "\n\aDie CardServices brauchen einen Reboot...\n"
		;;
	*)	echo "Oops!"
		;;
esac

