# pam_putenv - set or change PAM environment variable - man(3) - [phpMan]

[_PAM_PUTENV_(3)](https://www.chedong.com/phpMan.php/man/PAMPUTENV/3/markdown)                             Linux-PAM Manual                             [_PAM_PUTENV_(3)](https://www.chedong.com/phpMan.php/man/PAMPUTENV/3/markdown)

## NAME
       pam_putenv - set or change PAM environment variable

## SYNOPSIS
### #include <security/pam_appl.h>


       **int pam_putenv(pam_handle_t *_**pamh_**, const char *_**name_value_**);**

## DESCRIPTION
       The **pam_putenv **function is used to add or change the value of PAM environment variables as
       associated with the _pamh_ handle.

       The _pamh_ argument is an authentication handle obtained by a prior call to pam_start(). The
       _name_value_ argument is a single NUL terminated string of one of the following forms:

       NAME=value of variable
           In this case the environment variable of the given NAME is set to the indicated value:
           _value_ _of_ _variable_. If this variable is already known, it is overwritten. Otherwise it is
           added to the PAM environment.

       NAME=
           This function sets the variable to an empty value. It is listed separately to indicate
           that this is the correct way to achieve such a setting.

       NAME
           Without an '=' the **pam_putenv**() function will delete the corresponding variable from the
           PAM environment.

       **pam_putenv**() operates on a copy of _name_value_, which means in contrast to [**putenv**(3)](https://www.chedong.com/phpMan.php/man/putenv/3/markdown), the
       application is responsible for freeing the data.

## RETURN VALUES
       PAM_PERM_DENIED
           Argument _name_value_ given is a NULL pointer.

       PAM_BAD_ITEM
           Variable requested (for deletion) is not currently set.

       PAM_ABORT
           The _pamh_ handle is corrupt.

       PAM_BUF_ERR
           Memory buffer error.

       PAM_SUCCESS
           The environment variable was successfully updated.

## SEE ALSO
       [**pam_start**(3)](https://www.chedong.com/phpMan.php/man/pamstart/3/markdown), [**pam_getenv**(3)](https://www.chedong.com/phpMan.php/man/pamgetenv/3/markdown), [**pam_getenvlist**(3)](https://www.chedong.com/phpMan.php/man/pamgetenvlist/3/markdown), [**pam_strerror**(3)](https://www.chedong.com/phpMan.php/man/pamstrerror/3/markdown), [**pam**(7)](https://www.chedong.com/phpMan.php/man/pam/7/markdown)

Linux-PAM                                    05/07/2023                                [_PAM_PUTENV_(3)](https://www.chedong.com/phpMan.php/man/PAMPUTENV/3/markdown)
