diff options
author | Benjamin Berg <bberg@redhat.com> | 2020-12-10 15:37:45 +0100 |
---|---|---|
committer | Benjamin Berg <bberg@redhat.com> | 2020-12-11 10:34:51 +0100 |
commit | 1fc10f15eeac5a7e2efbf01dc4a8b0ca6ec0e8e0 (patch) | |
tree | 8840374fc7d802e7437e48b86e2a7ac79b718143 /pam | |
parent | c24badfd68cc19b751727c2f0ed61e80c6599ac4 (diff) |
pam: Stop authorization if we couldn't parse signals
This really should never ever happen. If it does, don't continue but
stop instead.
Diffstat (limited to 'pam')
-rw-r--r-- | pam/pam_fprintd.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/pam/pam_fprintd.c b/pam/pam_fprintd.c index 51918b8..021f168 100644 --- a/pam/pam_fprintd.c +++ b/pam/pam_fprintd.c @@ -208,6 +208,7 @@ verify_result (sd_bus_message *m, if ((r = sd_bus_message_read (m, "sb", &result, &done)) < 0) { pam_syslog (data->pamh, LOG_ERR, "Failed to parse VerifyResult signal: %d", r); + data->verify_ret = PAM_AUTHINFO_UNAVAIL; return 0; } @@ -255,6 +256,7 @@ verify_finger_selected (sd_bus_message *m, if (sd_bus_message_read_basic (m, 's', &finger_name) < 0) { pam_syslog (data->pamh, LOG_ERR, "Failed to parse VerifyFingerSelected signal: %d", errno); + data->verify_ret = PAM_AUTHINFO_UNAVAIL; return 0; } @@ -630,6 +632,7 @@ name_owner_changed (sd_bus_message *m, if (sd_bus_message_read (m, "sss", &name, &old_owner, &new_owner) < 0) { pam_syslog (data->pamh, LOG_ERR, "Failed to parse NameOwnerChanged signal: %d", errno); + data->verify_ret = PAM_AUTHINFO_UNAVAIL; return 0; } |