summaryrefslogtreecommitdiffstats
path: root/src/responder/common/responder_dp.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/responder/common/responder_dp.c')
-rw-r--r--src/responder/common/responder_dp.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/responder/common/responder_dp.c b/src/responder/common/responder_dp.c
index f53c7d232..fed47a068 100644
--- a/src/responder/common/responder_dp.c
+++ b/src/responder/common/responder_dp.c
@@ -397,14 +397,20 @@ sss_dp_req_recv(TALLOC_CTX *mem_ctx,
tevent_req_data(sidereq, struct sss_dp_req_state);
enum tevent_req_state TRROEstate;
- uint64_t TRROEerr;
+ uint64_t TRROEuint64;
+ errno_t TRROEerr;
*dp_err = state->dp_err;
*dp_ret = state->dp_ret;
*err_msg = talloc_steal(mem_ctx, state->err_msg);
- if (tevent_req_is_error(sidereq, &TRROEstate, &TRROEerr)) {
+ if (tevent_req_is_error(sidereq, &TRROEstate, &TRROEuint64)) {
+ TRROEerr = (errno_t)TRROEuint64;
+
if (TRROEstate == TEVENT_REQ_USER_ERROR) {
+ if (TRROEerr == 0) {
+ return ERR_INTERNAL;
+ }
*dp_err = DP_ERR_FATAL;
*dp_ret = TRROEerr;
} else {