Change the 'other' structure in certificate aux info.

This commit is contained in:
Dr. Stephen Henson 2000-02-20 18:27:23 +00:00
parent 853f757ece
commit d754b3850f
4 changed files with 12 additions and 6 deletions

View File

@ -4,6 +4,11 @@
Changes between 0.9.4 and 0.9.5 [xx XXX 2000] Changes between 0.9.4 and 0.9.5 [xx XXX 2000]
*) Change the 'other' type in certificate aux info to a STACK_OF
X509_ALGOR. Although not an AlgorithmIdentifier as such it has
the required ASN1 format: arbitrary types determined by an OID.
[Steve Henson]
*) Add some PEM_write_X509_REQ_NEW() functions and a command line *) Add some PEM_write_X509_REQ_NEW() functions and a command line
argument to 'req'. This is not because the function is newer or argument to 'req'. This is not because the function is newer or
better than others it just uses the work 'NEW' in the certificate better than others it just uses the work 'NEW' in the certificate

View File

@ -103,7 +103,7 @@ my %table=(
"debug-rse","cc:-DTERMIOS -DL_ENDIAN -pipe -O -g -ggdb3 -Wall::(unknown)::BN_LLONG $x86_gcc_des $x86_gcc_opts:$x86_elf_asm", "debug-rse","cc:-DTERMIOS -DL_ENDIAN -pipe -O -g -ggdb3 -Wall::(unknown)::BN_LLONG $x86_gcc_des $x86_gcc_opts:$x86_elf_asm",
"debug-bodo", "gcc:-DBIO_PAIR_DEBUG -DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -m486 -pedantic -Wshadow -Wall::-D_REENTRANT::BN_LLONG $x86_gcc_des $x86_gcc_opts:$x86_elf_asm", "debug-bodo", "gcc:-DBIO_PAIR_DEBUG -DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -m486 -pedantic -Wshadow -Wall::-D_REENTRANT::BN_LLONG $x86_gcc_des $x86_gcc_opts:$x86_elf_asm",
"debug-ulf", "gcc:-DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe::-D_REENTRANT::$x86_gcc_des $x86_gcc_opts:$x86_elf_asm", "debug-ulf", "gcc:-DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -g -O2 -m486 -Wall -Werror -Wshadow -pipe::-D_REENTRANT::$x86_gcc_des $x86_gcc_opts:$x86_elf_asm",
"debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Wshadow -pipe::-D_REENTRANT::$x86_gcc_des $x86_gcc_opts:$x86_elf_asm", "debug-steve", "gcc:-DL_ENDIAN -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -O2 -m486 -pedantic -Wall -Werror -Wshadow -pipe::-D_REENTRANT::$x86_gcc_des $x86_gcc_opts:$x86_elf_asm",
"debug-levitte-linux-elf","gcc:-DRL_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:::", "debug-levitte-linux-elf","gcc:-DRL_DEBUG -DREF_CHECK -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DNO_ASM -DL_ENDIAN -DTERMIO -D_POSIX_SOURCE -ggdb -g3 -m486 -pedantic -ansi -Wall -Wshadow -Wid-clash-31 -pipe::-D_REENTRANT:::",
"dist", "cc:-O::(unknown):::::", "dist", "cc:-O::(unknown):::::",

View File

@ -84,7 +84,8 @@ X509_CERT_AUX *d2i_X509_CERT_AUX(X509_CERT_AUX **a, unsigned char **pp, long len
d2i_ASN1_OBJECT, ASN1_OBJECT_free, 0); d2i_ASN1_OBJECT, ASN1_OBJECT_free, 0);
M_ASN1_D2I_get_opt(ret->alias, d2i_ASN1_UTF8STRING, V_ASN1_UTF8STRING); M_ASN1_D2I_get_opt(ret->alias, d2i_ASN1_UTF8STRING, V_ASN1_UTF8STRING);
M_ASN1_D2I_get_opt(ret->keyid, d2i_ASN1_OCTET_STRING, V_ASN1_OCTET_STRING); M_ASN1_D2I_get_opt(ret->keyid, d2i_ASN1_OCTET_STRING, V_ASN1_OCTET_STRING);
M_ASN1_D2I_get_opt(ret->other, d2i_ASN1_TYPE, V_ASN1_SEQUENCE); M_ASN1_D2I_get_IMP_set_opt_type(X509_ALGOR, ret->other,
d2i_X509_ALGOR, X509_ALGOR_free, 1);
M_ASN1_D2I_Finish(a, X509_CERT_AUX_free, ASN1_F_D2I_X509_CERT_AUX); M_ASN1_D2I_Finish(a, X509_CERT_AUX_free, ASN1_F_D2I_X509_CERT_AUX);
} }
@ -110,7 +111,7 @@ void X509_CERT_AUX_free(X509_CERT_AUX *a)
sk_ASN1_OBJECT_pop_free(a->reject, ASN1_OBJECT_free); sk_ASN1_OBJECT_pop_free(a->reject, ASN1_OBJECT_free);
ASN1_UTF8STRING_free(a->alias); ASN1_UTF8STRING_free(a->alias);
ASN1_OCTET_STRING_free(a->keyid); ASN1_OCTET_STRING_free(a->keyid);
ASN1_TYPE_free(a->other); sk_X509_ALGOR_pop_free(a->other, X509_ALGOR_free);
Free(a); Free(a);
} }
@ -123,7 +124,7 @@ int i2d_X509_CERT_AUX(X509_CERT_AUX *a, unsigned char **pp)
M_ASN1_I2D_len(a->alias, i2d_ASN1_UTF8STRING); M_ASN1_I2D_len(a->alias, i2d_ASN1_UTF8STRING);
M_ASN1_I2D_len(a->keyid, i2d_ASN1_OCTET_STRING); M_ASN1_I2D_len(a->keyid, i2d_ASN1_OCTET_STRING);
M_ASN1_I2D_len(a->other, i2d_ASN1_TYPE); M_ASN1_I2D_len_IMP_SEQUENCE_opt_type(X509_ALGOR, a->other, i2d_X509_ALGOR, 1);
M_ASN1_I2D_seq_total(); M_ASN1_I2D_seq_total();
@ -132,7 +133,7 @@ int i2d_X509_CERT_AUX(X509_CERT_AUX *a, unsigned char **pp)
M_ASN1_I2D_put(a->alias, i2d_ASN1_UTF8STRING); M_ASN1_I2D_put(a->alias, i2d_ASN1_UTF8STRING);
M_ASN1_I2D_put(a->keyid, i2d_ASN1_OCTET_STRING); M_ASN1_I2D_put(a->keyid, i2d_ASN1_OCTET_STRING);
M_ASN1_I2D_put(a->other, i2d_ASN1_TYPE); M_ASN1_I2D_put_IMP_SEQUENCE_opt_type(X509_ALGOR, a->other, i2d_X509_ALGOR, 1);
M_ASN1_I2D_finish(); M_ASN1_I2D_finish();
} }

View File

@ -242,7 +242,7 @@ typedef struct x509_cert_aux_st
STACK_OF(ASN1_OBJECT) *reject; /* rejected uses */ STACK_OF(ASN1_OBJECT) *reject; /* rejected uses */
ASN1_UTF8STRING *alias; /* "friendly name" */ ASN1_UTF8STRING *alias; /* "friendly name" */
ASN1_OCTET_STRING *keyid; /* key id of private key */ ASN1_OCTET_STRING *keyid; /* key id of private key */
ASN1_TYPE *other; /* other unspecified info */ STACK_OF(X509_ALGOR) *other; /* other unspecified info */
} X509_CERT_AUX; } X509_CERT_AUX;
typedef struct x509_st typedef struct x509_st