1 /* $Id: openssl-compat.c,v 1.6 2008/02/28 08:13:52 dtucker Exp $ */ 2 3 /* 4 * Copyright (c) 2005 Darren Tucker <dtucker@zip.com.au> 5 * 6 * Permission to use, copy, modify, and distribute this software for any 7 * purpose with or without fee is hereby granted, provided that the above 8 * copyright notice and this permission notice appear in all copies. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14 * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER 15 * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING 16 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17 */ 18 19 #include "includes.h" 20 21 #ifdef USE_OPENSSL_ENGINE 22 # include <openssl/engine.h> 23 #endif 24 25 #define SSH_DONT_OVERLOAD_OPENSSL_FUNCS 26 #include "openssl-compat.h" 27 28 #ifdef SSH_OLD_EVP 29 int 30 ssh_EVP_CipherInit(EVP_CIPHER_CTX *evp, const EVP_CIPHER *type, 31 unsigned char *key, unsigned char *iv, int enc) 32 { 33 EVP_CipherInit(evp, type, key, iv, enc); 34 return 1; 35 } 36 37 int 38 ssh_EVP_Cipher(EVP_CIPHER_CTX *evp, char *dst, char *src, int len) 39 { 40 EVP_Cipher(evp, dst, src, len); 41 return 1; 42 } 43 44 int 45 ssh_EVP_CIPHER_CTX_cleanup(EVP_CIPHER_CTX *evp) 46 { 47 EVP_CIPHER_CTX_cleanup(evp); 48 return 1; 49 } 50 #endif 51 52 #ifdef USE_OPENSSL_ENGINE 53 void 54 ssh_SSLeay_add_all_algorithms(void) 55 { 56 SSLeay_add_all_algorithms(); 57 58 /* Enable use of crypto hardware */ 59 ENGINE_load_builtin_engines(); 60 ENGINE_register_all_complete(); 61 } 62 #endif 63