summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_transcript.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2021-12-15Document i2c_ASN1_INTEGER(3).schwarze1-7/+46
While it was probably a mistake that steve@ made some i2c_*() and c2i_*() functions public back in 2000 and while we would like to delete them from the API, it may not be possible to delete this particular function because in contrast to the others (which are already marked as intentionally undocumented), this one is used by various real-world software, so for now, explain what it does, just in case people find it in existing code. While here, use the familiar term "byte" that we generally use throughout all our manual pages, even though the ASN.1 standard uses the term "octet" instead, which is more precise only in theory.
2021-12-14tweak for the generated sourcetb1-2/+2
2021-12-14more symbols that are postponed or intentionally undocumented andschwarze1-6/+55
some regexp tweaks; the relevant parts of asn1.h are nearing completion
2021-12-14forgotten .Dv macros in -column listsschwarze2-19/+19
2021-12-14add roff(7) comments listing some M_ASN1_* aliasesschwarze3-6/+11
that are intentionally undocumented
2021-12-14Consolidate ASN.1 universal tag type data.jsing6-82/+283
There are currently three different tables in three different files that contain information about ASN.1 universal class tag types. Range checking is also implemented in three different places (with different implementations). Consolidate all of this into a single table, provide a lookup function that deals with the range checks and wrappers to deal with specific types. ok inoguchi@ tb@
2021-12-14Add regress coverage for ASN1_get_object()jsing1-1/+262
2021-12-14Add regress for ASN1_tag2bit() and ASN1_tag2str()jsing2-1/+135
2021-12-14document the very quirky behaviour of the SMIME_OLDMIME flagschwarze1-3/+39
2021-12-14new manual page SMIME_text(3)schwarze4-5/+65
2021-12-14new manual page SMIME_read_ASN1(3)schwarze4-8/+134
using parts of the text from SMIME_read_CMS(3) and SMIME_read_PKCS7(3)
2021-12-13new manual page PEM_write_bio_ASN1_stream(3);schwarze5-6/+100
certainly not perfect, but arguably better than the even terser PEM_write_bio_CMS_stream(3) and PEM_write_bio_PKCS7_stream(3)
2021-12-13Remove the last internal use of d2i_ASN1_BOOLEAN.tb1-7/+3
From Stephen Henson, OpenSSL 564df0dd ok jsing
2021-12-13Clean up d2i_ASN1_BOOLEAN() and i2d_ASN1_BOOLEAN().jsing3-118/+23
Convert these to templated ASN.1, given we already have ASN1_BOOLEAN_it. ok inoguchi@ tb@
2021-12-13this file doesn't use anything from <stdio.h>;schwarze1-2/+1
in particular, NULL is also in <stdlib.h> according to the C99 standard; "free commit" tb@
2021-12-13Convert asn1_d2i_ex_primitive()/asn1_collect() from BUF_MEM to CBB.jsing1-31/+37
With this we get simpler code, overflow checking and more sensible memory ownership. Also switch the free_cont case to freezero() since this could contain secrets. ok inoguchi@ tb@
2021-12-13new manual page SMIME_write_ASN1(3);schwarze5-9/+179
still vague in various respects, but it's a start
2021-12-13remove a couple hundred sys/param.h includes in userland code, andderaadt50-227/+77
also whack some sys/cdefs.h early includes which is such a brutally bad pattern ok bluhm mbuhl
2021-12-13Catch integer overflow rather than silently truncating whileschwarze1-1/+10
parsing MASK: strings in ASN1_STRING_set_default_mask_asc(3). Issue noticed by tb@, patch by me, two additional #include lines from tb@. OK tb@.
2021-12-13new manual pages i2d_ASN1_bio_stream(3) and SMIME_crlf_copy(3)schwarze6-8/+203
2021-12-12Annotate the structs that will be moved to hmac_local.h and evp_locl.htb3-8/+20
in an upcoming bump. This omits EVP_AEAD_CTX which will be dealt with separately. EVP_CIPHER_INFO internals are still publicly visible in OpenSSL, so it won't be moved. Move typedefs for HMAC_CTX and EVP_ENCODE_CTX to ossl_typ.h. These typedefs will be visible by files including only hmac.h or evp.h since hmac.h includes evp.h and evp.h includes ossl_typ.h. ok inoguchi
2021-12-12Include evp_locl.h where it will be needed once most structs fromtb71-72/+184
evp.h will be moved to evp_locl.h in an upcoming bump. ok inoguchi
2021-12-12Add a mostly empty hmac_local.h. HMAC_CTX and a few other thingstb7-6/+86
from hmac.h will be moved there in an umpcoming bump. Include this file where it will be needed. ok inoguchi
2021-12-12Add -I${LIBCRYPTO_SRC}/hmac to CFLAGS. Needed in an upcoming commit.tb1-1/+2
ok inoguchi
2021-12-12Add header guards to evp_locl.h.tb1-1/+6
ok inoguchi
2021-12-12Convert req.c to compile with opaque EVP_MD_CTX.tb1-25/+43
ok inoguchi
2021-12-12Convert passwd.c to opaque EVP_MD_CTX and add a bit of error checking.tb1-35/+72
tweak/ok inoguchi
2021-12-12Make speed.c compile with opaque EVP_CIPHER, EVP_MD and HMAC_CTX.tb1-20/+29
ok inoguchi
2021-12-12A few more simplifications using get0_pubkey instead of get_pubkey + free.tb1-9/+5
2021-12-12Simplify x509.c slightly by using X509_get0_pubkey() instead oftb1-5/+3
X509_get_pubkey() ok inoguchi
2021-12-12Make x509.c compile with opaque EVP_PKEY.tb1-7/+15
ok inoguchi
2021-12-12Use correct spelling of NULLtb1-2/+2
ok inoguchi
2021-12-12Make ts.c compile with opaque EVP_MD_CTX.tb1-5/+10
ok inoguchi
2021-12-12document the ub_* constantsschwarze1-2/+22
2021-12-12typoschwarze1-2/+2
2021-12-12New manual page providing a rudimentary description of BIO_new_NDEF(3).schwarze4-5/+127
The API surrounding this is so complicated and streaming is so rarely used in practice that describing this in more detail is not a priority right now. The documentation of the wrapper BIO_new_CMS(3) is also rather vague, and BIO_new_PKCS7() isn't described at all so far.
2021-12-12Rewrite X509_ALGOR_set_md() without reaching into EVP_MD.tb1-5/+3
ok inoguchi schwarze
2021-12-11Merge two bugfixes in ASN1_STRING_TABLE_add(3) and ASN1_STRING_TABLE_get(3)schwarze3-36/+189
from the OpenSSL 1.1.1 branch, which is still under a free license, mostly this commit: commit d35c0ff30b31be9fd5dcf3d552a16feb8de464bc Author: Dr. Stephen Henson <steve@openssl.org> Date: Fri Oct 19 15:06:31 2012 +0000 fix ASN1_STRING_TABLE_add so it can override existing string table values This fixes a segfault in ASN1_STRING_TABLE_add(3), which tried to change a static const entry when called with an nid already in the default table, and it switches the precedence of the two tables in ASN1_STRING_TABLE_get(3). In addition, it changes behaviour in the following minor ways: * Ignore negative minsize and maxsize arguments, not just -1. * Ignore a zero mask and zero flags. It's unclear whether these additional changes make the API absolutely better, but we want compatibility with OpenSSL in these functions. Tweaks & OK tb@.
2021-12-11Merge the deletion of <ctype.h>, which isn't used here,schwarze1-17/+21
and some style improvements from the OpenSSL 1.1.1 branch, which is still under a free license. No functional change. OK and additional tweaks tb@.
2021-12-11document STABLE_NO_MASK and STABLE_FLAGS_MALLOC,schwarze1-13/+32
mention which argument values can be used to not change the respective fields, and tweak a few additional wordings
2021-12-11two more "the the" fixes;jmc1-3/+3
2021-12-11Stop passing __FILE__ and __LINE__ to various libcrypto functions. The argumentsanton1-13/+13
are unused in the end anyway and occupies needless space, especially in ftp(1) shipped with the ramdisk. ok tb@
2021-12-10explain how X509_NAME_ENTRY_set_data(3) uses MBSTRING_FLAGschwarze1-5/+20
2021-12-10document the following constants:schwarze2-4/+28
B_ASN1_DIRECTORYSTRING, B_ASN1_PRINTABLE, B_ASN1_DISPLAYTEXT, B_ASN1_TIME, DIRSTRING_TYPE, PKCS9STRING_TYPE
2021-12-09document V_ASN1_SEQUENCE and V_ASN1_SETschwarze1-4/+9
2021-12-09document V_ASN1_BOOLEANschwarze1-2/+4
2021-12-09improve the documentation of V_ASN1_APP_CHOOSEschwarze2-6/+15
2021-12-09Mention V_ASN1_PRIMITIVE_TAG and V_ASN1_EOC.schwarze1-5/+14
Seeing the symbolic names in addition to the magic numbers makes it esier to understand the text.
2021-12-09add the missing STANDARDS sectionschwarze1-2/+8
2021-12-09Document V_ASN1_ANY.schwarze1-12/+15
While here, tweak some wordings a bit to make it less likely that readers confuse the type held by an ASN1_TYPE object with the type of the ASN1_TYPE object itself, which is always V_ASN1_ANY.