OLD | NEW |
1 /* | 1 /* |
2 * This file is PRIVATE to SSL and should be the first thing included by | 2 * This file is PRIVATE to SSL and should be the first thing included by |
3 * any SSL implementation file. | 3 * any SSL implementation file. |
4 * | 4 * |
5 * This Source Code Form is subject to the terms of the Mozilla Public | 5 * This Source Code Form is subject to the terms of the Mozilla Public |
6 * License, v. 2.0. If a copy of the MPL was not distributed with this | 6 * License, v. 2.0. If a copy of the MPL was not distributed with this |
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | 7 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
8 | 8 |
9 #ifndef __sslimpl_h_ | 9 #ifndef __sslimpl_h_ |
10 #define __sslimpl_h_ | 10 #define __sslimpl_h_ |
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
332 unsigned int enableDeflate : 1; /* 19 */ | 332 unsigned int enableDeflate : 1; /* 19 */ |
333 unsigned int enableRenegotiation : 2; /* 20-21 */ | 333 unsigned int enableRenegotiation : 2; /* 20-21 */ |
334 unsigned int requireSafeNegotiation : 1; /* 22 */ | 334 unsigned int requireSafeNegotiation : 1; /* 22 */ |
335 unsigned int enableFalseStart : 1; /* 23 */ | 335 unsigned int enableFalseStart : 1; /* 23 */ |
336 unsigned int cbcRandomIV : 1; /* 24 */ | 336 unsigned int cbcRandomIV : 1; /* 24 */ |
337 unsigned int enableOCSPStapling : 1; /* 25 */ | 337 unsigned int enableOCSPStapling : 1; /* 25 */ |
338 unsigned int enableNPN : 1; /* 26 */ | 338 unsigned int enableNPN : 1; /* 26 */ |
339 unsigned int enableALPN : 1; /* 27 */ | 339 unsigned int enableALPN : 1; /* 27 */ |
340 unsigned int enableSignedCertTimestamps : 1; /* 28 */ | 340 unsigned int enableSignedCertTimestamps : 1; /* 28 */ |
341 unsigned int enableFallbackSCSV : 1; /* 29 */ | 341 unsigned int enableFallbackSCSV : 1; /* 29 */ |
| 342 unsigned int enableEncryptThenMAC : 1; /* 30 */ |
342 } sslOptions; | 343 } sslOptions; |
343 | 344 |
344 typedef enum { sslHandshakingUndetermined = 0, | 345 typedef enum { sslHandshakingUndetermined = 0, |
345 sslHandshakingAsClient, | 346 sslHandshakingAsClient, |
346 sslHandshakingAsServer | 347 sslHandshakingAsServer |
347 } sslHandshakingType; | 348 } sslHandshakingType; |
348 | 349 |
349 typedef struct sslServerCertsStr { | 350 typedef struct sslServerCertsStr { |
350 /* Configuration state for server sockets */ | 351 /* Configuration state for server sockets */ |
351 CERTCertificate * serverCert; | 352 CERTCertificate * serverCert; |
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
588 void * encodeContext; | 589 void * encodeContext; |
589 void * decodeContext; | 590 void * decodeContext; |
590 SSLCompressor compressor; /* Don't name these fields compress */ | 591 SSLCompressor compressor; /* Don't name these fields compress */ |
591 SSLCompressor decompressor; /* and uncompress because zconf.h */ | 592 SSLCompressor decompressor; /* and uncompress because zconf.h */ |
592 /* may define them as macros. */ | 593 /* may define them as macros. */ |
593 SSLDestroy destroyCompressContext; | 594 SSLDestroy destroyCompressContext; |
594 void * compressContext; | 595 void * compressContext; |
595 SSLDestroy destroyDecompressContext; | 596 SSLDestroy destroyDecompressContext; |
596 void * decompressContext; | 597 void * decompressContext; |
597 PRBool bypassCiphers; /* did double bypass (at least) */ | 598 PRBool bypassCiphers; /* did double bypass (at least) */ |
| 599 PRBool encryptThenMAC; /* encrypt before MAC (block cipher) */ |
598 PK11SymKey * master_secret; | 600 PK11SymKey * master_secret; |
599 SSL3SequenceNumber write_seq_num; | 601 SSL3SequenceNumber write_seq_num; |
600 SSL3SequenceNumber read_seq_num; | 602 SSL3SequenceNumber read_seq_num; |
601 SSL3ProtocolVersion version; | 603 SSL3ProtocolVersion version; |
602 ssl3KeyMaterial client; | 604 ssl3KeyMaterial client; |
603 ssl3KeyMaterial server; | 605 ssl3KeyMaterial server; |
604 SECItem msItem; | 606 SECItem msItem; |
605 unsigned char key_block[NUM_MIXERS * MD5_LENGTH]; | 607 unsigned char key_block[NUM_MIXERS * MD5_LENGTH]; |
606 unsigned char raw_master_secret[56]; | 608 unsigned char raw_master_secret[56]; |
607 SECItem srvVirtName; /* for server: name that was negotiated | 609 SECItem srvVirtName; /* for server: name that was negotiated |
(...skipping 1420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2028 #if defined(XP_UNIX) || defined(XP_OS2) || defined(XP_BEOS) | 2030 #if defined(XP_UNIX) || defined(XP_OS2) || defined(XP_BEOS) |
2029 #define SSL_GETPID getpid | 2031 #define SSL_GETPID getpid |
2030 #elif defined(WIN32) | 2032 #elif defined(WIN32) |
2031 extern int __cdecl _getpid(void); | 2033 extern int __cdecl _getpid(void); |
2032 #define SSL_GETPID _getpid | 2034 #define SSL_GETPID _getpid |
2033 #else | 2035 #else |
2034 #define SSL_GETPID() 0 | 2036 #define SSL_GETPID() 0 |
2035 #endif | 2037 #endif |
2036 | 2038 |
2037 #endif /* __sslimpl_h_ */ | 2039 #endif /* __sslimpl_h_ */ |
OLD | NEW |