⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defs.h

📁 IBM的Linux上的PKCS#11实现
💻 H
📖 第 1 页 / 共 2 页
字号:
#define LEEDS_PRG_ID_PKCS_11   "PKCS11"enum {   DUMMYFUNCTION = 99999,   FCVFUNCTION = 99998,   C_INITIALIZE = 1,   C_FINALIZE,   C_GETINFO,   C_GETFUNCTIONLIST,   C_GETSLOTLIST,   C_GETSLOTINFO,   C_GETTOKENINFO,   C_WAITFORSLOTEVENT,   C_GETMECHANISMLIST,   C_GETMECHANISMINFO,   C_INITTOKEN,   C_INITPIN,   C_SETPIN,   C_OPENSESSION,   C_CLOSESESSION,   C_CLOSEALLSESSIONS,   C_GETSESSIONINFO,   C_GETOPERATIONSTATE,   C_SETOPERATIONSTATE,   C_LOGIN,   C_LOGOUT,   C_CREATEOBJECT,   C_COPYOBJECT,   C_DESTROYOBJECT,   C_GETOBJECTSIZE,   C_GETATTRIBUTEVALUE,   C_SETATTRIBUTEVALUE,   C_FINDOBJECTSINIT,   C_FINDOBJECTS,   C_FINDOBJECTSFINAL,   C_ENCRYPTINIT,   C_ENCRYPT,   C_ENCRYPTUPDATE,   C_ENCRYPTFINAL,   C_DECRYPTINIT,   C_DECRYPT,   C_DECRYPTUPDATE,   C_DECRYPTFINAL,   C_DIGESTINIT,   C_DIGEST,   C_DIGESTUPDATE,   C_DIGESTKEY,   C_DIGESTFINAL,   C_SIGNINIT,   C_SIGN,   C_SIGNUPDATE,   C_SIGNFINAL,   C_SIGNRECOVERINIT,   C_SIGNRECOVER,   C_VERIFYINIT,   C_VERIFY,   C_VERIFYUPDATE,   C_VERIFYFINAL,   C_VERIFYRECOVERINIT,   C_VERIFYRECOVER,   C_DIGESTENCRYPTUPDATE,   C_DECRYPTDIGESTUPDATE,   C_SIGNENCRYPTUPDATE,   C_DECRYPTVERIFYUPDATE,   C_GENERATEKEY,   C_GENERATEKEYPAIR,   C_WRAPKEY,   C_UNWRAPKEY,   C_DERIVEKEY,   C_SEEDRANDOM,   C_GENERATERANDOM,   C_GETFUNCTIONSTATUS,   C_CANCELFUNCTION};//typedef struct _LEEDS_PACKET//{//   CK_ULONG    cmd_id;//   CK_ULONG    pid;//   CK_RV       rc;//   CK_ULONG    data_len;//   CK_BYTE     data[4096];//} LEEDS_PACKET;#ifdef PKCS64typedef struct _LEEDS_REQUEST{   CK_ULONG_32    pid;   CK_ULONG_32    req_len;      // size of request data   CK_ULONG_32    repl_max[4];   // any command-specific request data gets appended here   //} LEEDS_REQUEST;typedef struct _LEEDS_REPLY{#ifdef PKCS64   CK_ULONG_32     rc;#else   CK_RV     rc;#endif   CK_ULONG_32  repl_len[4];   // size of data   // any command-specific reply data gets appended here   //} LEEDS_REPLY;// this is the format of attributes that get passed between 4758 and host//// this is different from the CK_ATTRIBUTE format defined by Cryptoki.// CK_ATTRIBUTE uses a pointer to the data field but we need a flat// structure to pass between the coprocessor and host DLL.  Further, we// need the length field to precede the data.//typedef struct _ATTRIBUTE{   CK_ATTRIBUTE_TYPE_32    type;   CK_ULONG_32             value_length;   // the value data is appended here   //} ATTRIBUTE;typedef struct _DL_NODE{   struct _DL_NODE   *next;   struct _DL_NODE   *prev;   void              *data;} DL_NODE;// this is a flattened version of the CK_SSL3_RANDOM_DATA//typedef struct _SSL3_RANDOM_DATA{   CK_ULONG_32    client_data_len;   CK_ULONG_32    server_data_len;   // client data is appended here   // server data is appended here   //} SSL3_RANDOM_DATA;////typedef struct _SSL3_MASTER_KEY_DERIVE_PARAMS{   CK_VERSION  version;   CK_ULONG_32    client_data_len;   CK_ULONG_32    server_data_len;   // client data is appended here   // server data is appended here   //} SSL3_MASTER_KEY_DERIVE_PARAMS;////typedef struct _SSL3_KEY_MAT_OUT{   CK_OBJECT_HANDLE_32  client_mac_secret;   CK_OBJECT_HANDLE_32  server_mac_secret;   CK_OBJECT_HANDLE_32  client_key;   CK_OBJECT_HANDLE_32  server_key;   CK_ULONG_32          iv_len; // in bytes   // client IV is appended here   // server IV is appended here   //} SSL3_KEY_MAT_OUT;////typedef struct _SSL3_KEY_MAT_PARAMS{   CK_ULONG_32 mac_size_bits;   CK_ULONG_32 key_size_bits;   CK_ULONG_32 iv_size_bits;   CK_BBOOL export;   CK_ULONG_32 client_data_len;   CK_ULONG_32 server_data_len;   // client data is appended here   // server data is appended here   //} SSL3_KEY_MAT_PARAMS;// SAB XXX 64Bittypedef struct _VERSION{  CK_BYTE  major;  CK_BYTE  minor;} VERSION;#else // !PKCS11// WJH Original struct definitions ...typedef struct _LEEDS_REQUEST{   CK_ULONG    pid;   CK_ULONG    req_len;      // size of request data   CK_ULONG    repl_max[4];   // any command-specific request data gets appended here   //} LEEDS_REQUEST;typedef struct _LEEDS_REPLY{   CK_RV     rc;   CK_ULONG  repl_len[4];   // size of data   // any command-specific reply data gets appended here   //} LEEDS_REPLY;// this is the format of attributes that get passed between 4758 and host//// this is different from the CK_ATTRIBUTE format defined by Cryptoki.// CK_ATTRIBUTE uses a pointer to the data field but we need a flat// structure to pass between the coprocessor and host DLL.  Further, we// need the length field to precede the data.//typedef struct _ATTRIBUTE{   CK_ATTRIBUTE_TYPE    type;   CK_ULONG             value_length;   // the value data is appended here   //} ATTRIBUTE;typedef struct _DL_NODE{   struct _DL_NODE   *next;   struct _DL_NODE   *prev;   void              *data;} DL_NODE;// this is a flattened version of the CK_SSL3_RANDOM_DATA//typedef struct _SSL3_RANDOM_DATA{   CK_ULONG    client_data_len;   CK_ULONG    server_data_len;   // client data is appended here   // server data is appended here   //} SSL3_RANDOM_DATA;////typedef struct _SSL3_MASTER_KEY_DERIVE_PARAMS{   CK_VERSION  version;   CK_ULONG    client_data_len;   CK_ULONG    server_data_len;   // client data is appended here   // server data is appended here   //} SSL3_MASTER_KEY_DERIVE_PARAMS;////typedef struct _SSL3_KEY_MAT_OUT{   CK_OBJECT_HANDLE  client_mac_secret;   CK_OBJECT_HANDLE  server_mac_secret;   CK_OBJECT_HANDLE  client_key;   CK_OBJECT_HANDLE  server_key;   CK_ULONG          iv_len; // in bytes   // client IV is appended here   // server IV is appended here   //} SSL3_KEY_MAT_OUT;////typedef struct _SSL3_KEY_MAT_PARAMS{   CK_ULONG mac_size_bits;   CK_ULONG key_size_bits;   CK_ULONG iv_size_bits;   CK_BBOOL export;   CK_ULONG client_data_len;   CK_ULONG server_data_len;   // client data is appended here   // server data is appended here   //} SSL3_KEY_MAT_PARAMS;#endif // PKCS11#if (LEEDS_BUILD)#ifdef AIX#pragma options align=full#endif#ifdef LINUX#pragma pack( )#pragma options align=full#endif#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -