diff options
Diffstat (limited to 'src/include/openssl/cipher.h')
-rw-r--r-- | src/include/openssl/cipher.h | 138 |
1 files changed, 70 insertions, 68 deletions
diff --git a/src/include/openssl/cipher.h b/src/include/openssl/cipher.h index adca5a9..f1469a0 100644 --- a/src/include/openssl/cipher.h +++ b/src/include/openssl/cipher.h @@ -80,10 +80,12 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_cbc(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_ecb(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cbc(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_ctr(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_ofb(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_ecb(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_cbc(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_ctr(void); +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_ofb(void); /* Deprecated AES-GCM implementations that set |EVP_CIPH_FLAG_CUSTOM_CIPHER|. * Use |EVP_aead_aes_128_gcm| and |EVP_aead_aes_256_gcm| instead. */ @@ -91,9 +93,9 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_gcm(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_gcm(void); /* Deprecated 192-bit version of AES. */ +OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_ecb(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_cbc(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_ctr(void); -OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_ecb(void); OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_gcm(void); /* EVP_enc_null returns a 'cipher' that passes plaintext through as @@ -123,8 +125,8 @@ OPENSSL_EXPORT void EVP_CIPHER_CTX_init(EVP_CIPHER_CTX *ctx); * |EVP_CIPHER_CTX_init| and returns it, or NULL on allocation failure. */ OPENSSL_EXPORT EVP_CIPHER_CTX *EVP_CIPHER_CTX_new(void); -/* EVP_CIPHER_CTX_cleanup frees any memory referenced by |ctx|. It returns one - * on success and zero otherwise. */ +/* EVP_CIPHER_CTX_cleanup frees any memory referenced by |ctx|. It returns + * one. */ OPENSSL_EXPORT int EVP_CIPHER_CTX_cleanup(EVP_CIPHER_CTX *ctx); /* EVP_CIPHER_CTX_free calls |EVP_CIPHER_CTX_cleanup| on |ctx| and then frees @@ -236,7 +238,8 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_CIPHER_CTX_cipher( const EVP_CIPHER_CTX *ctx); /* EVP_CIPHER_CTX_nid returns a NID identifying the |EVP_CIPHER| underlying - * |ctx| (e.g. |NID_rc4|). It will crash if no cipher has been configured. */ + * |ctx| (e.g. |NID_aes_128_gcm|). It will crash if no cipher has been + * configured. */ OPENSSL_EXPORT int EVP_CIPHER_CTX_nid(const EVP_CIPHER_CTX *ctx); /* EVP_CIPHER_CTX_block_size returns the block size, in bytes, of the cipher @@ -289,13 +292,9 @@ OPENSSL_EXPORT int EVP_CIPHER_CTX_set_key_length(EVP_CIPHER_CTX *ctx, unsigned k /* Cipher accessors. */ /* EVP_CIPHER_nid returns a NID identifing |cipher|. (For example, - * |NID_rc4|.) */ + * |NID_aes_128_gcm|.) */ OPENSSL_EXPORT int EVP_CIPHER_nid(const EVP_CIPHER *cipher); -/* EVP_CIPHER_name returns the short name for |cipher| or NULL if no name is - * known. */ -OPENSSL_EXPORT const char *EVP_CIPHER_name(const EVP_CIPHER *cipher); - /* EVP_CIPHER_block_size returns the block size, in bytes, for |cipher|, or one * if |cipher| is a stream cipher. */ OPENSSL_EXPORT unsigned EVP_CIPHER_block_size(const EVP_CIPHER *cipher); @@ -491,7 +490,7 @@ typedef struct evp_cipher_info_st { } EVP_CIPHER_INFO; struct evp_cipher_st { - /* type contains a NID identifing the cipher. (For example, NID_rc4.) */ + /* type contains a NID identifing the cipher. (e.g. NID_aes_128_gcm.) */ int nid; /* block_size contains the block size, in bytes, of the cipher, or 1 for a @@ -521,7 +520,7 @@ struct evp_cipher_st { int (*cipher)(EVP_CIPHER_CTX *ctx, uint8_t *out, const uint8_t *in, size_t inl); - int (*cleanup)(EVP_CIPHER_CTX *); + void (*cleanup)(EVP_CIPHER_CTX *); int (*ctrl)(EVP_CIPHER_CTX *, int type, int arg, void *ptr); }; @@ -531,62 +530,65 @@ struct evp_cipher_st { } /* extern C */ #endif -#define CIPHER_F_EVP_CipherInit_ex 100 -#define CIPHER_F_EVP_EncryptFinal_ex 101 -#define CIPHER_F_EVP_DecryptFinal_ex 102 -#define CIPHER_F_EVP_CIPHER_CTX_ctrl 103 -#define CIPHER_F_aes_init_key 104 -#define CIPHER_F_aesni_init_key 105 -#define CIPHER_F_EVP_CIPHER_CTX_copy 106 -#define CIPHER_F_EVP_AEAD_CTX_open 107 -#define CIPHER_F_EVP_AEAD_CTX_init 108 -#define CIPHER_F_EVP_AEAD_CTX_seal 109 -#define CIPHER_F_aead_aes_gcm_seal 110 -#define CIPHER_F_aead_aes_gcm_open 111 -#define CIPHER_F_aead_aes_gcm_init 112 -#define CIPHER_F_aead_chacha20_poly1305_init 113 -#define CIPHER_F_aead_chacha20_poly1305_open 114 -#define CIPHER_F_aead_chacha20_poly1305_seal 115 -#define CIPHER_F_aead_rc4_md5_tls_init 116 -#define CIPHER_F_aead_rc4_md5_tls_seal 117 -#define CIPHER_F_aead_rc4_md5_tls_open 118 -#define CIPHER_F_aead_aes_key_wrap_seal 119 -#define CIPHER_F_aead_aes_key_wrap_init 120 -#define CIPHER_F_aead_aes_key_wrap_open 121 -#define CIPHER_F_EVP_CIPHER_CTX_set_key_length 122 -#define CIPHER_F_aead_tls_init 123 -#define CIPHER_F_aead_tls_open 124 -#define CIPHER_F_aead_tls_seal 125 -#define CIPHER_F_aead_tls_ensure_cipher_init 126 -#define CIPHER_F_aead_ssl3_open 127 -#define CIPHER_F_aead_ssl3_seal 128 -#define CIPHER_F_aead_ssl3_init 129 -#define CIPHER_F_aead_ssl3_ensure_cipher_init 130 -#define CIPHER_R_WRAP_MODE_NOT_ALLOWED 100 -#define CIPHER_R_AES_KEY_SETUP_FAILED 101 -#define CIPHER_R_INPUT_NOT_INITIALIZED 102 -#define CIPHER_R_DATA_NOT_MULTIPLE_OF_BLOCK_LENGTH 103 -#define CIPHER_R_INITIALIZATION_ERROR 104 -#define CIPHER_R_CTRL_NOT_IMPLEMENTED 105 -#define CIPHER_R_NO_CIPHER_SET 106 -#define CIPHER_R_BAD_DECRYPT 107 -#define CIPHER_R_WRONG_FINAL_BLOCK_LENGTH 108 -#define CIPHER_R_CTRL_OPERATION_NOT_IMPLEMENTED 109 -#define CIPHER_R_TAG_TOO_LARGE 110 -#define CIPHER_R_BAD_KEY_LENGTH 111 -#define CIPHER_R_BUFFER_TOO_SMALL 112 -#define CIPHER_R_OUTPUT_ALIASES_INPUT 113 -#define CIPHER_R_UNSUPPORTED_KEY_SIZE 114 -#define CIPHER_R_TOO_LARGE 115 -#define CIPHER_R_IV_TOO_LARGE 116 -#define CIPHER_R_INVALID_AD_SIZE 117 -#define CIPHER_R_INVALID_AD 118 -#define CIPHER_R_UNSUPPORTED_TAG_SIZE 119 -#define CIPHER_R_UNSUPPORTED_INPUT_SIZE 120 -#define CIPHER_R_UNSUPPORTED_AD_SIZE 121 -#define CIPHER_R_UNSUPPORTED_NONCE_SIZE 122 -#define CIPHER_R_INVALID_KEY_LENGTH 123 -#define CIPHER_R_INVALID_OPERATION 124 -#define CIPHER_R_INVALID_NONCE_SIZE 125 +#define CIPHER_F_EVP_AEAD_CTX_init 100 +#define CIPHER_F_EVP_AEAD_CTX_open 101 +#define CIPHER_F_EVP_AEAD_CTX_seal 102 +#define CIPHER_F_EVP_CIPHER_CTX_copy 103 +#define CIPHER_F_EVP_CIPHER_CTX_ctrl 104 +#define CIPHER_F_EVP_CIPHER_CTX_set_key_length 105 +#define CIPHER_F_EVP_CipherInit_ex 106 +#define CIPHER_F_EVP_DecryptFinal_ex 107 +#define CIPHER_F_EVP_EncryptFinal_ex 108 +#define CIPHER_F_aead_aes_gcm_init 109 +#define CIPHER_F_aead_aes_gcm_open 110 +#define CIPHER_F_aead_aes_gcm_seal 111 +#define CIPHER_F_aead_aes_key_wrap_init 112 +#define CIPHER_F_aead_aes_key_wrap_open 113 +#define CIPHER_F_aead_aes_key_wrap_seal 114 +#define CIPHER_F_aead_chacha20_poly1305_init 115 +#define CIPHER_F_aead_chacha20_poly1305_open 116 +#define CIPHER_F_aead_chacha20_poly1305_seal 117 +#define CIPHER_F_aead_rc4_md5_tls_init 118 +#define CIPHER_F_aead_rc4_md5_tls_open 119 +#define CIPHER_F_aead_rc4_md5_tls_seal 120 +#define CIPHER_F_aead_ssl3_ensure_cipher_init 121 +#define CIPHER_F_aead_ssl3_init 122 +#define CIPHER_F_aead_ssl3_open 123 +#define CIPHER_F_aead_ssl3_seal 124 +#define CIPHER_F_aead_tls_ensure_cipher_init 125 +#define CIPHER_F_aead_tls_init 126 +#define CIPHER_F_aead_tls_open 127 +#define CIPHER_F_aead_tls_seal 128 +#define CIPHER_F_aes_init_key 129 +#define CIPHER_F_aesni_init_key 130 +#define CIPHER_F_EVP_AEAD_CTX_init_with_direction 131 +#define CIPHER_F_aead_aes_ctr_hmac_sha256_init 132 +#define CIPHER_F_aead_aes_ctr_hmac_sha256_open 133 +#define CIPHER_F_aead_aes_ctr_hmac_sha256_seal 134 +#define CIPHER_R_AES_KEY_SETUP_FAILED 100 +#define CIPHER_R_BAD_DECRYPT 101 +#define CIPHER_R_BAD_KEY_LENGTH 102 +#define CIPHER_R_BUFFER_TOO_SMALL 103 +#define CIPHER_R_CTRL_NOT_IMPLEMENTED 104 +#define CIPHER_R_CTRL_OPERATION_NOT_IMPLEMENTED 105 +#define CIPHER_R_DATA_NOT_MULTIPLE_OF_BLOCK_LENGTH 106 +#define CIPHER_R_INITIALIZATION_ERROR 107 +#define CIPHER_R_INPUT_NOT_INITIALIZED 108 +#define CIPHER_R_INVALID_AD_SIZE 109 +#define CIPHER_R_INVALID_KEY_LENGTH 110 +#define CIPHER_R_INVALID_NONCE_SIZE 111 +#define CIPHER_R_INVALID_OPERATION 112 +#define CIPHER_R_IV_TOO_LARGE 113 +#define CIPHER_R_NO_CIPHER_SET 114 +#define CIPHER_R_OUTPUT_ALIASES_INPUT 115 +#define CIPHER_R_TAG_TOO_LARGE 116 +#define CIPHER_R_TOO_LARGE 117 +#define CIPHER_R_UNSUPPORTED_AD_SIZE 118 +#define CIPHER_R_UNSUPPORTED_INPUT_SIZE 119 +#define CIPHER_R_UNSUPPORTED_KEY_SIZE 120 +#define CIPHER_R_UNSUPPORTED_NONCE_SIZE 121 +#define CIPHER_R_UNSUPPORTED_TAG_SIZE 122 +#define CIPHER_R_WRONG_FINAL_BLOCK_LENGTH 123 +#define CIPHER_R_NO_DIRECTION_SET 124 #endif /* OPENSSL_HEADER_CIPHER_H */ |