Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(609)

Unified Diff: openssl/ssl/ssl.h

Issue 59083010: third_party/openssl: add ChaCha20+Poly1305 support. Base URL: https://chromium.googlesource.com/chromium/deps/openssl.git@master
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « openssl/ssl/s3_pkt.c ('k') | openssl/ssl/ssl3.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: openssl/ssl/ssl.h
diff --git a/openssl/ssl/ssl.h b/openssl/ssl/ssl.h
index 2853a914ffe60bbb04c72fb6f94e67da99b8e85a..a3944f177dda9ae8f632a6e70bb8d93081355233 100644
--- a/openssl/ssl/ssl.h
+++ b/openssl/ssl/ssl.h
@@ -291,6 +291,7 @@ extern "C" {
#define SSL_TXT_CAMELLIA128 "CAMELLIA128"
#define SSL_TXT_CAMELLIA256 "CAMELLIA256"
#define SSL_TXT_CAMELLIA "CAMELLIA"
+#define SSL_TXT_CHACHA20 "CHACHA20"
#define SSL_TXT_MD5 "MD5"
#define SSL_TXT_SHA1 "SHA1"
@@ -399,7 +400,9 @@ struct ssl_cipher_st
unsigned long algorithm_ssl; /* (major) protocol version */
unsigned long algo_strength; /* strength and export flags */
- unsigned long algorithm2; /* Extra flags */
+ unsigned long algorithm2; /* Extra flags. See SSL2_CF_* in ssl2.h
+ and algorithm2 section in
+ ssl_locl.h */
int strength_bits; /* Number of bits really used */
int alg_bits; /* Number of bits for algorithm */
};
@@ -728,6 +731,9 @@ int SRP_generate_client_master_secret(SSL *s,unsigned char *master_key);
#endif
+struct ssl_aead_ctx_st;
+typedef struct ssl_aead_ctx_st SSL_AEAD_CTX;
+
#if defined(OPENSSL_SYS_MSDOS) && !defined(OPENSSL_SYS_WIN32)
#define SSL_MAX_CERT_LIST_DEFAULT 1024*30 /* 30k max cert list :-) */
#else
@@ -1213,6 +1219,9 @@ struct ssl_st
/* These are the ones being used, the ones in SSL_SESSION are
* the ones to be 'copied' into these ones */
int mac_flags;
+ SSL_AEAD_CTX *aead_read_ctx; /* AEAD context. If non-NULL, then
+ |enc_read_ctx| and |read_hash| are
+ ignored. */
EVP_CIPHER_CTX *enc_read_ctx; /* cryptographic state */
EVP_MD_CTX *read_hash; /* used for mac generation */
#ifndef OPENSSL_NO_COMP
@@ -1221,6 +1230,9 @@ struct ssl_st
char *expand;
#endif
+ SSL_AEAD_CTX *aead_write_ctx; /* AEAD context. If non-NULL, then
+ |enc_write_ctx| and |write_hash| are
+ ignored. */
EVP_CIPHER_CTX *enc_write_ctx; /* cryptographic state */
EVP_MD_CTX *write_hash; /* used for mac generation */
#ifndef OPENSSL_NO_COMP
@@ -2327,8 +2339,11 @@ void ERR_load_SSL_strings(void);
#define SSL_F_SSL_USE_RSAPRIVATEKEY_FILE 206
#define SSL_F_SSL_VERIFY_CERT_CHAIN 207
#define SSL_F_SSL_WRITE 208
+#define SSL_F_TLS1_AEAD_CTX_INIT 339
#define SSL_F_TLS1_CERT_VERIFY_MAC 286
#define SSL_F_TLS1_CHANGE_CIPHER_STATE 209
+#define SSL_F_TLS1_CHANGE_CIPHER_STATE_AEAD 340
+#define SSL_F_TLS1_CHANGE_CIPHER_STATE_CIPHER 338
#define SSL_F_TLS1_CHECK_SERVERHELLO_TLSEXT 274
#define SSL_F_TLS1_ENC 210
#define SSL_F_TLS1_EXPORT_KEYING_MATERIAL 314
« no previous file with comments | « openssl/ssl/s3_pkt.c ('k') | openssl/ssl/ssl3.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698