diff options
author | Thorsten Kukuk <kukuk@thkukuk.de> | 2006-02-13 07:45:17 +0000 |
---|---|---|
committer | Thorsten Kukuk <kukuk@thkukuk.de> | 2006-02-13 07:45:17 +0000 |
commit | f833a0b4e1a755276f3cdc4efa121104286d1ef6 (patch) | |
tree | 8fdb4da595c702ad192d3a6921b463cfe3b77b1c /modules/pam_echo/pam_echo.c | |
parent | f7827ccfd255e23f285eb8aec7ddf71af94dd6ff (diff) | |
download | pam-f833a0b4e1a755276f3cdc4efa121104286d1ef6.tar.gz pam-f833a0b4e1a755276f3cdc4efa121104286d1ef6.tar.bz2 pam-f833a0b4e1a755276f3cdc4efa121104286d1ef6.zip |
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.c | 17 |
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 |