mirror of
https://github.com/openssl/openssl.git
synced 2025-01-24 13:55:42 +08:00
Remove needless bio_err argument
Many functions had a BIO* parameter, and it was always called with bio_err. Remove the param and just use bio_err. Reviewed-by: Matt Caswell <matt@openssl.org>
This commit is contained in:
parent
bea6cd3e1c
commit
ecf3a1fb18
20
apps/apps.c
20
apps/apps.c
@ -2006,34 +2006,34 @@ int pkey_ctrl_string(EVP_PKEY_CTX *ctx, char *value)
|
||||
return rv;
|
||||
}
|
||||
|
||||
static void nodes_print(BIO *out, const char *name,
|
||||
STACK_OF(X509_POLICY_NODE) *nodes)
|
||||
static void nodes_print(const char *name, STACK_OF(X509_POLICY_NODE) *nodes)
|
||||
{
|
||||
X509_POLICY_NODE *node;
|
||||
int i;
|
||||
BIO_printf(out, "%s Policies:", name);
|
||||
|
||||
BIO_printf(bio_err, "%s Policies:", name);
|
||||
if (nodes) {
|
||||
BIO_puts(out, "\n");
|
||||
BIO_puts(bio_err, "\n");
|
||||
for (i = 0; i < sk_X509_POLICY_NODE_num(nodes); i++) {
|
||||
node = sk_X509_POLICY_NODE_value(nodes, i);
|
||||
X509_POLICY_NODE_print(out, node, 2);
|
||||
X509_POLICY_NODE_print(bio_err, node, 2);
|
||||
}
|
||||
} else
|
||||
BIO_puts(out, " <empty>\n");
|
||||
BIO_puts(bio_err, " <empty>\n");
|
||||
}
|
||||
|
||||
void policies_print(BIO *out, X509_STORE_CTX *ctx)
|
||||
void policies_print(X509_STORE_CTX *ctx)
|
||||
{
|
||||
X509_POLICY_TREE *tree;
|
||||
int explicit_policy;
|
||||
tree = X509_STORE_CTX_get0_policy_tree(ctx);
|
||||
explicit_policy = X509_STORE_CTX_get_explicit_policy(ctx);
|
||||
|
||||
BIO_printf(out, "Require explicit Policy: %s\n",
|
||||
BIO_printf(bio_err, "Require explicit Policy: %s\n",
|
||||
explicit_policy ? "True" : "False");
|
||||
|
||||
nodes_print(out, "Authority", X509_policy_tree_get0_policies(tree));
|
||||
nodes_print(out, "User", X509_policy_tree_get0_user_policies(tree));
|
||||
nodes_print("Authority", X509_policy_tree_get0_policies(tree));
|
||||
nodes_print("User", X509_policy_tree_get0_user_policies(tree));
|
||||
}
|
||||
|
||||
#if !defined(OPENSSL_NO_JPAKE) && !defined(OPENSSL_NO_PSK)
|
||||
|
@ -489,7 +489,7 @@ int parse_yesno(const char *str, int def);
|
||||
X509_NAME *parse_name(char *str, long chtype, int multirdn);
|
||||
int args_verify(char ***pargs, int *pargc,
|
||||
int *badarg, X509_VERIFY_PARAM **pm);
|
||||
void policies_print(BIO *out, X509_STORE_CTX *ctx);
|
||||
void policies_print(X509_STORE_CTX *ctx);
|
||||
int bio_to_mem(unsigned char **out, int maxlen, BIO *in);
|
||||
int pkey_ctrl_string(EVP_PKEY_CTX *ctx, char *value);
|
||||
int init_gen_str(EVP_PKEY_CTX **pctx,
|
||||
|
@ -100,7 +100,7 @@ OPTIONS asn1parse_options[] = {
|
||||
{NULL}
|
||||
};
|
||||
|
||||
static int do_generate(BIO *bio, char *genstr, char *genconf, BUF_MEM *buf);
|
||||
static int do_generate(char *genstr, char *genconf, BUF_MEM *buf);
|
||||
|
||||
int asn1parse_main(int argc, char **argv)
|
||||
{
|
||||
@ -215,7 +215,7 @@ int asn1parse_main(int argc, char **argv)
|
||||
goto end; /* Pre-allocate :-) */
|
||||
|
||||
if (genstr || genconf) {
|
||||
num = do_generate(bio_err, genstr, genconf, buf);
|
||||
num = do_generate(genstr, genconf, buf);
|
||||
if (num < 0) {
|
||||
ERR_print_errors(bio_err);
|
||||
goto end;
|
||||
@ -335,7 +335,7 @@ int asn1parse_main(int argc, char **argv)
|
||||
return (ret);
|
||||
}
|
||||
|
||||
static int do_generate(BIO *bio, char *genstr, char *genconf, BUF_MEM *buf)
|
||||
static int do_generate(char *genstr, char *genconf, BUF_MEM *buf)
|
||||
{
|
||||
CONF *cnf = NULL;
|
||||
int len;
|
||||
@ -350,7 +350,7 @@ static int do_generate(BIO *bio, char *genstr, char *genconf, BUF_MEM *buf)
|
||||
if (!genstr)
|
||||
genstr = NCONF_get_string(cnf, "default", "asn1");
|
||||
if (!genstr) {
|
||||
BIO_printf(bio, "Can't find 'asn1' in '%s'\n", genconf);
|
||||
BIO_printf(bio_err, "Can't find 'asn1' in '%s'\n", genconf);
|
||||
goto err;
|
||||
}
|
||||
}
|
||||
@ -380,10 +380,10 @@ static int do_generate(BIO *bio, char *genstr, char *genconf, BUF_MEM *buf)
|
||||
conferr:
|
||||
|
||||
if (errline > 0)
|
||||
BIO_printf(bio, "Error on line %ld of config file '%s'\n",
|
||||
BIO_printf(bio_err, "Error on line %ld of config file '%s'\n",
|
||||
errline, genconf);
|
||||
else
|
||||
BIO_printf(bio, "Error loading config file '%s'\n", genconf);
|
||||
BIO_printf(bio_err, "Error loading config file '%s'\n", genconf);
|
||||
|
||||
err:
|
||||
NCONF_free(cnf);
|
||||
|
30
apps/ca.c
30
apps/ca.c
@ -187,7 +187,7 @@ static int do_updatedb(CA_DB *db);
|
||||
static int check_time_format(const char *str);
|
||||
char *make_revocation_str(int rev_type, char *rev_arg);
|
||||
int make_revoked(X509_REVOKED *rev, const char *str);
|
||||
int old_entry_print(BIO *bp, ASN1_OBJECT *obj, ASN1_STRING *str);
|
||||
static int old_entry_print(ASN1_OBJECT *obj, ASN1_STRING *str);
|
||||
|
||||
static CONF *conf = NULL;
|
||||
static CONF *extconf = NULL;
|
||||
@ -1604,7 +1604,7 @@ static int do_body(X509 **xret, EVP_PKEY *pkey, X509 *x509,
|
||||
}
|
||||
|
||||
if (default_op)
|
||||
old_entry_print(bio_err, obj, str);
|
||||
old_entry_print(obj, str);
|
||||
}
|
||||
|
||||
/* Ok, now we check the 'policy' stuff. */
|
||||
@ -2632,42 +2632,42 @@ int make_revoked(X509_REVOKED *rev, const char *str)
|
||||
return ret;
|
||||
}
|
||||
|
||||
int old_entry_print(BIO *bp, ASN1_OBJECT *obj, ASN1_STRING *str)
|
||||
static int old_entry_print(ASN1_OBJECT *obj, ASN1_STRING *str)
|
||||
{
|
||||
char buf[25], *pbuf, *p;
|
||||
int j;
|
||||
j = i2a_ASN1_OBJECT(bp, obj);
|
||||
j = i2a_ASN1_OBJECT(bio_err, obj);
|
||||
pbuf = buf;
|
||||
for (j = 22 - j; j > 0; j--)
|
||||
*(pbuf++) = ' ';
|
||||
*(pbuf++) = ':';
|
||||
*(pbuf++) = '\0';
|
||||
BIO_puts(bp, buf);
|
||||
BIO_puts(bio_err, buf);
|
||||
|
||||
if (str->type == V_ASN1_PRINTABLESTRING)
|
||||
BIO_printf(bp, "PRINTABLE:'");
|
||||
BIO_printf(bio_err, "PRINTABLE:'");
|
||||
else if (str->type == V_ASN1_T61STRING)
|
||||
BIO_printf(bp, "T61STRING:'");
|
||||
BIO_printf(bio_err, "T61STRING:'");
|
||||
else if (str->type == V_ASN1_IA5STRING)
|
||||
BIO_printf(bp, "IA5STRING:'");
|
||||
BIO_printf(bio_err, "IA5STRING:'");
|
||||
else if (str->type == V_ASN1_UNIVERSALSTRING)
|
||||
BIO_printf(bp, "UNIVERSALSTRING:'");
|
||||
BIO_printf(bio_err, "UNIVERSALSTRING:'");
|
||||
else
|
||||
BIO_printf(bp, "ASN.1 %2d:'", str->type);
|
||||
BIO_printf(bio_err, "ASN.1 %2d:'", str->type);
|
||||
|
||||
p = (char *)str->data;
|
||||
for (j = str->length; j > 0; j--) {
|
||||
if ((*p >= ' ') && (*p <= '~'))
|
||||
BIO_printf(bp, "%c", *p);
|
||||
BIO_printf(bio_err, "%c", *p);
|
||||
else if (*p & 0x80)
|
||||
BIO_printf(bp, "\\0x%02X", *p);
|
||||
BIO_printf(bio_err, "\\0x%02X", *p);
|
||||
else if ((unsigned char)*p == 0xf7)
|
||||
BIO_printf(bp, "^?");
|
||||
BIO_printf(bio_err, "^?");
|
||||
else
|
||||
BIO_printf(bp, "^%c", *p + '@');
|
||||
BIO_printf(bio_err, "^%c", *p + '@');
|
||||
p++;
|
||||
}
|
||||
BIO_printf(bp, "'\n");
|
||||
BIO_printf(bio_err, "'\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
38
apps/cms.c
38
apps/cms.c
@ -68,7 +68,7 @@
|
||||
|
||||
static int save_certs(char *signerfile, STACK_OF(X509) *signers);
|
||||
static int cms_cb(int ok, X509_STORE_CTX *ctx);
|
||||
static void receipt_request_print(BIO *out, CMS_ContentInfo *cms);
|
||||
static void receipt_request_print(CMS_ContentInfo *cms);
|
||||
static CMS_ReceiptRequest *make_receipt_request(STACK_OF(OPENSSL_STRING)
|
||||
*rr_to, int rr_allorfirst, STACK_OF(OPENSSL_STRING)
|
||||
*rr_from);
|
||||
@ -1075,7 +1075,7 @@ int cms_main(int argc, char **argv)
|
||||
sk_X509_free(signers);
|
||||
}
|
||||
if (rr_print)
|
||||
receipt_request_print(bio_err, cms);
|
||||
receipt_request_print(cms);
|
||||
|
||||
} else if (operation == SMIME_VERIFY_RECEIPT) {
|
||||
if (CMS_verify_receipt(rcms, cms, other, store, flags) > 0)
|
||||
@ -1190,31 +1190,31 @@ static int cms_cb(int ok, X509_STORE_CTX *ctx)
|
||||
&& ((error != X509_V_OK) || (ok != 2)))
|
||||
return ok;
|
||||
|
||||
/* Should be bio_err? */
|
||||
policies_print(bio_out, ctx);
|
||||
policies_print(ctx);
|
||||
|
||||
return ok;
|
||||
|
||||
}
|
||||
|
||||
static void gnames_stack_print(BIO *out, STACK_OF(GENERAL_NAMES) *gns)
|
||||
static void gnames_stack_print(STACK_OF(GENERAL_NAMES) *gns)
|
||||
{
|
||||
STACK_OF(GENERAL_NAME) *gens;
|
||||
GENERAL_NAME *gen;
|
||||
int i, j;
|
||||
|
||||
for (i = 0; i < sk_GENERAL_NAMES_num(gns); i++) {
|
||||
gens = sk_GENERAL_NAMES_value(gns, i);
|
||||
for (j = 0; j < sk_GENERAL_NAME_num(gens); j++) {
|
||||
gen = sk_GENERAL_NAME_value(gens, j);
|
||||
BIO_puts(out, " ");
|
||||
GENERAL_NAME_print(out, gen);
|
||||
BIO_puts(out, "\n");
|
||||
BIO_puts(bio_err, " ");
|
||||
GENERAL_NAME_print(bio_err, gen);
|
||||
BIO_puts(bio_err, "\n");
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
static void receipt_request_print(BIO *out, CMS_ContentInfo *cms)
|
||||
static void receipt_request_print(CMS_ContentInfo *cms)
|
||||
{
|
||||
STACK_OF(CMS_SignerInfo) *sis;
|
||||
CMS_SignerInfo *si;
|
||||
@ -1238,22 +1238,22 @@ static void receipt_request_print(BIO *out, CMS_ContentInfo *cms)
|
||||
int idlen;
|
||||
CMS_ReceiptRequest_get0_values(rr, &scid, &allorfirst,
|
||||
&rlist, &rto);
|
||||
BIO_puts(out, " Signed Content ID:\n");
|
||||
BIO_puts(bio_err, " Signed Content ID:\n");
|
||||
idlen = ASN1_STRING_length(scid);
|
||||
id = (char *)ASN1_STRING_data(scid);
|
||||
BIO_dump_indent(out, id, idlen, 4);
|
||||
BIO_puts(out, " Receipts From");
|
||||
BIO_dump_indent(bio_err, id, idlen, 4);
|
||||
BIO_puts(bio_err, " Receipts From");
|
||||
if (rlist) {
|
||||
BIO_puts(out, " List:\n");
|
||||
gnames_stack_print(out, rlist);
|
||||
BIO_puts(bio_err, " List:\n");
|
||||
gnames_stack_print(rlist);
|
||||
} else if (allorfirst == 1)
|
||||
BIO_puts(out, ": First Tier\n");
|
||||
BIO_puts(bio_err, ": First Tier\n");
|
||||
else if (allorfirst == 0)
|
||||
BIO_puts(out, ": All\n");
|
||||
BIO_puts(bio_err, ": All\n");
|
||||
else
|
||||
BIO_printf(out, " Unknown (%d)\n", allorfirst);
|
||||
BIO_puts(out, " Receipts To:\n");
|
||||
gnames_stack_print(out, rto);
|
||||
BIO_printf(bio_err, " Unknown (%d)\n", allorfirst);
|
||||
BIO_puts(bio_err, " Receipts To:\n");
|
||||
gnames_stack_print(rto);
|
||||
}
|
||||
if (rr)
|
||||
CMS_ReceiptRequest_free(rr);
|
||||
|
@ -86,7 +86,7 @@ int dump_certs_pkeys_bag(BIO *out, PKCS12_SAFEBAG *bags, char *pass,
|
||||
int print_attribs(BIO *out, STACK_OF(X509_ATTRIBUTE) *attrlst,
|
||||
const char *name);
|
||||
void hex_prin(BIO *out, unsigned char *buf, int len);
|
||||
int alg_print(BIO *x, X509_ALGOR *alg);
|
||||
static int alg_print(X509_ALGOR *alg);
|
||||
int cert_load(BIO *in, STACK_OF(X509) *sk);
|
||||
static int set_pbe(int *ppbe, const char *str);
|
||||
|
||||
@ -587,7 +587,7 @@ int dump_certs_keys_p12(BIO *out, PKCS12 *p12, char *pass,
|
||||
} else if (bagnid == NID_pkcs7_encrypted) {
|
||||
if (options & INFO) {
|
||||
BIO_printf(bio_err, "PKCS7 Encrypted data: ");
|
||||
alg_print(bio_err, p7->d.encrypted->enc_data->algorithm);
|
||||
alg_print(p7->d.encrypted->enc_data->algorithm);
|
||||
}
|
||||
bags = PKCS12_unpack_p7encdata(p7, pass, passlen);
|
||||
} else
|
||||
@ -649,7 +649,7 @@ int dump_certs_pkeys_bag(BIO *out, PKCS12_SAFEBAG *bag, char *pass,
|
||||
case NID_pkcs8ShroudedKeyBag:
|
||||
if (options & INFO) {
|
||||
BIO_printf(bio_err, "Shrouded Keybag: ");
|
||||
alg_print(bio_err, bag->value.shkeybag->algor);
|
||||
alg_print(bag->value.shkeybag->algor);
|
||||
}
|
||||
if (options & NOKEYS)
|
||||
return 1;
|
||||
@ -737,11 +737,11 @@ int get_cert_chain(X509 *cert, X509_STORE *store, STACK_OF(X509) **chain)
|
||||
return i;
|
||||
}
|
||||
|
||||
int alg_print(BIO *x, X509_ALGOR *alg)
|
||||
static int alg_print(X509_ALGOR *alg)
|
||||
{
|
||||
PBEPARAM *pbe;
|
||||
const unsigned char *p;
|
||||
p = alg->parameter->value.sequence->data;
|
||||
const unsigned char *p = alg->parameter->value.sequence->data;
|
||||
|
||||
pbe = d2i_PBEPARAM(NULL, &p, alg->parameter->value.sequence->length);
|
||||
if (!pbe)
|
||||
return 1;
|
||||
|
@ -204,7 +204,7 @@ void ssl_ctx_set_excert(SSL_CTX *ctx, SSL_EXCERT *exc);
|
||||
void ssl_excert_free(SSL_EXCERT *exc);
|
||||
int args_excert(int option, SSL_EXCERT **pexc);
|
||||
int load_excert(SSL_EXCERT **pexc);
|
||||
void print_ssl_summary(BIO *bio, SSL *s);
|
||||
void print_ssl_summary(SSL *s);
|
||||
#ifdef HEADER_SSL_H
|
||||
int config_ctx(SSL_CONF_CTX *cctx, STACK_OF(OPENSSL_STRING) *str,
|
||||
SSL_CTX *ctx, int no_ecdhe, int no_jpake);
|
||||
@ -214,5 +214,5 @@ int ssl_load_stores(SSL_CTX *ctx, const char *vfyCApath,
|
||||
const char *vfyCAfile, const char *chCApath,
|
||||
const char *chCAfile, STACK_OF(X509_CRL) *crls,
|
||||
int crl_download);
|
||||
void ssl_ctx_security_debug(SSL_CTX *ctx, BIO *out, int verbose);
|
||||
void ssl_ctx_security_debug(SSL_CTX *ctx, int verbose);
|
||||
#endif
|
||||
|
71
apps/s_cb.c
71
apps/s_cb.c
@ -186,11 +186,11 @@ int verify_callback(int ok, X509_STORE_CTX *ctx)
|
||||
break;
|
||||
case X509_V_ERR_NO_EXPLICIT_POLICY:
|
||||
if (!verify_quiet)
|
||||
policies_print(bio_err, ctx);
|
||||
policies_print(ctx);
|
||||
break;
|
||||
}
|
||||
if (err == X509_V_OK && ok == 2 && !verify_quiet)
|
||||
policies_print(bio_err, ctx);
|
||||
policies_print(ctx);
|
||||
if (ok && !verify_quiet)
|
||||
BIO_printf(bio_err, "verify return:%d\n", ok);
|
||||
return (ok);
|
||||
@ -1104,19 +1104,20 @@ struct chain_flags chain_flags_list[] = {
|
||||
{0, NULL}
|
||||
};
|
||||
|
||||
static void print_chain_flags(BIO *out, SSL *s, int flags)
|
||||
static void print_chain_flags(SSL *s, int flags)
|
||||
{
|
||||
struct chain_flags *ctmp = chain_flags_list;
|
||||
|
||||
while (ctmp->name) {
|
||||
BIO_printf(out, "\t%s: %s\n", ctmp->name,
|
||||
BIO_printf(bio_err, "\t%s: %s\n", ctmp->name,
|
||||
flags & ctmp->flag ? "OK" : "NOT OK");
|
||||
ctmp++;
|
||||
}
|
||||
BIO_printf(out, "\tSuite B: ");
|
||||
BIO_printf(bio_err, "\tSuite B: ");
|
||||
if (SSL_set_cert_flags(s, 0) & SSL_CERT_FLAG_SUITEB_128_LOS)
|
||||
BIO_puts(out, flags & CERT_PKEY_SUITEB ? "OK\n" : "NOT OK\n");
|
||||
BIO_puts(bio_err, flags & CERT_PKEY_SUITEB ? "OK\n" : "NOT OK\n");
|
||||
else
|
||||
BIO_printf(out, "not tested\n");
|
||||
BIO_printf(bio_err, "not tested\n");
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1157,7 +1158,7 @@ static int set_cert_cb(SSL *ssl, void *arg)
|
||||
X509_NAME_print_ex(bio_err, X509_get_subject_name(exc->cert), 0,
|
||||
XN_FLAG_ONELINE);
|
||||
BIO_puts(bio_err, "\n");
|
||||
print_chain_flags(bio_err, ssl, rv);
|
||||
print_chain_flags(ssl, rv);
|
||||
if (rv & CERT_PKEY_VALID) {
|
||||
if (!SSL_use_certificate(ssl, exc->cert)
|
||||
|| !SSL_use_PrivateKey(ssl, exc->key)) {
|
||||
@ -1334,7 +1335,7 @@ int args_excert(int opt, SSL_EXCERT **pexc)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void print_raw_cipherlist(BIO *bio, SSL *s)
|
||||
static void print_raw_cipherlist(SSL *s)
|
||||
{
|
||||
const unsigned char *rlist;
|
||||
static const unsigned char scsv_id[] = { 0, 0, 0xFF };
|
||||
@ -1343,59 +1344,58 @@ static void print_raw_cipherlist(BIO *bio, SSL *s)
|
||||
return;
|
||||
num = SSL_get0_raw_cipherlist(s, NULL);
|
||||
rlistlen = SSL_get0_raw_cipherlist(s, &rlist);
|
||||
BIO_puts(bio, "Client cipher list: ");
|
||||
BIO_puts(bio_err, "Client cipher list: ");
|
||||
for (i = 0; i < rlistlen; i += num, rlist += num) {
|
||||
const SSL_CIPHER *c = SSL_CIPHER_find(s, rlist);
|
||||
if (i)
|
||||
BIO_puts(bio, ":");
|
||||
BIO_puts(bio_err, ":");
|
||||
if (c)
|
||||
BIO_puts(bio, SSL_CIPHER_get_name(c));
|
||||
BIO_puts(bio_err, SSL_CIPHER_get_name(c));
|
||||
else if (!memcmp(rlist, scsv_id - num + 3, num))
|
||||
BIO_puts(bio, "SCSV");
|
||||
BIO_puts(bio_err, "SCSV");
|
||||
else {
|
||||
size_t j;
|
||||
BIO_puts(bio, "0x");
|
||||
BIO_puts(bio_err, "0x");
|
||||
for (j = 0; j < num; j++)
|
||||
BIO_printf(bio, "%02X", rlist[j]);
|
||||
BIO_printf(bio_err, "%02X", rlist[j]);
|
||||
}
|
||||
}
|
||||
BIO_puts(bio, "\n");
|
||||
BIO_puts(bio_err, "\n");
|
||||
}
|
||||
|
||||
void print_ssl_summary(BIO *bio, SSL *s)
|
||||
void print_ssl_summary(SSL *s)
|
||||
{
|
||||
const SSL_CIPHER *c;
|
||||
X509 *peer;
|
||||
/*
|
||||
* const char *pnam = SSL_is_server(s) ? "client" : "server";
|
||||
*/
|
||||
BIO_printf(bio, "Protocol version: %s\n", SSL_get_version(s));
|
||||
print_raw_cipherlist(bio, s);
|
||||
/* const char *pnam = SSL_is_server(s) ? "client" : "server"; */
|
||||
|
||||
BIO_printf(bio_err, "Protocol version: %s\n", SSL_get_version(s));
|
||||
print_raw_cipherlist(s);
|
||||
c = SSL_get_current_cipher(s);
|
||||
BIO_printf(bio, "Ciphersuite: %s\n", SSL_CIPHER_get_name(c));
|
||||
do_print_sigalgs(bio, s, 0);
|
||||
BIO_printf(bio_err, "Ciphersuite: %s\n", SSL_CIPHER_get_name(c));
|
||||
do_print_sigalgs(bio_err, s, 0);
|
||||
peer = SSL_get_peer_certificate(s);
|
||||
if (peer) {
|
||||
int nid;
|
||||
BIO_puts(bio, "Peer certificate: ");
|
||||
X509_NAME_print_ex(bio, X509_get_subject_name(peer),
|
||||
BIO_puts(bio_err, "Peer certificate: ");
|
||||
X509_NAME_print_ex(bio_err, X509_get_subject_name(peer),
|
||||
0, XN_FLAG_ONELINE);
|
||||
BIO_puts(bio, "\n");
|
||||
BIO_puts(bio_err, "\n");
|
||||
if (SSL_get_peer_signature_nid(s, &nid))
|
||||
BIO_printf(bio, "Hash used: %s\n", OBJ_nid2sn(nid));
|
||||
BIO_printf(bio_err, "Hash used: %s\n", OBJ_nid2sn(nid));
|
||||
} else
|
||||
BIO_puts(bio, "No peer certificate\n");
|
||||
BIO_puts(bio_err, "No peer certificate\n");
|
||||
if (peer)
|
||||
X509_free(peer);
|
||||
#ifndef OPENSSL_NO_EC
|
||||
ssl_print_point_formats(bio, s);
|
||||
ssl_print_point_formats(bio_err, s);
|
||||
if (SSL_is_server(s))
|
||||
ssl_print_curves(bio, s, 1);
|
||||
ssl_print_curves(bio_err, s, 1);
|
||||
else
|
||||
ssl_print_tmp_key(bio, s);
|
||||
ssl_print_tmp_key(bio_err, s);
|
||||
#else
|
||||
if (!SSL_is_server(s))
|
||||
ssl_print_tmp_key(bio, s);
|
||||
ssl_print_tmp_key(bio_err, s);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1681,10 +1681,11 @@ static int security_callback_debug(SSL *s, SSL_CTX *ctx,
|
||||
return rv;
|
||||
}
|
||||
|
||||
void ssl_ctx_security_debug(SSL_CTX *ctx, BIO *out, int verbose)
|
||||
void ssl_ctx_security_debug(SSL_CTX *ctx, int verbose)
|
||||
{
|
||||
static security_debug_ex sdb;
|
||||
sdb.out = out;
|
||||
|
||||
sdb.out = bio_err;
|
||||
sdb.verbose = verbose;
|
||||
sdb.old_cb = SSL_CTX_get_security_callback(ctx);
|
||||
SSL_CTX_set_security_callback(ctx, security_callback_debug);
|
||||
|
@ -1181,7 +1181,7 @@ int s_client_main(int argc, char **argv)
|
||||
}
|
||||
|
||||
if (sdebug)
|
||||
ssl_ctx_security_debug(ctx, bio_err, sdebug);
|
||||
ssl_ctx_security_debug(ctx, sdebug);
|
||||
|
||||
if (vpmtouched && !SSL_CTX_set1_param(ctx, vpm)) {
|
||||
BIO_printf(bio_err, "Error setting verify params\n");
|
||||
@ -1663,7 +1663,7 @@ int s_client_main(int argc, char **argv)
|
||||
}
|
||||
if (c_brief) {
|
||||
BIO_puts(bio_err, "CONNECTION ESTABLISHED\n");
|
||||
print_ssl_summary(bio_err, con);
|
||||
print_ssl_summary(con);
|
||||
}
|
||||
|
||||
print_stuff(bio_c_out, con, full_log);
|
||||
|
@ -1617,7 +1617,7 @@ int s_server_main(int argc, char *argv[])
|
||||
|
||||
ctx = SSL_CTX_new(meth);
|
||||
if (sdebug)
|
||||
ssl_ctx_security_debug(ctx, bio_err, sdebug);
|
||||
ssl_ctx_security_debug(ctx, sdebug);
|
||||
if (ctx == NULL) {
|
||||
ERR_print_errors(bio_err);
|
||||
goto end;
|
||||
@ -1690,7 +1690,7 @@ int s_server_main(int argc, char *argv[])
|
||||
BIO_printf(bio_s_out, "Setting secondary ctx parameters\n");
|
||||
|
||||
if (sdebug)
|
||||
ssl_ctx_security_debug(ctx, bio_err, sdebug);
|
||||
ssl_ctx_security_debug(ctx, sdebug);
|
||||
|
||||
if (session_id_prefix) {
|
||||
if (strlen(session_id_prefix) >= 32)
|
||||
@ -2487,7 +2487,7 @@ static int init_ssl_connection(SSL *con)
|
||||
}
|
||||
|
||||
if (s_brief)
|
||||
print_ssl_summary(bio_err, con);
|
||||
print_ssl_summary(con);
|
||||
|
||||
PEM_write_bio_SSL_SESSION(bio_s_out, SSL_get_session(con));
|
||||
|
||||
@ -3036,7 +3036,7 @@ static int rev_body(char *hostname, int s, int stype, unsigned char *context)
|
||||
}
|
||||
}
|
||||
BIO_printf(bio_err, "CONNECTION ESTABLISHED\n");
|
||||
print_ssl_summary(bio_err, con);
|
||||
print_ssl_summary(con);
|
||||
|
||||
for (;;) {
|
||||
i = BIO_gets(io, buf, bufsize - 1);
|
||||
|
@ -697,7 +697,7 @@ static int smime_cb(int ok, X509_STORE_CTX *ctx)
|
||||
&& ((error != X509_V_OK) || (ok != 2)))
|
||||
return ok;
|
||||
|
||||
policies_print(bio_err, ctx);
|
||||
policies_print(ctx);
|
||||
|
||||
return ok;
|
||||
|
||||
|
54
apps/srp.c
54
apps/srp.c
@ -102,38 +102,38 @@ static int get_index(CA_DB *db, char *id, char type)
|
||||
return -1;
|
||||
}
|
||||
|
||||
static void print_entry(CA_DB *db, BIO *bio, int indx, int verbose, char *s)
|
||||
static void print_entry(CA_DB *db, int indx, int verbose, char *s)
|
||||
{
|
||||
if (indx >= 0 && verbose) {
|
||||
int j;
|
||||
char **pp = sk_OPENSSL_PSTRING_value(db->db->data, indx);
|
||||
BIO_printf(bio, "%s \"%s\"\n", s, pp[DB_srpid]);
|
||||
BIO_printf(bio_err, "%s \"%s\"\n", s, pp[DB_srpid]);
|
||||
for (j = 0; j < DB_NUMBER; j++) {
|
||||
BIO_printf(bio_err, " %d = \"%s\"\n", j, pp[j]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void print_index(CA_DB *db, BIO *bio, int indexindex, int verbose)
|
||||
static void print_index(CA_DB *db, int indexindex, int verbose)
|
||||
{
|
||||
print_entry(db, bio, indexindex, verbose, "g N entry");
|
||||
print_entry(db, indexindex, verbose, "g N entry");
|
||||
}
|
||||
|
||||
static void print_user(CA_DB *db, BIO *bio, int userindex, int verbose)
|
||||
static void print_user(CA_DB *db, int userindex, int verbose)
|
||||
{
|
||||
if (verbose > 0) {
|
||||
char **pp = sk_OPENSSL_PSTRING_value(db->db->data, userindex);
|
||||
|
||||
if (pp[DB_srptype][0] != 'I') {
|
||||
print_entry(db, bio, userindex, verbose, "User entry");
|
||||
print_entry(db, bio, get_index(db, pp[DB_srpgN], 'I'), verbose,
|
||||
print_entry(db, userindex, verbose, "User entry");
|
||||
print_entry(db, get_index(db, pp[DB_srpgN], 'I'), verbose,
|
||||
"g N entry");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
static int update_index(CA_DB *db, BIO *bio, char **row)
|
||||
static int update_index(CA_DB *db, char **row)
|
||||
{
|
||||
char **irow;
|
||||
int i;
|
||||
@ -150,8 +150,8 @@ static int update_index(CA_DB *db, BIO *bio, char **row)
|
||||
irow[DB_NUMBER] = NULL;
|
||||
|
||||
if (!TXT_DB_insert(db->db, irow)) {
|
||||
BIO_printf(bio, "failed to update srpvfile\n");
|
||||
BIO_printf(bio, "TXT_DB error number %ld\n", db->db->error);
|
||||
BIO_printf(bio_err, "failed to update srpvfile\n");
|
||||
BIO_printf(bio_err, "TXT_DB error number %ld\n", db->db->error);
|
||||
OPENSSL_free(irow);
|
||||
return 0;
|
||||
}
|
||||
@ -165,7 +165,7 @@ static void lookup_fail(const char *name, const char *tag)
|
||||
|
||||
static char *srp_verify_user(const char *user, const char *srp_verifier,
|
||||
char *srp_usersalt, const char *g, const char *N,
|
||||
const char *passin, BIO *bio, int verbose)
|
||||
const char *passin, int verbose)
|
||||
{
|
||||
char password[1024];
|
||||
PW_CB_DATA cb_tmp;
|
||||
@ -177,17 +177,17 @@ static char *srp_verify_user(const char *user, const char *srp_verifier,
|
||||
|
||||
if (password_callback(password, 1024, 0, &cb_tmp) > 0) {
|
||||
if (verbose)
|
||||
BIO_printf(bio,
|
||||
BIO_printf(bio_err,
|
||||
"Validating\n user=\"%s\"\n srp_verifier=\"%s\"\n srp_usersalt=\"%s\"\n g=\"%s\"\n N=\"%s\"\n",
|
||||
user, srp_verifier, srp_usersalt, g, N);
|
||||
BIO_printf(bio, "Pass %s\n", password);
|
||||
BIO_printf(bio_err, "Pass %s\n", password);
|
||||
|
||||
OPENSSL_assert(srp_usersalt != NULL);
|
||||
if (!
|
||||
(gNid =
|
||||
SRP_create_verifier(user, password, &srp_usersalt, &verifier, N,
|
||||
g))) {
|
||||
BIO_printf(bio, "Internal error validating SRP verifier\n");
|
||||
BIO_printf(bio_err, "Internal error validating SRP verifier\n");
|
||||
} else {
|
||||
if (strcmp(verifier, srp_verifier))
|
||||
gNid = NULL;
|
||||
@ -199,7 +199,7 @@ static char *srp_verify_user(const char *user, const char *srp_verifier,
|
||||
|
||||
static char *srp_create_user(char *user, char **srp_verifier,
|
||||
char **srp_usersalt, char *g, char *N,
|
||||
char *passout, BIO *bio, int verbose)
|
||||
char *passout, int verbose)
|
||||
{
|
||||
char password[1024];
|
||||
PW_CB_DATA cb_tmp;
|
||||
@ -210,17 +210,17 @@ static char *srp_create_user(char *user, char **srp_verifier,
|
||||
|
||||
if (password_callback(password, 1024, 1, &cb_tmp) > 0) {
|
||||
if (verbose)
|
||||
BIO_printf(bio, "Creating\n user=\"%s\"\n g=\"%s\"\n N=\"%s\"\n",
|
||||
BIO_printf(bio_err, "Creating\n user=\"%s\"\n g=\"%s\"\n N=\"%s\"\n",
|
||||
user, g, N);
|
||||
if (!
|
||||
(gNid =
|
||||
SRP_create_verifier(user, password, &salt, srp_verifier, N,
|
||||
g))) {
|
||||
BIO_printf(bio, "Internal error creating SRP verifier\n");
|
||||
BIO_printf(bio_err, "Internal error creating SRP verifier\n");
|
||||
} else
|
||||
*srp_usersalt = salt;
|
||||
if (verbose > 1)
|
||||
BIO_printf(bio, "gNid=%s salt =\"%s\"\n verifier =\"%s\"\n", gNid,
|
||||
BIO_printf(bio_err, "gNid=%s salt =\"%s\"\n verifier =\"%s\"\n", gNid,
|
||||
salt, *srp_verifier);
|
||||
|
||||
}
|
||||
@ -453,7 +453,7 @@ int srp_main(int argc, char **argv)
|
||||
if (gNindex < 0 && gN != NULL && !strcmp(gN, pp[DB_srpid]))
|
||||
gNindex = i;
|
||||
|
||||
print_index(db, bio_err, i, verbose > 1);
|
||||
print_index(db, i, verbose > 1);
|
||||
}
|
||||
}
|
||||
|
||||
@ -462,7 +462,7 @@ int srp_main(int argc, char **argv)
|
||||
|
||||
if (gNindex >= 0) {
|
||||
gNrow = sk_OPENSSL_PSTRING_value(db->db->data, gNindex);
|
||||
print_entry(db, bio_err, gNindex, verbose > 1, "Default g and N");
|
||||
print_entry(db, gNindex, verbose > 1, "Default g and N");
|
||||
} else if (maxgN > 0 && !SRP_get_default_gN(gN)) {
|
||||
BIO_printf(bio_err, "No g and N value for index \"%s\"\n", gN);
|
||||
goto end;
|
||||
@ -484,7 +484,7 @@ int srp_main(int argc, char **argv)
|
||||
if (verbose > 1)
|
||||
BIO_printf(bio_err, "Processing user \"%s\"\n", user);
|
||||
if ((userindex = get_index(db, user, 'U')) >= 0) {
|
||||
print_user(db, bio_err, userindex, (verbose > 0)
|
||||
print_user(db, userindex, (verbose > 0)
|
||||
|| mode == OPT_LIST);
|
||||
}
|
||||
|
||||
@ -493,7 +493,7 @@ int srp_main(int argc, char **argv)
|
||||
BIO_printf(bio_err, "List all users\n");
|
||||
|
||||
for (i = 0; i < sk_OPENSSL_PSTRING_num(db->db->data); i++) {
|
||||
print_user(db, bio_err, i, 1);
|
||||
print_user(db, i, 1);
|
||||
}
|
||||
} else if (userindex < 0) {
|
||||
BIO_printf(bio_err,
|
||||
@ -521,7 +521,7 @@ int srp_main(int argc, char **argv)
|
||||
&(row[DB_srpsalt]),
|
||||
gNrow ? gNrow[DB_srpsalt] : gN,
|
||||
gNrow ? gNrow[DB_srpverifier] : NULL,
|
||||
passout, bio_err, verbose))) {
|
||||
passout, verbose))) {
|
||||
BIO_printf(bio_err,
|
||||
"Cannot create srp verifier for user \"%s\", operation abandoned .\n",
|
||||
user);
|
||||
@ -540,7 +540,7 @@ int srp_main(int argc, char **argv)
|
||||
=
|
||||
BUF_strdup
|
||||
(userinfo))))
|
||||
|| !update_index(db, bio_err, row)) {
|
||||
|| !update_index(db, row)) {
|
||||
if (row[DB_srpid])
|
||||
OPENSSL_free(row[DB_srpid]);
|
||||
if (row[DB_srpgN])
|
||||
@ -593,7 +593,7 @@ int srp_main(int argc, char **argv)
|
||||
(user, row[DB_srpverifier], row[DB_srpsalt],
|
||||
irow ? irow[DB_srpsalt] : row[DB_srpgN],
|
||||
irow ? irow[DB_srpverifier] : NULL, passin,
|
||||
bio_err, verbose)) {
|
||||
verbose)) {
|
||||
BIO_printf(bio_err,
|
||||
"Invalid password for user \"%s\", operation abandoned.\n",
|
||||
user);
|
||||
@ -611,7 +611,7 @@ int srp_main(int argc, char **argv)
|
||||
&(row[DB_srpsalt]),
|
||||
gNrow ? gNrow[DB_srpsalt] : NULL,
|
||||
gNrow ? gNrow[DB_srpverifier] : NULL,
|
||||
passout, bio_err, verbose))) {
|
||||
passout, verbose))) {
|
||||
BIO_printf(bio_err,
|
||||
"Cannot create srp verifier for user \"%s\", operation abandoned.\n",
|
||||
user);
|
||||
@ -664,7 +664,7 @@ int srp_main(int argc, char **argv)
|
||||
|
||||
if (pp[DB_srptype][0] == 'v') {
|
||||
pp[DB_srptype][0] = 'V';
|
||||
print_user(db, bio_err, i, verbose);
|
||||
print_user(db, i, verbose);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -296,26 +296,25 @@ static int cb(int ok, X509_STORE_CTX *ctx)
|
||||
|
||||
if (!ok) {
|
||||
if (current_cert) {
|
||||
X509_NAME_print_ex_fp(stdout,
|
||||
X509_get_subject_name(current_cert),
|
||||
0, XN_FLAG_ONELINE);
|
||||
printf("\n");
|
||||
X509_NAME_print_ex(bio_err,
|
||||
X509_get_subject_name(current_cert),
|
||||
0, XN_FLAG_ONELINE);
|
||||
BIO_printf(bio_err, "\n");
|
||||
}
|
||||
printf("%serror %d at %d depth lookup:%s\n",
|
||||
BIO_printf(bio_err, "%serror %d at %d depth lookup:%s\n",
|
||||
X509_STORE_CTX_get0_parent_ctx(ctx) ? "[CRL path]" : "",
|
||||
cert_error,
|
||||
X509_STORE_CTX_get_error_depth(ctx),
|
||||
X509_verify_cert_error_string(cert_error));
|
||||
switch (cert_error) {
|
||||
case X509_V_ERR_NO_EXPLICIT_POLICY:
|
||||
policies_print(bio_err, ctx);
|
||||
policies_print(ctx);
|
||||
case X509_V_ERR_CERT_HAS_EXPIRED:
|
||||
|
||||
/*
|
||||
* since we are just checking the certificates, it is ok if they
|
||||
* are self signed. But we should still warn the user.
|
||||
*/
|
||||
|
||||
case X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT:
|
||||
/* Continue after extension errors too */
|
||||
case X509_V_ERR_INVALID_CA:
|
||||
@ -326,14 +325,13 @@ static int cb(int ok, X509_STORE_CTX *ctx)
|
||||
case X509_V_ERR_CRL_NOT_YET_VALID:
|
||||
case X509_V_ERR_UNHANDLED_CRITICAL_EXTENSION:
|
||||
ok = 1;
|
||||
|
||||
}
|
||||
|
||||
return ok;
|
||||
|
||||
}
|
||||
if (cert_error == X509_V_OK && ok == 2)
|
||||
policies_print(bio_out, ctx);
|
||||
policies_print(ctx);
|
||||
if (!v_verbose)
|
||||
ERR_clear_error();
|
||||
return (ok);
|
||||
|
Loading…
Reference in New Issue
Block a user