diff options
author | Steve Langasek <vorlon@debian.org> | 2003-07-13 19:39:45 +0000 |
---|---|---|
committer | Steve Langasek <vorlon@debian.org> | 2003-07-13 19:39:45 +0000 |
commit | f40aecb875e5365fdf41445ebb92482aba5c1bf8 (patch) | |
tree | 1e5d66c68eccb991a856a2a215f657a26a01c34c /libpam | |
parent | e47f603bff623f42e49f56386f9c9640389edb44 (diff) | |
download | pam-f40aecb875e5365fdf41445ebb92482aba5c1bf8.tar.gz pam-f40aecb875e5365fdf41445ebb92482aba5c1bf8.tar.bz2 pam-f40aecb875e5365fdf41445ebb92482aba5c1bf8.zip |
Relevant BUGIDs: 728887
Purpose of commit: bugfix
Commit summary:
---------------
Protect against segfaults in pam_start() when called with an invalid
pamh argument.
Diffstat (limited to 'libpam')
-rw-r--r-- | libpam/pam_start.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libpam/pam_start.c b/libpam/pam_start.c index 0e50bb40..7febeb8d 100644 --- a/libpam/pam_start.c +++ b/libpam/pam_start.c @@ -24,6 +24,11 @@ int pam_start ( D(("called pam_start: [%s] [%s] [%p] [%p]" ,service_name, user, pam_conversation, pamh)); + if (pamh == NULL) { + _pam_system_log(LOG_CRIT, "pam_start: invalid argument: pamh == NULL"); + return (PAM_BUF_ERR); + } + if ((*pamh = calloc(1, sizeof(**pamh))) == NULL) { _pam_system_log(LOG_CRIT, "pam_start: calloc failed for *pamh"); return (PAM_BUF_ERR); |