pam_sm_chauthtok(3) — Linux manual page


PAM_SM_CHAUTHTOK(3)         Linux-PAM Manual         PAM_SM_CHAUTHTOK(3)

NAME         top

       pam_sm_chauthtok - PAM service function for authentication token

SYNOPSIS         top

       #include <security/pam_modules.h>

       int pam_sm_chauthtok(pam_handle_t *pamh, int flags, int argc,
                            const char **argv);

DESCRIPTION         top

       The pam_sm_chauthtok function is the service module's
       implementation of the pam_chauthtok(3) interface.

       This function is used to (re-)set the authentication token of the

       Valid flags, which may be logically OR'd with PAM_SILENT, are:

           Do not emit any messages.

           This argument indicates to the module that the user's
           authentication token (password) should only be changed if it
           has expired. This flag is optional and must be combined with
           one of the following two flags. Note, however, the following
           two options are mutually exclusive.

           This indicates that the modules are being probed as to their
           ready status for altering the user's authentication token. If
           the module requires access to another system over some
           network it should attempt to verify it can connect to this
           system on receiving this flag. If a module cannot establish
           it is ready to update the user's authentication token it
           should return PAM_TRY_AGAIN, this information will be passed
           back to the application.

           If the control value sufficient is used in the password
           stack, the PAM_PRELIM_CHECK section of the modules following
           that control value is not always executed.

           This informs the module that this is the call it should
           change the authorization tokens. If the flag is logically
           OR'd with PAM_CHANGE_EXPIRED_AUTHTOK, the token is only
           changed if it has actually expired.

       The PAM library calls this function twice in succession. The
       first time with PAM_PRELIM_CHECK and then, if the module does not
       return PAM_TRY_AGAIN, subsequently with PAM_UPDATE_AUTHTOK. It is
       only on the second call that the authorization token is
       (possibly) changed.

RETURN VALUES         top

           The module was unable to obtain the new authentication token.

           The module was unable to obtain the old authentication token.

           Cannot change the authentication token since it is currently

           Authentication token aging has been disabled.

           Permission denied.

           Preliminary check was unsuccessful. Signals an immediate
           return to the application is desired.

           The authentication token was successfully updated.

           User unknown to password service.

SEE ALSO         top

       pam(3), pam_chauthtok(3), pam_sm_chauthtok(3), pam_strerror(3),

COLOPHON         top

       This page is part of the linux-pam (Pluggable Authentication
       Modules for Linux) project.  Information about the project can be
       found at ⟨⟩.  If you have a bug report
       for this manual page, see ⟨//⟩.  This page was
       obtained from the project's upstream Git repository
       ⟨⟩ on 2023-12-22.  (At
       that time, the date of the most recent commit that was found in
       the repository was 2023-12-18.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to

Linux-PAM Manual               12/22/2023            PAM_SM_CHAUTHTOK(3)

Pages that refer to this page: pam_get_authtok(3)pam_get_item(3)pam_set_item(3)pam_sm_acct_mgmt(3)pam_sm_chauthtok(3)pam_debug(8)