summaryrefslogtreecommitdiffstats
path: root/src/sss_client
diff options
context:
space:
mode:
Diffstat (limited to 'src/sss_client')
-rw-r--r--src/sss_client/pam_sss.c4
-rw-r--r--src/sss_client/pam_test_client.c5
2 files changed, 9 insertions, 0 deletions
diff --git a/src/sss_client/pam_sss.c b/src/sss_client/pam_sss.c
index 638e211ee..d45b2e88f 100644
--- a/src/sss_client/pam_sss.c
+++ b/src/sss_client/pam_sss.c
@@ -1368,6 +1368,10 @@ static int get_authtok_for_password_change(pam_handle_t *pamh,
}
} else {
pi->pam_authtok = strdup(pi->pamstack_oldauthtok);
+ if (pi->pam_authtok == NULL) {
+ D(("strdup failed"));
+ return PAM_BUF_ERR;
+ }
pi->pam_authtok_type = SSS_AUTHTOK_TYPE_PASSWORD;
pi->pam_authtok_size = strlen(pi->pam_authtok);
}
diff --git a/src/sss_client/pam_test_client.c b/src/sss_client/pam_test_client.c
index ef424e77c..af8a0da90 100644
--- a/src/sss_client/pam_test_client.c
+++ b/src/sss_client/pam_test_client.c
@@ -53,6 +53,11 @@ int main(int argc, char *argv[]) {
user = strdup(argv[2]);
}
+ if (action == NULL || user == NULL) {
+ fprintf(stderr, "Out of memory!\n");
+ return 1;
+ }
+
fprintf(stdout, "action: %s\nuser: %s\n", action,user);
ret = pam_start("sss_test", user, &conv, &pamh);