2 .\" Copyright (c) 2001 Networks Associates Technologies, Inc.
3 .\" All rights reserved.
5 .\" This software was developed for the FreeBSD Project by ThinkSec AS and
6 .\" NAI Labs, the Security Research Division of Network Associates, Inc.
7 .\" under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the
8 .\" DARPA CHATS research program.
10 .\" Redistribution and use in source and binary forms, with or without
11 .\" modification, are permitted provided that the following conditions
13 .\" 1. Redistributions of source code must retain the above copyright
14 .\" notice, this list of conditions and the following disclaimer.
15 .\" 2. Redistributions in binary form must reproduce the above copyright
16 .\" notice, this list of conditions and the following disclaimer in the
17 .\" documentation and/or other materials provided with the distribution.
18 .\" 3. The name of the author may not be used to endorse or promote products
19 .\" derived from this software without specific prior written permission.
21 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
22 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
25 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 .\" $FreeBSD: src/lib/libpam/libpam/pam_set_item.3,v 1.2.2.2 2002/01/09 14:35:51 ru Exp $
34 .\" $DragonFly: src/lib/libpam/libpam/Attic/pam_set_item.3,v 1.2 2003/06/17 04:26:50 dillon Exp $
42 .Nd setting authentication parameters
46 .In security/pam_modules.h
48 .Fn pam_set_item "pam_handle_t *pamh" "int type" "const void *item"
50 .Fn pam_get_item "const pam_handle_t *pamh" "int type" "const void **item"
56 allow applications and modules to store and retrieve a variety of
57 authentication parameters, or
59 Each item is identified by an integer constant.
60 The following items are defined:
61 .Bl -tag -width ".Dv PAM_USER_PROMPT"
64 The name of the requesting service.
67 The name of the user the application wants to authenticate.
68 .It Dv PAM_USER_PROMPT
70 The string which will be used to prompt the user for an authentication
74 The name of the current terminal (for terminal-oriented applications)
75 or display (for X11 applications).
78 The name of the requesting user.
81 The name of the host the requesting user is logging in from.
84 The current authentication token.
85 This item is only accessible from PAM modules.
88 The expired authentication token.
89 This item is only accessible from PAM modules.
91 .Pq Vt "struct pam_conv"
92 The current conversation function.
95 structure is defined as follows:
98 int (*conv)(int num_msg,
99 const struct pam_message **msg,
100 struct pam_response **resp,
105 .It Dv PAM_FAIL_DELAY
107 A pointer to a callback function that should be called when a module
108 wants to introduce a delay after a failed authentication to discourage
116 functions return one of the following values:
117 .Bl -tag -width ".Dv PAM_SYSTEM_ERR"
119 The operation succeeded.
120 .It Dv PAM_SYSTEM_ERR
123 argument was invalid.
136 does not exist or is not accessible to the caller.
141 function can be used to translate these return codes to descriptive
157 items are non-standard extensions.