xref: /freebsd/lib/libpam/modules/pam_permit/pam_permit.c (revision 24fe7ba0d953a2b7edc43fe371050ebd8f36f427)
11642eb1aSMark Murray /*-
21642eb1aSMark Murray  * Copyright 2001 Mark R V Murray
31642eb1aSMark Murray  * All rights reserved.
41642eb1aSMark Murray  *
51642eb1aSMark Murray  * Redistribution and use in source and binary forms, with or without
61642eb1aSMark Murray  * modification, are permitted provided that the following conditions
71642eb1aSMark Murray  * are met:
81642eb1aSMark Murray  * 1. Redistributions of source code must retain the above copyright
91642eb1aSMark Murray  *    notice, this list of conditions and the following disclaimer.
101642eb1aSMark Murray  * 2. Redistributions in binary form must reproduce the above copyright
111642eb1aSMark Murray  *    notice, this list of conditions and the following disclaimer in the
121642eb1aSMark Murray  *    documentation and/or other materials provided with the distribution.
131642eb1aSMark Murray  *
141642eb1aSMark Murray  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
151642eb1aSMark Murray  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
161642eb1aSMark Murray  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
171642eb1aSMark Murray  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
181642eb1aSMark Murray  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
191642eb1aSMark Murray  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
201642eb1aSMark Murray  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
211642eb1aSMark Murray  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
221642eb1aSMark Murray  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
231642eb1aSMark Murray  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
241642eb1aSMark Murray  * SUCH DAMAGE.
251642eb1aSMark Murray  */
261642eb1aSMark Murray 
27ceaf33f5SMatthew Dillon #include <sys/cdefs.h>
28ceaf33f5SMatthew Dillon __FBSDID("$FreeBSD$");
29ceaf33f5SMatthew Dillon 
3004f71c53SDag-Erling Smørgrav #include <stddef.h>
310ae5018bSDag-Erling Smørgrav 
321642eb1aSMark Murray #define	PAM_SM_AUTH
331642eb1aSMark Murray #define	PAM_SM_ACCOUNT
341642eb1aSMark Murray #define	PAM_SM_SESSION
351642eb1aSMark Murray #define	PAM_SM_PASSWORD
361642eb1aSMark Murray 
378c66575dSDag-Erling Smørgrav #include <security/pam_appl.h>
381642eb1aSMark Murray #include <security/pam_modules.h>
391642eb1aSMark Murray 
401642eb1aSMark Murray PAM_EXTERN int
4124fe7ba0SDag-Erling Smørgrav pam_sm_authenticate(pam_handle_t *pamh, int flags __unused,
4224fe7ba0SDag-Erling Smørgrav     int argc __unused, const char *argv[] __unused)
431642eb1aSMark Murray {
441642eb1aSMark Murray 	const char *user;
4524fe7ba0SDag-Erling Smørgrav 	int r;
461642eb1aSMark Murray 
4724fe7ba0SDag-Erling Smørgrav 	if ((r = pam_get_user(pamh, &user, NULL)) != PAM_SUCCESS)
4824fe7ba0SDag-Erling Smørgrav 		return (r);
491642eb1aSMark Murray 
5024fe7ba0SDag-Erling Smørgrav 	return (PAM_SUCCESS);
511642eb1aSMark Murray }
521642eb1aSMark Murray 
531642eb1aSMark Murray PAM_EXTERN int
5424fe7ba0SDag-Erling Smørgrav pam_sm_setcred(pam_handle_t *pamh __unused, int flags __unused,
5524fe7ba0SDag-Erling Smørgrav     int argc __unused, const char *argv[] __unused)
561642eb1aSMark Murray {
571642eb1aSMark Murray 
5824fe7ba0SDag-Erling Smørgrav 	return (PAM_SUCCESS);
591642eb1aSMark Murray }
601642eb1aSMark Murray 
611642eb1aSMark Murray PAM_EXTERN int
6224fe7ba0SDag-Erling Smørgrav pam_sm_acct_mgmt(pam_handle_t *pamh __unused, int flags __unused,
6324fe7ba0SDag-Erling Smørgrav     int argc __unused, const char *argv[] __unused)
641642eb1aSMark Murray {
651642eb1aSMark Murray 
6624fe7ba0SDag-Erling Smørgrav 	return (PAM_SUCCESS);
671642eb1aSMark Murray }
681642eb1aSMark Murray 
691642eb1aSMark Murray PAM_EXTERN int
7024fe7ba0SDag-Erling Smørgrav pam_sm_chauthtok(pam_handle_t *pamh __unused, int flags __unused,
7124fe7ba0SDag-Erling Smørgrav     int argc __unused, const char *argv[] __unused)
721642eb1aSMark Murray {
731642eb1aSMark Murray 
7424fe7ba0SDag-Erling Smørgrav 	return (PAM_SUCCESS);
751642eb1aSMark Murray }
761642eb1aSMark Murray 
771642eb1aSMark Murray PAM_EXTERN int
7824fe7ba0SDag-Erling Smørgrav pam_sm_open_session(pam_handle_t *pamh __unused, int flags __unused,
7924fe7ba0SDag-Erling Smørgrav     int argc __unused, const char *argv[] __unused)
801642eb1aSMark Murray {
811642eb1aSMark Murray 
8224fe7ba0SDag-Erling Smørgrav 	return (PAM_SUCCESS);
831642eb1aSMark Murray }
841642eb1aSMark Murray 
851642eb1aSMark Murray PAM_EXTERN int
8624fe7ba0SDag-Erling Smørgrav pam_sm_close_session(pam_handle_t *pamh __unused, int flags __unused,
8724fe7ba0SDag-Erling Smørgrav     int argc __unused, const char *argv[] __unused)
881642eb1aSMark Murray {
891642eb1aSMark Murray 
9024fe7ba0SDag-Erling Smørgrav 	return (PAM_SUCCESS);
911642eb1aSMark Murray }
921642eb1aSMark Murray 
931642eb1aSMark Murray PAM_MODULE_ENTRY("pam_permit");
94