pam_deny.c revision 81469
150276Speter/*-
250276Speter * Copyright 2001 Mark R V Murray
350276Speter * All rights reserved.
462449Speter *
550276Speter * Redistribution and use in source and binary forms, with or without
662449Speter * modification, are permitted provided that the following conditions
762449Speter * are met:
862449Speter * 1. Redistributions of source code must retain the above copyright
962449Speter *    notice, this list of conditions and the following disclaimer.
1062449Speter * 2. Redistributions in binary form must reproduce the above copyright
1162449Speter *    notice, this list of conditions and the following disclaimer in the
1262449Speter *    documentation and/or other materials provided with the distribution.
1362449Speter *
1462449Speter * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
1562449Speter * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1662449Speter * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1762449Speter * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
1850276Speter * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
1950276Speter * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2050276Speter * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2150276Speter * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2250276Speter * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2362449Speter * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2462449Speter * SUCH DAMAGE.
2550276Speter *
2650276Speter * $FreeBSD: head/lib/libpam/modules/pam_deny/pam_deny.c 81469 2001-08-10 19:02:21Z markm $
2750276Speter */
2850276Speter
2950276Speter#define PAM_SM_AUTH
3050276Speter#define PAM_SM_ACCOUNT
3150276Speter#define PAM_SM_SESSION
3250276Speter#define PAM_SM_PASSWORD
3350276Speter
3450276Speter#include <security/pam_modules.h>
3550276Speter#include "pam_mod_misc.h"
3650276Speter
3750276SpeterPAM_EXTERN int
3850276Speterpam_sm_authenticate(pam_handle_t *pamh, int flags, int argc, const char **argv)
3950276Speter{
4050276Speter	struct options options;
4150276Speter
4250276Speter	pam_std_option(&options, NULL, argc, argv);
4350276Speter
4462449Speter	PAM_LOG("Options processed");
4550276Speter
4650276Speter	PAM_VERBOSE_ERROR("Unconditional deny");
4750276Speter
4850276Speter	PAM_RETURN(PAM_AUTH_ERR);
4950276Speter}
5050276Speter
5150276SpeterPAM_EXTERN int
5250276Speterpam_sm_setcred(pam_handle_t *pamh, int flags, int argc, const char **argv)
5350276Speter{
5450276Speter	struct options options;
5550276Speter
5650276Speter	pam_std_option(&options, NULL, argc, argv);
5750276Speter
5850276Speter	PAM_LOG("Options processed");
5950276Speter
6050276Speter	PAM_VERBOSE_ERROR("Unconditional deny");
6150276Speter
6250276Speter	PAM_RETURN(PAM_CRED_UNAVAIL);
6350276Speter}
6450276Speter
6550276SpeterPAM_EXTERN int
6650276Speterpam_sm_acct_mgmt(pam_handle_t *pamh, int flags, int argc ,const char **argv)
6750276Speter{
6850276Speter	struct options options;
6950276Speter
7050276Speter	pam_std_option(&options, NULL, argc, argv);
7150276Speter
7250276Speter	PAM_LOG("Options processed");
7350276Speter
7450276Speter	PAM_VERBOSE_ERROR("Unconditional deny");
7550276Speter
7650276Speter	PAM_RETURN(PAM_ACCT_EXPIRED);
7750276Speter}
7850276Speter
7950276SpeterPAM_EXTERN int
8050276Speterpam_sm_chauthtok(pam_handle_t *pamh, int flags, int argc, const char **argv)
8150276Speter{
8250276Speter	struct options options;
8350276Speter
8450276Speter	pam_std_option(&options, NULL, argc, argv);
8550276Speter
8650276Speter	PAM_LOG("Options processed");
8750276Speter
8850276Speter	PAM_VERBOSE_ERROR("Unconditional deny");
8950276Speter
9050276Speter	PAM_RETURN(PAM_PERM_DENIED);
9150276Speter}
9250276Speter
9350276SpeterPAM_EXTERN int
9450276Speterpam_sm_open_session(pam_handle_t *pamh, int flags, int argc, const char **argv)
9550276Speter{
9650276Speter	struct options options;
9750276Speter
9850276Speter	pam_std_option(&options, NULL, argc, argv);
9950276Speter
10050276Speter	PAM_LOG("Options processed");
10150276Speter
10250276Speter	PAM_VERBOSE_ERROR("Unconditional deny");
10350276Speter
10450276Speter	PAM_RETURN(PAM_SESSION_ERR);
10550276Speter}
10650276Speter
10750276SpeterPAM_EXTERN int
10850276Speterpam_sm_close_session(pam_handle_t *pamh, int flags, int argc, const char **argv)
10950276Speter{
11050276Speter	struct options options;
11150276Speter
112166124Srafan	pam_std_option(&options, NULL, argc, argv);
11350276Speter
11450276Speter	PAM_LOG("Options processed");
11550276Speter
11650276Speter	PAM_VERBOSE_ERROR("Unconditional deny");
11750276Speter
118166124Srafan	PAM_RETURN(PAM_SESSION_ERR);
11950276Speter}
12050276Speter
121166124SrafanPAM_MODULE_ENTRY("pam_deny");
12250276Speter