PAM_GETENVLIST(3)

NAME
pam_getenvlist - returns a list of all the PAM environment variables

SYNOPSIS
#include <sys/types.h>
#include <security/pam_appl.h>
char **
pam_getenvlist(pam_handle_t *pamh);

DESCRIPTION
The pam_getenvlist() function returns a copy of the given PAM context's environment list as a pointer to an array of strings. The last element in the array is NULL. The pointer is suitable for assignment to environ.

The array and the strings it lists are allocated using malloc(3), and should be released using free(3) after use:

        char **envlist, **env;
        envlist = environ;
        environ = pam_getenvlist(pamh);
        /* do something nifty */
        for (env = environ; *env != NULL; env++)
            free(*env);
        free(environ);
        environ = envlist;

RETURN VALUES
The pam_getenvlist() function returns NULL on failure.

SEE ALSO
free(3), malloc(3), pam(3), pam_getenv(3), pam_putenv(3), pam_setenv(3), environ(7)

STANDARDS
X/Open Single Sign-On Service (XSSO) - Pluggable Authentication Modules, June 1997.

AUTHORS
The pam_getenvlist() function and this manual page were developed for the FreeBSD Project by ThinkSec AS and Network Associates Laboratories, the Security Research Division of Network Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 (“CBOSS”), as part of the DARPA CHATS research program.

The OpenPAM library is maintained by Dag-Erling Smørgrav <des@des.dev>.