comparison session.h @ 502:43bbe17d6ba0

- Add Counter Mode support
author Matt Johnston <matt@ucc.asn.au>
date Mon, 29 Sep 2008 13:53:31 +0000
parents d58c478bd399
children a3748e54273c
comparison
equal deleted inserted replaced
501:d58c478bd399 502:43bbe17d6ba0
62 62
63 struct key_context { 63 struct key_context {
64 64
65 const struct dropbear_cipher *recv_algo_crypt; /* NULL for none */ 65 const struct dropbear_cipher *recv_algo_crypt; /* NULL for none */
66 const struct dropbear_cipher *trans_algo_crypt; /* NULL for none */ 66 const struct dropbear_cipher *trans_algo_crypt; /* NULL for none */
67 const struct dropbear_cipher_mode *recv_crypt_mode;
68 const struct dropbear_cipher_mode *trans_crypt_mode;
67 const struct dropbear_hash *recv_algo_mac; /* NULL for none */ 69 const struct dropbear_hash *recv_algo_mac; /* NULL for none */
68 const struct dropbear_hash *trans_algo_mac; /* NULL for none */ 70 const struct dropbear_hash *trans_algo_mac; /* NULL for none */
69 char algo_kex; 71 char algo_kex;
70 char algo_hostkey; 72 char algo_hostkey;
71 73
77 z_streamp recv_zstream; 79 z_streamp recv_zstream;
78 z_streamp trans_zstream; 80 z_streamp trans_zstream;
79 #endif 81 #endif
80 82
81 /* actual keys */ 83 /* actual keys */
82 symmetric_CBC recv_symmetric_struct; 84 union {
83 symmetric_CBC trans_symmetric_struct; 85 symmetric_CBC cbc;
86 #ifdef DROPBEAR_ENABLE_CTR_MODE
87 symmetric_CTR ctr;
88 #endif
89 } recv_cipher_state;
90 union {
91 symmetric_CBC cbc;
92 #ifdef DROPBEAR_ENABLE_CTR_MODE
93 symmetric_CTR ctr;
94 #endif
95 } trans_cipher_state;
84 unsigned char recvmackey[MAX_MAC_KEY]; 96 unsigned char recvmackey[MAX_MAC_KEY];
85 unsigned char transmackey[MAX_MAC_KEY]; 97 unsigned char transmackey[MAX_MAC_KEY];
86 98
87 }; 99 };
88 100