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
		
			
				
	
	
		
			98 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			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
 |