1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
4 <refentry id='pam_sm_acct_mgmt'>
6 <refentrytitle>pam_sm_acct_mgmt</refentrytitle>
7 <manvolnum>3</manvolnum>
8 <refmiscinfo class='setdesc'>Linux-PAM Manual</refmiscinfo>
11 <refnamediv id="pam_sm_acct_mgmt-name">
12 <refname>pam_sm_acct_mgmt</refname>
13 <refpurpose>PAM service function for account management</refpurpose>
16 <!-- body begins here -->
19 <funcsynopsis id='pam_sm_acct_mgmt-synopsis'>
20 <funcsynopsisinfo>#define PAM_SM_ACCOUNT</funcsynopsisinfo>
21 <funcsynopsisinfo>#include <security/pam_modules.h></funcsynopsisinfo>
23 <funcdef>PAM_EXTERN int <function>pam_sm_acct_mgmt</function></funcdef>
24 <paramdef>pam_handle_t *<parameter>pamh</parameter></paramdef>
25 <paramdef>int <parameter>flags</parameter></paramdef>
26 <paramdef>int <parameter>argc</parameter></paramdef>
27 <paramdef>const char **<parameter>argv</parameter></paramdef>
33 <refsect1 id='pam_sm_acct_mgmt-description'>
34 <title>DESCRIPTION</title>
36 The <function>pam_sm_acct_mgmt</function> function is the service
37 module's implementation of the
39 <refentrytitle>pam_acct_mgmt</refentrytitle><manvolnum>3</manvolnum>
40 </citerefentry> interface.
43 This function performs the task of establishing whether the user is
44 permitted to gain access at this time. It should be understood that
45 the user has previously been validated by an authentication
46 module. This function checks for other things. Such things might be:
47 the time of day or the date, the terminal line, remote hostname, etc.
48 This function may also determine things like the expiration on
49 passwords, and respond that the user change it before continuing.
52 Valid flags, which may be logically OR'd with
53 <emphasis>PAM_SILENT</emphasis>, are:
57 <term>PAM_SILENT</term>
60 Do not emit any messages.
65 <term>PAM_DISALLOW_NULL_AUTHTOK</term>
68 Return <emphasis remap='B'>PAM_AUTH_ERR</emphasis> if the
69 database of authentication tokens for this authentication
70 mechanism has a <emphasis>NULL</emphasis> entry for the user.
77 <refsect1 id="pam_sm_acct_mgmt-return_values">
78 <title>RETURN VALUES</title>
81 <term>PAM_ACCT_EXPIRED</term>
84 User account has expired.
89 <term>PAM_AUTH_ERR</term>
92 Authentication failure.
97 <term>PAM_NEW_AUTHTOK_REQD</term>
100 The user's authentication token has expired. Before calling
101 this function again the application will arrange for a new
102 one to be given. This will likely result in a call to
103 <function>pam_sm_chauthtok()</function>.
109 <term>PAM_PERM_DENIED</term>
117 <term>PAM_SUCCESS</term>
120 The authentication token was successfully updated.
125 <term>PAM_USER_UNKNOWN</term>
128 User unknown to password service.
135 <refsect1 id='pam_sm_acct_mgmt-see_also'>
136 <title>SEE ALSO</title>
139 <refentrytitle>pam</refentrytitle><manvolnum>3</manvolnum>
142 <refentrytitle>pam_acct_mgmt</refentrytitle><manvolnum>3</manvolnum>
145 <refentrytitle>pam_sm_chauthtok</refentrytitle><manvolnum>3</manvolnum>
148 <refentrytitle>pam_strerror</refentrytitle><manvolnum>3</manvolnum>
151 <refentrytitle>PAM</refentrytitle><manvolnum>8</manvolnum>