chipcardd.conf(5)

NAME

chipcardd.conf - LibChipCard server configuration file format

DESCRIPTION

LibChipCard uses a card server to access your card readers, called chipcardd. This server uses a configuration file called chipcardd.conf. It is expected to be in /usr/local/etc/chipcardd.conf. Please see libchipcard.conf(5) for a description of the basic syntax of configuration files for LibChipCard.

ROOT

The root contains general information about the server mode. timeout

    Time to wait in milliseconds for client requests per round. In each round the server first waits up the the time given here for client requests. After that it handles these requests. Recommended values are 500-1000 (best is 750)

maxmsg

    Maximum number of response to handle per loop (see above for an explanation for the round) Recommended value is 20.

enabled

    A value of zero indicates that the server is not to be started. Please note that this value is only checked by the chipcard server itself upon startup. If after loading the configuration file the server detects that this variable has a value of "0" then it will go down immediately.

READER

The configuration file holds one or more reader groups which describe the card readers. These groups are enumerated, so that the second element of the groupname is the sequence number in a list of readers (e.g. [reader/1] is the first reader, [reader/2] is the second and so on. If you have the PCSC daemon running (called pcscd) then you don't have to setup the readers supported by that daemon in this configuration file. The chipcard server of LibChipCard (chipcardd) automatically enumerates all PCSC driven readers upon startup (if PCSC support is compiled in). However, if you want to use the keypad of your reader with PCSC drivers, then you need to setup your readers here, since PCSC does not provide the information about whether the reader has a keypad or not. So you need to tell libchipcard about it. The example at the end of this doucument shows how to make it. readertype

    Generally LibChipCard works with any reader that provides a CTAPI driver. However, each manufacturer has it's own implementation details which must be cared for. Therefore you have to give the manufacturer here. Possible values are: kobil (for Kobil devices), towitoko (for Towitoko devices), cyberjack (for Reiner SCT Cyberjacks) and other (for any other type) Please note: If you only want to use local services (i.e. not sharing the readers between multiple hosts) then you should use the address 127.0.0.1 (or localhost).

drivertype

    Currently LibChipCard supports the most important driver types: CTAPI (which is available for most readers) and PCSC (for SCard drivers). Most manufacturers provide a CTAPI driver, so I recommend trying this first. But if you have a PCSC server running (you can check that with "ps ax | grep pcscd") then you are in most cases forced to use that type.

driver

    Specify the path and name of the driver. Most Towitoko CTAPI drivers are called libtowitoko.so, Kobil drivers are called libct_kaan.so or libct_b1.so and Cyberjack drivers are called libctapi_cyberjack.so. For PCSC drivers set the name to libpcsclite.so. A special note on Kobil drivers: If you have a Kobil Kaan Standard then you must use the driver libct_kaan.so. The Kobil Kaan Professional needs libct_b1.so.

name

    Specify the name of your reader. For CTAPI drivers the name chosen here doesn't matter, you can any name you like (but it is best to make it a name which allows you to identify it). PCSC driver need the exact name under which the reader is known to PCSC. You can get the name to be used by observing the PCSC daemon (pcscd), or by inspecting the PCSC configuration file. Under Linux the name to be given here is that given as FRIENDLYNAME in the file /etc/reader.conf. So if the friendly name is Towitoko then the name to give here is Towitoko 0 0.

port

    Specify the port at which the reader is connected to your computer. This typically is one of COM1 to COM4, LP1 to LP2 or USB0 to USB3. If the drivertype is other then you must give a numeric value here. Most drivers accept values between 0 and 5, just check them. If you have a reader which you have setup with drivertype=other then please let me know about it by sending me an email (martin@libchipcard.de) so that your configuration can be included in one of the next releases.

flags

    This variable specifies some attributes of the reader. This value consists of several values ORed to build the final value. The following list shows the meaning of each bit: Bit 0 (LSB) - reader has it's own keypad Bit 1 - reader has it's own display If the reader has a keypad but the secure pin verification (where you enter the pin directly into the readers keypad) does not work, then please pretend not to have a keypad (by zeroing out the appropriate bits).

EXAMPLE

This is a simple configuration file which sets up a local card server listening at port 32891 (which is the default port). This server handles two readers: A CTAPI driven reader and a PCSC driven one with a keypad and a display.

    timeout=750 maxmsg=10 enabled=1 # this is the CTAPI driven KOBIL Kaan Professional # at COM1 which has a keypad [reader/1] readertype="kobil" drivertype="ctapi" driver="/usr/local/lib/libct_b1.so" name="term1" port="COM1" flags="3" # this is a PCSC driven KOBIL Kaan Professional # at COM2 which has a keypad [reader/2] readertype="kobil" drivertype="pcsc" driver="libpcsclite.so" name="Kobil 0 0" port="COM2" flags="3"

FILES

/usr/local/etc/chipcardd.conf

SEE ALSO

libchipcard.conf(5) chipcardc.conf(5)