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

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

?? evp_lib.c

?? OpenSSL 0.9.8k 最新版OpenSSL
?? C
字號:
/* crypto/evp/evp_lib.c *//* 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.] */#include <stdio.h>#include "cryptlib.h"#include <openssl/evp.h>#include <openssl/objects.h>int EVP_CIPHER_param_to_asn1(EVP_CIPHER_CTX *c, ASN1_TYPE *type)	{	int ret;	if (c->cipher->set_asn1_parameters != NULL)		ret=c->cipher->set_asn1_parameters(c,type);	else if (c->cipher->flags & EVP_CIPH_FLAG_DEFAULT_ASN1)		ret=EVP_CIPHER_set_asn1_iv(c, type);	else		ret=-1;	return(ret);	}int EVP_CIPHER_asn1_to_param(EVP_CIPHER_CTX *c, ASN1_TYPE *type)	{	int ret;	if (c->cipher->get_asn1_parameters != NULL)		ret=c->cipher->get_asn1_parameters(c,type);	else if (c->cipher->flags & EVP_CIPH_FLAG_DEFAULT_ASN1)		ret=EVP_CIPHER_get_asn1_iv(c, type);	else		ret=-1;	return(ret);	}int EVP_CIPHER_get_asn1_iv(EVP_CIPHER_CTX *c, ASN1_TYPE *type)	{	int i=0;	unsigned int l;	if (type != NULL) 		{		l=EVP_CIPHER_CTX_iv_length(c);		OPENSSL_assert(l <= sizeof(c->iv));		i=ASN1_TYPE_get_octetstring(type,c->oiv,l);		if (i != (int)l)			return(-1);		else if (i > 0)			memcpy(c->iv,c->oiv,l);		}	return(i);	}int EVP_CIPHER_set_asn1_iv(EVP_CIPHER_CTX *c, ASN1_TYPE *type)	{	int i=0;	unsigned int j;	if (type != NULL)		{		j=EVP_CIPHER_CTX_iv_length(c);		OPENSSL_assert(j <= sizeof(c->iv));		i=ASN1_TYPE_set_octetstring(type,c->oiv,j);		}	return(i);	}/* Convert the various cipher NIDs and dummies to a proper OID NID */int EVP_CIPHER_type(const EVP_CIPHER *ctx){	int nid;	ASN1_OBJECT *otmp;	nid = EVP_CIPHER_nid(ctx);	switch(nid) {		case NID_rc2_cbc:		case NID_rc2_64_cbc:		case NID_rc2_40_cbc:		return NID_rc2_cbc;		case NID_rc4:		case NID_rc4_40:		return NID_rc4;		case NID_aes_128_cfb128:		case NID_aes_128_cfb8:		case NID_aes_128_cfb1:		return NID_aes_128_cfb128;		case NID_aes_192_cfb128:		case NID_aes_192_cfb8:		case NID_aes_192_cfb1:		return NID_aes_192_cfb128;		case NID_aes_256_cfb128:		case NID_aes_256_cfb8:		case NID_aes_256_cfb1:		return NID_aes_256_cfb128;		case NID_des_cfb64:		case NID_des_cfb8:		case NID_des_cfb1:		return NID_des_cfb64;		default:		/* Check it has an OID and it is valid */		otmp = OBJ_nid2obj(nid);		if(!otmp || !otmp->data) nid = NID_undef;		ASN1_OBJECT_free(otmp);		return nid;	}}int EVP_CIPHER_block_size(const EVP_CIPHER *e)	{	return e->block_size;	}int EVP_CIPHER_CTX_block_size(const EVP_CIPHER_CTX *ctx)	{	return ctx->cipher->block_size;	}const EVP_CIPHER *EVP_CIPHER_CTX_cipher(const EVP_CIPHER_CTX *ctx)	{	return ctx->cipher;	}unsigned long EVP_CIPHER_flags(const EVP_CIPHER *cipher)	{	return cipher->flags;	}void *EVP_CIPHER_CTX_get_app_data(const EVP_CIPHER_CTX *ctx)	{	return ctx->app_data;	}void EVP_CIPHER_CTX_set_app_data(EVP_CIPHER_CTX *ctx, void *data)	{	ctx->app_data = data;	}int EVP_CIPHER_iv_length(const EVP_CIPHER *cipher)	{	return cipher->iv_len;	}int EVP_CIPHER_key_length(const EVP_CIPHER *cipher)	{	return cipher->key_len;	}int EVP_CIPHER_CTX_key_length(const EVP_CIPHER_CTX *ctx)	{	return ctx->key_len;	}int EVP_CIPHER_CTX_nid(const EVP_CIPHER_CTX *ctx)	{	return ctx->cipher->nid;	}int EVP_MD_block_size(const EVP_MD *md) 	{	return md->block_size;	}int EVP_MD_type(const EVP_MD *md)	{	return md->type;	}int EVP_MD_pkey_type(const EVP_MD *md)	{	return md->pkey_type;	}int EVP_MD_size(const EVP_MD *md)	{	return md->md_size;	}const EVP_MD * EVP_MD_CTX_md(const EVP_MD_CTX *ctx)	{	return ctx->digest;	}void EVP_MD_CTX_set_flags(EVP_MD_CTX *ctx, int flags)	{	ctx->flags |= flags;	}void EVP_MD_CTX_clear_flags(EVP_MD_CTX *ctx, int flags)	{	ctx->flags &= ~flags;	}int EVP_MD_CTX_test_flags(const EVP_MD_CTX *ctx, int flags)	{	return (ctx->flags & flags);	}void EVP_CIPHER_CTX_set_flags(EVP_CIPHER_CTX *ctx, int flags)	{	ctx->flags |= flags;	}void EVP_CIPHER_CTX_clear_flags(EVP_CIPHER_CTX *ctx, int flags)	{	ctx->flags &= ~flags;	}int EVP_CIPHER_CTX_test_flags(const EVP_CIPHER_CTX *ctx, int flags)	{	return (ctx->flags & flags);	}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线一区二区三区做爰视频网站| 99久久国产综合精品女不卡| 亚洲国产aⅴ天堂久久| 国产精品毛片高清在线完整版| 久久久精品黄色| 欧美高清在线视频| 国产精品久久久久久户外露出| 欧美激情一区二区在线| 中文字幕va一区二区三区| 日本一区二区在线不卡| 国产精品三级av| 国产精品久久久久婷婷二区次| 国产精品久久影院| 亚洲激情五月婷婷| 日韩黄色免费电影| 国产另类ts人妖一区二区| 国产盗摄视频一区二区三区| 北岛玲一区二区三区四区| 色综合久久综合网97色综合 | 欧美一区二区三区在线看 | 日本亚洲天堂网| 久久99精品久久久| 高清成人免费视频| 日本黄色一区二区| 欧美电影免费观看高清完整版在 | 91黄色小视频| 日韩一区二区不卡| 国产精品美女久久久久aⅴ| 一区二区视频在线看| 免费视频最近日韩| 粉嫩aⅴ一区二区三区四区五区| 91麻豆成人久久精品二区三区| 欧美另类videos死尸| 久久久久国产精品麻豆ai换脸| 亚洲欧美怡红院| 美女脱光内衣内裤视频久久网站| 韩国精品一区二区| 在线观看不卡视频| 久久品道一品道久久精品| 一二三四区精品视频| 精品一区二区三区在线观看 | 国产女主播视频一区二区| 亚洲香肠在线观看| 国产一区三区三区| 欧美剧在线免费观看网站| 中文无字幕一区二区三区| 日韩精品色哟哟| 一本一道综合狠狠老| 久久无码av三级| 日韩激情中文字幕| 色偷偷久久一区二区三区| 久久毛片高清国产| 美女精品一区二区| 欧美剧在线免费观看网站| 亚洲欧美另类图片小说| 岛国精品在线播放| 精品免费国产二区三区 | 久久精品国产精品亚洲红杏| 在线精品国精品国产尤物884a| 国产清纯美女被跳蛋高潮一区二区久久w| 亚洲一区中文日韩| 91性感美女视频| 国产午夜精品一区二区 | 亚洲午夜一区二区| 99久久精品国产毛片| 日本一二三四高清不卡| 狠狠久久亚洲欧美| 欧美一区二区三区四区久久| 亚洲综合色成人| 欧美亚洲国产一区在线观看网站| 国产精品久久久久aaaa樱花| 国产一区二区电影| 欧美精品一区二区三区在线| 日韩av一级片| 欧美一级片免费看| 蜜臀av性久久久久蜜臀aⅴ流畅 | 亚洲视频小说图片| 97久久精品人人做人人爽50路 | 亚洲动漫第一页| 欧美午夜精品久久久久久孕妇| 亚洲乱码国产乱码精品精可以看| 99视频在线精品| 一区二区三区四区激情| 欧洲一区在线观看| 亚洲国产精品一区二区www| 欧美日韩免费在线视频| 日韩精品电影在线观看| 欧美一二三区精品| 国产一区二区三区在线观看免费 | 亚洲美女免费视频| 欧美日韩久久一区二区| 久久精品国产99| 国产精品欧美一级免费| 色综合久久66| 午夜电影一区二区三区| 精品日韩在线观看| 白白色亚洲国产精品| 亚洲人成精品久久久久久| 欧美人xxxx| 国产91精品露脸国语对白| 综合分类小说区另类春色亚洲小说欧美| 一本一道久久a久久精品综合蜜臀| 视频一区欧美日韩| 久久久久国产精品厨房| 在线观看一区日韩| 日韩av电影一区| 欧美极品美女视频| 欧美精品日韩精品| 国产成a人无v码亚洲福利| 亚洲午夜在线电影| 日本一区二区三区四区| 制服丝袜一区二区三区| 懂色av一区二区三区免费观看| 亚洲成人一区二区在线观看| 国产蜜臀97一区二区三区| 欧美日韩三级一区| av成人免费在线观看| 蜜臀av一区二区在线免费观看| 中文字幕亚洲一区二区av在线| 欧美一级日韩一级| 欧美羞羞免费网站| 成人久久久精品乱码一区二区三区| 亚洲一级二级在线| 国产欧美精品国产国产专区| 欧美一二三区在线观看| 91污片在线观看| 国产精品亚洲第一| 久热成人在线视频| 亚洲成人av电影| 亚洲色图制服诱惑| 国产免费成人在线视频| 精品久久久久久亚洲综合网| 欧美日韩午夜在线| 色婷婷狠狠综合| av亚洲精华国产精华| 国产精品亚洲一区二区三区妖精 | 亚洲精品成人悠悠色影视| 欧美激情综合五月色丁香小说| 精品播放一区二区| 91精品国产欧美一区二区18| 欧美美女一区二区在线观看| 91麻豆精品在线观看| av综合在线播放| 粉嫩av一区二区三区| 大白屁股一区二区视频| 国产精品一区二区在线观看不卡 | 国产精品99久久久久久有的能看| 日本三级韩国三级欧美三级| 首页欧美精品中文字幕| 午夜电影一区二区| 日本在线不卡一区| 久久99精品久久久久久久久久久久 | 亚洲va中文字幕| 亚洲小少妇裸体bbw| 亚洲一区二区五区| 天堂精品中文字幕在线| 日产欧产美韩系列久久99| 蜜臀av亚洲一区中文字幕| 久久精品国产免费看久久精品| 久久国产欧美日韩精品| 国产一区二区在线视频| 成人av午夜电影| 99国产精品久久久久| 日本伦理一区二区| 69精品人人人人| 精品福利一区二区三区| 国产三级欧美三级日产三级99| 亚洲国产精品成人综合| 国产精品久久久久影院| 一区二区在线观看不卡| 日韩精品91亚洲二区在线观看| 久久er精品视频| 成人黄色在线网站| 欧美在线你懂的| 日韩免费观看2025年上映的电影| 久久综合成人精品亚洲另类欧美| 国产无遮挡一区二区三区毛片日本| 国产精品美女久久久久高潮 | 9191久久久久久久久久久| 精品久久人人做人人爰| 国产精品久久久久影视| 亚洲成va人在线观看| 国内成人自拍视频| 色综合久久99| 精品国产青草久久久久福利| 亚洲欧美精品午睡沙发| 日本大胆欧美人术艺术动态| 国产成人av自拍| 欧美性猛交xxxx乱大交退制版 | 国产精品久久久久影院亚瑟| 水野朝阳av一区二区三区| 国产精品一区二区不卡| 欧美日韩国产123区| 国产日产欧美一区| 亚洲成人动漫在线观看| 成人在线视频首页| 欧美高清视频不卡网| 中文成人综合网| 日本欧美一区二区三区乱码| heyzo一本久久综合|