pam_authenticate.c (92289) | pam_authenticate.c (93982) |
---|---|
1/*- 2 * Copyright (c) 2002 Networks Associates Technology, Inc. 3 * All rights reserved. 4 * 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. --- 17 unchanged lines hidden (view full) --- 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * | 1/*- 2 * Copyright (c) 2002 Networks Associates Technology, Inc. 3 * All rights reserved. 4 * 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. --- 17 unchanged lines hidden (view full) --- 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * |
34 * $P4: //depot/projects/openpam/lib/pam_authenticate.c#8 $ | 34 * $P4: //depot/projects/openpam/lib/pam_authenticate.c#9 $ |
35 */ 36 37#include <sys/param.h> 38 39#include <security/pam_appl.h> 40 41#include "openpam_impl.h" 42 --- 5 unchanged lines hidden (view full) --- 48 */ 49 50int 51pam_authenticate(pam_handle_t *pamh, 52 int flags) 53{ 54 int pam_err; 55 | 35 */ 36 37#include <sys/param.h> 38 39#include <security/pam_appl.h> 40 41#include "openpam_impl.h" 42 --- 5 unchanged lines hidden (view full) --- 48 */ 49 50int 51pam_authenticate(pam_handle_t *pamh, 52 int flags) 53{ 54 int pam_err; 55 |
56 if (flags & ~(PAM_SILENT|PAM_DISALLOW_NULL_AUTHTOK)) 57 return (PAM_SYMBOL_ERR); |
|
56 pam_err = openpam_dispatch(pamh, PAM_SM_AUTHENTICATE, flags); 57 pam_set_item(pamh, PAM_AUTHTOK, NULL); 58 return (pam_err); 59} 60 61/* 62 * Error codes: 63 * 64 * =openpam_dispatch 65 * =pam_sm_authenticate 66 * !PAM_IGNORE 67 */ | 58 pam_err = openpam_dispatch(pamh, PAM_SM_AUTHENTICATE, flags); 59 pam_set_item(pamh, PAM_AUTHTOK, NULL); 60 return (pam_err); 61} 62 63/* 64 * Error codes: 65 * 66 * =openpam_dispatch 67 * =pam_sm_authenticate 68 * !PAM_IGNORE 69 */ |
70 71/** 72 * The =pam_authenticate function attempts to authenticate the user 73 * associated with the pam context specified by the =pamh argument. 74 * 75 * The application is free to call =pam_authenticate as many times as it 76 * wishes, but some modules may maintain an internal retry counter and 77 * return =PAM_MAXTRIES when it exceeds some preset or hardcoded limit. 78 * 79 * The =flags argument is the binary or of zero or more of the following 80 * values: 81 * 82 * =PAM_SILENT 83 * Do not emit any messages. 84 * =PAM_DISALLOW_NULL_AUTHTOK 85 * Fail if the user's authentication token is null. 86 */ |
|