X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fasn1%2Ft_x509a.c;h=8b18801a173e2f3ec800068bba2b0d020aa66c65;hp=ebd62f6989e823a2c7f26531f7cf9d26fdb043a7;hb=8d7fbd021b5ee42fcd963b158ce9880abdf64573;hpb=d4cec6a13dfb2c1d1ddf66dff499aaf21bbbf002 diff --git a/crypto/asn1/t_x509a.c b/crypto/asn1/t_x509a.c index ebd62f6989..8b18801a17 100644 --- a/crypto/asn1/t_x509a.c +++ b/crypto/asn1/t_x509a.c @@ -1,5 +1,5 @@ /* t_x509a.c */ -/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL +/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL * project 1999. */ /* ==================================================================== @@ -59,80 +59,52 @@ #include #include "cryptlib.h" #include -#include +#include #include /* X509_CERT_AUX and string set routines */ -static BIT_STRING_BITNAME tbits[] = { -{X509_TRUST_BIT_ALL, "All Purposes", "all"}, -{X509_TRUST_BIT_SSL_CLIENT, "SSL client", "sslclient"}, -{X509_TRUST_BIT_SSL_SERVER, "SSL server", "sslserver"}, -{X509_TRUST_BIT_EMAIL, "S/MIME email", "email"}, -{X509_TRUST_BIT_OBJECT_SIGN, "Object Signing", "objsign"}, -{-1, NULL, NULL} -}; - -int X509_trust_set_bit_asc(X509 *x, char *str, int value) -{ - int bitnum; - bitnum = ASN1_BIT_STRING_num_asc(str, tbits); - if(bitnum < 0) return 0; - if(x) return X509_trust_set_bit(x, bitnum, value); - return 1; -} - -int X509_notrust_set_bit_asc(X509 *x, char *str, int value) -{ - int bitnum; - bitnum = ASN1_BIT_STRING_num_asc(str, tbits); - if(bitnum < 0) return 0; - if(x) return X509_notrust_set_bit(x, bitnum, value); - return 1; -} - - int X509_CERT_AUX_print(BIO *out, X509_CERT_AUX *aux, int indent) { char oidstr[80], first; int i; if(!aux) return 1; if(aux->trust) { - BIO_printf(out, "%*sTrusted for:\n", indent, ""); - ASN1_BIT_STRING_name_print(out, aux->trust, tbits, indent + 2); - } else BIO_printf(out, "%*sNo Trust Settings\n", indent + 2, ""); - if(aux->notrust) { - BIO_printf(out, "%*sUntrusted for:\n", indent, ""); - ASN1_BIT_STRING_name_print(out, aux->notrust, tbits, indent + 2); - } else BIO_printf(out, "%*sNo Untrusted Settings\n", indent + 2, ""); - if(aux->othertrust) { first = 1; - BIO_printf(out, "%*sOther Trusted Uses:\n%*s", + BIO_printf(out, "%*sTrusted Uses:\n%*s", indent, "", indent + 2, ""); - for(i = 0; i < sk_ASN1_OBJECT_num(aux->othertrust); i++) { + for(i = 0; i < sk_ASN1_OBJECT_num(aux->trust); i++) { if(!first) BIO_puts(out, ", "); else first = 0; - OBJ_obj2txt(oidstr, 80, - sk_ASN1_OBJECT_value(aux->othertrust, i), 0); + OBJ_obj2txt(oidstr, sizeof oidstr, + sk_ASN1_OBJECT_value(aux->trust, i), 0); BIO_puts(out, oidstr); } BIO_puts(out, "\n"); - } - if(aux->othernotrust) { + } else BIO_printf(out, "%*sNo Trusted Uses.\n", indent, ""); + if(aux->reject) { first = 1; - BIO_printf(out, "%*sOther Untrusted Uses:\n%*s", + BIO_printf(out, "%*sRejected Uses:\n%*s", indent, "", indent + 2, ""); - for(i = 0; i < sk_ASN1_OBJECT_num(aux->othernotrust); i++) { + for(i = 0; i < sk_ASN1_OBJECT_num(aux->reject); i++) { if(!first) BIO_puts(out, ", "); else first = 0; - OBJ_obj2txt(oidstr, 80, - sk_ASN1_OBJECT_value(aux->othernotrust, i), 0); + OBJ_obj2txt(oidstr, sizeof oidstr, + sk_ASN1_OBJECT_value(aux->reject, i), 0); BIO_puts(out, oidstr); } BIO_puts(out, "\n"); - } + } else BIO_printf(out, "%*sNo Rejected Uses.\n", indent, ""); if(aux->alias) BIO_printf(out, "%*sAlias: %s\n", indent, "", aux->alias->data); + if(aux->keyid) { + BIO_printf(out, "%*sKey Id: ", indent, ""); + for(i = 0; i < aux->keyid->length; i++) + BIO_printf(out, "%s%02X", + i ? ":" : "", + aux->keyid->data[i]); + BIO_write(out,"\n",1); + } return 1; }