URL: https://github.com/SSSD/sssd/pull/161 Author: sumit-bose Title: #161: pam_sss: check conversation callback Action: opened
PR body: """ With this patch pam_sss checks if a conversation callback is available before using it. Resolves https://fedorahosted.org/sssd/ticket/3296 There is currently no test because I'm waiting for the pam-wrapper based tests to be committed to add a test there. """ To pull the PR as Git branch: git remote add ghsssd https://github.com/SSSD/sssd git fetch ghsssd pull/161/head:pr161 git checkout pr161
From 1bf9821133782c241f75bb0c86fcd0d63ebd7442 Mon Sep 17 00:00:00 2001 From: Sumit Bose <sb...@redhat.com> Date: Wed, 22 Feb 2017 11:39:48 +0100 Subject: [PATCH] pam_sss: check conversation callback With this patch pam_sss checks if a conversation callback is available before using it. Resolves https://fedorahosted.org/sssd/ticket/3296 --- src/sss_client/pam_sss.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/sss_client/pam_sss.c b/src/sss_client/pam_sss.c index b4175ae..03613b8 100644 --- a/src/sss_client/pam_sss.c +++ b/src/sss_client/pam_sss.c @@ -205,6 +205,10 @@ static int do_pam_conversation(pam_handle_t *pamh, const int msg_style, ret=pam_get_item(pamh, PAM_CONV, (const void **) &conv); if (ret != PAM_SUCCESS) return ret; + if (conv == NULL || conv->conv == NULL) { + logger(pamh, LOG_ERR, "No conversation function"); + return PAM_SYSTEM_ERR; + } do { pam_msg = malloc(sizeof(struct pam_message)); @@ -1304,6 +1308,10 @@ static int prompt_2fa(pam_handle_t *pamh, struct pam_items *pi, if (ret != PAM_SUCCESS) { return ret; } + if (conv == NULL || conv->conv == NULL) { + logger(pamh, LOG_ERR, "No conversation function"); + return PAM_SYSTEM_ERR; + } m[0].msg_style = PAM_PROMPT_ECHO_OFF; m[0].msg = prompt_fa1;
_______________________________________________ sssd-devel mailing list -- sssd-devel@lists.fedorahosted.org To unsubscribe send an email to sssd-devel-le...@lists.fedorahosted.org