]> granicus.if.org Git - linux-pam/commitdiff
Relevant BUGIDs:
authorDmitry V. Levin <ldv@altlinux.org>
Mon, 18 Feb 2008 13:18:43 +0000 (13:18 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 18 Feb 2008 13:18:43 +0000 (13:18 +0000)
Purpose of commit: bugfix

Commit summary:
---------------
2008-02-18  Dmitry V. Levin  <ldv@altlinux.org>

* modules/pam_exec/pam_exec.c (call_exec): Fix asprintf return
code check.

ChangeLog
modules/pam_exec/pam_exec.c

index fa01eac79ac20a9a0959d36756be5bfa9a18d694..ba1eedbef2db3e43239be2ed4d74e10549feb0da 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-02-18  Dmitry V. Levin  <ldv@altlinux.org>
+
+       * modules/pam_exec/pam_exec.c (call_exec): Fix asprintf return
+       code check.
+
 2008-02-13  Thorsten Kukuk  <kukuk@thkukuk.de>
 
        * release version 0.99.10.0
index 766c0a06b115446f3e35b9698dee333042dda478..14dddd5488268e498003785cd361741286731c90 100644 (file)
@@ -244,8 +244,8 @@ call_exec (pam_handle_t *pamh, int argc, const char **argv)
       if (tmp == NULL)
       {
         free(envlist);
-        pam_syslog (pamh, LOG_ERR, "realloc environment failed : %m");
-        exit (ENOMEM); 
+        pam_syslog (pamh, LOG_ERR, "realloc environment failed: %m");
+        exit (ENOMEM);
       }
       envlist = tmp;
       for (i = 0; i < nitems; ++i)
@@ -255,11 +255,10 @@ call_exec (pam_handle_t *pamh, int argc, const char **argv)
 
         if (pam_get_item(pamh, env_items[i].item, &item) != PAM_SUCCESS || item == NULL)
           continue;
-        asprintf(&envstr, "%s=%s", env_items[i].name, (const char *)item);
-        if (envstr == NULL)
+        if (asprintf(&envstr, "%s=%s", env_items[i].name, (const char *)item) < 0)
         {
           free(envlist);
-          pam_syslog (pamh, LOG_ERR, "prepare environment failed : %m");
+          pam_syslog (pamh, LOG_ERR, "prepare environment failed: %m");
           exit (ENOMEM);
         }
         envlist[envlen++] = envstr;