summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2015-09-22 11:08:25 +0100
committerMatt Caswell <matt@openssl.org>2016-03-07 21:21:45 +0000
commit4e3925227a65ade92f3052ee54a810f5d6c4e96e (patch)
tree27d9d28a03cd10c81ee9875928759001bbd0a369 /include
parent122499dd145ba7456ad9ee32fe93a1727bea7be7 (diff)
Add defines for pipeline capable ciphers
Add a flag to indicate that a cipher is capable of performing "pipelining", i.e. multiple encrypts/decrypts in parallel. Also add some new ctrls that ciphers will need to implement if they are pipeline capable. Reviewed-by: Tim Hudson <tjh@openssl.org>
Diffstat (limited to 'include')
-rw-r--r--include/openssl/evp.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/openssl/evp.h b/include/openssl/evp.h
index 0b6b82a0f9..aecb871e6b 100644
--- a/include/openssl/evp.h
+++ b/include/openssl/evp.h
@@ -307,6 +307,8 @@ int (*EVP_CIPHER_meth_get_ctrl(const EVP_CIPHER *cipher))(EVP_CIPHER_CTX *,
# define EVP_CIPH_FLAG_CUSTOM_CIPHER 0x100000
# define EVP_CIPH_FLAG_AEAD_CIPHER 0x200000
# define EVP_CIPH_FLAG_TLS1_1_MULTIBLOCK 0x400000
+/* Cipher can handle pipeline operations */
+# define EVP_CIPH_FLAG_PIPELINE 0X800000
/*
* Cipher context flag to indicate we can handle wrap mode: if allowed in
@@ -373,6 +375,13 @@ int (*EVP_CIPHER_meth_get_ctrl(const EVP_CIPHER *cipher))(EVP_CIPHER_CTX *,
/* EVP_CTRL_BLOCK_PADDING_MODE takes the padding mode */
# define EVP_CTRL_BLOCK_PADDING_MODE 0x21
+/* Set the output buffers to use for a pipelined operation */
+# define EVP_CTRL_SET_PIPELINE_OUTPUT_BUFS 0x22
+/* Set the input buffers to use for a pipelined operation */
+# define EVP_CTRL_SET_PIPELINE_INPUT_BUFS 0x23
+/* Set the input buffer lengths to use for a pipelined operation */
+# define EVP_CTRL_SET_PIPELINE_INPUT_LENS 0x24
+
/* Padding modes */
#define EVP_PADDING_PKCS7 1
#define EVP_PADDING_ISO7816_4 2