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

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

?? engine.h

?? 一個支持FTP,SFTP的客戶端程序
?? H
?? 第 1 頁 / 共 3 頁
字號:
/* The following functions handle keys that are stored in some secondary * location, handled by the engine.  The storage may be on a card or * whatever. */EVP_PKEY *ENGINE_load_private_key(ENGINE *e, const char *key_id,	UI_METHOD *ui_method, void *callback_data);EVP_PKEY *ENGINE_load_public_key(ENGINE *e, const char *key_id,	UI_METHOD *ui_method, void *callback_data);/* This returns a pointer for the current ENGINE structure that * is (by default) performing any RSA operations. The value returned * is an incremented reference, so it should be free'd (ENGINE_finish) * before it is discarded. */ENGINE *ENGINE_get_default_RSA(void);/* Same for the other "methods" */ENGINE *ENGINE_get_default_DSA(void);ENGINE *ENGINE_get_default_ECDH(void);ENGINE *ENGINE_get_default_ECDSA(void);ENGINE *ENGINE_get_default_DH(void);ENGINE *ENGINE_get_default_RAND(void);/* These functions can be used to get a functional reference to perform * ciphering or digesting corresponding to "nid". */ENGINE *ENGINE_get_cipher_engine(int nid);ENGINE *ENGINE_get_digest_engine(int nid);/* This sets a new default ENGINE structure for performing RSA * operations. If the result is non-zero (success) then the ENGINE * structure will have had its reference count up'd so the caller * should still free their own reference 'e'. */int ENGINE_set_default_RSA(ENGINE *e);int ENGINE_set_default_string(ENGINE *e, const char *def_list);/* Same for the other "methods" */int ENGINE_set_default_DSA(ENGINE *e);int ENGINE_set_default_ECDH(ENGINE *e);int ENGINE_set_default_ECDSA(ENGINE *e);int ENGINE_set_default_DH(ENGINE *e);int ENGINE_set_default_RAND(ENGINE *e);int ENGINE_set_default_ciphers(ENGINE *e);int ENGINE_set_default_digests(ENGINE *e);/* The combination "set" - the flags are bitwise "OR"d from the * ENGINE_METHOD_*** defines above. As with the "ENGINE_register_complete()" * function, this function can result in unnecessary static linkage. If your * application requires only specific functionality, consider using more * selective functions. */int ENGINE_set_default(ENGINE *e, unsigned int flags);void ENGINE_add_conf_module(void);/* Deprecated functions ... *//* int ENGINE_clear_defaults(void); *//**************************//* DYNAMIC ENGINE SUPPORT *//**************************//* Binary/behaviour compatibility levels */#define OSSL_DYNAMIC_VERSION		(unsigned long)0x00020000/* Binary versions older than this are too old for us (whether we're a loader or * a loadee) */#define OSSL_DYNAMIC_OLDEST		(unsigned long)0x00020000/* When compiling an ENGINE entirely as an external shared library, loadable by * the "dynamic" ENGINE, these types are needed. The 'dynamic_fns' structure * type provides the calling application's (or library's) error functionality * and memory management function pointers to the loaded library. These should * be used/set in the loaded library code so that the loading application's * 'state' will be used/changed in all operations. The 'static_state' pointer * allows the loaded library to know if it shares the same static data as the * calling application (or library), and thus whether these callbacks need to be * set or not. */typedef void *(*dyn_MEM_malloc_cb)(size_t);typedef void *(*dyn_MEM_realloc_cb)(void *, size_t);typedef void (*dyn_MEM_free_cb)(void *);typedef struct st_dynamic_MEM_fns {	dyn_MEM_malloc_cb			malloc_cb;	dyn_MEM_realloc_cb			realloc_cb;	dyn_MEM_free_cb				free_cb;	} dynamic_MEM_fns;/* FIXME: Perhaps the memory and locking code (crypto.h) should declare and use * these types so we (and any other dependant code) can simplify a bit?? */typedef void (*dyn_lock_locking_cb)(int,int,const char *,int);typedef int (*dyn_lock_add_lock_cb)(int*,int,int,const char *,int);typedef struct CRYPTO_dynlock_value *(*dyn_dynlock_create_cb)(						const char *,int);typedef void (*dyn_dynlock_lock_cb)(int,struct CRYPTO_dynlock_value *,						const char *,int);typedef void (*dyn_dynlock_destroy_cb)(struct CRYPTO_dynlock_value *,						const char *,int);typedef struct st_dynamic_LOCK_fns {	dyn_lock_locking_cb			lock_locking_cb;	dyn_lock_add_lock_cb			lock_add_lock_cb;	dyn_dynlock_create_cb			dynlock_create_cb;	dyn_dynlock_lock_cb			dynlock_lock_cb;	dyn_dynlock_destroy_cb			dynlock_destroy_cb;	} dynamic_LOCK_fns;/* The top-level structure */typedef struct st_dynamic_fns {	void 					*static_state;	const ERR_FNS				*err_fns;	const CRYPTO_EX_DATA_IMPL		*ex_data_fns;	dynamic_MEM_fns				mem_fns;	dynamic_LOCK_fns			lock_fns;	} dynamic_fns;/* The version checking function should be of this prototype. NB: The * ossl_version value passed in is the OSSL_DYNAMIC_VERSION of the loading code. * If this function returns zero, it indicates a (potential) version * incompatibility and the loaded library doesn't believe it can proceed. * Otherwise, the returned value is the (latest) version supported by the * loading library. The loader may still decide that the loaded code's version * is unsatisfactory and could veto the load. The function is expected to * be implemented with the symbol name "v_check", and a default implementation * can be fully instantiated with IMPLEMENT_DYNAMIC_CHECK_FN(). */typedef unsigned long (*dynamic_v_check_fn)(unsigned long ossl_version);#define IMPLEMENT_DYNAMIC_CHECK_FN() \	unsigned long v_check(unsigned long v) { \		if(v >= OSSL_DYNAMIC_OLDEST) return OSSL_DYNAMIC_VERSION; \		return 0; }/* This function is passed the ENGINE structure to initialise with its own * function and command settings. It should not adjust the structural or * functional reference counts. If this function returns zero, (a) the load will * be aborted, (b) the previous ENGINE state will be memcpy'd back onto the * structure, and (c) the shared library will be unloaded. So implementations * should do their own internal cleanup in failure circumstances otherwise they * could leak. The 'id' parameter, if non-NULL, represents the ENGINE id that * the loader is looking for. If this is NULL, the shared library can choose to * return failure or to initialise a 'default' ENGINE. If non-NULL, the shared * library must initialise only an ENGINE matching the passed 'id'. The function * is expected to be implemented with the symbol name "bind_engine". A standard * implementation can be instantiated with IMPLEMENT_DYNAMIC_BIND_FN(fn) where * the parameter 'fn' is a callback function that populates the ENGINE structure * and returns an int value (zero for failure). 'fn' should have prototype; *    [static] int fn(ENGINE *e, const char *id); */typedef int (*dynamic_bind_engine)(ENGINE *e, const char *id,				const dynamic_fns *fns);#define IMPLEMENT_DYNAMIC_BIND_FN(fn) \	int bind_engine(ENGINE *e, const char *id, const dynamic_fns *fns) { \		if(ENGINE_get_static_state() == fns->static_state) goto skip_cbs; \		if(!CRYPTO_set_mem_functions(fns->mem_fns.malloc_cb, \			fns->mem_fns.realloc_cb, fns->mem_fns.free_cb)) \			return 0; \		CRYPTO_set_locking_callback(fns->lock_fns.lock_locking_cb); \		CRYPTO_set_add_lock_callback(fns->lock_fns.lock_add_lock_cb); \		CRYPTO_set_dynlock_create_callback(fns->lock_fns.dynlock_create_cb); \		CRYPTO_set_dynlock_lock_callback(fns->lock_fns.dynlock_lock_cb); \		CRYPTO_set_dynlock_destroy_callback(fns->lock_fns.dynlock_destroy_cb); \		if(!CRYPTO_set_ex_data_implementation(fns->ex_data_fns)) \			return 0; \		if(!ERR_set_implementation(fns->err_fns)) return 0; \	skip_cbs: \		if(!fn(e,id)) return 0; \		return 1; }/* If the loading application (or library) and the loaded ENGINE library share * the same static data (eg. they're both dynamically linked to the same * libcrypto.so) we need a way to avoid trying to set system callbacks - this * would fail, and for the same reason that it's unnecessary to try. If the * loaded ENGINE has (or gets from through the loader) its own copy of the * libcrypto static data, we will need to set the callbacks. The easiest way to * detect this is to have a function that returns a pointer to some static data * and let the loading application and loaded ENGINE compare their respective * values. */void *ENGINE_get_static_state(void);#if defined(__OpenBSD__) || defined(__FreeBSD__)void ENGINE_setup_bsd_cryptodev(void);#endif/* BEGIN ERROR CODES *//* The following lines are auto generated by the script mkerr.pl. Any changes * made after this point may be overwritten when the script is next run. */void ERR_load_ENGINE_strings(void);/* Error codes for the ENGINE functions. *//* Function codes. */#define ENGINE_F_DYNAMIC_CTRL				 180#define ENGINE_F_DYNAMIC_GET_DATA_CTX			 181#define ENGINE_F_DYNAMIC_LOAD				 182#define ENGINE_F_DYNAMIC_SET_DATA_CTX			 183#define ENGINE_F_ENGINE_ADD				 105#define ENGINE_F_ENGINE_BY_ID				 106#define ENGINE_F_ENGINE_CMD_IS_EXECUTABLE		 170#define ENGINE_F_ENGINE_CTRL				 142#define ENGINE_F_ENGINE_CTRL_CMD			 178#define ENGINE_F_ENGINE_CTRL_CMD_STRING			 171#define ENGINE_F_ENGINE_FINISH				 107#define ENGINE_F_ENGINE_FREE_UTIL			 108#define ENGINE_F_ENGINE_GET_CIPHER			 185#define ENGINE_F_ENGINE_GET_DEFAULT_TYPE		 177#define ENGINE_F_ENGINE_GET_DIGEST			 186#define ENGINE_F_ENGINE_GET_NEXT			 115#define ENGINE_F_ENGINE_GET_PREV			 116#define ENGINE_F_ENGINE_INIT				 119#define ENGINE_F_ENGINE_LIST_ADD			 120#define ENGINE_F_ENGINE_LIST_REMOVE			 121#define ENGINE_F_ENGINE_LOAD_PRIVATE_KEY		 150#define ENGINE_F_ENGINE_LOAD_PUBLIC_KEY			 151#define ENGINE_F_ENGINE_NEW				 122#define ENGINE_F_ENGINE_REMOVE				 123#define ENGINE_F_ENGINE_SET_DEFAULT_STRING		 189#define ENGINE_F_ENGINE_SET_DEFAULT_TYPE		 126#define ENGINE_F_ENGINE_SET_ID				 129#define ENGINE_F_ENGINE_SET_NAME			 130#define ENGINE_F_ENGINE_TABLE_REGISTER			 184#define ENGINE_F_ENGINE_UNLOAD_KEY			 152#define ENGINE_F_ENGINE_UNLOCKED_FINISH			 191#define ENGINE_F_ENGINE_UP_REF				 190#define ENGINE_F_INT_CTRL_HELPER			 172#define ENGINE_F_INT_ENGINE_CONFIGURE			 188#define ENGINE_F_INT_ENGINE_MODULE_INIT			 187#define ENGINE_F_LOG_MESSAGE				 141/* Reason codes. */#define ENGINE_R_ALREADY_LOADED				 100#define ENGINE_R_ARGUMENT_IS_NOT_A_NUMBER		 133#define ENGINE_R_CMD_NOT_EXECUTABLE			 134#define ENGINE_R_COMMAND_TAKES_INPUT			 135#define ENGINE_R_COMMAND_TAKES_NO_INPUT			 136#define ENGINE_R_CONFLICTING_ENGINE_ID			 103#define ENGINE_R_CTRL_COMMAND_NOT_IMPLEMENTED		 119#define ENGINE_R_DH_NOT_IMPLEMENTED			 139#define ENGINE_R_DSA_NOT_IMPLEMENTED			 140#define ENGINE_R_DSO_FAILURE				 104#define ENGINE_R_DSO_NOT_FOUND				 132#define ENGINE_R_ENGINES_SECTION_ERROR			 148#define ENGINE_R_ENGINE_IS_NOT_IN_LIST			 105#define ENGINE_R_ENGINE_SECTION_ERROR			 149#define ENGINE_R_FAILED_LOADING_PRIVATE_KEY		 128#define ENGINE_R_FAILED_LOADING_PUBLIC_KEY		 129#define ENGINE_R_FINISH_FAILED				 106#define ENGINE_R_GET_HANDLE_FAILED			 107#define ENGINE_R_ID_OR_NAME_MISSING			 108#define ENGINE_R_INIT_FAILED				 109#define ENGINE_R_INTERNAL_LIST_ERROR			 110#define ENGINE_R_INVALID_ARGUMENT			 143#define ENGINE_R_INVALID_CMD_NAME			 137#define ENGINE_R_INVALID_CMD_NUMBER			 138#define ENGINE_R_INVALID_INIT_VALUE			 151#define ENGINE_R_INVALID_STRING				 150#define ENGINE_R_NOT_INITIALISED			 117#define ENGINE_R_NOT_LOADED				 112#define ENGINE_R_NO_CONTROL_FUNCTION			 120#define ENGINE_R_NO_INDEX				 144#define ENGINE_R_NO_LOAD_FUNCTION			 125#define ENGINE_R_NO_REFERENCE				 130#define ENGINE_R_NO_SUCH_ENGINE				 116#define ENGINE_R_NO_UNLOAD_FUNCTION			 126#define ENGINE_R_PROVIDE_PARAMETERS			 113#define ENGINE_R_RSA_NOT_IMPLEMENTED			 141#define ENGINE_R_UNIMPLEMENTED_CIPHER			 146#define ENGINE_R_UNIMPLEMENTED_DIGEST			 147#define ENGINE_R_VERSION_INCOMPATIBILITY		 145#ifdef  __cplusplus}#endif#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜精品久久久久久久99水蜜桃| 国产亚洲综合在线| 99re6这里只有精品视频在线观看| 日日夜夜精品视频免费| 国产精品电影一区二区三区| 国产精品美女视频| 欧美日韩精品三区| 日韩视频免费观看高清完整版| 久久99精品视频| 91啪亚洲精品| 欧美国产激情二区三区| 日韩国产在线观看一区| eeuss鲁片一区二区三区| 欧美日韩一级二级| 欧美极品aⅴ影院| 美腿丝袜亚洲色图| 欧美在线小视频| 国产精品乱码一区二三区小蝌蚪| 免费观看一级特黄欧美大片| 欧洲在线/亚洲| 日本一区二区三区久久久久久久久不| 亚洲国产精品一区二区久久恐怖片| 国内精品伊人久久久久av影院| 欧美优质美女网站| 亚洲免费大片在线观看| 从欧美一区二区三区| 日韩午夜中文字幕| 日韩在线a电影| 51精品久久久久久久蜜臀| 亚洲国产精品久久久久婷婷884 | 精品一区二区影视| 欧美精品在线观看播放| 一区二区久久久久久| 成人黄色777网| 亚洲欧洲在线观看av| www.在线成人| 国产精品久久精品日日| 成人精品gif动图一区| 久久五月婷婷丁香社区| 国内精品久久久久影院薰衣草 | 717成人午夜免费福利电影| 午夜久久久久久电影| 欧美性色黄大片手机版| 日韩av电影免费观看高清完整版在线观看| 色丁香久综合在线久综合在线观看| 亚洲黄色在线视频| 91精品国产高清一区二区三区蜜臀 | 日日噜噜夜夜狠狠视频欧美人| 欧美精品777| 国产麻豆日韩欧美久久| 中文字幕欧美国产| 色成年激情久久综合| 久久成人18免费观看| 国产日韩亚洲欧美综合| 色菇凉天天综合网| 免费成人在线网站| 国产三级一区二区| 91免费版在线看| 日本vs亚洲vs韩国一区三区二区| 精品久久久久久最新网址| 成人免费三级在线| 男男视频亚洲欧美| 国产精品护士白丝一区av| 91在线一区二区| 精品亚洲国产成人av制服丝袜| 国产精品色哟哟| 欧美一区二区高清| 色先锋资源久久综合| 久99久精品视频免费观看| 亚洲欧美日韩小说| 久久久久久久久久久久久夜| 欧美视频一区二区三区| 国产91在线看| 青青草精品视频| 亚洲在线中文字幕| 国产精品久久久久影院色老大| 日韩精品一区在线| 欧美日韩亚洲综合在线 | 亚洲一区免费视频| 国产精品每日更新在线播放网址| 日韩免费在线观看| 欧美精品v国产精品v日韩精品| 一本色道久久综合亚洲91| 成人亚洲一区二区一| 国产成人在线电影| 国产电影一区在线| 国产成人啪免费观看软件| 九九精品一区二区| 久久91精品国产91久久小草| 美日韩黄色大片| 美女免费视频一区| 精品影院一区二区久久久| 毛片一区二区三区| 久久精品国产第一区二区三区| 视频一区在线视频| 蜜桃av一区二区| 国产永久精品大片wwwapp| 麻豆一区二区在线| 激情五月播播久久久精品| 国产精品资源站在线| 国产精品88av| 在线免费观看日韩欧美| 欧美性猛交xxxx乱大交退制版| 欧美日韩久久一区二区| 日韩午夜中文字幕| 亚洲欧洲韩国日本视频| 99综合影院在线| 这里只有精品视频在线观看| 精品少妇一区二区三区在线播放| 精品国产伦一区二区三区观看方式| 久久综合久久久久88| 一区二区中文视频| 日本sm残虐另类| 成人久久18免费网站麻豆| 91免费看片在线观看| 欧美高清你懂得| 中文字幕欧美日韩一区| 亚洲高清视频在线| 成人综合激情网| 91精品国产91久久久久久一区二区| 久久九九久久九九| 亚洲bdsm女犯bdsm网站| 国产福利精品导航| 欧洲一区二区三区在线| 国产偷v国产偷v亚洲高清| 亚洲一二三四在线| 99久久精品一区| 国产午夜精品理论片a级大结局| 亚洲成年人影院| 91在线精品一区二区| 久久综合久久鬼色| 久久国产精品第一页| 欧美日韩高清在线| 伊人色综合久久天天人手人婷| 极品少妇xxxx偷拍精品少妇| 日韩一区二区三| 日日夜夜免费精品| 69久久夜色精品国产69蝌蚪网| 亚洲乱码一区二区三区在线观看| 国产又粗又猛又爽又黄91精品| 欧美精品第1页| 亚洲h在线观看| 欧美高清www午色夜在线视频| 一区二区三区在线观看国产| 色综合天天综合在线视频| 亚洲美女淫视频| 欧美性猛交xxxx乱大交退制版| 亚洲欧美日韩国产成人精品影院| 国产91在线|亚洲| 中文字幕中文字幕中文字幕亚洲无线| 国产精选一区二区三区| 国产午夜精品美女毛片视频| 粉嫩av一区二区三区在线播放 | 91免费观看视频| 亚洲成人综合在线| 欧美一区二区高清| 国产精品1区2区3区| 中文字幕精品一区二区精品绿巨人| 国产精品系列在线观看| 中文字幕成人在线观看| 91一区二区在线观看| 日韩影院精彩在线| 欧美mv日韩mv国产| 成人国产一区二区三区精品| 一区二区三区四区不卡在线| 91精品国产福利| 99久久综合狠狠综合久久| 亚洲精品亚洲人成人网在线播放| 91 com成人网| 国产激情视频一区二区在线观看| 亚洲人成人一区二区在线观看| 欧美精品亚洲二区| 岛国精品一区二区| 亚洲v日本v欧美v久久精品| 欧美mv日韩mv国产网站app| 99久久国产综合色|国产精品| 日韩经典中文字幕一区| 中文字幕电影一区| 日韩一区二区三区视频| 91麻豆免费看| 国产成人亚洲精品青草天美| 日韩1区2区3区| 亚洲一区二区三区不卡国产欧美| 日本一区二区免费在线| 精品精品欲导航| 91精品国产色综合久久久蜜香臀| 91麻豆精品在线观看| 成人中文字幕在线| 激情文学综合网| 蜜桃视频一区二区三区在线观看| 亚洲综合色区另类av| 中文字幕av一区二区三区免费看| 精品久久久久久久久久久久久久久 | 蜜臀av一区二区在线观看| 亚洲一区二区三区四区中文字幕| 日本一区二区成人| 国产精品伦理一区二区| 国产精品初高中害羞小美女文| 欧美国产精品中文字幕| 国产精品理伦片|