diff options
author | FdaSilvaYY <fdasilvayy@gmail.com> | 2016-08-01 21:30:57 +0200 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2016-08-04 17:07:58 +0200 |
commit | acc00492130d53d2d6a25bbe5409240aeba98420 (patch) | |
tree | ed8342a6f56f8169a109ff7a17e4378126f21f98 /apps/s_cb.c | |
parent | e7932c1eb7daa1f8778df57687f6983fe6712734 (diff) |
Pack globals variables used to control apps/verify_callback()
into a structure , to avoid any accident .
Plus some few cleanups
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Diffstat (limited to 'apps/s_cb.c')
-rw-r--r-- | apps/s_cb.c | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/apps/s_cb.c b/apps/s_cb.c index 9481fa5157..330dedbecd 100644 --- a/apps/s_cb.c +++ b/apps/s_cb.c @@ -26,10 +26,8 @@ #define COOKIE_SECRET_LENGTH 16 -int verify_depth = 0; -int verify_quiet = 0; -int verify_error = X509_V_OK; -int verify_return_error = 0; +VERIFY_CB_ARGS verify_args = { 0, 0, X509_V_OK, 0 }; + #ifndef OPENSSL_NO_SOCK static unsigned char cookie_secret[COOKIE_SECRET_LENGTH]; static int cookie_initialized = 0; @@ -52,7 +50,7 @@ int verify_callback(int ok, X509_STORE_CTX *ctx) err = X509_STORE_CTX_get_error(ctx); depth = X509_STORE_CTX_get_error_depth(ctx); - if (!verify_quiet || !ok) { + if (!verify_args.quiet || !ok) { BIO_printf(bio_err, "depth=%d ", depth); if (err_cert) { X509_NAME_print_ex(bio_err, @@ -65,13 +63,13 @@ int verify_callback(int ok, X509_STORE_CTX *ctx) if (!ok) { BIO_printf(bio_err, "verify error:num=%d:%s\n", err, X509_verify_cert_error_string(err)); - if (verify_depth >= depth) { - if (!verify_return_error) + if (verify_args.depth >= depth) { + if (!verify_args.return_error) ok = 1; - verify_error = err; + verify_args.error = err; } else { ok = 0; - verify_error = X509_V_ERR_CERT_CHAIN_TOO_LONG; + verify_args.error = X509_V_ERR_CERT_CHAIN_TOO_LONG; } } switch (err) { @@ -94,13 +92,13 @@ int verify_callback(int ok, X509_STORE_CTX *ctx) BIO_printf(bio_err, "\n"); break; case X509_V_ERR_NO_EXPLICIT_POLICY: - if (!verify_quiet) + if (!verify_args.quiet) policies_print(ctx); break; } - if (err == X509_V_OK && ok == 2 && !verify_quiet) + if (err == X509_V_OK && ok == 2 && !verify_args.quiet) policies_print(ctx); - if (ok && !verify_quiet) + if (ok && !verify_args.quiet) BIO_printf(bio_err, "verify return:%d\n", ok); return (ok); } |