summaryrefslogtreecommitdiff
path: root/modules/pam_debug
diff options
context:
space:
mode:
authorSteve Langasek <steve.langasek@ubuntu.com>2019-01-03 12:44:11 -0800
committerSteve Langasek <steve.langasek@ubuntu.com>2019-01-03 12:44:11 -0800
commitefd31890b5ed496a5a00c08a262da240e66a4ddc (patch)
tree22a7aab22b3a491bb58df250d7d6409e0c160bcc /modules/pam_debug
parent067affee9267fa0d1c21835182ba639ba33e820f (diff)
New upstream version 0.76
Diffstat (limited to 'modules/pam_debug')
-rw-r--r--modules/pam_debug/.cvsignore2
-rw-r--r--modules/pam_debug/Makefile15
-rw-r--r--modules/pam_debug/README15
-rw-r--r--modules/pam_debug/pam_debug.c175
4 files changed, 0 insertions, 207 deletions
diff --git a/modules/pam_debug/.cvsignore b/modules/pam_debug/.cvsignore
deleted file mode 100644
index dd17fdcf..00000000
--- a/modules/pam_debug/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-dynamic
-static
diff --git a/modules/pam_debug/Makefile b/modules/pam_debug/Makefile
deleted file mode 100644
index ae22cade..00000000
--- a/modules/pam_debug/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-#
-# $Id$
-#
-# This Makefile controls a build process of $(TITLE) module for
-# Linux-PAM. You should not modify this Makefile (unless you know
-# what you are doing!).
-#
-# Created by Andrew Morgan <morgan@linux.kernel.org> 2000/08/27
-#
-
-include ../../Make.Rules
-
-TITLE=pam_debug
-
-include ../Simple.Rules
diff --git a/modules/pam_debug/README b/modules/pam_debug/README
deleted file mode 100644
index b537e3a7..00000000
--- a/modules/pam_debug/README
+++ /dev/null
@@ -1,15 +0,0 @@
-# $Id$
-#
-
-This module returns what its module arguments tell it to return. It
-can be used for debugging libpam and/or an application.
-
-Here are some example ways to use it:
-
-auth requisite pam_permit.so
-auth [success=2 default=ok] pam_debug.so auth=perm_denied cred=success
-auth [default=reset] pam_debug.so auth=success cred=perm_denied
-auth [success=done default=die] pam_debug.so
-auth optional pam_debug.so auth=perm_denied cred=perm_denied
-auth sufficient pam_debug.so auth=success cred=success
-
diff --git a/modules/pam_debug/pam_debug.c b/modules/pam_debug/pam_debug.c
deleted file mode 100644
index 152b977c..00000000
--- a/modules/pam_debug/pam_debug.c
+++ /dev/null
@@ -1,175 +0,0 @@
-/* pam_permit module */
-
-/*
- * $Id$
- *
- * Written by Andrew Morgan <morgan@kernel.org> 2001/02/04
- *
- */
-
-#define DEFAULT_USER "nobody"
-
-#include <stdio.h>
-
-/*
- * This module is intended as a debugging aide for determining how
- * the PAM stack is operating.
- *
- * here, we make definitions for the externally accessible functions
- * in this file (these definitions are required for static modules
- * but strongly encouraged generally) they are used to instruct the
- * modules include file to define their prototypes.
- */
-
-#define PAM_SM_AUTH
-#define PAM_SM_ACCOUNT
-#define PAM_SM_SESSION
-#define PAM_SM_PASSWORD
-
-#include <security/pam_modules.h>
-#include <security/_pam_macros.h>
-
-#define _PAM_ACTION_UNDEF (-10)
-#include "../../libpam/pam_tokens.h"
-
-/* --- authentication management functions --- */
-
-static int state(pam_handle_t *pamh, const char *text)
-{
- int retval;
- struct pam_conv *conv;
- struct pam_message msg[1], *mesg[1];
- struct pam_response *response;
-
- retval = pam_get_item(pamh, PAM_CONV, (const void **)&conv);
- if ((retval != PAM_SUCCESS) || (conv == NULL)) {
- D(("failed to obtain conversation function"));
- return PAM_ABORT;
- }
-
- msg[0].msg_style = PAM_TEXT_INFO;
- msg[0].msg = text;
- mesg[0] = &msg[0];
-
- retval = conv->conv(1, (const struct pam_message **) mesg,
- &response, conv->appdata_ptr);
- if (retval != PAM_SUCCESS) {
- D(("conversation failed"));
- }
-
- return retval;
-}
-
-static int parse_args(int retval, const char *event,
- pam_handle_t *pamh, int argc, const char **argv)
-{
- int i;
-
- for (i=0; i<argc; ++i) {
- int length = strlen(event);
- if (!strncmp(event, argv[i], length) && (argv[i][length] == '=')) {
- int j;
- const char *return_string = argv[i] + (length+1);
-
- for (j=0; j<_PAM_RETURN_VALUES; ++j) {
- if (!strcmp(return_string, _pam_token_returns[j])) {
- retval = j;
- state(pamh, argv[i]);
- break;
- }
- }
- break;
- }
- }
-
- return retval;
-}
-
-PAM_EXTERN
-int pam_sm_authenticate(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
-{
- int retval;
- const char *user=NULL;
-
- /*
- * authentication requires we know who the user wants to be
- */
- retval = pam_get_user(pamh, &user, NULL);
- if (retval != PAM_SUCCESS) {
- D(("get user returned error: %s", pam_strerror(pamh,retval)));
- return retval;
- }
- if (user == NULL || *user == '\0') {
- D(("username not known"));
- pam_set_item(pamh, PAM_USER, (const void *) DEFAULT_USER);
- }
- user = NULL; /* clean up */
-
- retval = parse_args(PAM_SUCCESS, "auth", pamh, argc, argv);
-
- return retval;
-}
-
-PAM_EXTERN
-int pam_sm_setcred(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
-{
- return parse_args(PAM_SUCCESS, "cred", pamh, argc, argv);
-}
-
-/* --- account management functions --- */
-
-PAM_EXTERN
-int pam_sm_acct_mgmt(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
-{
- return parse_args(PAM_SUCCESS, "acct", pamh, argc, argv);
-}
-
-/* --- password management --- */
-
-PAM_EXTERN
-int pam_sm_chauthtok(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
-{
- if (flags & PAM_PRELIM_CHECK) {
- return parse_args(PAM_SUCCESS, "prechauthtok", pamh, argc, argv);
- } else {
- return parse_args(PAM_SUCCESS, "chauthtok", pamh, argc, argv);
- }
-}
-
-/* --- session management --- */
-
-PAM_EXTERN
-int pam_sm_open_session(pam_handle_t *pamh,int flags,int argc,
- const char **argv)
-{
- return parse_args(PAM_SUCCESS, "open_session", pamh, argc, argv);
-}
-
-PAM_EXTERN
-int pam_sm_close_session(pam_handle_t *pamh,int flags,int argc
- ,const char **argv)
-{
- return parse_args(PAM_SUCCESS, "close_session", pamh, argc, argv);
-}
-
-/* end of module definition */
-
-#ifdef PAM_STATIC
-
-/* static module data */
-
-struct pam_module _pam_permit_modstruct = {
- "pam_debug",
- pam_sm_authenticate,
- pam_sm_setcred,
- pam_sm_acct_mgmt,
- pam_sm_open_session,
- pam_sm_close_session,
- pam_sm_chauthtok
-};
-
-#endif