summaryrefslogtreecommitdiffstats
path: root/lib/libcrypto/ocsp
AgeCommit message (Collapse)AuthorFilesLines
2020-10-09Fix leak or double free with OCSP_request_add0_id()tb1-8/+9
On success, OCSP_request_add0_id() transfers ownership of cid to either 'one' or 'req' depending on whether the latter is NULL or not. On failure, the caller can't tell whether OCSP_ONEREQ_new() failed (in which case cid needs to be freed) or whether it was a failure to allocate memory in sk_insert() (in which case cid must not be freed). The caller is thus faced with the choice of leaving either a leak or a potential double free. Fix this by transferring ownership only at the end of the function. Found while reviewing an upcoming diff by beck. ok jsing
2018-11-25spelling; from miodjmc1-2/+2
2018-08-24Add const to two arguments of OCSP_cert_to_id()tb2-6/+7
tested in a bulk by sthen ok jsing
2018-05-14wrap an overlong linetb1-2/+3
2018-05-13Add const qualifier to the path and url{,s} parameters oftb4-15/+16
OCSP_crlID_new(3), OCSP_parse_url(3), OCSP_sendreq_bio(3), OCSP_sendreq_new(3), and OCSP_url_svcloc_new(3). tested in a bulk build by sthen ok jsing (as part of a larger diff)
2018-05-13Add const qualifier to the X509_NAME *, ASN1_BIT_STRING *, andtb2-6/+6
ASN1_INTEGER * arguments of OCSP_cert_id_new(3). tested in a bulk build by sthen ok jsing (as part of a larger diff)
2018-05-13Add const qualifier to the ASN1_OBJECT * argument of:tb2-11/+12
OCSP_REQUEST_get_ext_by_OBJ(3), OCSP_ONEREQ_ext_by_OBJ(3) OCSP_BASICRESP_get_ext_by_OBJ(3), OCSP_SINGLERESP_get_ext_by_OBJ(3) tested in a bulk build by sthen ok jsing (as part of a larger diff)
2018-03-17Provide OCSP_SINGLERESP_get0_id().jsing2-2/+9
2017-01-29Send the function codes from the error functions to the bit bucket,beck6-87/+43
as was done earlier in libssl. Thanks inoguchi@ for noticing libssl had more reacharounds into this. ok jsing@ inoguchi@
2016-12-30Expand ASN1_ITEM_rptr macros - no change in preprocessor output.jsing1-6/+6
2016-12-30Expand ASN1_ITEM_rptr macros - no change in generated assembly.jsing2-4/+4
2016-12-27Remove all DECLARE_ASN1_SET_OF macro usage - since 2000 these have beenjsing1-3/+1
nothing but markers for utils/mkstack.pl... and we removed the code that generated more macros from these markers in 2014.
2016-12-27Kill some #if 0 code that uses old-style ASN.1 encoding.jsing1-45/+1
2016-12-21rewrite OCSP_parse_url to be sligthly less nasty and not have one byte buffer overreadsbeck1-78/+34
helpful nitpicking and ok tb@ miod@
2016-11-05Check BIO_new*() for failure.miod1-2/+5
ok beck@ jsing@
2016-11-05X509_STORE_CTX_set_*() may fail, so check for errors.miod1-4/+14
ok beck@
2016-11-04Kill a bunch of OLD_ASN1 usage by replacing ASN1_{d2i,i2d}_* withjsing2-15/+30
ASN1_item_{d2i,i2d}_* equivalents. ok guenther@ miod@
2016-11-04make public ASN1_time_parse and ASN1_time_tm_cmp to replace former hiddenbeck1-10/+7
functions.. document with a man page. bump majors on libtls, libssl, libcrypto ok jsing@ guenther@
2016-09-04Expand DECLARE_ASN1_.*FUNCTIONS macros.jsing1-17/+81
No change in preprocessed output, ignoring whitespace and line numbers.
2016-07-16Clean up OCSP_check_validity() a bit more.beck1-11/+10
- Return on first failure rather than continuing. - Don't compare times by comparing strings that possibly were not parsable as a time. ok deraadt@
2016-07-05remove unneeded duplicate call - spotted by jsing@beck1-3/+1
2016-07-05Add several fixes from OpenSSL to make OCSP work with intermediatebeck1-10/+24
certificates provided in the response. - makes our newly added ocsp regress test pass too.. ok bcook@
2016-06-25Fix from kinichiro.inoguchi@gmail.com to ensure that OCSP usesbeck1-2/+2
Generalized Time on requests as per RFC6960
2016-06-25Fix the ocsp code to actually check for errors when comparing time valuesbeck1-7/+31
which was not being done due to a lack of checking of the return code for X509_cmp_time. Ensure that we only compare GERNERALIZEDTIME values because this is what is specified by RFC6960. Issue reported, and fix provided by Kazuki Yamaguchi <k@rhe.jp> ok bcook@
2015-09-26Use ASN1_item_dup() instead of ASN1_dup().jsing1-4/+3
ok bcook@
2015-07-25Expand ASN.1 template macros - no change in generated assembly.jsing1-76/+496
2015-07-19Drop stupid (int) casts for the arguments of malloc() and friends. This ismiod1-3/+3
not 16-bit MS-DOS anymore. ok bcook@ tedu@
2015-07-16Check return value of all used functions in OCSP_REQUEST_print(); coversmiod1-5/+9
Coverity CID 78796; ok beck@
2015-02-10Manually expand ASN1_ITEM_rptr macros that should have been expanded withjsing1-2/+2
the IMPLEMENT_ASN1_DUP_FUNCTION macro.
2015-02-10Expand the IMPLEMENT_ASN1_DUP_FUNCTION macro so that the code is visiblejsing1-2/+7
and functions can be readily located. Change has been scripted and the generated assembly only differs by changes to line numbers. Discussed with beck@ miod@ tedu@
2015-02-09Expand the IMPLEMENT_ASN1_FUNCTIONS macro so that the code is visible andjsing1-16/+376
functions can be readily located. Change has been scripted and there is no change to the generated assembly. Discussed with beck@ miod@ tedu@
2014-10-28Check the result of sk_*_push() operations for failure.miod1-2/+5
ok doug@ jsing@
2014-10-22Use arc4random_buf() instead of RAND_bytes() or RAND_pseudo_bytes().jsing1-3/+3
arc4random_buf() is guaranteed to always succeed - it is worth noting that a number of the replaced function calls were already missing return value checks. ok deraadt@
2014-10-18None of these need to include <openssl/rand.h>jsing3-6/+3
2014-10-03Use string literals in printf style calls so gcc's -Wformat works.doug1-8/+4
ok tedu@, miod@
2014-07-25BIO_free() returns immediately when the sole input is NULL.doug1-3/+2
Remove unnecessary NULL check. ok miod@
2014-07-13The bell tolls for BUF_strdup - Start the migration to usingbeck1-6/+6
intrinsics. This is the easy ones, a few left to check one at a time. ok miod@ deraadt@
2014-07-12Principle of least surprise: make CMAC_CTX_free(), OCSP_REQ_CTX_free() andmiod1-1/+4
X509_STORE_CTX_free() accept NULL pointers as input without dereferencing them, like all the other well-behaved *_CTX_free() functions do.
2014-07-11Only import cryptlib.h in the four source files that actually need it.jsing4-16/+17
Remove the openssl public includes from cryptlib.h and add a small number of includes into the source files that actually need them. While here, also sort/group/tidy the includes. ok beck@ miod@
2014-07-10Explicitly include <openssl/opensslconf.h> in every file that referencesjsing2-2/+7
an OPENSSL_NO_* define. This avoids relying on something else pulling it in for us, plus it fixes several cases where the #ifndef OPENSSL_NO_XYZ is never going to do anything, since OPENSSL_NO_XYZ will never defined, due to the fact that opensslconf.h has not been included. This also includes some miscellaneous sorting/tidying of headers.
2014-07-10Stop including standard headers via cryptlib.h - pull in the headers thatjsing2-4/+8
are needed in the source files that actually require them. ok beck@ miod@
2014-07-09reset host, port, path to null after freeing so the caller doesn'ttedu1-1/+4
accidentally free them again. actually a bug in the caller and (hey hey) apps/ocsp.c has exactly that bug, but it's easier/safer to fix here.
2014-07-09ocsp_check_ids says "If algoritm mismatch let caller deal with it" beforetedu1-6/+1
returning 2. The one and only caller doesn't check for that, so... Stop returning it. ok miod
2014-06-12tags as requested by miod and teduderaadt10-10/+10
2014-05-30no need for null check before free. from Brendan MacDonelltedu1-2/+1
2014-05-23Not OPENSSL_SYS_SUNOS.jsing1-3/+0
2014-05-18Plug memory leaks upon error in OCSP_url_svcloc_new().miod1-6/+9
ok jsing@
2014-05-18In OCSP_sendreq_bio(), cope with OCSP_sendreq_new() returning NULL.miod1-4/+6
ok jsing@
2014-05-18More KNF.jsing10-193/+208
2014-05-17unchecked malloc() return value in OCSP_sendreq_new().miod1-0/+2