openssl/doc/crypto
Kirill Marinushkin 9fe9d0461e Optimized BIO mem read - without reallocation
Currently on every BIO mem read operation the remaining data is reallocated.
This commit solves the issue.
BIO mem structure includes additional pointer to the read position.
On every read the pointer moves instead of reallocating the memory for the remaining data.
Reallocation accures before write and some ioctl operations, if the read pointer doesn't point on the beginning of the buffer.
Also the flag is added to rewind the read pointer without losing the data.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-04-02 16:57:07 -04:00
..
ASN1_generate_nconf.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
ASN1_INTEGER_get_int64.pod Fixed a bunch of typos in the docs 2016-03-19 20:23:22 -04:00
ASN1_OBJECT_new.pod Fixed a bunch of typos in the docs 2016-03-19 20:23:22 -04:00
ASN1_STRING_length.pod
ASN1_STRING_new.pod
ASN1_STRING_print_ex.pod
ASN1_TIME_set.pod
ASN1_TYPE_get.pod
ASYNC_start_job.pod Fixed a bunch of typos in the docs 2016-03-19 20:23:22 -04:00
ASYNC_WAIT_CTX_new.pod Clarify ASYNC_WAIT_CTX_clear_fd() docs 2016-02-29 12:58:44 +00:00
BIO_ADDR.pod Add a BIO_ADDR_clear function 2016-02-05 20:47:36 +00:00
BIO_ADDRINFO.pod Fixed a bunch of typos in the docs 2016-03-19 20:23:22 -04:00
BIO_connect.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
BIO_ctrl.pod
BIO_f_base64.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_f_buffer.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_f_cipher.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_f_md.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_f_null.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_f_ssl.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_find_type.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BIO_get_data.pod Add documentation for BIO functions 2016-03-29 17:40:54 +01:00
BIO_get_ex_new_index.pod ex_data part 2: doc fixes and CRYPTO_free_ex_index. 2015-12-01 11:48:37 -05:00
BIO_meth_new.pod Add documentation for BIO functions 2016-03-29 17:40:54 +01:00
BIO_new_CMS.pod
BIO_new.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_parse_hostserv.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
BIO_push.pod Add documentation for BIO functions 2016-03-29 17:40:54 +01:00
BIO_read.pod Clarify the behavior of BIO_gets() a bit more 2016-03-29 18:10:49 -04:00
BIO_s_accept.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
BIO_s_bio.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
BIO_s_connect.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
BIO_s_fd.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
BIO_s_file.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_s_mem.pod Optimized BIO mem read - without reallocation 2016-04-02 16:57:07 -04:00
BIO_s_null.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_s_socket.pod RT4660: BIO_METHODs should be const. 2016-03-21 16:49:10 -04:00
BIO_set_callback.pod
BIO_should_retry.pod Add documentation for BIO functions 2016-03-29 17:40:54 +01:00
bio.pod
blowfish.pod
BN_add_word.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_add.pod BN_sub: document that r might be the same as a or b 2015-11-20 22:29:57 +01:00
BN_BLINDING_new.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
BN_bn2bin.pod New BN functions. 2016-02-02 17:17:38 +00:00
BN_cmp.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_copy.pod Add documentation for BN_with_flags 2015-11-26 10:20:36 +00:00
BN_CTX_new.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_CTX_start.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_generate_prime.pod Backwards-compatibility subject to OPENSSL_API_COMPAT 2016-01-07 20:53:18 -05:00
bn_internal.pod
BN_mod_inverse.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_mod_mul_montgomery.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_mod_mul_reciprocal.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_new.pod Remove BN_init 2015-11-30 16:10:12 -05:00
BN_num_bytes.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_rand.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_set_bit.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_swap.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
BN_zero.pod Backwards-compatibility subject to OPENSSL_API_COMPAT 2016-01-07 20:53:18 -05:00
bn.pod
buffer.pod Rename some BUF_xxx to OPENSSL_xxx 2015-12-16 16:14:49 -05:00
CMS_add0_cert.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_add1_recipient_cert.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_add1_signer.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_compress.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_decrypt.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
CMS_encrypt.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_final.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_get0_RecipientInfos.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_get0_SignerInfos.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_get0_type.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_get1_ReceiptRequest.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_sign_receipt.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_sign.pod Turn B<...()> into ...() 2015-11-21 11:50:01 -05:00
CMS_uncompress.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_verify_receipt.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CMS_verify.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CONF_modules_free.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
CONF_modules_load_file.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
CRYPTO_get_ex_new_index.pod GH768: Minor grammar nits in CRYPTO_get_ex_new_index.pod 2016-03-07 12:52:15 -05:00
crypto.pod Various RT doc fixes 2016-02-05 11:10:55 -05:00
d2i_ASN1_OBJECT.pod
d2i_CMS_ContentInfo.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
d2i_DHparams.pod
d2i_DSAPublicKey.pod update DSA docs 2016-02-01 15:12:54 +00:00
d2i_ECPKParameters.pod
d2i_ECPrivateKey.pod
d2i_PKCS8PrivateKey.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
d2i_RSAPublicKey.pod
d2i_X509_ALGOR.pod
d2i_X509_CRL.pod
d2i_X509_NAME.pod Add function to return internal enoding of X509_NAME. 2016-01-30 16:02:48 +00:00
d2i_X509_REQ.pod
d2i_X509_SIG.pod Make X509_SIG opaque. 2016-03-11 17:40:47 +00:00
d2i_X509.pod Turn B<...()> into ...() 2015-11-21 11:50:01 -05:00
des_modes.pod
des.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DH_generate_key.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DH_generate_parameters.pod Backwards-compatibility subject to OPENSSL_API_COMPAT 2016-01-07 20:53:18 -05:00
DH_new.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DH_set_method.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DH_size.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
dh.pod ex_data part 2: doc fixes and CRYPTO_free_ex_index. 2015-12-01 11:48:37 -05:00
DSA_do_sign.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DSA_dup_DH.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DSA_generate_key.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DSA_generate_parameters.pod Backwards-compatibility subject to OPENSSL_API_COMPAT 2016-01-07 20:53:18 -05:00
DSA_new.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DSA_set_method.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DSA_SIG_new.pod constify DSA_SIG_get0() 2016-03-20 19:56:56 +00:00
DSA_sign.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
DSA_size.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
dsa.pod ex_data part 2: doc fixes and CRYPTO_free_ex_index. 2015-12-01 11:48:37 -05:00
EC_GFp_simple_method.pod
EC_GROUP_copy.pod GH601: Various spelling fixes. 2016-02-05 15:25:50 -05:00
EC_GROUP_new.pod RT3676: Expose ECgroup i2d functions 2016-03-09 12:25:21 -05:00
EC_KEY_new.pod Reformat and update EC_KEY_new manual page. 2016-02-27 18:46:03 +00:00
EC_POINT_add.pod
EC_POINT_new.pod Update and clarify EC_POINT documentation. 2016-02-27 02:11:08 +00:00
ec.pod Add CRYPTO_EX_DATA; remove EC_EXTRA_DATA 2016-01-13 14:32:59 -05:00
ecdsa.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
engine.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
ERR_clear_error.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
ERR_error_string.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
ERR_get_error.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
ERR_GET_LIB.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
ERR_load_crypto_strings.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
ERR_load_strings.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
ERR_print_errors.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
ERR_put_error.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
ERR_remove_state.pod Convert ERR_STATE to new multi-threading API 2016-03-08 14:11:09 +00:00
ERR_set_mark.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
err.pod Convert ERR_STATE to new multi-threading API 2016-03-08 14:11:09 +00:00
EVP_BytesToKey.pod
EVP_CIPHER_CTX_get_cipher_data.pod Rename EVP_CIPHER_CTX_cipher_data to EVP_CIPHER_CTX_get_cipher_data 2016-03-07 21:42:09 +00:00
EVP_CIPHER_meth_new.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
EVP_DigestInit.pod Review comments 2016-03-11 10:39:10 -05:00
EVP_DigestSignInit.pod Document the EVP_MD_CTX changes 2015-12-07 17:40:20 +01:00
EVP_DigestVerifyInit.pod Document the EVP_MD_CTX changes 2015-12-07 17:40:20 +01:00
EVP_EncryptInit.pod Correct faulty L<> links in .pods 2016-03-19 11:39:47 +01:00
EVP_MD_meth_new.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
EVP_OpenInit.pod
EVP_PKEY_cmp.pod
EVP_PKEY_CTX_ctrl.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
EVP_PKEY_CTX_new.pod
EVP_PKEY_decrypt.pod
EVP_PKEY_derive.pod
EVP_PKEY_encrypt.pod
EVP_PKEY_get_default_digest.pod
EVP_PKEY_HKDF.pod Fix pkeyutl to KDF lnks. 2016-03-07 15:02:21 -05:00
EVP_PKEY_keygen.pod
EVP_PKEY_new.pod Update EVP_PKEY documentation. 2015-12-14 23:06:14 +00:00
EVP_PKEY_print_private.pod
EVP_PKEY_set1_RSA.pod Fix typo in manual, missing ending '>' 2016-03-14 16:52:54 +01:00
EVP_PKEY_sign.pod
EVP_PKEY_TLS1_PRF.pod Improved HKDF and TLS1-PRF documentation 2016-03-04 01:23:46 -05:00
EVP_PKEY_verify_recover.pod
EVP_PKEY_verify.pod
EVP_SealInit.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
EVP_SignInit.pod Document the EVP_MD_CTX changes 2015-12-07 17:40:20 +01:00
EVP_VerifyInit.pod Document the EVP_MD_CTX changes 2015-12-07 17:40:20 +01:00
evp.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
hmac.pod Backwards-compatibility subject to OPENSSL_API_COMPAT 2016-01-07 20:53:18 -05:00
i2d_CMS_bio_stream.pod
i2d_PKCS7_bio_stream.pod
lh_stats.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
lhash.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
md5.pod
mdc2.pod
OBJ_nid2obj.pod
OCSP_cert_to_id.pod GH601: Various spelling fixes. 2016-02-05 15:25:50 -05:00
OCSP_request_add1_nonce.pod
OCSP_REQUEST_new.pod
OCSP_response_find_status.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
OCSP_response_status.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
OCSP_sendreq_new.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
OpenSSL_add_all_algorithms.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
OPENSSL_Applink.pod
OPENSSL_config.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
OPENSSL_ia32cap.pod
OPENSSL_init_crypto.pod Change names of ordinals and libs, libeay => libcrypto and ssleay => libssl 2016-03-05 09:02:33 +01:00
OPENSSL_instrument_bus.pod
OPENSSL_load_builtin_modules.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
OPENSSL_malloc.pod RT4351: Update doc for OPENSSL_cleanse 2016-02-28 09:40:41 -05:00
OPENSSL_secure_malloc.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
OPENSSL_VERSION_NUMBER.pod Make it possible to get ENGINESDIR info from OpenSSL_versions 2016-02-10 19:36:48 +01:00
PEM_write_bio_CMS_stream.pod
PEM_write_bio_PKCS7_stream.pod
pem.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
PKCS5_PBKDF2_HMAC.pod
PKCS7_decrypt.pod Rename INIT funtions, deprecate old ones. 2016-02-10 09:37:03 -05:00
PKCS7_encrypt.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
PKCS7_sign_add_signer.pod
PKCS7_sign.pod Turn B<...()> into ...() 2015-11-21 11:50:01 -05:00
PKCS7_verify.pod Add PKCS7_NO_DUAL_CONTENT flag 2016-02-23 08:42:03 -05:00
PKCS12_create.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
PKCS12_parse.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RAND_add.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RAND_bytes.pod Backwards-compatibility subject to OPENSSL_API_COMPAT 2016-01-07 20:53:18 -05:00
RAND_cleanup.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RAND_egd.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RAND_load_file.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
RAND_set_rand_method.pod Replace "SSLeay" in API with OpenSSL 2015-10-30 17:21:42 -04:00
rand.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
rc4.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
ripemd.pod
RSA_blinding_on.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_check_key.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_generate_key.pod Backwards-compatibility subject to OPENSSL_API_COMPAT 2016-01-07 20:53:18 -05:00
RSA_new.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_padding_add_PKCS1_type_1.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_print.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_private_encrypt.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_public_encrypt.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_set_method.pod documentation: RSA_new_method argument 2016-02-18 17:16:42 -05:00
RSA_sign_ASN1_OCTET_STRING.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_sign.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
RSA_size.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
rsa.pod ex_data part 2: doc fixes and CRYPTO_free_ex_index. 2015-12-01 11:48:37 -05:00
sha.pod
sk_X509_num.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
SMIME_read_CMS.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
SMIME_read_PKCS7.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
SMIME_write_CMS.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
SMIME_write_PKCS7.pod Turn B<...()> into ...() 2015-11-21 11:50:01 -05:00
threads.pod Implement new multi-threading API 2016-02-26 10:00:36 +00:00
ui.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
x509.pod
X509_check_ca.pod
X509_check_host.pod Add X509_CHECK_FLAG_NEVER_CHECK_SUBJECT flag 2016-03-09 20:41:28 -05:00
X509_check_issued.pod
X509_CRL_get0_by_serial.pod
X509_EXTENSION_set_object.pod Add extension utility documentation. 2015-12-12 14:11:20 +00:00
X509_get0_signature.pod Document new functions 2015-11-14 00:13:08 +00:00
X509_get0_uids.pod Document new functions 2015-11-14 00:13:08 +00:00
X509_get_extension_flags.pod
X509_get_pubkey.pod New function X509_get0_pubkey 2015-12-14 23:06:14 +00:00
X509_get_serialNumber.pod Document X509_get_serialNumber and X509_set_serialNumber. 2016-03-14 00:23:13 +00:00
X509_get_subject_name.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
X509_get_version.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
X509_LOOKUP_hash_dir.pod Correct faulty L<> links in .pods 2016-03-19 11:39:47 +01:00
X509_NAME_add_entry_by_txt.pod
X509_NAME_ENTRY_get_object.pod
X509_NAME_get_index_by_NID.pod
X509_NAME_print_ex.pod
X509_new.pod Add documenation for X509_chain_up_ref() 2016-02-06 18:18:28 +00:00
X509_sign.pod Various RT doc fixes 2016-02-05 11:10:55 -05:00
X509_STORE_CTX_get_error.pod
X509_STORE_CTX_new.pod
X509_STORE_CTX_set_verify_cb.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
X509_STORE_new.pod Convert CRYPTO_LOCK_X509_* to new multi-threading API 2016-03-08 11:10:34 -05:00
X509_STORE_set_verify_cb_func.pod Remove SSLeay history, etc., from docs 2015-10-28 17:23:51 -04:00
X509_verify_cert.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00
X509_VERIFY_PARAM_set_flags.pod Deprecate the -issuer_checks debugging option 2016-02-10 12:34:06 -05:00
X509v3_get_ext_by_NID.pod extension documentation 2015-12-12 14:11:20 +00:00
X509V3_get_d2i.pod Correct another batch of typos 2016-03-22 21:57:26 -04:00