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

199 lines
5.9 KiB
Plaintext
Executable File

Installation instructions for Aladdin key driver and daemon
==============================================================
In order for the hardware key access to work, a kernel mode driver
(aksparlnx.o) and a daemon (aksusbd) have to be loaded.
All described actions should be executed as root.
Driver Installation (aksparlnx.o)
---------------------------------
Generating the Device Node
For the driver to be accessible, a /dev/Hardlock device node has to be
generated. It should use the same major number as is used when loading
the driver (major=xxx command line to insmod, or 42 default).
The device node is generated with the following command:
mknod /dev/Hardlock c 42 0
Allow everyone to access the node:
chmod 666 /dev/Hardlock
Alternatively, if the access to Aladdin keys should be restricted to a
special group of users (e.g. group aladdin):
chgrp aladdin /dev/Hardlock
chmod 660 /dev/Hardlock
Initializing the Parport System
The aksparlnx driver uses the Linux parport driver in order to get
access to the parallel port in a manner which does not disturb other
users of the parallel port (e.g. printer, zip drive).
So before loading the aksparlnx driver the parport system must be
initialized:
modprobe parport_pc
The parport driver will report in the system log the parallel ports it
has found in the system. aksparlnx will by default be able to access
keys on any of these ports.
Loading the Driver
Then the aksparlnx driver should be loaded with the command:
insmod <path_to_driver>/aksparlnx.o
If the driver successfully loaded, a system log message is generated:
Feb 2 12:16:01 panther kernel: aksparlnx: EYE/HASP driver v1.01/API v3.77/major 42 loaded (ppi)
If the driver fails to load, an error message is generated in the
system log.
The loading of the driver (modprobe and insmod) should be incorporated
into a startup script, so that on subsequent system boots the driver
is readily available.
Aladdin daemon (aksusbd)
------------------------
In order for the daemon to access USB keys, the so-called usbdevfs
must be mounted on /proc/bus/usb.
On newer distributions it is mounted automatically (e.g SuSe 7.0). It
can be manually mounted with the command
mount -t usbdevfs none /proc/bus/usb
In order for the daemon to access parallel port keys, the kernel
driver aksparlnx must be installed before starting aksusbd.
Load the daemon by starting it:
<path>/aksusbd
The daemon will fork and put itself into the background. Successful
installation can be verified in the syslog:
Feb 2 12:42:43 panther aksusbd:[21772]: loaded, daemon version: 1.00, key API (USB) version: 3.77, key API (parallel) version: 3.77
It reports its version, the version of the API used for USB, and the
version of the API inside the kernel driver (for parallel port keys).
If the kernel driver happens to be unavailable when aksusbd is
launched, parallel port keys cannot be accessed, but USB keys are
still accessible. The system log reflects this status:
Feb 2 12:46:11 panther aksusbd:[21789]: loaded, daemon version: 1.00, key API (USB) version: 3.77 (parallel driver not available)
If /proc/bus/usb is not mounted when launching aksusbd, the daemon
does not load:
Feb 2 12:52:05 panther aksusbd:[21804]: cannot open /proc/bus/usb/devices: No such file or directory
Preferably the daemon should be started at system boot up time with
some script located in /etc/rc.d/init.d or /etc/init.d (depending on
Linux distribution).
Options for aksparlnx.o
-----------------------
Types of diagnostic messages:
-----------------------------
You can use the switch loglevel to select which types of diagnostic
will be issued by the driver. Possible values are:
0 - nothing, only errors
1 - normal (default)
2 - verbose
3 - ultra verbose
The messages are logged in syslog with priority kern.info
(and kern.debug). Refer to /etc/syslog.conf to see where the messages
will be put, usally it is the file /var/log/messages.
e.g.
insmod aksparlnx.o loglevel=2
Change device major number:
---------------------------
The driver uses device major number 42 by default. You can
change this by giving an argument to the insmod command:
insmod aksparlnx.o major=123
You have to change the driver special file also:
mknod /dev/Hardlock c 123 0
Port addresses:
---------------
If you have a parallel port in the system which by chance isn't
detected by the Linux parport driver (and therefore not seen by
aksparlnx.o), you can tell aksparlnx.o of the existence of this
port:
insmod aksparlnx.o hlportaddress=0x278
BEWARE: You should know what you do! Giving an illegal port
address here may reliably crash the system!
Timeout:
--------
You can specify the maximum amount of time the driver waits when
requesting exclusive port access from the parport driver. The value
used is 1/100 of a second. The default value is 100 (= 1 second).
insmod aksparlnx.o timeout=200
After this time (in this example 2 seconds) the request will be
aborted with a PORT_BUSY error.
Options for aksusbd
-------------------
Types of diagnostic messages:
-----------------------------
You can use the switch loglevel to select which types of diagnostic
will be issued by the daemon. Possible values are:
0 - nothing, only errors
1 - normal (default)
2 - verbose
3 - ultra verbose
The messages are logged in syslog with priority kern.info
(and kern.debug). Refer to /etc/syslog.conf to see where the messages
will be put, usally it is the file /var/log/messages.
e.g.
aksusbd -l 2
Permissions:
------------
The Unix domain socket /tmp/.aksusb is used by the applications to
access aksusbd. This is created with permissions 666 by
default. You can tell aksusbd to use different permissions:
aksusbd -u 660