Content-type: text/html Man page of pam_open_session

pam_open_session

Section: PAM Library Functions (3PAM)
Updated: 13 Oct 1998
Index Return to Main Contents
 

NAME

pam_open_session, pam_close_session - perform PAM session creation and termination operations  

SYNOPSIS

cc [ flag ... ] file ... -lpam [ library ... ]
#include <security/pam_appl.h>

int pam_open_session(pam_handle_t *pamh, int flags);

int pam_close_session(pam_handle_t *pamh, int flags);  

DESCRIPTION

The pam_open_session() function is called after a user has been successfully authenticated. See pam_authenticate(3PAM) and pam_acct_mgmt(3PAM). It is used to notify the session modules that a new session has been initiated. All programs that use the pam(3PAM) library should invoke pam_open_session() when beginning a new session. Upon termination of this activity, pam_close_session() should be invoked to inform pam(3PAM) that the session has terminated.

The pamh argument is an authentication handle obtained by a prior call to pam_start(). The following flag may be set in the flags field for pam_open_session() and pam_close_session():

PAM_SILENT The session service should not generate any messages.

 

RETURN VALUES

Upon successful completion, PAM_SUCCESS is returned. In addition to the return values defined in pam(3PAM), the following value may be returned on error:

PAM_SESSION_ERR Cannot make or remove an entry for the specified session.

 

ATTRIBUTES

See attributes(5) for description of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
Interface Stability Stable
MT-LevelMT-Safe with exceptions

 

SEE ALSO

getutxent(3C), pam(3PAM), pam_acct_mgmt(3PAM), pam_authenticate(3PAM), pam_start(3PAM), attributes(5)  

NOTES

In many instances, the pam_open_session() and pam_close_session() calls may be made by different processes. For example, in UNIX the login process opens a session, while the init process closes the session. In this case, UTMP/WTMP entries may be used to link the call to pam_close_session() with an earlier call to pam_open_session(). This is possible because UTMP/WTMP entries are uniquely identified by a combination of attributes, including the user login name and device name, which are accessible through the PAM handle, pamh. The call to pam_open_session() should precede UTMP/WTMP entry management, and the call to pam_close_session() should follow UTMP/WTMP exit management.

The interfaces in libpam are MT-Safe only if each thread within the multithreaded application uses its own PAM handle.


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUES
ATTRIBUTES
SEE ALSO
NOTES

This document was created by man2html, using the manual pages.
Time: 02:38:32 GMT, October 02, 2010