00001 /* 00002 * Copyright (C) 2004, 2005, 2007-2009, 2011, 2012 Internet Systems Consortium, Inc. ("ISC") 00003 * Copyright (C) 2002 Internet Software Consortium. 00004 * 00005 * Permission to use, copy, modify, and/or distribute this software for any 00006 * purpose with or without fee is hereby granted, provided that the above 00007 * copyright notice and this permission notice appear in all copies. 00008 * 00009 * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH 00010 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 00011 * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, 00012 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 00013 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 00014 * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 00015 * PERFORMANCE OF THIS SOFTWARE. 00016 */ 00017 00018 /* $Id: dst_openssl.h,v 1.11 2011/03/12 04:59:48 tbox Exp $ */ 00019 00020 #ifndef DST_OPENSSL_H 00021 #define DST_OPENSSL_H 1 00022 00023 #include <isc/lang.h> 00024 #include <isc/log.h> 00025 #include <isc/result.h> 00026 00027 #include <openssl/err.h> 00028 #include <openssl/rand.h> 00029 #include <openssl/evp.h> 00030 #include <openssl/conf.h> 00031 #include <openssl/crypto.h> 00032 00033 #if !defined(OPENSSL_NO_ENGINE) && defined(CRYPTO_LOCK_ENGINE) && \ 00034 (OPENSSL_VERSION_NUMBER >= 0x0090707f) 00035 #define USE_ENGINE 1 00036 #endif 00037 00038 ISC_LANG_BEGINDECLS 00039 00040 isc_result_t 00041 dst__openssl_toresult(isc_result_t fallback); 00042 00043 isc_result_t 00044 dst__openssl_toresult2(const char *funcname, isc_result_t fallback); 00045 00046 isc_result_t 00047 dst__openssl_toresult3(isc_logcategory_t *category, 00048 const char *funcname, isc_result_t fallback); 00049 00050 #ifdef USE_ENGINE 00051 ENGINE * 00052 dst__openssl_getengine(const char *engine); 00053 #else 00054 #define dst__openssl_getengine(x) NULL 00055 #endif 00056 00057 ISC_LANG_ENDDECLS 00058 00059 #endif /* DST_OPENSSL_H */ 00060 /*! \file */