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

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

?? x509_vfy.h

?? openssl加密例子
?? H
?? 第 1 頁 / 共 2 頁
字號:
/* crypto/x509/x509_vfy.h */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
 * All rights reserved.
 *
 * This package is an SSL implementation written
 * by Eric Young (eay@cryptsoft.com).
 * The implementation was written so as to conform with Netscapes SSL.
 * 
 * This library is free for commercial and non-commercial use as long as
 * the following conditions are aheared to.  The following conditions
 * apply to all code found in this distribution, be it the RC4, RSA,
 * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
 * included with this distribution is covered by the same copyright terms
 * except that the holder is Tim Hudson (tjh@cryptsoft.com).
 * 
 * Copyright remains Eric Young's, and as such any Copyright notices in
 * the code are not to be removed.
 * If this package is used in a product, Eric Young should be given attribution
 * as the author of the parts of the library used.
 * This can be in the form of a textual message at program startup or
 * in documentation (online or textual) provided with the package.
 * 
 * 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 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 acknowledgement:
 *    "This product includes cryptographic software written by
 *     Eric Young (eay@cryptsoft.com)"
 *    The word 'cryptographic' can be left out if the rouines from the library
 *    being used are not cryptographic related :-).
 * 4. If you include any Windows specific code (or a derivative thereof) from 
 *    the apps directory (application code) you must include an acknowledgement:
 *    "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
 * 
 * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
 * ANY EXPRESS 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 AUTHOR OR 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.
 * 
 * The licence and distribution terms for any publically available version or
 * derivative of this code cannot be changed.  i.e. this code cannot simply be
 * copied and put under another distribution licence
 * [including the GNU Public Licence.]
 */

#ifndef HEADER_X509_H
#include <openssl/x509.h>
/* openssl/x509.h ends up #include-ing this file at about the only
 * appropriate moment. */
#endif

#ifndef HEADER_X509_VFY_H
#define HEADER_X509_VFY_H

#ifndef OPENSSL_NO_LHASH
#include <openssl/lhash.h>
#endif
#include <openssl/bio.h>
#include <openssl/crypto.h>
#include <openssl/symhacks.h>

#ifdef  __cplusplus
extern "C" {
#endif

/* Outer object */
typedef struct x509_hash_dir_st
	{
	int num_dirs;
	char **dirs;
	int *dirs_type;
	int num_dirs_alloced;
	} X509_HASH_DIR_CTX;

typedef struct x509_file_st
	{
	int num_paths;	/* number of paths to files or directories */
	int num_alloced;
	char **paths;	/* the list of paths or directories */
	int *path_type;
	} X509_CERT_FILE_CTX;

/*******************************/
/*
SSL_CTX -> X509_STORE    
		-> X509_LOOKUP
			->X509_LOOKUP_METHOD
		-> X509_LOOKUP
			->X509_LOOKUP_METHOD
 
SSL	-> X509_STORE_CTX
		->X509_STORE    

The X509_STORE holds the tables etc for verification stuff.
A X509_STORE_CTX is used while validating a single certificate.
The X509_STORE has X509_LOOKUPs for looking up certs.
The X509_STORE then calls a function to actually verify the
certificate chain.
*/

#define X509_LU_RETRY		-1
#define X509_LU_FAIL		0
#define X509_LU_X509		1
#define X509_LU_CRL		2
#define X509_LU_PKEY		3

typedef struct x509_object_st
	{
	/* one of the above types */
	int type;
	union	{
		char *ptr;
		X509 *x509;
		X509_CRL *crl;
		EVP_PKEY *pkey;
		} data;
	} X509_OBJECT;

typedef struct x509_lookup_st X509_LOOKUP;

DECLARE_STACK_OF(X509_LOOKUP)
DECLARE_STACK_OF(X509_OBJECT)

/* This is a static that defines the function interface */
typedef struct x509_lookup_method_st
	{
	const char *name;
	int (*new_item)(X509_LOOKUP *ctx);
	void (*free)(X509_LOOKUP *ctx);
	int (*init)(X509_LOOKUP *ctx);
	int (*shutdown)(X509_LOOKUP *ctx);
	int (*ctrl)(X509_LOOKUP *ctx,int cmd,const char *argc,long argl,
			char **ret);
	int (*get_by_subject)(X509_LOOKUP *ctx,int type,X509_NAME *name,
			      X509_OBJECT *ret);
	int (*get_by_issuer_serial)(X509_LOOKUP *ctx,int type,X509_NAME *name,
				    ASN1_INTEGER *serial,X509_OBJECT *ret);
	int (*get_by_fingerprint)(X509_LOOKUP *ctx,int type,
				  unsigned char *bytes,int len,
				  X509_OBJECT *ret);
	int (*get_by_alias)(X509_LOOKUP *ctx,int type,char *str,int len,
			    X509_OBJECT *ret);
	} X509_LOOKUP_METHOD;

/* This is used to hold everything.  It is used for all certificate
 * validation.  Once we have a certificate chain, the 'verify'
 * function is then called to actually check the cert chain. */
struct x509_store_st
	{
	/* The following is a cache of trusted certs */
	int cache; 	/* if true, stash any hits */
	STACK_OF(X509_OBJECT) *objs;	/* Cache of all objects */

	/* These are external lookup methods */
	STACK_OF(X509_LOOKUP) *get_cert_methods;

	/* The following fields are not used by X509_STORE but are
         * inherited by X509_STORE_CTX when it is initialised.
	 */

	unsigned long flags;	/* Various verify flags */
	int purpose;
	int trust;
	/* Callbacks for various operations */
	int (*verify)(X509_STORE_CTX *ctx);	/* called to verify a certificate */
	int (*verify_cb)(int ok,X509_STORE_CTX *ctx);	/* error callback */
	int (*get_issuer)(X509 **issuer, X509_STORE_CTX *ctx, X509 *x);	/* get issuers cert from ctx */
	int (*check_issued)(X509_STORE_CTX *ctx, X509 *x, X509 *issuer); /* check issued */
	int (*check_revocation)(X509_STORE_CTX *ctx); /* Check revocation status of chain */
	int (*get_crl)(X509_STORE_CTX *ctx, X509_CRL **crl, X509 *x); /* retrieve CRL */
	int (*check_crl)(X509_STORE_CTX *ctx, X509_CRL *crl); /* Check CRL validity */
	int (*cert_crl)(X509_STORE_CTX *ctx, X509_CRL *crl, X509 *x); /* Check certificate against CRL */
	int (*cleanup)(X509_STORE_CTX *ctx);

	CRYPTO_EX_DATA ex_data;
	int references;
	int depth;		/* how deep to look (still unused -- X509_STORE_CTX's depth is used) */
	} /* X509_STORE */;

#define X509_STORE_set_depth(ctx,d)       ((ctx)->depth=(d))

#define X509_STORE_set_verify_cb_func(ctx,func) ((ctx)->verify_cb=(func))
#define X509_STORE_set_verify_func(ctx,func)	((ctx)->verify=(func))

/* This is the functions plus an instance of the local variables. */
struct x509_lookup_st
	{
	int init;			/* have we been started */
	int skip;			/* don't use us. */
	X509_LOOKUP_METHOD *method;	/* the functions */
	char *method_data;		/* method data */

	X509_STORE *store_ctx;	/* who owns us */
	} /* X509_LOOKUP */;

/* This is a used when verifying cert chains.  Since the
 * gathering of the cert chain can take some time (and have to be
 * 'retried', this needs to be kept and passed around. */
struct x509_store_ctx_st      /* X509_STORE_CTX */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产**成人网毛片九色 | 一区二区三区不卡视频| 一区二区三区丝袜| 亚洲国产精品成人综合色在线婷婷| 日韩一级免费一区| 日韩精品一区国产麻豆| 日韩欧美国产精品一区| 欧美精品第1页| 欧美一区二区观看视频| 欧美成人一区二区三区 | 国产精品人妖ts系列视频| 91丨九色丨黑人外教| 91麻豆精品在线观看| 欧美伊人久久大香线蕉综合69| 91豆麻精品91久久久久久| 欧美亚洲高清一区| 日韩视频一区二区在线观看| 精品少妇一区二区三区在线视频 | 国产精品18久久久久久久久| 国产.欧美.日韩| 欧洲另类一二三四区| 欧美一区二区在线免费观看| 26uuu欧美| 中文字幕亚洲综合久久菠萝蜜| 亚洲精品自拍动漫在线| 日韩av一级片| 成人精品高清在线| 欧美人体做爰大胆视频| 337p粉嫩大胆噜噜噜噜噜91av | 欧美精品18+| 精品999在线播放| 亚洲人妖av一区二区| 日韩中文字幕亚洲一区二区va在线| 九九热在线视频观看这里只有精品| 国产在线一区二区| 在线观看91精品国产麻豆| 日本少妇一区二区| 成+人+亚洲+综合天堂| 欧美日韩一级二级| 91麻豆国产在线观看| 日韩亚洲电影在线| 国产日韩欧美a| 五月婷婷久久综合| 99久久国产免费看| 精品成人佐山爱一区二区| 亚洲资源在线观看| av在线不卡电影| 精品福利av导航| 日本午夜一区二区| 国产a区久久久| 在线播放91灌醉迷j高跟美女 | 色综合一区二区| 国产亚洲婷婷免费| 麻豆精品在线视频| 欧美亚洲国产bt| 亚洲免费av高清| gogogo免费视频观看亚洲一| 欧美一级二级三级蜜桃| 一二三区精品视频| 99久久99久久精品国产片果冻| 久久综合五月天婷婷伊人| 亚洲自拍偷拍综合| 国产精品996| 国产91在线看| 91精品久久久久久久99蜜桃| 久久九九久久九九| 日韩精品1区2区3区| 成人亚洲精品久久久久软件| 日韩一区二区视频| 亚洲精品国久久99热| 成人爽a毛片一区二区免费| 精品黑人一区二区三区久久| 美女视频一区二区三区| 欧美日韩二区三区| 日韩国产欧美一区二区三区| 欧美日韩一区国产| 日韩精品一二区| 欧美一级日韩一级| 精品一区中文字幕| 久久一二三国产| 丁香一区二区三区| 国产精品视频一二三区| www.色精品| 一区二区三区高清| 欧美日韩aaaaa| 日韩制服丝袜av| 精品国产乱码久久| 久久久久国色av免费看影院| 国产精品亚洲人在线观看| 久久精品免费在线观看| 成人一区二区在线观看| 最新欧美精品一区二区三区| 91蜜桃婷婷狠狠久久综合9色| 亚洲激情网站免费观看| 亚洲成人免费观看| 91麻豆精品国产91久久久久久| 免费看欧美美女黄的网站| 日韩欧美视频在线| 丰满亚洲少妇av| 自拍偷拍亚洲欧美日韩| 欧美三级视频在线观看| 蜜臀91精品一区二区三区| 久久久久久久久久久久久女国产乱| 成人免费视频免费观看| 亚洲午夜久久久久久久久电影网 | 日韩一区二区免费视频| 国产精品一区二区久激情瑜伽| 日韩美女久久久| 欧美一区二区视频在线观看| 国产成人亚洲综合a∨婷婷| 亚洲免费伊人电影| 2021久久国产精品不只是精品| 91色porny在线视频| 日本大胆欧美人术艺术动态| 国产精品美日韩| 在线成人高清不卡| 91色在线porny| 国产伦精品一区二区三区免费迷 | 精品国产99国产精品| 波多野结衣亚洲| 加勒比av一区二区| 91免费在线播放| 国产麻豆视频一区| 五月婷婷激情综合| 亚洲色图第一区| 久久网这里都是精品| 欧美性大战xxxxx久久久| 国产91精品在线观看| 毛片av一区二区三区| 亚洲电影视频在线| 亚洲四区在线观看| 欧美国产亚洲另类动漫| 欧美成人bangbros| 91精品国产综合久久久蜜臀粉嫩| 99精品欧美一区二区三区综合在线| 久久99精品国产麻豆不卡| 一区二区三区 在线观看视频| 国产欧美日韩三级| 久久久精品免费免费| 欧美不卡一区二区三区四区| 欧美日韩成人在线| 欧美日韩在线播放三区四区| 色综合av在线| 色香蕉成人二区免费| 99久久er热在这里只有精品15 | 91成人网在线| 99国产精品久久久| 久久久久9999亚洲精品| www国产精品av| 精品日产卡一卡二卡麻豆| 日韩美女主播在线视频一区二区三区| 欧美久久一二三四区| 欧美吞精做爰啪啪高潮| 欧美日韩一级黄| 91精品国产综合久久久久久 | 日韩欧美在线网站| 欧美色窝79yyyycom| 欧美午夜精品电影| 91超碰这里只有精品国产| 欧美日韩精品三区| 日韩一区二区影院| 欧美哺乳videos| www激情久久| 久久久久9999亚洲精品| 久久久久国产精品厨房| 亚洲欧洲成人av每日更新| 亚洲婷婷国产精品电影人久久| 亚洲一线二线三线视频| 香蕉成人伊视频在线观看| 亚洲第一搞黄网站| 国内不卡的二区三区中文字幕| 国产综合久久久久久久久久久久| 国产一二精品视频| 一本到三区不卡视频| 91精品久久久久久久久99蜜臂| 美女被吸乳得到大胸91| 国产成人综合亚洲91猫咪| 91在线小视频| 91精品国产福利在线观看| 日韩女优电影在线观看| 国产精品福利在线播放| 亚洲综合一二三区| 极品少妇xxxx偷拍精品少妇| 成人精品免费网站| 欧美老女人在线| 亚洲国产精品成人综合 | 久久美女高清视频| 一区二区三区中文字幕在线观看| 亚洲国产va精品久久久不卡综合| 91精品国产aⅴ一区二区| 欧美精品一区二区三区久久久| 一本久久a久久免费精品不卡| 91麻豆精品国产无毒不卡在线观看 | 成人app下载| 日韩一区二区电影网| 成人免费在线播放视频| 久久精品久久久精品美女| 色婷婷综合久久久久中文一区二区| 欧美一级欧美三级| 亚洲一区二区三区在线看|