summaryrefslogtreecommitdiffstats
path: root/crypto/asn1/asn1.h
AgeCommit message (Collapse)Author
2018-08-14i2d_ASN1_BOOLEAN(): correct error moduleRichard Levitte
Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6957)
2018-08-11i2d_ASN1_OBJECT(): allocate memory if the user didn't provide a bufferRichard Levitte
Since 0.9.7, all i2d_ functions were documented to allocate an output buffer if the user didn't provide one, under these conditions (from the 1.0.2 documentation): For OpenSSL 0.9.7 and later if B<*out> is B<NULL> memory will be allocated for a buffer and the encoded data written to it. In this case B<*out> is not incremented and it points to the start of the data just written. i2d_ASN1_OBJECT was found not to do this, and would crash if a NULL output buffer was provided. Fixes #6914 Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/6918) (cherry picked from commit 6114041540d8d1fecaf23a861788c3c742d3b467)
2018-05-02a_strex.c: prevent out of bound read in do_buf()Dr. Matthias St. Pierre
which is used for ASN1_STRING_print_ex*() and X509_NAME_print_ex*(). Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6118)
2018-03-26Limit ASN.1 constructed types recursive definition depthMatt Caswell
Constructed types with a recursive definition (such as can be found in PKCS7) could eventually exceed the stack given malicious input with excessive recursion. Therefore we limit the stack depth. CVE-2018-0739 Credit to OSSFuzz for finding this issue. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-20Revert "Make it possible to have RFC2254 escapes with ASN1_STRING_print_ex()"Richard Levitte
This reverts commit 87728c682995d0575b52a5a19d69405bb764e76e. Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-18Make it possible to have RFC2254 escapes with ASN1_STRING_print_ex()Richard Levitte
Also adds 'esc_2254' to the possible command line name options RT#1466 Reviewed-by: Rich Salz <rsalz@openssl.org> (cherry picked from commit bc776510982b3768761d32c1160e79cb45a561c3)
2015-03-08Cleanse PKCS#8 private key components.Dr. Stephen Henson
New function ASN1_STRING_clear_free which cleanses an ASN1_STRING structure before freeing it. Call ASN1_STRING_clear_free on PKCS#8 private key components. Reviewed-by: Rich Salz <rsalz@openssl.org> (cherry picked from commit a8ae0891d4bfd18f224777aed1fbb172504421f1)
2015-01-22Run util/openssl-format-source -v -c .Matt Caswell
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-22mark all block comments that need format preserving so thatTim Hudson
indent will not alter them when reformatting comments (cherry picked from commit 1d97c8435171a7af575f73c526d79e1ef0ee5960) Conflicts: crypto/bn/bn_lcl.h crypto/bn/bn_prime.c crypto/engine/eng_all.c crypto/rc4/rc4_utl.c crypto/sha/sha.h ssl/kssl.c ssl/t1_lib.c Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-05Constify ASN1_TYPE_cmp add X509_ALGOR_cmp.Dr. Stephen Henson
Reviewed-by: Emilia Käsper <emilia@openssl.org> (cherry picked from commit 4c52816d35681c0533c25fdd3abb4b7c6962302d)
2014-12-18Return error when a bit string indicates an invalid amount of bits leftKurt Roeckx
Reviewed-by: Matt Caswell <matt@openssl.org>
2014-12-17Reject invalid constructed encodings.Dr. Stephen Henson
According to X6.90 null, object identifier, boolean, integer and enumerated types can only have primitive encodings: return an error if any of these are received with a constructed encoding. Reviewed-by: Emilia Käsper <emilia@openssl.org>
2013-10-01Add KDF for DH.Dr. Stephen Henson
Add X9.42 DH KDF. Move sharedinfo generation code to CMS library as the same structure is used by DH and ECDH. Move ASN1_OBJECT typedef to ossl_typ.h so it can be picked up by dh headers without the need to use ASN1. (cherry picked from commit dc1ce3bc64845d16314af1f11acf5384e4ae9b34)
2013-08-19Time difference functions.Dr. Stephen Henson
Backport of ASN1_TIME_diff and OPENSSL_gmtime_diff functions from master branch.
2011-10-09Backport PSS signature support from HEAD.Dr. Stephen Henson
2011-10-09Backport of password based CMS support from HEAD.Dr. Stephen Henson
2011-01-24PR: 2433Dr. Stephen Henson
Submitted by: Chris Wilson <chris@qwirx.com> Reviewed by: steve Constify ASN1_STRING_set_default_mask_asc().
2009-09-06PR: 1644Dr. Stephen Henson
Submitted by: steve@openssl.org Fix to make DHparams_dup() et al work in C++. For 1.0 fix the final argument to ASN1_dup() so it is void *. Replace some *_dup macros with functions.
2009-09-02PR: 2013Dr. Stephen Henson
Submitted by: steve@openssl.org Include a flag ASN1_STRING_FLAG_MSTRING when a multi string type is created. This makes it possible to tell if the underlying type is UTCTime, GeneralizedTime or Time when the structure is reused and X509_time_adj_ex() can handle each case in an appropriate manner. Add error checking to CRL generation in ca utility when nextUpdate is being set.
2009-07-27PR: 1996Dr. Stephen Henson
Submitted by: steve@openssl.org Change conflicting name "BLOCK" to "OPENSSL_BLOCK".
2009-07-24Update from 0.9.8-stableDr. Stephen Henson
2009-04-05Fix error codes.Dr. Stephen Henson
2009-04-01Make update fixing duplicate ASN1 error codes.Dr. Stephen Henson
2009-03-25Update from stable branch.Dr. Stephen Henson
2009-03-09PR: 1854Dr. Stephen Henson
Submitted by: Oliver Martin <oliver@volatilevoid.net> Reviewed by: steve@openssl.org Support GeneralizedTime in ca utility.
2009-01-28Update from stable branch.Dr. Stephen Henson
2008-11-12Revert the size_t modifications from HEAD that had led to moreGeoff Thorpe
knock-on work than expected - they've been extracted into a patch series that can be completed elsewhere, or in a different branch, before merging back to HEAD.
2008-11-01More size_tification.Ben Laurie
2008-11-01size_tification.Ben Laurie
2008-10-07Experimental new date handling routines. These fix issues with X509_time_adj()Dr. Stephen Henson
and should avoid any OS date limitations such as the year 2038 bug.
2008-06-04More type-checking.Ben Laurie
2008-03-31Fix it properly this time....Dr. Stephen Henson
2008-03-31Fix macro.Dr. Stephen Henson
2008-03-31Use correct headers for signed receipts. Use consistent naming.Dr. Stephen Henson
Update cms-test.pl to support OpenSSL 0.9.8.
2008-03-12And so it begins...Dr. Stephen Henson
Initial support for CMS. Add zlib compression BIO. Add AES key wrap implementation. Generalize S/MIME MIME code to support CMS and/or PKCS7.
2008-02-11Extend attribute setting routines to support non-string types.Dr. Stephen Henson
2007-11-20Submitted by: "Victor B. Wagner" <vitus@cryptocom.ru>Dr. Stephen Henson
Make {d2i,i2d}_PrivateKey() fall back to PKCS#8 format if no legacy format supported. Add support in d2i_AutoPrivateKey().
2007-09-18Addenum to "Constify obj_dat.[ch]."Andy Polyakov
2007-06-07Finish gcc 4.2 changes.Dr. Stephen Henson
2007-04-14New function ASN1_STRING_copy() to copy to an alreadyDr. Stephen Henson
alloacted ASN1_STRING structure.
2006-12-24Experimental streaming PKCS#7 support.Dr. Stephen Henson
I thought it was about time I dusted this off. This stuff had been sitting on my hard drive for *ages* (2003 in fact). Hasn't been tested well and may not work properly. Nothing uses it at present which is just as well. Think of this as a traditional Christmas present which looks far more impressive in the adverts and on the box, some of the bits are missing and falls to bits if you play with it too much.
2006-11-16Initial, incomplete support for typesafe macros without using functionDr. Stephen Henson
casts.
2006-07-17Fix various error codes to match functions.Dr. Stephen Henson
2006-05-08Update PKCS#7 enveloped data to new API.Dr. Stephen Henson
2006-05-07Add support for default public key digest type ctrl.Dr. Stephen Henson
2006-04-19Remove link between digests and signature algorithms.Dr. Stephen Henson
Use cross reference table in ASN1_item_sign(), ASN1_item_verify() to eliminate the need for algorithm specific code.
2006-03-22Make EVP_PKEY_ASN1_METHOD opaque. Add application level functions toDr. Stephen Henson
initialize it. Initial support for application added public key ASN1.
2006-03-22Gather printing routines into EVP_PKEY_ASN1_METHOD.Dr. Stephen Henson
2006-03-20Transfer parameter handling and key comparison to algorithm methods.Dr. Stephen Henson
2006-03-20Initial support for pluggable public key ASN1 support. Process most publicDr. Stephen Henson
key ASN1 handling through a single EVP_PKEY_ASN1_METHOD structure and move the spaghetti algorithm specific code to a single ASN1 module for each algorithm.