summaryrefslogtreecommitdiff
path: root/modules/pam_echo/pam_echo.c
diff options
context:
space:
mode:
authorThorsten Kukuk <kukuk@thkukuk.de>2006-02-13 07:45:17 +0000
committerThorsten Kukuk <kukuk@thkukuk.de>2006-02-13 07:45:17 +0000
commitf833a0b4e1a755276f3cdc4efa121104286d1ef6 (patch)
tree8fdb4da595c702ad192d3a6921b463cfe3b77b1c /modules/pam_echo/pam_echo.c
parentf7827ccfd255e23f285eb8aec7ddf71af94dd6ff (diff)
Relevant BUGIDs:
Purpose of commit: new feature Commit summary: --------------- Convert manual page to xml and add missing sections. 2006-02-13 Thorsten Kukuk <kukuk@thkukuk.de> * modules/pam_echo/pam_echo.8.xml: New. * modules/pam_echo/pam_echo.8: Regenerated from xml file. * modules/pam_echo/Makefile.am: Include Make.xml.rules. * modules/pam_echo/pam_echo.c: Fix return value.
Diffstat (limited to 'modules/pam_echo/pam_echo.c')
-rw-r--r--modules/pam_echo/pam_echo.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/modules/pam_echo/pam_echo.c b/modules/pam_echo/pam_echo.c
index aa5d9285..e138c3df 100644
--- a/modules/pam_echo/pam_echo.c
+++ b/modules/pam_echo/pam_echo.c
@@ -76,7 +76,7 @@ replace_and_print (pam_handle_t *pamh, const char *mesg)
if (output == NULL)
{
pam_syslog (pamh, LOG_ERR, "running out of memory");
- return PAM_IGNORE;
+ return PAM_BUF_ERR;
}
for (p = mesg, len = 0; *p != '\0' && len < length - 1; ++p)
@@ -139,6 +139,7 @@ pam_echo (pam_handle_t *pamh, int flags, int argc, const char **argv)
int orig_argc = argc;
const char **orig_argv = argv;
const char *file = NULL;
+ int retval;
if (flags & PAM_SILENT)
return PAM_IGNORE;
@@ -166,7 +167,7 @@ pam_echo (pam_handle_t *pamh, int flags, int argc, const char **argv)
}
msg[len] = '\0';
- replace_and_print (pamh, msg);
+ retval = replace_and_print (pamh, msg);
}
else if ((fd = open (file, O_RDONLY, 0)) >= 0)
{
@@ -179,7 +180,7 @@ pam_echo (pam_handle_t *pamh, int flags, int argc, const char **argv)
mtmp = malloc (st.st_size + 1);
if (!mtmp)
- return PAM_IGNORE;
+ return PAM_BUF_ERR;
if (read (fd, mtmp, st.st_size) == -1)
{
@@ -194,13 +195,15 @@ pam_echo (pam_handle_t *pamh, int flags, int argc, const char **argv)
mtmp[st.st_size] = '\0';
close (fd);
- replace_and_print (pamh, mtmp);
+ retval = replace_and_print (pamh, mtmp);
free (mtmp);
}
else
- pam_syslog (pamh, LOG_ERR, "Cannot open %s: %m", file);
-
- return PAM_IGNORE;
+ {
+ pam_syslog (pamh, LOG_ERR, "Cannot open %s: %m", file);
+ retval = PAM_IGNORE;
+ }
+ return retval;
}
int