1 /* This Source Code Form is subject to the terms of the Mozilla Public
2  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
3  * You can obtain one at http://mozilla.org/MPL/2.0/. */
4 
5 #ifndef tls_client_config_h__
6 #define tls_client_config_h__
7 
8 #include <stdint.h>
9 #include <cstddef>
10 
11 class ClientConfig {
12  public:
13   ClientConfig(const uint8_t* data, size_t len);
14 
15   bool FailCertificateAuthentication();
16   bool EnableExtendedMasterSecret();
17   bool RequireDhNamedGroups();
18   bool EnableFalseStart();
19   bool EnableDeflate();
20   bool EnableCbcRandomIv();
21   bool RequireSafeNegotiation();
22   bool EnableCache();
23 
24  private:
25   uint64_t config_;
26 };
27 
28 #endif  // tls_client_config_h__
29