summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Revert utf-8 fix for X509_NAME_get_index_by_NID to avoid libtlsbeck2023-05-033-124/+22
| | | | | | | regress for the moment. this will come back after we rethink the failure versus not there case. ok tb@ jsing@
* Bring back length check tb ok'ed and I managed to remove whilebeck2023-05-031-2/+2
| | | | | | changing tests. ok tb@
* Fix a few KNF/whitespace issuestb2023-05-031-9/+5
|
* Change X509_NAME_get_index_by[NID|OBJ] to be safer.beck2023-05-023-22/+124
| | | | | | | | | | | | | | | | | | | | | | 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@
* Mark the BIO_F_* function codes as intentionally undocumentedschwarze2023-05-021-1/+1
| | | | | | and for now, skip the the BIO_R_* reason codes. It looks like all public symbols in the BIO library are now documented or marked as intentionally undocumented.
* Rename P into generatortb2023-05-021-6/+6
| | | | ok jsing
* Simplify EC_GROUP_new_by_curve_name()tb2023-05-021-20/+14
| | | | | | | | | | | | | Pull the setting of the name a.k.a. nid into ec_group_new_from_data(). This way, we can return early on finding the nid in the curve_list[]. This also avoids a silly bug where a bogus ERR_R_UNKNOWN_BUG is pushed onto the error stack when ec_group_new_from_data() failed. While there rework the exit path of ec_group_new_from_data() a bit. Instead of an ok variable we can use an additional pointer to keep track of the return value and free the EC_GROUP unconditionally. ok jsing
* Style tweaks for SMIME_write_PKCS7()tb2023-05-021-7/+5
| | | | | | | | Initialize the mdalgs stack at the top and test and assign for ctype_nid. Use an empty line to separate variable declarations from the actual code and zap an extra empty line. ok jsing
* Unwrap a linetb2023-05-021-3/+2
|
* Simplify slightly and use i2d_PKCS7_bio_stream()tb2023-05-021-3/+3
| | | | | This is a wrapper of i2d_ASN1_bio_stream() that doesn't require us to pass in PKCS7_it.
* stray whitespacetb2023-05-011-2/+2
|
* Add a missing pair of braces.tb2023-05-011-2/+3
|
* Use uppercase for the CURVE_LIST_LENGTH macrotb2023-05-011-6/+6
|
* Consistently use lowercase hex digits for curve parameterstb2023-05-011-749/+749
|
* Now that we have C99 initializers, garbage collect some commentstb2023-05-011-299/+299
|
* Rework the curve list to use actual structs instead of a customtb2023-05-011-742/+1530
| | | | | | serialized format. ok jsing
* Drop the now unnecessary and unused field_type from the curve datatb2023-05-011-54/+4
| | | | ok jsing
* Convert EC_CURVE_DATA to C99 initializerstb2023-05-011-51/+192
| | | | | | Also clean up the definition of EC_CURVE_DATA a bit. ok jsing
* Simplify ec_group_new_from_data() furthertb2023-05-011-16/+55
| | | | | | | | | | We have a BN_CTX available, so we may as well use it. This simplifies the cleanup path at the cost of a bit more code in the setup. Also use an extra BIGNUM for the cofactor. Reusing x for this is just silly. If you were really going to avoid extra allocations, this entire function could easily have been written with three BIGNUMs. ok jsing
* Make warnings more precisejob2023-05-011-4/+4
|
* Drop some dead codetb2023-05-011-11/+2
| | | | | | | No member of the curve_list[] table has a method set. Thus, curve.meth is always NULL and we never take the EC_GROUP_new(meth) code path. ok jsing
* Remove pointless/wrong .meth = 0 entries from curves_list[]tb2023-05-011-55/+1
|
* Mechanically convert curve_list[] to C99 initializerstb2023-05-011-55/+325
| | | | ok jsing
* Clean up handling of nist_curves[]tb2023-05-011-18/+14
| | | | | | | | There's no point in introducing a typedef only for two sizeof() calls. We might as well use an anonymous struct for this list. Make it const while there, drop some braces and compare strcmp() return value to 0. ok jsing
* Remove ASN1_item_ndef_i2d(3) documentationtb2023-05-012-35/+5
| | | | | This was the last public API explicitly named ndef/NDEF for indefinite length encoding, so remove that explanation as well.
* First pass of removing low-level ASN.1 streaming docstb2023-05-0114-343/+26
|
* spellingjsg2023-05-011-3/+3
|
* x509_asn1: make this test pass again after reinstating DER preservationtb2023-04-301-5/+5
|
* check_complete.pl: update for recent changes in bntb2023-04-301-4/+3
|
* mandoc -Tlint tells me I forgot to zap a commatb2023-04-301-2/+2
|
* Remove most documentation pertaining to proxy certificates.tb2023-04-306-205/+10
| | | | | Update EXFLAG_PROXY and X509_V_FLAG_ALLOW_PROXY_CERTS documentation since we need to keep them for the time being.
* Remove proxy cert api remmnantstb2023-04-301-9/+1
|
* Remove documentation of BN_generate_prime(), BN_is_prime{,_fasttest}()tb2023-04-301-85/+4
|
* Remove documentation of BN_zero_ex() and update BN_one() and BN_zero()tb2023-04-301-22/+3
| | | | | which are no longer macros (and the latter is no longer deprecated and no longer attempts to allocate memory).
* Garbage collect BN_zero_ex()tb2023-04-301-7/+1
|
* Remove __dead again. Apparently this causes issues for some upstreams.tb2023-04-301-2/+2
| | | | Thanks to orbea for the report
* Revert disablement of the encoding cachejob2023-04-302-4/+17
| | | | | | | | | | | | Without the cache, we verify CRL signatures on bytes that have been pulled through d2i_ -> i2d_, this can cause reordering, which in turn invalidates the signature. for example if in the original CRL revocation entries were sorted by date instead of ascending serial number order. There are probably multiple things we can do here, but they will need careful consideration and planning. OK jsing@
* Send x509_subject_cmp() to the attictb2023-04-301-9/+1
| | | | | | This helper has been inside #if 0 for nearly 25 years. Let it go. If we should ever need it, I'm quite confident that we will be able to come up with its one line body on our own.
* The policy tree is no moretb2023-04-309-527/+11
| | | | | Mop up documentation mentioning it or any of its numerous accessors that almost nothing ever used.
* Zap extra blank linetb2023-04-301-2/+1
|
* Make the descriptions of BIO_get_retry_BIO(3) and BIO_get_retry_reason(3)schwarze2023-04-301-11/+60
| | | | | more precise. Among other improvements, describe the three BIO_RR_* constants serving as reason codes.
* Slightly improve the documentation of the "oper" parameter byschwarze2023-04-301-3/+10
| | | | explicitly listing the valid arguments, i.e. the BIO_CB_* constants.
* Document the eight BIO_CONN_S_* constants that are passed to BIO_info_cb(3)schwarze2023-04-301-2/+36
| | | | | as the "state" argument. Document them here because connect BIOs are the only built-in BIO type using these constants.
* Mark the five BIO_GHBN_* constants as intentionally undocumented.schwarze2023-04-301-2/+7
| | | | | | They are intended to be used by BIO_gethostbyname(), which is deprecated in OpenSSL and already marked as intentionally undocumented in LibreSSL. Besides, these constants are completely unused by anything.
* whitespacetb2023-04-301-2/+2
|
* Sort alphabeticallytb2023-04-301-2/+2
|
* Remove unnecessary targettb2023-04-301-4/+1
|
* policy test: simplify Makefiletb2023-04-301-9/+2
|
* Mention a few standard BIO_ctrl(3) command constantsschwarze2023-04-293-13/+30
| | | | | that provide type-specific functionality here. While here, fix some wrong return types in the SYNOPSIS.
* Mention a few standard BIO_ctrl(3) command constantsschwarze2023-04-291-2/+7
| | | | | that provide type-specific functionality here, and add the missing return type to one function prototype.