libsmartcard(3LIB) Interface Libraries libsmartcard(3LIB)NAME
libsmartcard - smartcard library
SYNOPSIS
cc [ flag... ] file... -lsmartcard [ library...]
#include <smartcard/scf.h>
DESCRIPTION
Functions in this library allow an application to select a smartcard terminal, determine when cards are inserted or removed, and exchange
data with the card.
INTERFACES
The shared object libsmartcard.so.1 provides the public interfaces defined below. See intro(3) for additional information on shared object
interfaces.
SCF_Card_close SCF_Card_exchangeAPDU
SCF_Card_freeInfo SCF_Card_getInfo
SCF_Card_lock SCF_Card_reset
SCF_Card_unlock SCF_Card_waitForCardRemoved
SCF_Session_close SCF_Session_freeInfo
SCF_Session_getInfo SCF_Session_getSession
SCF_Session_getTerminal SCF_Terminal_addEventListener
SCF_Terminal_close SCF_Terminal_freeInfo
SCF_Terminal_getCard SCF_Terminal_getInfo
SCF_Terminal_removeEventListener SCF_Terminal_updateEventListener
SCF_Terminal_waitForCardAbsent SCF_Terminal_waitForCardPresent
SCF_strerror
FILES
/usr/lib/libsmartcard.so.1 shared object
/usr/lib/64/libsmartcard.so.1 64-bit shared object
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWocf |
+-----------------------------+-----------------------------+
|Availability |SUNWocf (32-bit) |
+-----------------------------+-----------------------------+
| |SUNWocfx (64-bit) |
+-----------------------------+-----------------------------+
|Interface Stability |Evolving |
+-----------------------------+-----------------------------+
|MT-Level |MT-Safe |
+-----------------------------+-----------------------------+
SEE ALSO smartcard(1M), intro(3), attributes(5), smartcard(5)SunOS 5.10 22 May 2003 libsmartcard(3LIB)
Check Out this Related Man Page
SCF_Session_freeInfo(3SMARTCARD) Smartcard Library Functions SCF_Session_freeInfo(3SMARTCARD)NAME
SCF_Session_freeInfo, SCF_Terminal_freeInfo, SCF_Card_freeInfo - deallocate information storage
SYNOPSIS
cc [ flag... ] file... -lsmartcard [ library...]
#include <smartcard/scf.h>
SCF_Status_t SCF_Session_freeInfo(SCF_Session_t session, void *value);
SCF_Status_t SCF_Terminal_freeInfo(SCF_Terminal_t terminal, void *value);
SCF_Status_t SCF_Card_freeInfo(SCF_Card_t card, void *value);
PARAMETERS
card An object that was returned from SCF_Terminal_getCard(3SMARTCARD). This object must be associated with the information
value being freed.
session An object that was returned from SCF_Session_getSession(3SMARTCARD). This object must be associated with the information
value being freed.
terminal An object that was returned from SCF_Session_getTerminal(3SMARTCARD). This object must be associated with the information
value being freed.
value A pointer that was returned from a call to SCF_Session_getInfo(3SMARTCARD), SCF_Terminal_getInfo(3SMARTCARD), or
SCF_Card_getInfo(3SMARTCARD).
DESCRIPTION
When information is requested for an object (for example, by using SCF_Session_getInfo()), the result is placed in memory allocated for
that request. This memory must eventually be deallocated, or a memory leak will result. The deallocation of memory can occur in one of two
ways.
o The simplest method is to allow the smartcard library to automatically deallocate memory when the object associated with the informa-
tion is closed. For example, when SCF_Card_close(3SMARTCARD) is called, any information obtained from SCF_Card_getInfo() for that card
object is deallocated. The application is not required to call SCF_Card_freeInfo() at all.
o If the object persists for a long period of time, the application can explicitly request the information to be deallocated without
closing the object, so that memory is not wasted on unneeded storage. Similarly, if an application repeatedly requests information
about an object (even the same information), the application can explicitly request deallocation as needed, so that memory usage does
not continue to increase until the object is closed. In general, requesting information to be deallocated can be used to reduce run-
time memory bloat.
Attempts to access deallocated memory result in undefined behavior.
RETURN VALUES
If the information is successfully deallocated, SCF_STATUS_SUCCESS is returned. Otherwise, an error value is returned.
ERRORS
These functions will fail if:
SCF_STATUS_BADARGS The specified value cannot be deallocated, possibly because of an invalid pointer, a value already deallocated, or
because the value is not associated with the specified session, terminal, or card.
SCF_STATUS_BADHANDLE The specified session, terminal, or card has been closed or is invalid.
SCF_STATUS_FAILED An internal error occured.
EXAMPLES
Example 1: Free information.
char *terminalName;
SCF_Status_t status;
SCF_Terminal_t myTerminal;
/* (...call SCF_Session_getTerminal to open myTerminal...) */
status = SCF_Terminal_getInfo(myTerminal, "name", &terminalName);
if (status != SCF_STATUS_SUCCESS) exit(1);
printf("The terminal name is %s
", terminalName);
status = SCF_Terminal_freeInfo(myTerminal, terminalName);
if (status != SCF_STATUS_SUCCESS) exit(1);
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Evolving |
+-----------------------------+-----------------------------+
|MT-Level |MT-Safe |
+-----------------------------+-----------------------------+
SEE ALSO libsmartcard(3LIB), SCF_Session_getInfo(3SMARTCARD), SCF_Session_getSession(3SMARTCARD), SCF_Session_getTerminal(3SMARTCARD), SCF_Termi-
nal_getCard(3SMARTCARD), attributes(5)SunOS 5.10 28 Feb 2001 SCF_Session_freeInfo(3SMARTCARD)