summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2020-06-18Document sioctl_desc structure maxval attributeAlexandre Ratchov
2020-06-15Document EVP_read_pw_string_min(3)Theo Buehler
Add detailed information on the return values of all the functions in this page and remove the previous incorrect information. tweaks & ok schwarze
2020-06-15Document PEM_def_callback(3).Ingo Schwarze
Move pem_password_cb(3) to the file PEM_read(3) and rewrite its description from scratch for precision and conciseness. Plus some minor improvements in the vicinity. Tweaks and OK tb@.
2020-06-12add my Copyright and license, which i forgot when adding a significantIngo Schwarze
amount of text, the ERRORS section, in the previous commit
2020-06-12add a comment saying that name_cmp() is intentionally undocumented;Ingo Schwarze
tb@ agrees that it should not be part of the public API
2020-06-12document PEM_ASN1_read(3) and PEM_ASN1_read_bio(3);Ingo Schwarze
tweaks and OK tb@
2020-06-11wording tweaks from ross l richardson and tb;Jason McIntyre
ok tb
2020-06-10document PKCS7_get_signer_info(3)Ingo Schwarze
2020-06-10describe six more PKCS7 attribute functionsIngo Schwarze
2020-06-09The check_includes step is incorrect dependency management model forTheo de Raadt
how our tree gets built. If this was done in all the libraries (imagine sys/dev), it would disrupt the development process hugely. So it should not be done here either. use 'make includes' by hand instead.
2020-06-07In the libc resolver function asr_run(), clear the result buffer everytime,Theo de Raadt
because there are callers who were inspecting unrelated fields. discussion with eric, otto, solution from semarie this is errata 6.6/031_asr and 6.7/009_asr
2020-06-06Implement a rolling hash of the ClientHello message, Enforce RFC 8446Bob Beck
section 4.1.2 to ensure subsequent ClientHello messages after a HelloRetryRequest messages must be unchanged from the initial ClientHello. ok tb@ jsing@
2020-06-05Remove redundant codedenis
Reported by Prof. Dr. Steffen Wendzel <wendzel @ hs-worms . de>, thanks! OK martijn@ sthen@
2020-06-05Add a custom copy handler for AES key wrapTheo Buehler
This is necessary because ctx->cipher_data is an EVP_AES_WRAP_CTX containing a pointer to ctx->iv. EVP_CIPHER_CTX_copy() uses memcpy to copy cipher_data to the target struct. The result is that the copy contains a pointer to the wrong struct, which then leads to a use-after-free. The custom copy handler fixes things up to avoid that. Issue reported by Guido Vranken ok beck inoguchi jsing
2020-06-05Use IANA allocated GOST ClientCertificateTypes.Joel Sing
IANA has allocated numbers for GOST ClientCertificateType. Use them in addition to private values (left in place for compatibility). Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux ok inoguchi@ tb@
2020-06-05Stop sending GOST R 34.10-94 as a CertificateType.Joel Sing
GOST R 34.10-94 is an obsolete certificate type, unsupported by LibreSSL and by the rest of current software, so there is no point in sending in the CertificateTypes. Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux ok inoguchi@ tb@
2020-06-05Handle GOST in ssl_cert_dup().Joel Sing
Add missing case entry for SSL_PKEY_GOST01. Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux ok inoguchi@ tb@
2020-06-05Enable GOST_SIG_FORMAT_RS_LE when verifying certificate signatures.Joel Sing
GOST cipher suites requires that CertVerify signatures be generated in a special way (see ssl3_send_client_kex_gost(), ssl3_get_cert_verify()). However, the GOST_SIG_FORMAT_RS_LE flag was not passed in case of TLS 1.2 connections (because they use different code path). Set this flag on GOST PKEYs. Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux ok inoguchi@ tb@
2020-06-05Allow GOST R 34.11-2012 in PBE/PBKDF2/PKCS#5.Joel Sing
Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux ok inoguchi@ tb@
2020-06-05Add OIDs for HMAC using Streebog (GOST R 34.11-2012) hash function.Joel Sing
Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux ok inoguchi@ tb@
2020-06-05Add a few more errors to help debugging.Joel Sing
Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux. ok inoguchi@ tb@
2020-06-05Add support for additional GOST curves.Joel Sing
These GOST curves are defined in RFC 7836 and draft-deremin-rfc4491-bis. Add aliases for 256-bit GOST curves (see draft-smyshlyaev-tls12-gost-suites) and rename the 512-bit curve ids to follow names defined in tc26 OID registry. Diff from Dmitry Baryshkov <dbaryshkov@gmail.com> Sponsored by ROSA Linux. ok inoguchi@
2020-06-05Remove remaining error *_str_functs[]Joel Sing
A number of years ago we dropped the concept of having function names in errors, since it is not that useful and very quickly gets out of sync when refactoring. It would seem that some new ones got imported and some missed the last clean up. ok tb@ beck@ "kill it with fire"
2020-06-05Apply some style(9).Joel Sing
2020-06-05One error file per directory is plenty.Joel Sing
2020-06-05HID parser could overflow if a malicious device (potentially USB) providedJonathan Gray
too many PUSH. report from Andy Nguyen @ google. fix by jcs from kernel hid.c rev 1.3
2020-06-04When X509_ATTRIBUTE_create() receives an invalid NID (e.g., -1), returnIngo Schwarze
failure rather than silently constructing a broken X509_ATTRIBUTE object that might cause NULL pointer accesses later on. This matters because X509_ATTRIBUTE_create() is used by documented API functions like PKCS7_add_attribute(3) and the NID comes straight from the user. This fixes a bug found while working on documentation. OK tb@ and "thanks" bluhm@
2020-06-04minor polishing:Ingo Schwarze
* below SEE ALSO, point to the most similar function that is not deprecated * add a comment saying why ERR_load_ERR_strings() is intentionally undocumented * update the comment specifying the merge status
2020-06-04Align tls13_server_select_certificate() withTheo Buehler
tls13_client_select_certificate(). ok inoguchi
2020-06-04Improve client certificate selection for TLSv1.3Theo Buehler
This allows clients to use EC certificates. ok inoguchi, jsing
2020-06-04mention that TLS_method(3) also supports TLSv1.3;Ingo Schwarze
tb@ OKed this part of a larger diff from inoguchi@
2020-06-04Collapse the x509v3 directory into x509.Joel Sing
This avoids the need to grep across directories to find functions and prepares for further rototilling and chainsawing. Discussed with tb@ (who also tested the release build)
2020-06-04new manual page PKCS7_add_attribute(3);Ingo Schwarze
tweaks and OK tb@
2020-06-03Properly document PKCS7_final(3), which was already mentionedIngo Schwarze
in passing in some other manual pages.
2020-06-02Remove const modifier in return type of tls13_handshake_active_state()Theo Buehler
which make no sense as pointed out by gcc on sparc64. ok jsing
2020-06-02distracting whitespaceTheo Buehler
2020-06-01Split the handling of post handshake handshake messages into itsTheo Buehler
own recv function. This simplifies tls13_recod_layer_read_internal() greatly and makes the phh handling easier to reason about since the code is no longer glued to the right hand edge of the terminal. ok jsing
2020-06-01Remove expired certificate, ok tb@Stuart Henderson
/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
2020-06-01Send an illegal_parameter alert if a client sends us invalid DH keyTheo Buehler
shares. Previously we would fail and just close the pipe. Fixes the remaining failing test-dhe-rsa-key-exchange-with-bad-messages.py tests of tlsfuzzer. ok beck (earlier version) jsing
2020-06-01Add a mechanism to set an alert in those parts of the read half ofTheo Buehler
the record layer that don't do I/O themselves. Use this mechanism to send a record overflow alert for messages that have overlong plaintext or inner plaintext. Fixes most of the remaining record-layer-limits failures of tlsfuzzer. ok jsing
2020-06-01bump to LibreSSL 3.2.1Brent Cook
2020-05-31Replace ssl_max_server_version() with ssl_downgrade_max_version()Joel Sing
Replace the only occurrence of ssl_max_server_version() with a call to ssl_downgrade_max_version() and remove ssl_max_server_version(). ok beck@ tb@
2020-05-31When building a chain look for non-expired certificates first.Joel Sing
Currently, when building a certificate chain we look up an issuer and if it is the only issuer certificate available we still use it even if it has expired. When X509_V_FLAG_TRUSTED_FIRST is not in use, untrusted certificates are processed first and if one of these happens to be expired it will be used to build the chain, even if there is another non-expired option in the trusted store. Rework this code so that we first look for a non-expired untrusted certificate. If one does not exist then we take a look in the trusted store to see if we would be able to build the chain and only if there is not, do we then look for an expired untrusted certificate. This makes certificate validation possible for various sites that are serving expired AddTrust certificates. Issue reported by Christian Heimes via GitHub. ok beck@ tb@
2020-05-31Correct downgrade sentinels when a version pinned method is in use.Joel Sing
Previously only the enabled protocol versions were considered, however we also have to consider the method in use which may be version pinned. Found the hard way by danj@ with haproxy and force-tlsv12. ok beck@ inoguchi@ tb@
2020-05-31Fix printing long doubles on architectures with hm and lm bits.mortimer
Issue reported with initial patch by enh@google.com. ok deraadt@
2020-05-31Remove an outdated BUGS section.Visa Hankala
OK mpi@ beck@
2020-05-29Add a fix from ncurses 20200523 via Hiltjo Posthuma that preventsNicholas Marriott
ncurses passing strings to tputs() that look like BSD padding when using the rep terminfo(5) capability (with BSD_TPUTS which we and upstream both have enabled). Upstream change: + add a check in EmitRange to guard against repeat_char emitting digits which could be interpreted as BSD-style padding when --enable-bsdpad is configured (report/patch by Hiltjo Posthuma). ok millert
2020-05-29Improve server certificate selection for TLSv1.3.Joel Sing
This allows an EC certificate to be selected and used, if the client sigalgs would allow it. With feedback from tb@ ok inoguchi@ tb@
2020-05-29Handle the case where we receive a valid 0 byte application data record.Joel Sing
In this situation we cannot return zero bytes, as that signals EOF. Rather we need to return TLS13_IO_WANT_POLLIN so tell the caller to call us again, at which point we'll pull up the next record. ok tb@
2020-05-29Wire up the servername callback in the TLSv1.3 server.Joel Sing
This makes SNI work correctly with TLSv1.3. Found the hard way by danj@, gonzalo@ and others. ok beck@ inoguchi@ tb@