.\" Title: pam_sm_authenticate
.\" Author:
.\" Generator: DocBook XSL Stylesheets v1.73.1
.\" Date: 02/04/2008
.\" Manual: Linux-PAM Manual
.\" Source: Linux-PAM Manual
.\"
.TH "PAM_SM_AUTHENTICATE" "3" "02/04/2008" "Linux-PAM Manual" "Linux-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
pam_sm_authenticate - PAM service function for user authentication
.SH "SYNOPSIS"
.sp
.ft B
.nf
#define PAM_SM_AUTH
.fi
.ft
.sp
.ft B
.nf
#include
.fi
.ft
.HP 35
.BI "PAM_EXTERN int pam_sm_authenticate(pam_handle_t\ *" "pamh" ", int\ " "flags" ", int\ " "argc" ", const\ char\ **" "argv" ");"
.SH "DESCRIPTION"
.PP
The
\fBpam_sm_authenticate\fR
function is the service module\'s implementation of the
\fBpam_authenticate\fR(3)
interface\.
.PP
This function performs the task of authenticating the user\.
.PP
Valid flags, which may be logically OR\'d with
\fIPAM_SILENT\fR, are:
.PP
PAM_SILENT
.RS 4
Do not emit any messages\.
.RE
.PP
PAM_DISALLOW_NULL_AUTHTOK
.RS 4
Return
\fBPAM_AUTH_ERR\fR
if the database of authentication tokens for this authentication mechanism has a
\fINULL\fR
entry for the user\. Without this flag, such a
\fINULL\fR
token will lead to a success without the user being prompted\.
.RE
.SH "RETURN VALUES"
.PP
PAM_AUTH_ERR
.RS 4
Authentication failure\.
.RE
.PP
PAM_CRED_INSUFFICIENT
.RS 4
For some reason the application does not have sufficient credentials to authenticate the user\.
.RE
.PP
PAM_AUTHINFO_UNAVAIL
.RS 4
The modules were not able to access the authentication information\. This might be due to a network or hardware failure etc\.
.RE
.PP
PAM_SUCCESS
.RS 4
The authentication token was successfully updated\.
.RE
.PP
PAM_USER_UNKNOWN
.RS 4
The supplied username is not known to the authentication service\.
.RE
.PP
PAM_MAXTRIES
.RS 4
One or more of the authentication modules has reached its limit of tries authenticating the user\. Do not try again\.
.RE
.SH "SEE ALSO"
.PP
\fBpam\fR(3),
\fBpam_authenticate\fR(3),
\fBpam_sm_setcred\fR(3),
\fBpam_strerror\fR(3),
\fBPAM\fR(8)