- establish a context with a system's smartcard framework
cc [ flag… ] file… -lsmartcard [ library…] #include <smartcard/scf.h> SCF_Status_t SCF_Session_getSession(SCF_Session_t *session);
A pointer to an SCF_Session_t. If a session is successfully established, the session will be returned through this parameter.
The SCF_Session_getSession() function establishes a session with the Solaris Smart Card Framework (SCF). Once a session has been opened, the session can be used with SCF_Session_getTerminal(3SMARTCARD) to access a smartcard terminal (reader). Information about the session can be obtained by calling SCF_Session_getInfo(3SMARTCARD).
When the session is no longer needed, SCF_Session_close(3SMARTCARD) should be called to end the session and release session resources. Closing a session will also close any terminals and cards opened within the session.
An application usually needs to open only a single session. For example, multiple terminals can be opened from the same session. If an appication opens additional sessions, each call will return independent (different) sessions.
Upon success, SCF_STATUS_SUCCESS is returned and session contains a valid session. If a session could not be established, an error value is returned and session remains unaltered.
The SCF_Session_getSession() function will fail if:
The session argument is a null pointer.
The library was unable to contact the smartcard server daemon (ocfserv(1M)), or the library was unable to obtain a session from the server.
An internal error occurred.
Example 1 Establish a session with the framework.
SCF_Status_t status; SCF_Session_t mySession; status = SCF_Session_getSession(&mySession); if (status != SCF_STATUS_SUCCESS) exit(1); /* Proceed with other smartcard operations. */
See attributes(5) for descriptions of the following attributes: