Smart Card Driver Library

Microsoft provides a driver library that contains a set of routines that standardize most of the functions that a smart card reader driver must perform. Vendor-supplied reader drivers must call these routines to perform the following actions:

  • To create device names that the smart card resource manager requires

  • To check parameters and detect errors for IOCTL calls

  • To parse ATR-strings and convert parameters

  • To support the T=0 and T=1 ISO protocols

  • To support the inverse convention

  • To log events

  • To synchronize access to the driver

The WDM Smart Card Driver Routines section, lists the driver library routines and identifies which routine performs each action.

The driver library processes most of the IOCTL requests that the resource manager sends to the reader driver. The Smart Card Driver IOCTLs section, lists the IOCTLs that the driver library processes on behalf of the reader driver.

The following files are used by the smart card driver library and by drivers that call smart card driver library routines.

File Description

Smclib.h

Contains declarations and definitions required by all drivers that call smart card library routines.

Smcnt.h

Contains declarations and definitions required by a WDM driver that calls smart card library routines.

Winsmcrd.h

Global header file for all smart card reader drivers and smart card-aware applications.

Smclib.sys

The library's binary file for WDM drivers.