亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? engine.h

?? SDL文件。SDL_ERROwenjian.....
?? H
?? 第 1 頁 / 共 3 頁
字號:
/* openssl/engine.h */
/* Written by Geoff Thorpe (geoff@geoffthorpe.net) for the OpenSSL
 * project 2000.
 */
/* ====================================================================
 * Copyright (c) 1999-2004 The OpenSSL Project.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer. 
 *
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * 3. All advertising materials mentioning features or use of this
 *    software must display the following acknowledgment:
 *    "This product includes software developed by the OpenSSL Project
 *    for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)"
 *
 * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
 *    endorse or promote products derived from this software without
 *    prior written permission. For written permission, please contact
 *    licensing@OpenSSL.org.
 *
 * 5. Products derived from this software may not be called "OpenSSL"
 *    nor may "OpenSSL" appear in their names without prior written
 *    permission of the OpenSSL Project.
 *
 * 6. Redistributions of any form whatsoever must retain the following
 *    acknowledgment:
 *    "This product includes software developed by the OpenSSL Project
 *    for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)"
 *
 * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
 * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR
 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 * OF THE POSSIBILITY OF SUCH DAMAGE.
 * ====================================================================
 *
 * This product includes cryptographic software written by Eric Young
 * (eay@cryptsoft.com).  This product includes software written by Tim
 * Hudson (tjh@cryptsoft.com).
 *
 */
/* ====================================================================
 * Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
 * ECDH support in OpenSSL originally developed by 
 * SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
 */

#ifndef HEADER_ENGINE_H
#define HEADER_ENGINE_H

#include <openssl/opensslconf.h>

#ifdef OPENSSL_NO_ENGINE
#error ENGINE is disabled.
#endif

#ifndef OPENSSL_NO_DEPRECATED
#include <openssl/bn.h>
#ifndef OPENSSL_NO_RSA
#include <openssl/rsa.h>
#endif
#ifndef OPENSSL_NO_DSA
#include <openssl/dsa.h>
#endif
#ifndef OPENSSL_NO_DH
#include <openssl/dh.h>
#endif
#ifndef OPENSSL_NO_ECDH
#include <openssl/ecdh.h>
#endif
#ifndef OPENSSL_NO_ECDSA
#include <openssl/ecdsa.h>
#endif
#include <openssl/rand.h>
#include <openssl/store.h>
#include <openssl/ui.h>
#include <openssl/err.h>
#endif

#include <openssl/ossl_typ.h>
#include <openssl/symhacks.h>

#ifdef  __cplusplus
extern "C" {
#endif

/* These flags are used to control combinations of algorithm (methods)
 * by bitwise "OR"ing. */
#define ENGINE_METHOD_RSA		(unsigned int)0x0001
#define ENGINE_METHOD_DSA		(unsigned int)0x0002
#define ENGINE_METHOD_DH		(unsigned int)0x0004
#define ENGINE_METHOD_RAND		(unsigned int)0x0008
#define ENGINE_METHOD_ECDH		(unsigned int)0x0010
#define ENGINE_METHOD_ECDSA		(unsigned int)0x0020
#define ENGINE_METHOD_CIPHERS		(unsigned int)0x0040
#define ENGINE_METHOD_DIGESTS		(unsigned int)0x0080
#define ENGINE_METHOD_STORE		(unsigned int)0x0100
/* Obvious all-or-nothing cases. */
#define ENGINE_METHOD_ALL		(unsigned int)0xFFFF
#define ENGINE_METHOD_NONE		(unsigned int)0x0000

/* This(ese) flag(s) controls behaviour of the ENGINE_TABLE mechanism used
 * internally to control registration of ENGINE implementations, and can be set
 * by ENGINE_set_table_flags(). The "NOINIT" flag prevents attempts to
 * initialise registered ENGINEs if they are not already initialised. */
#define ENGINE_TABLE_FLAG_NOINIT	(unsigned int)0x0001

/* ENGINE flags that can be set by ENGINE_set_flags(). */
/* #define ENGINE_FLAGS_MALLOCED	0x0001 */ /* Not used */

/* This flag is for ENGINEs that wish to handle the various 'CMD'-related
 * control commands on their own. Without this flag, ENGINE_ctrl() handles these
 * control commands on behalf of the ENGINE using their "cmd_defns" data. */
#define ENGINE_FLAGS_MANUAL_CMD_CTRL	(int)0x0002

/* This flag is for ENGINEs who return new duplicate structures when found via
 * "ENGINE_by_id()". When an ENGINE must store state (eg. if ENGINE_ctrl()
 * commands are called in sequence as part of some stateful process like
 * key-generation setup and execution), it can set this flag - then each attempt
 * to obtain the ENGINE will result in it being copied into a new structure.
 * Normally, ENGINEs don't declare this flag so ENGINE_by_id() just increments
 * the existing ENGINE's structural reference count. */
#define ENGINE_FLAGS_BY_ID_COPY		(int)0x0004

/* ENGINEs can support their own command types, and these flags are used in
 * ENGINE_CTRL_GET_CMD_FLAGS to indicate to the caller what kind of input each
 * command expects. Currently only numeric and string input is supported. If a
 * control command supports none of the _NUMERIC, _STRING, or _NO_INPUT options,
 * then it is regarded as an "internal" control command - and not for use in
 * config setting situations. As such, they're not available to the
 * ENGINE_ctrl_cmd_string() function, only raw ENGINE_ctrl() access. Changes to
 * this list of 'command types' should be reflected carefully in
 * ENGINE_cmd_is_executable() and ENGINE_ctrl_cmd_string(). */

/* accepts a 'long' input value (3rd parameter to ENGINE_ctrl) */
#define ENGINE_CMD_FLAG_NUMERIC		(unsigned int)0x0001
/* accepts string input (cast from 'void*' to 'const char *', 4th parameter to
 * ENGINE_ctrl) */
#define ENGINE_CMD_FLAG_STRING		(unsigned int)0x0002
/* Indicates that the control command takes *no* input. Ie. the control command
 * is unparameterised. */
#define ENGINE_CMD_FLAG_NO_INPUT	(unsigned int)0x0004
/* Indicates that the control command is internal. This control command won't
 * be shown in any output, and is only usable through the ENGINE_ctrl_cmd()
 * function. */
#define ENGINE_CMD_FLAG_INTERNAL	(unsigned int)0x0008

/* NB: These 3 control commands are deprecated and should not be used. ENGINEs
 * relying on these commands should compile conditional support for
 * compatibility (eg. if these symbols are defined) but should also migrate the
 * same functionality to their own ENGINE-specific control functions that can be
 * "discovered" by calling applications. The fact these control commands
 * wouldn't be "executable" (ie. usable by text-based config) doesn't change the
 * fact that application code can find and use them without requiring per-ENGINE
 * hacking. */

/* These flags are used to tell the ctrl function what should be done.
 * All command numbers are shared between all engines, even if some don't
 * make sense to some engines.  In such a case, they do nothing but return
 * the error ENGINE_R_CTRL_COMMAND_NOT_IMPLEMENTED. */
#define ENGINE_CTRL_SET_LOGSTREAM		1
#define ENGINE_CTRL_SET_PASSWORD_CALLBACK	2
#define ENGINE_CTRL_HUP				3 /* Close and reinitialise any
						     handles/connections etc. */
#define ENGINE_CTRL_SET_USER_INTERFACE          4 /* Alternative to callback */
#define ENGINE_CTRL_SET_CALLBACK_DATA           5 /* User-specific data, used
						     when calling the password
						     callback and the user
						     interface */
#define ENGINE_CTRL_LOAD_CONFIGURATION		6 /* Load a configuration, given
						     a string that represents a
						     file name or so */
#define ENGINE_CTRL_LOAD_SECTION		7 /* Load data from a given
						     section in the already loaded
						     configuration */

/* These control commands allow an application to deal with an arbitrary engine
 * in a dynamic way. Warn: Negative return values indicate errors FOR THESE
 * COMMANDS because zero is used to indicate 'end-of-list'. Other commands,
 * including ENGINE-specific command types, return zero for an error.
 *
 * An ENGINE can choose to implement these ctrl functions, and can internally
 * manage things however it chooses - it does so by setting the
 * ENGINE_FLAGS_MANUAL_CMD_CTRL flag (using ENGINE_set_flags()). Otherwise the
 * ENGINE_ctrl() code handles this on the ENGINE's behalf using the cmd_defns
 * data (set using ENGINE_set_cmd_defns()). This means an ENGINE's ctrl()
 * handler need only implement its own commands - the above "meta" commands will
 * be taken care of. */

/* Returns non-zero if the supplied ENGINE has a ctrl() handler. If "not", then
 * all the remaining control commands will return failure, so it is worth
 * checking this first if the caller is trying to "discover" the engine's
 * capabilities and doesn't want errors generated unnecessarily. */
#define ENGINE_CTRL_HAS_CTRL_FUNCTION		10
/* Returns a positive command number for the first command supported by the
 * engine. Returns zero if no ctrl commands are supported. */
#define ENGINE_CTRL_GET_FIRST_CMD_TYPE		11
/* The 'long' argument specifies a command implemented by the engine, and the
 * return value is the next command supported, or zero if there are no more. */
#define ENGINE_CTRL_GET_NEXT_CMD_TYPE		12
/* The 'void*' argument is a command name (cast from 'const char *'), and the
 * return value is the command that corresponds to it. */
#define ENGINE_CTRL_GET_CMD_FROM_NAME		13
/* The next two allow a command to be converted into its corresponding string
 * form. In each case, the 'long' argument supplies the command. In the NAME_LEN
 * case, the return value is the length of the command name (not counting a
 * trailing EOL). In the NAME case, the 'void*' argument must be a string buffer
 * large enough, and it will be populated with the name of the command (WITH a
 * trailing EOL). */
#define ENGINE_CTRL_GET_NAME_LEN_FROM_CMD	14
#define ENGINE_CTRL_GET_NAME_FROM_CMD		15
/* The next two are similar but give a "short description" of a command. */
#define ENGINE_CTRL_GET_DESC_LEN_FROM_CMD	16
#define ENGINE_CTRL_GET_DESC_FROM_CMD		17
/* With this command, the return value is the OR'd combination of
 * ENGINE_CMD_FLAG_*** values that indicate what kind of input a given
 * engine-specific ctrl command expects. */
#define ENGINE_CTRL_GET_CMD_FLAGS		18

/* ENGINE implementations should start the numbering of their own control
 * commands from this value. (ie. ENGINE_CMD_BASE, ENGINE_CMD_BASE + 1, etc). */
#define ENGINE_CMD_BASE				200

/* NB: These 2 nCipher "chil" control commands are deprecated, and their
 * functionality is now available through ENGINE-specific control commands
 * (exposed through the above-mentioned 'CMD'-handling). Code using these 2
 * commands should be migrated to the more general command handling before these
 * are removed. */

/* Flags specific to the nCipher "chil" engine */
#define ENGINE_CTRL_CHIL_SET_FORKCHECK		100
	/* Depending on the value of the (long)i argument, this sets or
	 * unsets the SimpleForkCheck flag in the CHIL API to enable or
	 * disable checking and workarounds for applications that fork().
	 */
#define ENGINE_CTRL_CHIL_NO_LOCKING		101
	/* This prevents the initialisation function from providing mutex
	 * callbacks to the nCipher library. */

/* If an ENGINE supports its own specific control commands and wishes the
 * framework to handle the above 'ENGINE_CMD_***'-manipulation commands on its
 * behalf, it should supply a null-terminated array of ENGINE_CMD_DEFN entries
 * to ENGINE_set_cmd_defns(). It should also implement a ctrl() handler that
 * supports the stated commands (ie. the "cmd_num" entries as described by the
 * array). NB: The array must be ordered in increasing order of cmd_num.
 * "null-terminated" means that the last ENGINE_CMD_DEFN element has cmd_num set

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品国产麻豆婷婷| 成人av网站免费观看| 欧美电影一区二区三区| 91在线视频免费观看| 成人高清免费观看| 香蕉av福利精品导航| 一区二区中文字幕在线| 久久网站热最新地址| 中文字幕欧美日韩一区| 国产精品影视天天线| 国产日韩欧美一区二区三区乱码 | 国产精品福利一区二区三区| 国内不卡的二区三区中文字幕| 国产午夜亚洲精品不卡| 99久久精品免费看| 亚洲自拍偷拍综合| 91精品国产免费| 粉嫩一区二区三区在线看| 国产精品久久免费看| 欧美体内she精视频| 日日夜夜免费精品视频| 精品欧美久久久| 国产精品资源站在线| 国产精品不卡在线观看| 欧美丰满少妇xxxxx高潮对白| 欧美aⅴ一区二区三区视频| 精品国产在天天线2019| 老色鬼精品视频在线观看播放| 久久久久亚洲综合| 色天天综合色天天久久| 久久国产精品免费| 亚洲欧美综合色| 精品日韩一区二区三区免费视频| 国产成人精品影院| 香蕉影视欧美成人| 日本一区二区电影| 精品污污网站免费看| 国产成人免费视频网站高清观看视频 | 欧美一区二区三区不卡| 国产成人免费在线| 日韩精品国产欧美| 亚洲欧洲成人自拍| 中日韩免费视频中文字幕| 欧美亚洲一区三区| 国产成人精品影院| 日本不卡一区二区| 亚洲男同性视频| 久久午夜电影网| 69堂精品视频| 在线视频一区二区三区| 国产成人免费xxxxxxxx| 亚洲电影一区二区| 亚洲美女免费视频| 久久综合色播五月| 久久精品国产成人一区二区三区| 欧美片网站yy| 午夜欧美一区二区三区在线播放| 欧美日韩亚洲另类| 亚洲国产cao| 91精品国产91久久久久久最新毛片| 国产精品久久久久久久久快鸭| 精品一区二区三区免费视频| 久久久久久久免费视频了| 国产一区二区三区高清播放| 国产日韩精品视频一区| 99久久精品99国产精品| 亚洲一区二区免费视频| 日韩欧美国产系列| www..com久久爱| 中文字幕av一区 二区| 在线不卡一区二区| 欧美影院一区二区| 欧美日韩三级在线| 91精品国产91热久久久做人人| 麻豆一区二区三| 欧美一级高清片在线观看| 亚洲一区二区四区蜜桃| 日韩欧美国产不卡| 精品日产卡一卡二卡麻豆| 日韩一区有码在线| 一区二区三区四区不卡在线| 日韩制服丝袜先锋影音| 午夜精品久久一牛影视| 婷婷六月综合网| 日韩精品一级二级| 久久99九九99精品| 99麻豆久久久国产精品免费| 国产a久久麻豆| 成人激情免费视频| 久久婷婷成人综合色| 色悠久久久久综合欧美99| 国产精品系列在线观看| 蜜臀av在线播放一区二区三区| 日韩福利电影在线观看| 中文字幕av资源一区| 日韩一区国产二区欧美三区| 成人永久免费视频| 国产乱人伦精品一区二区在线观看| 日韩在线a电影| 欧美日韩国产综合久久| 午夜私人影院久久久久| 欧美一级二级三级乱码| 精品区一区二区| 国产精品午夜春色av| 亚洲欧美国产三级| 五月天久久比比资源色| 久久成人18免费观看| 国产99一区视频免费| 91久久线看在观草草青青| 欧美三级中文字| 久久久国际精品| 一区二区在线观看免费| 麻豆精品久久精品色综合| 国产精品亚洲视频| 欧美图片一区二区三区| 久久影院视频免费| 亚洲另类色综合网站| 毛片一区二区三区| a美女胸又www黄视频久久| 91精品国产综合久久精品麻豆| 欧美国产日韩a欧美在线观看 | 国产精品国产三级国产专播品爱网 | 亚洲高清久久久| 国产一区二区不卡| 一本色道久久综合亚洲91| 日韩一区二区三区在线| 国产精品三级在线观看| 日韩va亚洲va欧美va久久| 成人av资源网站| 91精品国产综合久久精品性色| 国产精品成人免费精品自在线观看| 日韩在线卡一卡二| 99久久精品免费精品国产| 欧美电视剧在线观看完整版| 一区二区在线看| 成人影视亚洲图片在线| 日韩视频免费直播| 亚洲综合精品久久| 粉嫩av亚洲一区二区图片| 欧美一级片在线| 亚洲午夜电影在线观看| gogo大胆日本视频一区| 欧美日韩精品欧美日韩精品| 亚洲国产成人91porn| 欧美吻胸吃奶大尺度电影| 亚洲色图另类专区| 北岛玲一区二区三区四区| 欧美成人在线直播| 粉嫩高潮美女一区二区三区| 91香蕉视频在线| 亚洲欧美另类小说视频| 91在线国产福利| 亚洲精品菠萝久久久久久久| 99在线精品观看| 综合分类小说区另类春色亚洲小说欧美| 日本欧美一区二区| 欧美一区二区在线免费播放| 日本va欧美va瓶| 亚洲精品在线三区| 91小视频在线免费看| 亚洲第一激情av| 国产精品成人在线观看| 欧美欧美欧美欧美首页| 欧美日韩国产首页在线观看| 九色综合狠狠综合久久| 日韩欧美aaaaaa| 免费在线欧美视频| 精品国产凹凸成av人网站| 精彩视频一区二区| 日韩国产欧美三级| 国产传媒一区在线| 欧美日韩国产综合草草| 中文字幕亚洲在| 久久精品国产久精国产爱| 欧美一卡二卡三卡四卡| 美女视频黄免费的久久| 精品国产青草久久久久福利| 欧美日韩三级一区| 国产一区二区不卡| 日韩1区2区日韩1区2区| 中文字幕一区二区三| 26uuu色噜噜精品一区二区| 5858s免费视频成人| 奇米影视一区二区三区| 奇米影视一区二区三区小说| 日韩视频永久免费| 国产综合色产在线精品| 国产午夜亚洲精品不卡| 日韩和的一区二区| 免费成人av资源网| 激情伊人五月天久久综合| 国产在线精品一区二区| 国产综合久久久久久久久久久久| 国产精品中文欧美| 精品成人在线观看| 成人精品国产一区二区4080| 欧美不卡视频一区| 国产乱子轮精品视频| 成人午夜视频福利| 成人国产电影网|