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

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

?? auxiliary.h

?? 對PKCS11接口的封裝
?? H
字號:
/*
[]======================================================================[]

	Copyright(C) 2000-2004, Feitian Technologies Co., Ltd.
	All rights reserved.

FILE:
	auxiliary.cpp

DESC:
	this file will include the auxiliary functions such as:
	token label modification function,
	container query function,

NOTE:
	you should include "cryptoki.h" before include this header file
	
REVISION:
	2004-04-02 [Skybird Le]
		Created.
	2005-03-11 [Apex Liu]
		Add function EP_InitToken().
[]======================================================================[]
*/

#ifndef __AUXILIARY_H__
#define __AUXILIARY_H__
//#include <pkcs11/notifymsg.h>


#ifdef __cplusplus
extern "C" {
#endif


typedef struct AUX_INIT_TOKEN_PRIVATE
{
	// Init Type
	CK_BYTE InitType;  // 0:format card only; 1:Set ATR; 3: Create PKI App

	// Pointer to a buffer that specifies the name of the token. If it is
	// NULL, means use default token name "ePass Token". Max to 31 bytes.
	CK_BYTE_PTR pucTokenName;
	CK_ULONG ulTokenNameLen;

	// The max retry counter of SO-PIN. Can be 1 to 15. Any value out of this
	// range will case use 5 instead.
	CK_BYTE ucMaxSoPinCounter;
	// The max retry counter of User-PIN. Can be 1 to 15. Any value out of this
	// range will case use 5 instead.
	CK_BYTE ucMaxUserPinCounter;

	// Pointer to a buffer that specifies the SO-PIN after initialize. If it
	// is NULL, use the default value: "rockey".
	CK_BYTE_PTR pucSoPin;
	// Length of the pucSoPin.
	CK_ULONG ulSoPinLen;

	// Pointer to a buffer that specifies the User-PIN after initialize. If
	// it is NULL, use the default value: "1234".
	CK_BYTE_PTR pucUserPin;
	// Length of the pucUserPin.
	CK_ULONG ulUserPinLen;

	// Size of the public data storage. This parameter has no default value.
	CK_ULONG ulPublicSize;
	// Size of the private data storage. This parameter has no default value.
	CK_ULONG ulPrivateSize;
	
	// ATR to OEM
	CK_BYTE_PTR pOEM_ATR;
	CK_ULONG ulOEMATRLen;

	// Extra data.
	CK_ULONG ulExtData;
}AUX_INIT_TOKEN_PRIVATE;
typedef AUX_INIT_TOKEN_PRIVATE CK_PTR AUX_INIT_TOKEN_PRIVATE_PTR;

// Low level initialize the token
typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_InitTokenPrivate)
(	
	CK_SLOT_ID					slotID,		// ID of the token's slot
	AUX_INIT_TOKEN_PRIVATE_PTR	pInitParam
);

// set the token name (label) 
// rule: 
// 1. if (pPin == NULL or ulPinLen == 0), user must have login
// 2. userType != CKU_SO && userType != CKU_USER, user must have login
typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_SetTokenLabel)
(	
	CK_SLOT_ID		slotID,		// ID of the token's slot
	CK_USER_TYPE	userType,	// the user type
	CK_CHAR_PTR		pPin,		// the user pin
	CK_ULONG		ulPinLen,	// length in bytes of the PIN
	CK_CHAR_PTR		pLabel		// 32-byte token label (blank padded)
);

// get the containers associated with the slot
// this function can return output in a variable-length buffer
typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_GetContainerList)
(
	CK_SLOT_ID		slotID,			// ID of the token's slot
	CK_CHAR_PTR		mszContainers,	// multi-string that list the containers associated with the slot
	CK_ULONG_PTR	pulSize			// sizeof mszContainers by CHAR	
);
// create a new container with the specific name
typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_NewContainer)
(
	CK_SLOT_ID		slotID,			// ID of the token's slot
	CK_CHAR_PTR		mszContainer	// multi-string that list the containers associated with the slot
);

// delete a container with the specific name
typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_DeleteContainer)
(
	CK_SLOT_ID		slotID,			// ID of the token's slot
	CK_CHAR_PTR		mszContainer	// multi-string that list the containers associated with the slot
);

struct AUX_PIN_INFO
{
	CK_BYTE bSOPinMaxRetries;
	CK_BYTE bSOPinCurCounter;
	CK_BYTE bUserPinMaxRetries;
	CK_BYTE bUserPinCurCounter;
	CK_FLAGS pinflags;
};
typedef AUX_PIN_INFO CK_PTR AUX_PIN_INFO_PTR;

typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_GetPinInfo)
(
	CK_SLOT_ID			slotID,			// (IN) ID of the token's slot
	AUX_PIN_INFO_PTR	pPinInfo		// (OUT) pin info of this token
);

typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_GetTokenID)
(
	CK_SLOT_ID			slotID,			// (IN) ID of the token's slot
	CK_BYTE_PTR			pbTokenID,		// (OUT) such as ATR
	CK_ULONG_PTR		pulTokenIDLen,	// (IN, OUT) token id's length
	CK_BYTE_PTR			pbOriginalTokenID,	// (OUT) such as Original ATR
	CK_ULONG_PTR		pulOriginalIDLen	// (IN, OUT) Original token id's length
);

typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_DirectCmd)
(
	CK_SLOT_ID		slotID,			// (IN) ID of the token's slot
	CK_BYTE_PTR		pbCmdData,		// (IN) Command data to send to tsp
	CK_ULONG		ulCmdDataLen,	// (IN) Command data len
	CK_BYTE_PTR		pbRespData,		// (OUT) Response data to get
	CK_ULONG_PTR	pulRespDataLen	// (IN, OUT)Response data length
);

typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_SendExtCmd)
(
	CK_SLOT_ID		slotID,			// (IN) ID of the token's slot
	CK_ULONG		ulCmdType,		// (IN) Command type to send to tsp
	CK_BYTE_PTR		pbCmdData,		// (IN) Command data to send to tsp
	CK_ULONG		ulCmdDataLen,	// (IN) Command data len
	CK_BYTE_PTR		pbRespData,		// (OUT) Response data to get
	CK_ULONG_PTR	pulRespDataLen	// (IN, OUT)Response data length
);

//typedef
//CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_SetNotifyCallBack)
//(
//	EP_NotifyCallBack		pCallBackFunc	// (IN)	call back function
//);

#define EP_SEND_DIRECT_CMD			0 
#define EP_SEND_EXT_CMD				1
#define EP_SET_TOKEN_LABEL			2
#define EP_INIT_TOKEN_PRIVATE		3

#define EP_GET_CONTAINER_LIST		4
#define EP_NEW_CONTAINER			5
#define EP_DELETE_CONTAINER			6
#define EP_GET_PIN_INFO				7
#define EP_GET_TOKEN_ID				8

#define EP_SET_NOTIFY_CALL_BACK		9

#define EP_FUNC_MAX_COUNT			20


struct AUX_FUNC_LIST
{
	CK_VERSION				version;  /* Auxiliary Version */
	CK_ULONG				ulFuncCount;
	void*					pFunc[EP_FUNC_MAX_COUNT];
};

typedef AUX_FUNC_LIST CK_PTR AUX_FUNC_LIST_PTR;
typedef AUX_FUNC_LIST_PTR CK_PTR AUX_FUNC_LIST_PTR_PTR;

CK_DECLARE_FUNCTION(CK_RV, E_GetAuxFunctionList)
(
	AUX_FUNC_LIST_PTR_PTR pAuxFunc
);

typedef
CK_DECLARE_FUNCTION_POINTER(CK_RV, EP_GetAuxFunctionList)
(
	AUX_FUNC_LIST_PTR_PTR pAuxFunc
);


#ifdef __cplusplus
}
#endif

#endif // __AUXILIARY_H__

// EOF

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
婷婷国产在线综合| 91婷婷韩国欧美一区二区| 国产毛片精品国产一区二区三区| 国产xxx精品视频大全| 国产成人aaa| 欧美三电影在线| 国产精品人人做人人爽人人添| 亚洲图片欧美色图| 成人黄色网址在线观看| 日韩欧美区一区二| 亚洲一区二区三区国产| 国产成人在线观看免费网站| 欧美色爱综合网| 亚洲欧洲精品一区二区三区| 美女在线视频一区| 欧美日韩一区三区| 亚洲欧美一区二区三区国产精品 | 国产一区二区不卡老阿姨| 97精品国产露脸对白| 久久久精品天堂| 麻豆精品在线看| 欧美系列在线观看| 日韩毛片一二三区| 豆国产96在线|亚洲| 精品国精品国产| 日韩和欧美的一区| 精品视频色一区| 一个色综合av| 99视频超级精品| 国产色91在线| 激情综合网激情| 精品国产伦一区二区三区观看方式 | 久久aⅴ国产欧美74aaa| 欧美无人高清视频在线观看| 成人免费一区二区三区在线观看| 国产成人免费9x9x人网站视频| 91精品国产综合久久久久| 亚洲国产色一区| 精品欧美一区二区在线观看| 一区二区三区免费在线观看| 成人一区在线观看| 国产精品视频观看| 国产成人av电影在线| 久久久精品国产免费观看同学| 久久精品久久久精品美女| 91精品婷婷国产综合久久 | 99精品久久免费看蜜臀剧情介绍| 日本一区二区成人在线| 国产ts人妖一区二区| 国产欧美日韩另类视频免费观看| 国产suv精品一区二区883| 欧美国产日产图区| 不卡av免费在线观看| 一区在线观看视频| 欧洲视频一区二区| 日韩1区2区日韩1区2区| 欧美成人免费网站| 国产精品12区| 《视频一区视频二区| 色域天天综合网| 天天操天天色综合| 精品国精品国产| eeuss国产一区二区三区| 亚洲久草在线视频| 6080日韩午夜伦伦午夜伦| 久久99精品国产| 最新不卡av在线| 欧美老女人在线| 国产精品一区二区三区四区| 中文字幕在线不卡一区| 欧美日韩综合在线免费观看| 久久精品99国产精品日本| 亚洲国产经典视频| 欧美影院一区二区三区| 精品在线观看视频| √…a在线天堂一区| 欧美一三区三区四区免费在线看 | 国产午夜精品一区二区三区四区| 99麻豆久久久国产精品免费| 亚洲成av人影院| 久久久久97国产精华液好用吗| 99精品久久久久久| 日韩福利电影在线| 中文字幕一区二区三区在线观看 | 国产亚洲一区二区三区四区| 色8久久精品久久久久久蜜| 欧美aaaaaa午夜精品| 亚洲视频图片小说| 精品免费视频.| 91精彩视频在线观看| 国产精品白丝jk黑袜喷水| 亚洲成人黄色小说| 国产精品日韩精品欧美在线| 91精品国产综合久久婷婷香蕉| 风流少妇一区二区| 卡一卡二国产精品| 亚洲一区二区三区美女| 国产精品视频九色porn| 欧美成人精品高清在线播放 | 中文字幕制服丝袜成人av| 欧美一级片在线观看| 91高清在线观看| 成人免费不卡视频| 精品午夜久久福利影院| 亚洲成av人片| 一区二区三区欧美在线观看| 国产精品三级电影| 亚洲精品一区二区三区精华液| 欧美日韩精品是欧美日韩精品| 成人禁用看黄a在线| 国产一区二区三区四区五区美女| 日韩二区在线观看| 性做久久久久久| 亚洲一区二区三区四区在线| 亚洲欧洲精品一区二区精品久久久 | 亚洲国产美国国产综合一区二区| 国产精品进线69影院| 久久久91精品国产一区二区精品| 91精品一区二区三区在线观看| 欧美日韩一区在线观看| 欧美亚日韩国产aⅴ精品中极品| 99精品黄色片免费大全| 99久久伊人精品| jlzzjlzz亚洲女人18| av在线综合网| 91亚洲永久精品| 91论坛在线播放| 色婷婷av一区| 欧美亚洲日本一区| 欧美日韩一区久久| 在线电影一区二区三区| 欧美精品 日韩| 欧美一区二区高清| 日韩午夜在线观看| 久久久久久免费毛片精品| 国产欧美一区二区三区在线看蜜臀| 久久嫩草精品久久久精品| 久久久99精品免费观看不卡| 国产视频不卡一区| 亚洲欧美日韩综合aⅴ视频| 一区二区三区在线影院| 亚洲宅男天堂在线观看无病毒| 亚洲一级二级三级| 免费观看在线色综合| 久久97超碰国产精品超碰| 国产自产v一区二区三区c| 国产精品一色哟哟哟| 91在线视频观看| 欧美日韩一区国产| 精品国产凹凸成av人网站| 久久久精品tv| 亚洲精品欧美专区| 日产精品久久久久久久性色| 国模少妇一区二区三区| av不卡在线播放| 欧美美女一区二区三区| 欧美精品一区二区不卡| 亚洲精品免费在线观看| 日本aⅴ亚洲精品中文乱码| 国产精品自拍在线| 日本精品视频一区二区三区| 日韩一区二区三| 国产精品国产馆在线真实露脸| 亚洲国产精品欧美一二99| 国产久卡久卡久卡久卡视频精品| 色婷婷综合视频在线观看| 91精品国产综合久久久久久久久久 | 色婷婷狠狠综合| 欧美mv和日韩mv国产网站| 亚洲色图欧洲色图| 免费不卡在线观看| 色婷婷精品久久二区二区蜜臀av| 欧美mv和日韩mv的网站| 一个色综合网站| 国产一区二区0| 欧美高清视频不卡网| 中文字幕中文在线不卡住| 日韩av电影免费观看高清完整版| av在线综合网| 久久久久高清精品| 丝袜亚洲另类欧美| 91麻豆免费看片| 国产喷白浆一区二区三区| 男男gaygay亚洲| 欧美系列亚洲系列| 亚洲天堂网中文字| 懂色一区二区三区免费观看| 精品欧美乱码久久久久久 | 欧美日韩精品欧美日韩精品| 国产精品狼人久久影院观看方式| 激情综合色播五月| 在线播放视频一区| 一区二区三区**美女毛片| 不卡一区二区在线| 久久精品视频一区| 国内精品免费**视频| 欧美一区二区三区视频免费播放| 一区二区三区免费网站| 99热99精品| 国产精品久久久久久亚洲伦|