From: Timo Sirainen Date: Fri, 24 Apr 2020 14:17:46 +0000 (+0300) Subject: auth: auth_request_finished event - policy_result=delayed didn't work X-Git-Tag: 2.3.11.2~99 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=545ba966485c1ed297df2eddda2dcb3ee6075867;p=thirdparty%2Fdovecot%2Fcore.git auth: auth_request_finished event - policy_result=delayed didn't work It was returned as "ok" instead of "delayed". --- diff --git a/src/auth/auth-request.c b/src/auth/auth-request.c index 3571e4ccf3..9acdc93301 100644 --- a/src/auth/auth-request.c +++ b/src/auth/auth-request.c @@ -1266,6 +1266,9 @@ void auth_request_policy_check_callback(int result, void *context) struct auth_policy_check_ctx *ctx = context; ctx->request->policy_processed = TRUE; + /* It's possible that multiple policy lookups return a penalty. + Sum them all up to the event. */ + ctx->request->policy_penalty += result < 0 ? 0 : result; if (ctx->request->set->policy_log_only && result != 0) { auth_request_policy_penalty_finish(context);