summaryrefslogtreecommitdiff
path: root/modules/pam_debug
diff options
context:
space:
mode:
authorThorsten Kukuk <kukuk@thkukuk.de>2005-09-01 13:59:20 +0000
committerThorsten Kukuk <kukuk@thkukuk.de>2005-09-01 13:59:20 +0000
commit3a265f6249e17882cf0195dd1fe7abb94cd3160f (patch)
treed3ca5c748d2b14b4ccf5eb0b9b6d33eafb0d9184 /modules/pam_debug
parent50c04bd94ce573a123a1a92f713646e00bc77b39 (diff)
Relevant BUGIDs: none
Purpose of commit: new feature Commit summary: --------------- Add PAM extensions pam_*prompt, pam_*error and pam_*info for usage by modules to libpam, add new pam_ext.h header file with prototypes.
Diffstat (limited to 'modules/pam_debug')
-rw-r--r--modules/pam_debug/pam_debug.c47
1 files changed, 17 insertions, 30 deletions
diff --git a/modules/pam_debug/pam_debug.c b/modules/pam_debug/pam_debug.c
index e7ac8861..45edc82e 100644
--- a/modules/pam_debug/pam_debug.c
+++ b/modules/pam_debug/pam_debug.c
@@ -9,6 +9,8 @@
#define DEFAULT_USER "nobody"
+#include "config.h"
+
#include <stdio.h>
/*
@@ -28,6 +30,7 @@
#include <security/pam_modules.h>
#include <security/_pam_macros.h>
+#include <security/pam_ext.h>
#define _PAM_ACTION_UNDEF (-10)
#include "../../libpam/pam_tokens.h"
@@ -37,27 +40,11 @@
static int state(pam_handle_t *pamh, const char *text)
{
int retval;
- const void *void_conv;
- const struct pam_conv *conv;
- struct pam_message msg[1], *mesg[1];
- struct pam_response *response;
-
- retval = pam_get_item(pamh, PAM_CONV, &void_conv);
- conv = (const struct pam_conv *) 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 = pam_info (pamh, "%s", text);
- retval = conv->conv(1, (const struct pam_message **) mesg,
- &response, conv->appdata_ptr);
if (retval != PAM_SUCCESS) {
- D(("conversation failed"));
+ D(("pam_info failed"));
}
return retval;
@@ -89,8 +76,8 @@ static int parse_args(int retval, const char *event,
}
PAM_EXTERN
-int pam_sm_authenticate(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
+int pam_sm_authenticate(pam_handle_t *pamh, int flags UNUSED,
+ int argc, const char **argv)
{
int retval;
const char *user=NULL;
@@ -117,8 +104,8 @@ int pam_sm_authenticate(pam_handle_t *pamh, int flags, int argc,
}
PAM_EXTERN
-int pam_sm_setcred(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
+int pam_sm_setcred(pam_handle_t *pamh, int flags UNUSED,
+ int argc, const char **argv)
{
return parse_args(PAM_SUCCESS, "cred", pamh, argc, argv);
}
@@ -126,8 +113,8 @@ int pam_sm_setcred(pam_handle_t *pamh, int flags, int argc,
/* --- account management functions --- */
PAM_EXTERN
-int pam_sm_acct_mgmt(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
+int pam_sm_acct_mgmt(pam_handle_t *pamh, int flags UNUSED,
+ int argc, const char **argv)
{
return parse_args(PAM_SUCCESS, "acct", pamh, argc, argv);
}
@@ -135,8 +122,8 @@ int pam_sm_acct_mgmt(pam_handle_t *pamh, int flags, int argc,
/* --- password management --- */
PAM_EXTERN
-int pam_sm_chauthtok(pam_handle_t *pamh, int flags, int argc,
- const char **argv)
+int pam_sm_chauthtok(pam_handle_t *pamh, int flags UNUSED,
+ int argc, const char **argv)
{
if (flags & PAM_PRELIM_CHECK) {
return parse_args(PAM_SUCCESS, "prechauthtok", pamh, argc, argv);
@@ -148,15 +135,15 @@ int pam_sm_chauthtok(pam_handle_t *pamh, int flags, int argc,
/* --- session management --- */
PAM_EXTERN
-int pam_sm_open_session(pam_handle_t *pamh,int flags,int argc,
- const char **argv)
+int pam_sm_open_session(pam_handle_t *pamh, int flags UNUSED,
+ 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)
+int pam_sm_close_session(pam_handle_t *pamh, int flags UNUSED,
+ int argc, const char **argv)
{
return parse_args(PAM_SUCCESS, "close_session", pamh, argc, argv);
}