Declare EVP_AEAD_CTX in base.h, like other typedefs.
Change-Id: Ib0dd73fc4b5b50d542a9b937065048ed9b0a85fd
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/52566
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: Adam Langley <agl@google.com>
diff --git a/include/openssl/aead.h b/include/openssl/aead.h
index 38eb076..5486b4b 100644
--- a/include/openssl/aead.h
+++ b/include/openssl/aead.h
@@ -212,15 +212,15 @@
uint64_t alignment;
};
-// An EVP_AEAD_CTX represents an AEAD algorithm configured with a specific key
-// and message-independent IV.
-typedef struct evp_aead_ctx_st {
+// An evp_aead_ctx_st (typedefed as |EVP_AEAD_CTX| in base.h) represents an AEAD
+// algorithm configured with a specific key and message-independent IV.
+struct evp_aead_ctx_st {
const EVP_AEAD *aead;
union evp_aead_ctx_st_state state;
// tag_len may contain the actual length of the authentication tag if it is
// known at initialization time.
uint8_t tag_len;
-} EVP_AEAD_CTX;
+};
// EVP_AEAD_MAX_KEY_LENGTH contains the maximum key length used by
// any AEAD defined in this header.
diff --git a/include/openssl/base.h b/include/openssl/base.h
index b630236..2f03bca 100644
--- a/include/openssl/base.h
+++ b/include/openssl/base.h
@@ -402,6 +402,7 @@
typedef struct env_md_ctx_st EVP_MD_CTX;
typedef struct env_md_st EVP_MD;
typedef struct evp_aead_st EVP_AEAD;
+typedef struct evp_aead_ctx_st EVP_AEAD_CTX;
typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
typedef struct evp_cipher_st EVP_CIPHER;
typedef struct evp_encode_ctx_st EVP_ENCODE_CTX;