| PAM_GETENVLIST(3) | Library Functions Manual | PAM_GETENVLIST(3) | 
pam_getenvlist —
    returns a list of all the PAM environment
  variables
Pluggable Authentication Module Library (libpam, -lpam)
#include
    <sys/types.h>
  
  #include
  <security/pam_appl.h>
char **
  
  pam_getenvlist(pam_handle_t
    *pamh);
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;
The pam_getenvlist function returns
    NULL on failure.
free(3), malloc(3), pam(3), pam_getenv(3), pam_putenv(3), pam_setenv(3), pam_unsetenv(3), environ(7)
X/Open Single Sign-On Service (XSSO) - Pluggable Authentication Modules, June 1997.
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.
| December 21, 2007 | macOS 15.6 |