summaryrefslogtreecommitdiffstats
path: root/src/sss_client
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2016-09-19 10:53:51 +0200
committerLukas Slebodnik <lslebodn@redhat.com>2016-09-19 13:11:45 +0200
commita8631161c47cbaefe7fd14b88202238bbdcc3dc8 (patch)
treefcc4dd4bc52074e8d05cfd5857e63f0145b84d61 /src/sss_client
parentab7b33fd7d820688545d5994a402cedf4bcdb6e1 (diff)
downloadsssd-a8631161c47cbaefe7fd14b88202238bbdcc3dc8.tar.gz
sssd-a8631161c47cbaefe7fd14b88202238bbdcc3dc8.tar.xz
sssd-a8631161c47cbaefe7fd14b88202238bbdcc3dc8.zip
PAM: call free only when memory is expected to be allocated
Reborted by Coverity Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
Diffstat (limited to 'src/sss_client')
-rw-r--r--src/sss_client/pam_sss.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/sss_client/pam_sss.c b/src/sss_client/pam_sss.c
index 2049d5fb0..be697c7fc 100644
--- a/src/sss_client/pam_sss.c
+++ b/src/sss_client/pam_sss.c
@@ -1729,10 +1729,11 @@ static int check_login_token_name(pam_handle_t *pamh, struct pam_items *pi,
ret = do_pam_conversation(pamh, PAM_PROMPT_ECHO_OFF, prompt,
NULL, &answer);
free(prompt);
- free(answer);
if (ret != PAM_SUCCESS) {
D(("do_pam_conversation failed."));
return ret;
+ } else {
+ free(answer);
}
pam_status = send_and_receive(pamh, pi, SSS_PAM_PREAUTH, quiet_mode);