<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Sorry, I forgot to mention this is with the freshly released 2.3.7<div class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">Le 12 juil. 2019 à 16:43, Aki Tuomi via dovecot <<a href="mailto:dovecot@dovecot.org" class="">dovecot@dovecot.org</a>> a écrit :</div><br class="Apple-interchange-newline"><div class="">

  
  <meta charset="UTF-8" class=""> 
 
 <div class="">
  <div class="">
   Would you like to try with 2.3.7? It was released today.
  </div>
  <div class="">
   <br class="">
  </div>
  <div class="">
   Aki
  </div>
  <blockquote type="cite" class="">
   <div class="">
    On 12/07/2019 17:05 Jean-Daniel Dupas via dovecot <
    <a href="mailto:dovecot@dovecot.org" class="">dovecot@dovecot.org</a>> wrote:
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    An other issue is that when 'request->passdb_success' is FALSE, the request fails but the error field is not set (as it is only set when request->failure is TRUE), which make it hard to create metrics for failed login attempts.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    We have (assuming success were working as expected):
   </div>
   <div class="">
    - success = yes -> means auth OK
   </div>
   <div class="">
    - error is present -> means request failed for some reasons
   </div>
   <div class="">
    - neither success nor error is present -> means requests failed for other reasons.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    As we can't create metric filter testing field absence, getting the count of failed requests would mean create 2 metrics (one for success, one for all) and diff the 2 to get the count of failed attempts.
   </div>
   <div class="">
    <br class="">
   </div>
   <div class="">
    <br class="">
   </div>
   <blockquote type="cite" class="">
    <div class="">
     Le 12 juil. 2019 à 15:31, Jean-Daniel Dupas via dovecot <
     <a href="mailto:dovecot@dovecot.org" class="">dovecot@dovecot.org</a>> a écrit :
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     Hi,
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     I'm playing with the new events, and encounter some issues:
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     First the 'auth_request_finished' event is documented as having a 'successful' field, but in the code, the field is defined as 'success' (e->add_str("success", "yes")).
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     But more important, in the function "auth_request_success_continue()" (auth/auth-request.c:288), "auth_request_log_finished(request)" is call (line 303) before updating the request status: "request->successful = TRUE" (line 312)
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     So the log function never set the success field to "yes" as at this point request->successful is still false.
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     Jean-Daniel
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     <br class="">
    </div>
    <div class="">
     <br class="">
    </div>
   </blockquote>
  </blockquote>
  <div class="">
   <br class="">
  </div>
  <div class="io-ox-signature">
   <pre class="">---
Aki Tuomi</pre>
  </div> 
 </div>

</div></blockquote></div><br class=""></div></body></html>