diff options
author | Damien Miller <djm@mindrot.org> | 2013-01-09 16:42:47 +1100 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2013-01-09 16:42:47 +1100 |
commit | d522c68872689e2e80d9667da1c9a18d04b001cd (patch) | |
tree | 418d206dc74252baf58aa08b6ce27d789f476378 /openbsd-compat/openssl-compat.h | |
parent | 1d75abfe23cadf8cdba0bd2cfd54f3bc1ca80dc5 (diff) |
- (djm) [cipher.c configure.ac openbsd-compat/openssl-compat.h]
Fix merge botch, automatically detect AES-GCM in OpenSSL, move a little
cipher compat code to openssl-compat.h
Diffstat (limited to 'openbsd-compat/openssl-compat.h')
-rw-r--r-- | openbsd-compat/openssl-compat.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/openbsd-compat/openssl-compat.h b/openbsd-compat/openssl-compat.h index a151eff38..28da3be2d 100644 --- a/openbsd-compat/openssl-compat.h +++ b/openbsd-compat/openssl-compat.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $Id: openssl-compat.h,v 1.20 2012/01/17 03:03:39 dtucker Exp $ */ | 1 | /* $Id: openssl-compat.h,v 1.21 2013/01/09 05:42:49 djm Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 2005 Darren Tucker <dtucker@zip.com.au> | 4 | * Copyright (c) 2005 Darren Tucker <dtucker@zip.com.au> |
@@ -63,6 +63,30 @@ extern const EVP_CIPHER *evp_rijndael(void); | |||
63 | extern void ssh_rijndael_iv(EVP_CIPHER_CTX *, int, u_char *, u_int); | 63 | extern void ssh_rijndael_iv(EVP_CIPHER_CTX *, int, u_char *, u_int); |
64 | #endif | 64 | #endif |
65 | 65 | ||
66 | #ifndef OPENSSL_HAVE_EVPCTR | ||
67 | #define EVP_aes_128_ctr evp_aes_128_ctr | ||
68 | #define EVP_aes_192_ctr evp_aes_128_ctr | ||
69 | #define EVP_aes_256_ctr evp_aes_128_ctr | ||
70 | extern const EVP_CIPHER *evp_aes_128_ctr(void); | ||
71 | extern void ssh_aes_ctr_iv(EVP_CIPHER_CTX *, int, u_char *, u_int); | ||
72 | #endif | ||
73 | |||
74 | /* Avoid some #ifdef. Code that uses these is unreachable without GCM */ | ||
75 | #if !defined(OPENSSL_HAVE_EVPGCM) && !defined(EVP_CTRL_GCM_SET_IV_FIXED) | ||
76 | # define EVP_CTRL_GCM_SET_IV_FIXED -1 | ||
77 | # define EVP_CTRL_GCM_IV_GEN -1 | ||
78 | # define EVP_CTRL_GCM_SET_TAG -1 | ||
79 | # define EVP_CTRL_GCM_GET_TAG -1 | ||
80 | #endif | ||
81 | |||
82 | #if OPENSSL_VERSION_NUMBER < 0x00907000L | ||
83 | #define EVP_X_STATE(evp) &(evp).c | ||
84 | #define EVP_X_STATE_LEN(evp) sizeof((evp).c) | ||
85 | #else | ||
86 | #define EVP_X_STATE(evp) (evp).cipher_data | ||
87 | #define EVP_X_STATE_LEN(evp) (evp).cipher->ctx_size | ||
88 | #endif | ||
89 | |||
66 | #if !defined(EVP_CTRL_SET_ACSS_MODE) | 90 | #if !defined(EVP_CTRL_SET_ACSS_MODE) |
67 | # if (OPENSSL_VERSION_NUMBER >= 0x00907000L) | 91 | # if (OPENSSL_VERSION_NUMBER >= 0x00907000L) |
68 | # define USE_CIPHER_ACSS 1 | 92 | # define USE_CIPHER_ACSS 1 |