Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pam_putenv(3pam) [opensolaris man page]

pam_putenv(3PAM)					       PAM Library Functions						  pam_putenv(3PAM)

NAME
pam_putenv - change or add a value to the PAM environment SYNOPSIS
cc [ flag ... ] file ... -lpam [ library ... ] #include <security/pam_appl.h> int pam_putenv(pam_handle_t *pamh, const char *name_value); DESCRIPTION
The pam_putenv() function sets the value of the PAM environment variable name equal to value either by altering an existing PAM variable or by creating a new one. The name_value argument points to a string of the form name=value. A call to pam_putenv() does not immediately change the environment. All name_value pairs are stored in the PAM handle pamh. An application such as login(1) may make a call to pam_getenv(3PAM) or pam_geten- vlist(3PAM) to retrieve the PAM environment variables saved in the PAM handle and set them in the environment if appropriate. login will not set PAM environment values which overwrite the values for SHELL, HOME, LOGNAME, MAIL, CDPATH, IFS, and PATH. Nor will login set PAM environment values which overwrite any value that begins with LD_. If name_value equals NAME=, then the value associated with NAME in the PAM handle will be set to an empty value. If name_value equals NAME, then the environment variable NAME will be removed from the PAM handle. RETURN VALUES
The pam_putenv() function may return one of the following values: PAM_SUCCESS The function returned successfully. PAM_OPEN_ERR dlopen() failed when dynamically loading a service module. PAM_SYMBOL_ERR Symbol not found. PAM_SERVICE_ERR Error in service module. PAM_SYSTEM_ERR System error. PAM_BUF_ERR Memory buffer error. PAM_CONV_ERR Conversation failure. PAM_PERM_DENIED Permission denied. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability | Stable | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe with exceptions | +-----------------------------+-----------------------------+ SEE ALSO
dlopen(3C), pam(3PAM), pam_getenv(3PAM), pam_getenvlist(3PAM), libpam(3LIB), attributes(5) NOTES
The interfaces in libpam are MT-Safe only if each thread within the multithreaded application uses its own PAM handle. SunOS 5.11 1 Mar 2004 pam_putenv(3PAM)

Check Out this Related Man Page

pam_set_data(3PAM)					       PAM Library Functions						pam_set_data(3PAM)

NAME
pam_set_data, pam_get_data - PAM routines to maintain module specific state SYNOPSIS
cc [ flag ... ] file ... -lpam [ library ... ] #include <security/pam_appl.h> int pam_set_data(pam_handle_t *pamh, const char *module_data_name, void *data, void (*cleanup) (pam_handle_t *pamh, void *data, int pam_end_status)); int pam_get_data(const pam_handle_t *pamh, const char *module_data_name, const void **data); DESCRIPTION
The pam_set_data() and pam_get_data() functions allow PAM service modules to access and update module specific information as needed. These functions should not be used by applications. The pam_set_data() function stores module specific data within the PAM handle pamh. The module_data_name argument uniquely identifies the data, and the data argument represents the actual data. The module_data_name argument should be unique across all services. The cleanup function frees up any memory used by the data after it is no longer needed, and is invoked by pam_end(). The cleanup function takes as its arguments a pointer to the PAM handle, pamh, a pointer to the actual data, data, and a status code, pam_end_status. The sta- tus code determines exactly what state information needs to be purged. If pam_set_data() is called and module data already exists from a prior call to pam_set_data() under the same module_data_name, then the existing data is replaced by the new data, and the existing cleanup function is replaced by the new cleanup function. The pam_get_data() function retrieves module-specific data stored in the PAM handle, pamh, identified by the unique name, mod- ule_data_name. The data argument is assigned the address of the requested data. The data retrieved by pam_get_data() should not be modi- fied or freed. The data will be released by pam_end(). RETURN VALUES
In addition to the return values listed in pam(3PAM), the following value may also be returned: PAM_NO_MODULE_DATA No module specific data is present. ATTRIBUTES
See attributes(5) for description of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability | Stable | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe with exceptions | +-----------------------------+-----------------------------+ SEE ALSO
pam(3PAM), pam_end(3PAM), libpam(3LIB), attributes(5) NOTES
The interfaces in libpam are MT-Safe only if each thread within the multithreaded application uses its own PAM handle. SunOS 5.11 13 Oct 1998 pam_set_data(3PAM)
Man Page