Botan  1.10.9
tls_suites.h
Go to the documentation of this file.
1 /*
2 * Cipher Suites
3 * (C) 2004-2010 Jack Lloyd
4 *
5 * Released under the terms of the Botan license
6 */
7 
8 #ifndef BOTAN_TLS_CIPHERSUITES_H__
9 #define BOTAN_TLS_CIPHERSUITES_H__
10 
11 #include <botan/types.h>
12 #include <botan/tls_magic.h>
13 #include <string>
14 
15 namespace Botan {
16 
17 /**
18 * Ciphersuite Information
19 */
20 class BOTAN_DLL CipherSuite
21  {
22  public:
23  static TLS_Ciphersuite_Algos lookup_ciphersuite(u16bit suite);
24 
25  std::string cipher_algo() const { return cipher; }
26  std::string mac_algo() const { return mac; }
27 
28  size_t cipher_keylen() const { return cipher_key_length; }
29 
30  TLS_Ciphersuite_Algos kex_type() const { return kex_algo; }
31  TLS_Ciphersuite_Algos sig_type() const { return sig_algo; }
32 
33  CipherSuite(u16bit = 0);
34  private:
35  TLS_Ciphersuite_Algos kex_algo, sig_algo;
36  std::string cipher, mac;
37  size_t cipher_key_length;
38  };
39 
40 }
41 
42 #endif
size_t cipher_keylen() const
Definition: tls_suites.h:28
TLS_Ciphersuite_Algos kex_type() const
Definition: tls_suites.h:30
std::string cipher_algo() const
Definition: tls_suites.h:25
MessageAuthenticationCode * mac
Definition: fpe_fe1.cpp:94
unsigned short u16bit
Definition: types.h:27
TLS_Ciphersuite_Algos sig_type() const
Definition: tls_suites.h:31
std::string mac_algo() const
Definition: tls_suites.h:26
TLS_Ciphersuite_Algos
Definition: tls_magic.h:145