alex 2d41198b3e Patch level :
Files correlati     :
Ricompilazione Demo : [ ]
Commento            :
Progetti e altra roba per Linux


git-svn-id: svn://10.65.10.50/trunk@11293 c028cbd2-c16b-5b4b-a496-9718f37d4682
2003-06-26 17:31:45 +00:00

98 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
VERSION=`uname -r`
# Set execute permission
chmod a+x skinstall skuninstall smartdem skeyver error-report
# Remove the loaded module
(lsmod | grep skey > /dev/null) && rmmod skey
# Copy the module
if ! install -d -o root -g root /lib/modules/$VERSION/misc ; then
echo Error creating the directory /lib/modules/$VERSION/misc/
exit 1
fi
if grep printk_R1b7d4074 /proc/ksyms > /dev/null ; then
if ! install -D -o root -g root -m 644 skey_R.o /lib/modules/$VERSION/misc/skey.o ; then
echo Error copying module skey_R.o in /lib/modules/$VERSION/misc/
exit 1
fi
elif grep printk_Rsmp_1b7d4074 /proc/ksyms > /dev/null ; then
if ! install -D -o root -g root -m 644 skey_Rsmp_.o /lib/modules/$VERSION/misc/skey.o ; then
echo Error copying module skey_Rsmp_.o in /lib/modules/$VERSION/misc/
exit 1
fi
elif grep printk_Rsmp1b7d4074 /proc/ksyms > /dev/null ; then
if ! install -D -o root -g root -m 644 skey_Rsmp.o /lib/modules/$VERSION/misc/skey.o ; then
echo Error copying module skey_Rsmp.o in /lib/modules/$VERSION/misc/
exit 1
fi
else
if ! install -D -o root -g root -m 644 skey.o /lib/modules/$VERSION/misc/skey.o ; then
echo Error copying module skey.o in /lib/modules/$VERSION/misc/
exit 1
fi
fi
# Remove devices
[ -e /dev/skey0 ] && rm -f /dev/skey0
[ -e /dev/skey1 ] && rm -f /dev/skey1
[ -e /dev/skey2 ] && rm -f /dev/skey2
[ -e /dev/skey3 ] && rm -f /dev/skey3
[ -e /dev/skey4 ] && rm -f /dev/skey4
[ -e /dev/skey5 ] && rm -f /dev/skey5
# Create devices
mknod /dev/skey0 c 59 0
chmod 666 /dev/skey0
chgrp daemon /dev/skey0
mknod /dev/skey1 c 59 1
chmod 666 /dev/skey1
chgrp daemon /dev/skey1
mknod /dev/skey2 c 59 2
chmod 666 /dev/skey2
chgrp daemon /dev/skey2
mknod /dev/skey3 c 59 3
chmod 666 /dev/skey3
chgrp daemon /dev/skey3
mknod /dev/skey4 c 59 4
chmod 666 /dev/skey4
chgrp daemon /dev/skey4
mknod /dev/skey5 c 59 5
chmod 666 /dev/skey5
chgrp daemon /dev/skey5
# Configure the module
if ! ./skeyver /lib/modules/$VERSION/misc/skey.o > /dev/null ; then
echo Error setting module version
exit 1
fi
# Add alias for the module
if [ -e /etc/modules.conf ] ; then
CONFMODULES=/etc/modules.conf
else
CONFMODULES=/etc/conf.modules
fi
cp $CONFMODULES $CONFMODULES.orig
cat $CONFMODULES.orig | grep -v "char-major-59" > $CONFMODULES
echo alias char-major-59 skey >> $CONFMODULES
# Run depmod
echo Updating modules dependencies
if ! depmod -a ; then
echo Error running depmod
exit 1
fi
# Manually load the module the first time
if ! modprobe skey ; then
echo Error loading the module
exit 1
fi
echo SmartKey driver installed
exit 0