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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pki_pkcs12.cpp

?? 一個小型證書管理系統(tǒng)
?? CPP
字號:
/* * Copyright (C) 2001 Christian Hohnstaedt. * *  All rights reserved. * * *  Redistribution and use in source and binary forms, with or without  *  modification, are permitted provided that the following conditions are met: * *  - Redistributions of source code must retain the above copyright notice, *    this list of conditions and the following disclaimer. *  - 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. *  - Neither the name of the author nor the names of its contributors may be  *    used to endorse or promote products derived from this software without *    specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 COPYRIGHT OWNER 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. * * * This program links to software with different licenses from: * *	http://www.openssl.org which includes cryptographic software * 	written by Eric Young (eay@cryptsoft.com)" * *	http://www.sleepycat.com * *	http://www.trolltech.com *  * * * http://www.hohnstaedt.de/xca * email: christian@hohnstaedt.de * * $Id: pki_pkcs12.cpp,v 1.12 2003/01/06 19:35:51 chris Exp $ * */                           #include "pki_pkcs12.h"pki_pkcs12::pki_pkcs12(const string d, pki_x509 *acert, pki_key *akey, pem_password_cb *cb):	pki_base(d){	key = new pki_key(akey);	cert = new pki_x509(acert);	certstack = sk_X509_new_null();	pkcs12 = NULL;	passcb = cb;	openssl_error();		className="pki_pkcs12";}pki_pkcs12::pki_pkcs12(const string fname, pem_password_cb *cb)	:pki_base(fname){ 	FILE *fp;	char pass[30];	EVP_PKEY *mykey;	X509 *mycert;	key=NULL; cert=NULL; pkcs12=NULL;	passcb = cb;	certstack = sk_X509_new_null();	PASS_INFO p;	string title = XCA_TITLE;	string description = "Please enter the password to encrypt the PKCS#12 file.";	p.title = &title;	p.description = &description;	fp = fopen(fname.c_str(), "rb");	if (fp) {		pkcs12 = d2i_PKCS12_fp(fp, NULL);		CERR("PK12");		fclose(fp);		openssl_error();		passcb(pass, 30, 0, &p);		CERR("PK12");		PKCS12_parse(pkcs12, pass, &mykey, &mycert, &certstack);		CERR("PK12");		openssl_error();		if (mykey) {			key = new pki_key(mykey);			key->setDescription("pk12-import");			//EVP_PKEY_free(mykey);		}		if (mycert) {			cert = new pki_x509(mycert);			cert->setDescription("pk12-import");			//X509_free(mycert);		}	}	else fopen_error(fname);	className="pki_pkcs12";}	pki_pkcs12::~pki_pkcs12(){	CERR("popping free certs");	if (sk_X509_num(certstack)>0)		sk_X509_pop_free(certstack, X509_free); // free the certs itself, because we own a copy of them	CERR("deleting key");	if (key) delete(key); 	CERR( "deleting cert");	if (cert) delete(cert);	CERR("freeing PKCS12");	PKCS12_free(pkcs12);	openssl_error();}void pki_pkcs12::addCaCert(pki_x509 *ca){ 	if (!ca) return;	sk_X509_push(certstack, X509_dup(ca->getCert()));	openssl_error();}	void pki_pkcs12::writePKCS12(const string fname){ 	char pass[30];	char desc[100];	strncpy(desc,getDescription().c_str(),100);	PASS_INFO p;	string title = XCA_TITLE;	string description = "Please enter the password to encrypt the PKCS#12 file";	p.title = &title;	p.description = &description;	if (!pkcs12) {		if (cert == NULL || key == NULL) {			openssl_error("No key or no Cert and no pkcs12....");		}		passcb(pass, 30, 0, &p); 		CERR( desc << key->getKey() << cert->getCert() );		CERR("before PKCS12_create....");		pkcs12 = PKCS12_create(pass, desc, key->getKey(), cert->getCert(), certstack, 0, 0, 0, 0, 0);		openssl_error();		CERR("after PKCS12_create....");	}	FILE *fp = fopen(fname.c_str(),"wb");	if (fp != NULL) {	    CERR("writing PKCS#12");            i2d_PKCS12_fp(fp, pkcs12);            openssl_error();	    fclose (fp);        }	else fopen_error(fname);}int pki_pkcs12::numCa() {	int n= sk_X509_num(certstack);	openssl_error();	return n;}pki_key *pki_pkcs12::getKey() {	return new pki_key(key);}pki_x509 *pki_pkcs12::getCert() {	return new pki_x509(cert);}pki_x509 *pki_pkcs12::getCa(int x) {	pki_x509 *cert;	cert = new pki_x509(X509_dup(sk_X509_value(certstack, x)));	openssl_error();	cert->setDescription("pk12-import");	return cert;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产亚洲在线| 欧美日韩一二区| 麻豆成人在线观看| 亚洲地区一二三色| 五月天久久比比资源色| 亚洲午夜羞羞片| 丝袜美腿高跟呻吟高潮一区| 美女视频第一区二区三区免费观看网站| 亚洲乱码国产乱码精品精的特点 | 亚洲欧美日韩国产手机在线 | 91免费小视频| 在线观看成人免费视频| 91久久免费观看| 欧美亚洲综合一区| 欧美日韩国产综合视频在线观看 | 成人久久18免费网站麻豆 | 色综合天天综合给合国产| 成人黄色在线网站| 在线欧美一区二区| 欧美精品精品一区| 久久免费电影网| 中文字幕一区日韩精品欧美| 日韩伦理av电影| 三级成人在线视频| 国产一区二区精品在线观看| 成人av在线资源网| 欧美日韩精品一区视频| 欧美精品777| 久久精品一区二区三区不卡| 国产精品网站导航| 亚洲成人动漫一区| 国产主播一区二区| 在线观看日韩精品| 久久久亚洲午夜电影| 日韩美女精品在线| 久久精品久久久精品美女| 国产传媒欧美日韩成人| 欧美羞羞免费网站| 久久久久久久久久看片| 夜夜操天天操亚洲| 国产一区二区伦理片| 欧美亚洲综合另类| 欧美国产1区2区| 琪琪久久久久日韩精品| 337p亚洲精品色噜噜噜| 久久精品视频一区二区| 亚洲在线观看免费视频| 国产精品1024久久| 91精品国产日韩91久久久久久| 欧美国产精品v| 麻豆精品久久精品色综合| 91免费视频网| 亚洲国产精品激情在线观看| 青草国产精品久久久久久| 色综合久久综合| 国产女同互慰高潮91漫画| 五月激情六月综合| 欧美在线观看禁18| 中文字幕一区二区三区视频| 久久精品二区亚洲w码| 欧美少妇性性性| 亚洲免费在线视频| 成人一区二区三区中文字幕| 精品三级av在线| 日本伊人午夜精品| 欧美人体做爰大胆视频| 一区二区三区中文字幕电影| 不卡电影一区二区三区| 国产免费成人在线视频| 国产美女精品一区二区三区| 精品国产一区二区精华| 日韩精品一二三四| 欧美日韩视频第一区| 亚洲免费av在线| 99精品视频免费在线观看| 久久婷婷国产综合精品青草| 九九九精品视频| 91精品国产丝袜白色高跟鞋| 五月激情综合婷婷| 91精品国产日韩91久久久久久| 午夜久久久影院| 欧美日韩国产欧美日美国产精品| 伊人婷婷欧美激情| 色天天综合色天天久久| 亚洲美女淫视频| 欧美性色欧美a在线播放| 一区二区三区自拍| 欧美主播一区二区三区| 亚洲va在线va天堂| 91麻豆精品国产自产在线 | 美女免费视频一区| 精品国产自在久精品国产| 另类小说图片综合网| 精品少妇一区二区三区在线播放| 精品影视av免费| 久久久激情视频| 97精品国产露脸对白| 国产日产欧美精品一区二区三区| 欧美大胆一级视频| 91精品国产欧美一区二区| 久久久久久黄色| 亚洲人成亚洲人成在线观看图片| 日韩精品国产欧美| 日韩精品一二三四| 日韩女优av电影| 亚洲一区二区三区中文字幕在线| 国产伦精品一区二区三区免费| 青青草国产成人av片免费 | 欧美成人video| 色婷婷久久久亚洲一区二区三区| 免费成人在线网站| 日本不卡一二三区黄网| 依依成人综合视频| 欧美精品一区二区三区在线| 日韩三级视频在线看| 经典一区二区三区| 亚洲黄色av一区| av一区二区三区四区| 日韩一级完整毛片| 国产高清不卡一区二区| 日韩免费成人网| 国产酒店精品激情| 精品国产一区二区三区四区四| 久久精品国产亚洲aⅴ| 国产精品久久久久久妇女6080| 成人网页在线观看| 精品在线观看免费| 亚洲午夜久久久久久久久电影网| 精品嫩草影院久久| 激情成人综合网| 国产亚洲成av人在线观看导航| 波多野结衣一区二区三区 | 久久国产精品色| 国产欧美日韩三级| 成人一区在线看| 亚洲精品视频在线观看网站| 另类调教123区| 欧美一区二区黄| 麻豆国产一区二区| 欧美在线一二三四区| 一区二区三区欧美日| 成a人片国产精品| 久久精品99国产精品日本| 樱桃国产成人精品视频| 国产免费久久精品| 91精品福利在线| 日本中文字幕一区| wwww国产精品欧美| 97精品视频在线观看自产线路二| 亚洲一区二区av在线| 国产精品国产三级国产有无不卡 | 国产欧美精品一区二区色综合朱莉| 91麻豆精品国产91久久久久| 久久精品亚洲麻豆av一区二区 | 国产成人综合在线| 中文字幕字幕中文在线中不卡视频| 国产欧美一区二区精品性| 日韩精品一区二| 日韩精品一区二区三区在线| 欧洲一区二区av| 91精品国产一区二区三区| 色综合久久久久网| 日韩欧美一级在线播放| 欧美在线色视频| 国产精品综合网| 国产精品1区二区.| 欧美亚日韩国产aⅴ精品中极品| 99久久精品免费看| 亚洲精品一区二区三区四区高清 | 亚洲国产aⅴ天堂久久| 国产欧美精品一区二区色综合朱莉| 日韩一级二级三级精品视频| 一本大道久久a久久精二百| 粉嫩aⅴ一区二区三区四区| 欧美中文字幕一区二区三区亚洲| 国产亚洲欧美色| 亚洲国产精品自拍| 在线视频你懂得一区| 久久综合久色欧美综合狠狠| 午夜久久久影院| 99精品视频一区| 91精品国产一区二区人妖| 色综合网色综合| 99精品偷自拍| 欧洲一区二区三区在线| 亚洲精品乱码久久久久| 波多野结衣在线一区| 国产精品色一区二区三区| 久久99精品久久久久久久久久久久| 在线观看日产精品| 免费日本视频一区| 亚洲国产成人午夜在线一区 | 日韩高清在线电影| 久久一夜天堂av一区二区三区| 国产尤物一区二区| 国产欧美日本一区二区三区| 亚洲一区二区精品视频| 豆国产96在线|亚洲| 国产区在线观看成人精品| 国产一区二区免费看|