diff options
Diffstat (limited to 'cipher-ctr.c')
-rw-r--r-- | cipher-ctr.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/cipher-ctr.c b/cipher-ctr.c index a9ddb8a66..395dabedd 100644 --- a/cipher-ctr.c +++ b/cipher-ctr.c | |||
@@ -14,7 +14,7 @@ | |||
14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
15 | */ | 15 | */ |
16 | #include "includes.h" | 16 | #include "includes.h" |
17 | RCSID("$OpenBSD: cipher-ctr.c,v 1.3 2003/11/21 11:57:03 djm Exp $"); | 17 | RCSID("$OpenBSD: cipher-ctr.c,v 1.4 2004/02/06 23:41:13 dtucker Exp $"); |
18 | 18 | ||
19 | #include <openssl/evp.h> | 19 | #include <openssl/evp.h> |
20 | 20 | ||
@@ -94,7 +94,8 @@ ssh_aes_ctr_init(EVP_CIPHER_CTX *ctx, const u_char *key, const u_char *iv, | |||
94 | EVP_CIPHER_CTX_set_app_data(ctx, c); | 94 | EVP_CIPHER_CTX_set_app_data(ctx, c); |
95 | } | 95 | } |
96 | if (key != NULL) | 96 | if (key != NULL) |
97 | AES_set_encrypt_key(key, ctx->key_len * 8, &c->aes_ctx); | 97 | AES_set_encrypt_key(key, EVP_CIPHER_CTX_key_length(ctx) * 8, |
98 | &c->aes_ctx); | ||
98 | if (iv != NULL) | 99 | if (iv != NULL) |
99 | memcpy(c->aes_counter, iv, AES_BLOCK_SIZE); | 100 | memcpy(c->aes_counter, iv, AES_BLOCK_SIZE); |
100 | return (1); | 101 | return (1); |