<div dir="ltr">Getting some problems with OpenSSL 3.0, I have passwordError function, to check if the last error was due to an invalid password and allow the user to retry.<div><br><br>bool<br>passwordError()<br>{<br>    unsigned long error = ERR_peek_error();<br>    unsigned long lib = ERR_GET_LIB(error);<br>    unsigned long reason = ERR_GET_REASON(error);<br>    cerr << "error: " << error << endl;<br>    cerr << "lib: " << lib << endl;<br>    cerr << "reason: " << reason << endl;<br>    ERR_print_errors_fp(stdout);<br>    return (reason == PEM_R_BAD_BASE64_DECODE ||<br>            reason == PEM_R_BAD_DECRYPT ||<br>            reason == PEM_R_BAD_PASSWORD_READ ||<br>            reason == PEM_R_PROBLEMS_GETTING_PASSWORD ||<br>            reason == PKCS12_R_MAC_VERIFY_FAILURE);<br>}<br><br>When I test with an invalid password I get</div><div><br>error: 587686001<br>lib: 70<br>reason: 483441<br>error:23076071:PKCS12 routines:PKCS12_parse:mac verify failure<br><br><br>the description seems to match PKCS12_R_MAC_VERIFY_FAILURE but the reason value doesn't<br><br>include/openssl/pkcs12err.h<br>39:# define PKCS12_R_MAC_VERIFY_FAILURE                      113</div><div><br></div><div>Any ideas what I might be doing wrong here? this worked fine with 1.1.1 before</div><div><br></div><div>Cheers,</div><div>Jose</div></div>