diff options
Diffstat (limited to 'libpam')
-rw-r--r-- | libpam/pam_item.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libpam/pam_item.c b/libpam/pam_item.c index ad736a4f..c3a5a3bd 100644 --- a/libpam/pam_item.c +++ b/libpam/pam_item.c @@ -38,6 +38,12 @@ int pam_set_item (pam_handle_t *pamh, int item_type, const void *item) switch (item_type) { case PAM_SERVICE: + if (item == NULL) { + pam_syslog(pamh, LOG_ERR, + "pam_set_item: attempt to set service to NULL"); + retval = PAM_BAD_ITEM; + break; + } /* Setting handlers_loaded to 0 will cause the handlers * to be reloaded on the next call to a service module. */ |