diff options
Diffstat (limited to 'src/plugins')
| -rw-r--r-- | src/plugins/preauth/otp/main.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/plugins/preauth/otp/main.c b/src/plugins/preauth/otp/main.c index 2f7470e11..bf9c6a89f 100644 --- a/src/plugins/preauth/otp/main.c +++ b/src/plugins/preauth/otp/main.c @@ -204,7 +204,9 @@ otp_edata(krb5_context context, krb5_kdc_req *request, /* Determine if otp is enabled for the user. */ retval = cb->get_string(context, rock, "otp", &config); - if (retval != 0 || config == NULL) + if (retval == 0 && config == NULL) + retval = ENOENT; + if (retval != 0) goto out; cb->free_string(context, rock, config); @@ -305,7 +307,7 @@ otp_verify(krb5_context context, krb5_data *req_pkt, krb5_kdc_req *request, /* Get the principal's OTP configuration string. */ retval = cb->get_string(context, rock, "otp", &config); - if (config == NULL) + if (retval == 0 && config == NULL) retval = KRB5_PREAUTH_FAILED; if (retval != 0) { free(rs); |
