1*ade90846SJoerg Sonnenberger.\"- 2*ade90846SJoerg Sonnenberger.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc. 3*ade90846SJoerg Sonnenberger.\" All rights reserved. 4*ade90846SJoerg Sonnenberger.\" 5*ade90846SJoerg Sonnenberger.\" This software was developed for the FreeBSD Project by ThinkSec AS and 6*ade90846SJoerg Sonnenberger.\" Network Associates Laboratories, the Security Research Division of 7*ade90846SJoerg Sonnenberger.\" Network Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 8*ade90846SJoerg Sonnenberger.\" ("CBOSS"), as part of the DARPA CHATS research program. 9*ade90846SJoerg Sonnenberger.\" 10*ade90846SJoerg Sonnenberger.\" Redistribution and use in source and binary forms, with or without 11*ade90846SJoerg Sonnenberger.\" modification, are permitted provided that the following conditions 12*ade90846SJoerg Sonnenberger.\" are met: 13*ade90846SJoerg Sonnenberger.\" 1. Redistributions of source code must retain the above copyright 14*ade90846SJoerg Sonnenberger.\" notice, this list of conditions and the following disclaimer. 15*ade90846SJoerg Sonnenberger.\" 2. Redistributions in binary form must reproduce the above copyright 16*ade90846SJoerg Sonnenberger.\" notice, this list of conditions and the following disclaimer in the 17*ade90846SJoerg Sonnenberger.\" documentation and/or other materials provided with the distribution. 18*ade90846SJoerg Sonnenberger.\" 3. The name of the author may not be used to endorse or promote 19*ade90846SJoerg Sonnenberger.\" products derived from this software without specific prior written 20*ade90846SJoerg Sonnenberger.\" permission. 21*ade90846SJoerg Sonnenberger.\" 22*ade90846SJoerg Sonnenberger.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 23*ade90846SJoerg Sonnenberger.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24*ade90846SJoerg Sonnenberger.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25*ade90846SJoerg Sonnenberger.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 26*ade90846SJoerg Sonnenberger.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27*ade90846SJoerg Sonnenberger.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28*ade90846SJoerg Sonnenberger.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29*ade90846SJoerg Sonnenberger.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30*ade90846SJoerg Sonnenberger.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31*ade90846SJoerg Sonnenberger.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32*ade90846SJoerg Sonnenberger.\" SUCH DAMAGE. 33*ade90846SJoerg Sonnenberger.\" 34*ade90846SJoerg Sonnenberger.\" $P4$ 35*ade90846SJoerg Sonnenberger.\" 36*ade90846SJoerg Sonnenberger.Dd June 16, 2005 37*ade90846SJoerg Sonnenberger.Dt PAM_GET_AUTHTOK 3 38*ade90846SJoerg Sonnenberger.Os 39*ade90846SJoerg Sonnenberger.Sh NAME 40*ade90846SJoerg Sonnenberger.Nm pam_get_authtok 41*ade90846SJoerg Sonnenberger.Nd retrieve authentication token 42*ade90846SJoerg Sonnenberger.Sh LIBRARY 43*ade90846SJoerg Sonnenberger.Lb libpam 44*ade90846SJoerg Sonnenberger.Sh SYNOPSIS 45*ade90846SJoerg Sonnenberger.In sys/types.h 46*ade90846SJoerg Sonnenberger.In security/pam_appl.h 47*ade90846SJoerg Sonnenberger.Ft "int" 48*ade90846SJoerg Sonnenberger.Fn pam_get_authtok "pam_handle_t *pamh" "int item" "const char **authtok" "const char *prompt" 49*ade90846SJoerg Sonnenberger.Sh DESCRIPTION 50*ade90846SJoerg SonnenbergerThe 51*ade90846SJoerg Sonnenberger.Nm 52*ade90846SJoerg Sonnenbergerfunction returns the cached authentication token, 53*ade90846SJoerg Sonnenbergeror prompts the user if no token is currently cached. 54*ade90846SJoerg SonnenbergerEither way, a pointer to the authentication token is stored in the 55*ade90846SJoerg Sonnenbergerlocation pointed to by the 56*ade90846SJoerg Sonnenberger.Fa authtok 57*ade90846SJoerg Sonnenbergerargument. 58*ade90846SJoerg Sonnenberger.Pp 59*ade90846SJoerg SonnenbergerThe 60*ade90846SJoerg Sonnenberger.Fa item 61*ade90846SJoerg Sonnenbergerargument must have one of the following values: 62*ade90846SJoerg Sonnenberger.Bl -tag -width 18n 63*ade90846SJoerg Sonnenberger.It Dv PAM_AUTHTOK 64*ade90846SJoerg SonnenbergerReturns the current authentication token, or the new token 65*ade90846SJoerg Sonnenbergerwhen changing authentication tokens. 66*ade90846SJoerg Sonnenberger.It Dv PAM_OLDAUTHTOK 67*ade90846SJoerg SonnenbergerReturns the previous authentication token when changing 68*ade90846SJoerg Sonnenbergerauthentication tokens. 69*ade90846SJoerg Sonnenberger.El 70*ade90846SJoerg Sonnenberger.Pp 71*ade90846SJoerg SonnenbergerThe 72*ade90846SJoerg Sonnenberger.Fa prompt 73*ade90846SJoerg Sonnenbergerargument specifies a prompt to use if no token is cached. 74*ade90846SJoerg SonnenbergerIf it is 75*ade90846SJoerg Sonnenberger.Dv NULL , 76*ade90846SJoerg Sonnenbergerthe 77*ade90846SJoerg Sonnenberger.Dv PAM_AUTHTOK_PROMPT 78*ade90846SJoerg Sonnenbergeror 79*ade90846SJoerg Sonnenberger.Dv PAM_OLDAUTHTOK_PROMPT 80*ade90846SJoerg Sonnenbergeritem, 81*ade90846SJoerg Sonnenbergeras appropriate, will be used. 82*ade90846SJoerg SonnenbergerIf that item is also 83*ade90846SJoerg Sonnenberger.Dv NULL , 84*ade90846SJoerg Sonnenbergera hardcoded default prompt will be used. 85*ade90846SJoerg Sonnenberger.Pp 86*ade90846SJoerg SonnenbergerIf 87*ade90846SJoerg Sonnenberger.Fa item 88*ade90846SJoerg Sonnenbergeris set to 89*ade90846SJoerg Sonnenberger.Dv PAM_AUTHTOK 90*ade90846SJoerg Sonnenbergerand there is a non-null 91*ade90846SJoerg Sonnenberger.Dv PAM_OLDAUTHTOK 92*ade90846SJoerg Sonnenbergeritem, 93*ade90846SJoerg Sonnenberger.Nm 94*ade90846SJoerg Sonnenbergerwill ask the user to confirm the new token by 95*ade90846SJoerg Sonnenbergerretyping it. 96*ade90846SJoerg SonnenbergerIf there is a mismatch, 97*ade90846SJoerg Sonnenberger.Nm 98*ade90846SJoerg Sonnenbergerwill return 99*ade90846SJoerg Sonnenberger.Dv PAM_TRY_AGAIN . 100*ade90846SJoerg Sonnenberger.Pp 101*ade90846SJoerg Sonnenberger.Sh RETURN VALUES 102*ade90846SJoerg SonnenbergerThe 103*ade90846SJoerg Sonnenberger.Nm 104*ade90846SJoerg Sonnenbergerfunction returns one of the following values: 105*ade90846SJoerg Sonnenberger.Bl -tag -width 18n 106*ade90846SJoerg Sonnenberger.It Bq Er PAM_BUF_ERR 107*ade90846SJoerg SonnenbergerMemory buffer error. 108*ade90846SJoerg Sonnenberger.It Bq Er PAM_CONV_ERR 109*ade90846SJoerg SonnenbergerConversation failure. 110*ade90846SJoerg Sonnenberger.It Bq Er PAM_SYSTEM_ERR 111*ade90846SJoerg SonnenbergerSystem error. 112*ade90846SJoerg Sonnenberger.It Bq Er PAM_TRY_AGAIN 113*ade90846SJoerg SonnenbergerTry again. 114*ade90846SJoerg Sonnenberger.El 115*ade90846SJoerg Sonnenberger.Sh SEE ALSO 116*ade90846SJoerg Sonnenberger.Xr pam 3 , 117*ade90846SJoerg Sonnenberger.Xr pam_get_item 3 , 118*ade90846SJoerg Sonnenberger.Xr pam_get_user 3 , 119*ade90846SJoerg Sonnenberger.Xr pam_strerror 3 120*ade90846SJoerg Sonnenberger.Sh STANDARDS 121*ade90846SJoerg SonnenbergerThe 122*ade90846SJoerg Sonnenberger.Nm 123*ade90846SJoerg Sonnenbergerfunction is an OpenPAM extension. 124*ade90846SJoerg Sonnenberger.Sh AUTHORS 125*ade90846SJoerg SonnenbergerThe 126*ade90846SJoerg Sonnenberger.Nm 127*ade90846SJoerg Sonnenbergerfunction and this manual page were developed for the 128*ade90846SJoerg Sonnenberger.Fx 129*ade90846SJoerg SonnenbergerProject by ThinkSec AS and Network Associates Laboratories, the 130*ade90846SJoerg SonnenbergerSecurity Research Division of Network Associates, Inc.& under 131*ade90846SJoerg SonnenbergerDARPA/SPAWAR contract N66001-01-C-8035 132*ade90846SJoerg Sonnenberger.Pq Dq CBOSS , 133*ade90846SJoerg Sonnenbergeras part of the DARPA CHATS research program. 134