Loading CHANGES +16 −6 Original line number Diff line number Diff line Loading @@ -4,7 +4,14 @@ Changes between 0.9.4 and 0.9.5 [xx XXX 2000] *) Change function names to the new get0/get1 naming convention. *) Change names of new functions to the new get1/get0 naming convention: After 'get1', the caller owns a reference count and has to call ..._free; 'get0' returns a pointer to some data structure without incrementing reference counters. (Some of the existing 'get' functions increment a reference counter, some don't.) Similarly, 'set1' and 'add1' functions increase reference counters or duplicate objects. [Steve Henson] *) Allow for the possibility of temp RSA key generation failure: Loading Loading @@ -305,7 +312,8 @@ *) Rewrite ssl3_read_n (ssl/s3_pkt.c) avoiding a couple of bugs. [Bodo Moeller] *) New function X509_CTX_rget_chain(), this returns the chain *) New function X509_CTX_rget_chain() (renamed to X509_CTX_get1_chain in the 0.9.5 release), this returns the chain from an X509_CTX structure with a dup of the stack and all the X509 reference counts upped: so the stack will exist after X509_CTX_cleanup() has been called. Modify pkcs12.c Loading Loading @@ -641,10 +649,12 @@ it clearly returns an error if you try to read the wrong kind of key. Added a -pubkey option to the 'x509' utility to output the public key. Also rename the EVP_PKEY_get_*() to EVP_PKEY_rget_*() and add EVP_PKEY_rset_*() functions that do the same as the EVP_PKEY_assign_*() except they up the reference count of the added key (they don't "swallow" the supplied key). Also rename the EVP_PKEY_get_*() to EVP_PKEY_rget_*() (renamed to EVP_PKEY_get1_*() in the OpenSSL 0.9.5 release) and add EVP_PKEY_rset_*() functions (renamed to EVP_PKEY_set1_*()) that do the same as the EVP_PKEY_assign_*() except they up the reference count of the added key (they don't "swallow" the supplied key). [Steve Henson] *) Fixes to crypto/x509/by_file.c the code to read in certificates and Loading apps/verify.c +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ int MAIN(int argc, char **argv) BIO_printf(bio_err, "unrecognized purpose\n"); goto end; } xptmp = X509_PURPOSE_iget(i); xptmp = X509_PURPOSE_get0(i); purpose = X509_PURPOSE_get_id(xptmp); } else if (strcmp(*argv,"-untrusted") == 0) Loading Loading @@ -190,7 +190,7 @@ end: BIO_printf(bio_err,"recognized usages:\n"); for(i = 0; i < X509_PURPOSE_get_count(); i++) { X509_PURPOSE *ptmp; ptmp = X509_PURPOSE_iget(i); ptmp = X509_PURPOSE_get0(i); BIO_printf(bio_err, "\t%-10s\t%s\n", X509_PURPOSE_get0_sname(ptmp), X509_PURPOSE_get0_name(ptmp)); } Loading apps/x509.c +3 −3 Original line number Diff line number Diff line Loading @@ -555,7 +555,7 @@ bad: } } if(alias) X509_alias_rset(x, (unsigned char *)alias, -1); if(alias) X509_alias_set1(x, (unsigned char *)alias, -1); if(clrtrust) X509_trust_clear(x); if(clrreject) X509_reject_clear(x); Loading Loading @@ -599,7 +599,7 @@ bad: else if (aliasout == i) { unsigned char *alstr; alstr = X509_alias_iget(x, NULL); alstr = X509_alias_get0(x, NULL); if(alstr) BIO_printf(STDout,"%s\n", alstr); else BIO_puts(STDout,"<No Alias>\n"); } Loading @@ -614,7 +614,7 @@ bad: BIO_printf(STDout, "Certificate purposes:\n"); for(j = 0; j < X509_PURPOSE_get_count(); j++) { ptmp = X509_PURPOSE_iget(j); ptmp = X509_PURPOSE_get0(j); purpose_print(STDout, x, ptmp); } } Loading crypto/asn1/x_x509a.c +2 −2 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ static X509_CERT_AUX *aux_get(X509 *x) return x->aux; } int X509_alias_rset(X509 *x, unsigned char *name, int len) int X509_alias_set1(X509 *x, unsigned char *name, int len) { X509_CERT_AUX *aux; if(!(aux = aux_get(x))) return 0; Loading @@ -153,7 +153,7 @@ int X509_alias_rset(X509 *x, unsigned char *name, int len) return ASN1_STRING_set(aux->alias, name, len); } unsigned char *X509_alias_iget(X509 *x, int *len) unsigned char *X509_alias_get0(X509 *x, int *len) { if(!x->aux || !x->aux->alias) return NULL; if(len) *len = x->aux->alias->length; Loading crypto/x509/x509.h +3 −3 Original line number Diff line number Diff line Loading @@ -822,8 +822,8 @@ void X509_CERT_AUX_free(X509_CERT_AUX *a); int i2d_X509_CERT_AUX(X509_CERT_AUX *a,unsigned char **pp); X509_CERT_AUX * d2i_X509_CERT_AUX(X509_CERT_AUX **a,unsigned char **pp, long length); int X509_alias_rset(X509 *x, unsigned char *name, int len); unsigned char * X509_alias_iget(X509 *x, int *len); int X509_alias_set1(X509 *x, unsigned char *name, int len); unsigned char * X509_alias_get0(X509 *x, int *len); int (*X509_TRUST_set_default(int (*trust)(int , X509 *, int)))(int, X509 *, int); int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj); int X509_add1_reject_object(X509 *x, ASN1_OBJECT *obj); Loading Loading @@ -1115,7 +1115,7 @@ PKCS8_PRIV_KEY_INFO *PKCS8_set_broken(PKCS8_PRIV_KEY_INFO *p8, int broken); int X509_check_trust(X509 *x, int id, int flags); int X509_TRUST_get_count(void); X509_TRUST * X509_TRUST_iget(int idx); X509_TRUST * X509_TRUST_get0(int idx); int X509_TRUST_get_by_id(int id); int X509_TRUST_add(int id, int flags, int (*ck)(X509_TRUST *, X509 *, int), char *name, int arg1, void *arg2); Loading Loading
CHANGES +16 −6 Original line number Diff line number Diff line Loading @@ -4,7 +4,14 @@ Changes between 0.9.4 and 0.9.5 [xx XXX 2000] *) Change function names to the new get0/get1 naming convention. *) Change names of new functions to the new get1/get0 naming convention: After 'get1', the caller owns a reference count and has to call ..._free; 'get0' returns a pointer to some data structure without incrementing reference counters. (Some of the existing 'get' functions increment a reference counter, some don't.) Similarly, 'set1' and 'add1' functions increase reference counters or duplicate objects. [Steve Henson] *) Allow for the possibility of temp RSA key generation failure: Loading Loading @@ -305,7 +312,8 @@ *) Rewrite ssl3_read_n (ssl/s3_pkt.c) avoiding a couple of bugs. [Bodo Moeller] *) New function X509_CTX_rget_chain(), this returns the chain *) New function X509_CTX_rget_chain() (renamed to X509_CTX_get1_chain in the 0.9.5 release), this returns the chain from an X509_CTX structure with a dup of the stack and all the X509 reference counts upped: so the stack will exist after X509_CTX_cleanup() has been called. Modify pkcs12.c Loading Loading @@ -641,10 +649,12 @@ it clearly returns an error if you try to read the wrong kind of key. Added a -pubkey option to the 'x509' utility to output the public key. Also rename the EVP_PKEY_get_*() to EVP_PKEY_rget_*() and add EVP_PKEY_rset_*() functions that do the same as the EVP_PKEY_assign_*() except they up the reference count of the added key (they don't "swallow" the supplied key). Also rename the EVP_PKEY_get_*() to EVP_PKEY_rget_*() (renamed to EVP_PKEY_get1_*() in the OpenSSL 0.9.5 release) and add EVP_PKEY_rset_*() functions (renamed to EVP_PKEY_set1_*()) that do the same as the EVP_PKEY_assign_*() except they up the reference count of the added key (they don't "swallow" the supplied key). [Steve Henson] *) Fixes to crypto/x509/by_file.c the code to read in certificates and Loading
apps/verify.c +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ int MAIN(int argc, char **argv) BIO_printf(bio_err, "unrecognized purpose\n"); goto end; } xptmp = X509_PURPOSE_iget(i); xptmp = X509_PURPOSE_get0(i); purpose = X509_PURPOSE_get_id(xptmp); } else if (strcmp(*argv,"-untrusted") == 0) Loading Loading @@ -190,7 +190,7 @@ end: BIO_printf(bio_err,"recognized usages:\n"); for(i = 0; i < X509_PURPOSE_get_count(); i++) { X509_PURPOSE *ptmp; ptmp = X509_PURPOSE_iget(i); ptmp = X509_PURPOSE_get0(i); BIO_printf(bio_err, "\t%-10s\t%s\n", X509_PURPOSE_get0_sname(ptmp), X509_PURPOSE_get0_name(ptmp)); } Loading
apps/x509.c +3 −3 Original line number Diff line number Diff line Loading @@ -555,7 +555,7 @@ bad: } } if(alias) X509_alias_rset(x, (unsigned char *)alias, -1); if(alias) X509_alias_set1(x, (unsigned char *)alias, -1); if(clrtrust) X509_trust_clear(x); if(clrreject) X509_reject_clear(x); Loading Loading @@ -599,7 +599,7 @@ bad: else if (aliasout == i) { unsigned char *alstr; alstr = X509_alias_iget(x, NULL); alstr = X509_alias_get0(x, NULL); if(alstr) BIO_printf(STDout,"%s\n", alstr); else BIO_puts(STDout,"<No Alias>\n"); } Loading @@ -614,7 +614,7 @@ bad: BIO_printf(STDout, "Certificate purposes:\n"); for(j = 0; j < X509_PURPOSE_get_count(); j++) { ptmp = X509_PURPOSE_iget(j); ptmp = X509_PURPOSE_get0(j); purpose_print(STDout, x, ptmp); } } Loading
crypto/asn1/x_x509a.c +2 −2 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ static X509_CERT_AUX *aux_get(X509 *x) return x->aux; } int X509_alias_rset(X509 *x, unsigned char *name, int len) int X509_alias_set1(X509 *x, unsigned char *name, int len) { X509_CERT_AUX *aux; if(!(aux = aux_get(x))) return 0; Loading @@ -153,7 +153,7 @@ int X509_alias_rset(X509 *x, unsigned char *name, int len) return ASN1_STRING_set(aux->alias, name, len); } unsigned char *X509_alias_iget(X509 *x, int *len) unsigned char *X509_alias_get0(X509 *x, int *len) { if(!x->aux || !x->aux->alias) return NULL; if(len) *len = x->aux->alias->length; Loading
crypto/x509/x509.h +3 −3 Original line number Diff line number Diff line Loading @@ -822,8 +822,8 @@ void X509_CERT_AUX_free(X509_CERT_AUX *a); int i2d_X509_CERT_AUX(X509_CERT_AUX *a,unsigned char **pp); X509_CERT_AUX * d2i_X509_CERT_AUX(X509_CERT_AUX **a,unsigned char **pp, long length); int X509_alias_rset(X509 *x, unsigned char *name, int len); unsigned char * X509_alias_iget(X509 *x, int *len); int X509_alias_set1(X509 *x, unsigned char *name, int len); unsigned char * X509_alias_get0(X509 *x, int *len); int (*X509_TRUST_set_default(int (*trust)(int , X509 *, int)))(int, X509 *, int); int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj); int X509_add1_reject_object(X509 *x, ASN1_OBJECT *obj); Loading Loading @@ -1115,7 +1115,7 @@ PKCS8_PRIV_KEY_INFO *PKCS8_set_broken(PKCS8_PRIV_KEY_INFO *p8, int broken); int X509_check_trust(X509 *x, int id, int flags); int X509_TRUST_get_count(void); X509_TRUST * X509_TRUST_iget(int idx); X509_TRUST * X509_TRUST_get0(int idx); int X509_TRUST_get_by_id(int id); int X509_TRUST_add(int id, int flags, int (*ck)(X509_TRUST *, X509 *, int), char *name, int arg1, void *arg2); Loading