summaryrefslogtreecommitdiff
path: root/src/regress/lib/libcrypto/x509/x509_asn1.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* x509_asn1: avoid lookup table that makes some compilers whinetb2023-12-131-59/+37
|
* Fix copy+paste error in x509 asn regressjob2023-06-051-3/+3
|
* Make X509_NAME_get_text_by[NID|OBJ] safer.beck2023-05-291-2/+77
| | | | | | | | | | | | | | | | This is an un-revert with nits of the previously landed change to do this which broke libtls. libtls has now been changed to not use this function. This change ensures that if something is returned it is "text" (UTF-8) and a C string not containing a NUL byte. Historically callers to this function assume the result is text and a C string however the OpenSSL version simply hands them the bytes from an ASN1_STRING and expects them to know bad things can happen which they almost universally do not check for. Partly inspired by goings on in boringssl. ok jsing@ tb@
* Revert utf-8 fix for X509_NAME_get_index_by_NID to avoid libtlsbeck2023-05-031-77/+2
| | | | | | | regress for the moment. this will come back after we rethink the failure versus not there case. ok tb@ jsing@
* Change X509_NAME_get_index_by[NID|OBJ] to be safer.beck2023-05-021-2/+77
| | | | | | | | | | | | | | | | | | | | | | Currently these functions return raw ASN1_STRING bytes as a C string and ignore the encoding in a "hold my beer I am a toolkit not a functioning API surely it's just for testing and you'd never send nasty bytes" kind of way. Sadly some callers seem to use them to fetch things liks subject name components for comparisons, and often just use the result as a C string. Instead, encode the resulting bytes as UTF-8 so it is something like "text", Add a failure case if the length provided is inadequate or if the resulting text would contain an nul byte. based on boringssl. nits by dlg@ ok tb@
* Make warnings more precisejob2023-05-011-4/+4
|
* x509_asn1: make this test pass again after reinstating DER preservationtb2023-04-301-5/+5
|
* Free all libcrypto global state memory before returningjob2023-04-281-1/+3
| | | | Found with the help of Otto's malloc memory leak detector!
* Return a non-zero error exit code on any DER cache discrepanciesjob2023-04-281-3/+3
|
* Fix leaks reported by ASANtb2023-04-281-5/+1
| | | | debugged with job
* Rearrange freeing of memory in the regress testjob2023-04-281-13/+9
|
* Add X509_REQ_add_extensions and to X509_REQ_add1_attr to DER cache testjob2023-04-281-1/+139
| | | | | These new tests won't bubble up a non-zero error exit code because other libcrypto bits still need to land first.
* Add test for invalidation of DER cache for X509_CRL_* setter functionsjob2023-04-261-15/+171
| | | | | The program won't exit with a non-zero exit code if X509_CRL_set_* tests fail, as the relevant bits haven't been committed to libcrypto yet.
* Clean up X509 memory before exitjob2023-04-261-1/+4
|
* Add lookup name+function pointer table for improved diagnosticsjob2023-04-261-4/+29
| | | | OK tb@
* Parameter names are not neededjob2023-04-261-4/+4
|
* Remove unneeded parenthesesjob2023-04-261-4/+4
|
* No need to pass around const pointer cpder2job2023-04-261-18/+16
| | | | Suggested by tb@
* Shrink signature as cpder is only needed as local variablejob2023-04-261-14/+15
| | | | Suggested by tb@
* Replace macros with functionsjob2023-04-261-99/+115
| | | | Requested by tb@
* Rename dercache regress test to x509_asn1job2023-04-261-0/+195
Requested by jsing@