OLD | NEW |
1 /* | 1 /* |
2 * This file contains prototypes for the public SSL functions. | 2 * This file contains prototypes for the public SSL functions. |
3 * | 3 * |
4 * This Source Code Form is subject to the terms of the Mozilla Public | 4 * This Source Code Form is subject to the terms of the Mozilla Public |
5 * License, v. 2.0. If a copy of the MPL was not distributed with this | 5 * License, v. 2.0. If a copy of the MPL was not distributed with this |
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | 6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
7 | 7 |
8 #ifndef __sslt_h_ | 8 #ifndef __sslt_h_ |
9 #define __sslt_h_ | 9 #define __sslt_h_ |
10 | 10 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 ssl_calg_seed = 9, | 96 ssl_calg_seed = 9, |
97 ssl_calg_aes_gcm = 10 | 97 ssl_calg_aes_gcm = 10 |
98 } SSLCipherAlgorithm; | 98 } SSLCipherAlgorithm; |
99 | 99 |
100 typedef enum { | 100 typedef enum { |
101 ssl_mac_null = 0, | 101 ssl_mac_null = 0, |
102 ssl_mac_md5 = 1, | 102 ssl_mac_md5 = 1, |
103 ssl_mac_sha = 2, | 103 ssl_mac_sha = 2, |
104 ssl_hmac_md5 = 3, /* TLS HMAC version of mac_md5 */ | 104 ssl_hmac_md5 = 3, /* TLS HMAC version of mac_md5 */ |
105 ssl_hmac_sha = 4, /* TLS HMAC version of mac_sha */ | 105 ssl_hmac_sha = 4, /* TLS HMAC version of mac_sha */ |
106 ssl_hmac_sha256 = 5 | 106 ssl_hmac_sha256 = 5, |
| 107 ssl_mac_aead = 6 |
107 } SSLMACAlgorithm; | 108 } SSLMACAlgorithm; |
108 | 109 |
109 typedef enum { | 110 typedef enum { |
110 ssl_compression_null = 0, | 111 ssl_compression_null = 0, |
111 ssl_compression_deflate = 1 /* RFC 3749 */ | 112 ssl_compression_deflate = 1 /* RFC 3749 */ |
112 } SSLCompressionMethod; | 113 } SSLCompressionMethod; |
113 | 114 |
114 typedef struct SSLChannelInfoStr { | 115 typedef struct SSLChannelInfoStr { |
115 PRUint32 length; | 116 PRUint32 length; |
116 PRUint16 protocolVersion; | 117 PRUint16 protocolVersion; |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
152 SSLKEAType keaType; | 153 SSLKEAType keaType; |
153 | 154 |
154 /* symmetric encryption info */ | 155 /* symmetric encryption info */ |
155 const char * symCipherName; | 156 const char * symCipherName; |
156 SSLCipherAlgorithm symCipher; | 157 SSLCipherAlgorithm symCipher; |
157 PRUint16 symKeyBits; | 158 PRUint16 symKeyBits; |
158 PRUint16 symKeySpace; | 159 PRUint16 symKeySpace; |
159 PRUint16 effectiveKeyBits; | 160 PRUint16 effectiveKeyBits; |
160 | 161 |
161 /* MAC info */ | 162 /* MAC info */ |
| 163 /* AEAD ciphers don't have a MAC. For an AEAD cipher, macAlgorithmName |
| 164 * is "AEAD", macAlgorithm is ssl_mac_aead, and macBits is the length in |
| 165 * bits of the authentication tag. */ |
162 const char * macAlgorithmName; | 166 const char * macAlgorithmName; |
163 SSLMACAlgorithm macAlgorithm; | 167 SSLMACAlgorithm macAlgorithm; |
164 PRUint16 macBits; | 168 PRUint16 macBits; |
165 | 169 |
166 PRUintn isFIPS : 1; | 170 PRUintn isFIPS : 1; |
167 PRUintn isExportable : 1; | 171 PRUintn isExportable : 1; |
168 PRUintn nonStandard : 1; | 172 PRUintn nonStandard : 1; |
169 PRUintn reservedBits :29; | 173 PRUintn reservedBits :29; |
170 | 174 |
171 } SSLCipherSuiteInfo; | 175 } SSLCipherSuiteInfo; |
(...skipping 27 matching lines...) Expand all Loading... |
199 ssl_app_layer_protocol_xtn = 16, | 203 ssl_app_layer_protocol_xtn = 16, |
200 ssl_session_ticket_xtn = 35, | 204 ssl_session_ticket_xtn = 35, |
201 ssl_next_proto_nego_xtn = 13172, | 205 ssl_next_proto_nego_xtn = 13172, |
202 ssl_channel_id_xtn = 30031, | 206 ssl_channel_id_xtn = 30031, |
203 ssl_renegotiation_info_xtn = 0xff01 /* experimental number */ | 207 ssl_renegotiation_info_xtn = 0xff01 /* experimental number */ |
204 } SSLExtensionType; | 208 } SSLExtensionType; |
205 | 209 |
206 #define SSL_MAX_EXTENSIONS 11 | 210 #define SSL_MAX_EXTENSIONS 11 |
207 | 211 |
208 #endif /* __sslt_h_ */ | 212 #endif /* __sslt_h_ */ |
OLD | NEW |