summaryrefslogtreecommitdiff
path: root/usr/lib/pkcs11/cca_stdll/cca_specific.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/lib/pkcs11/cca_stdll/cca_specific.c')
-rw-r--r--usr/lib/pkcs11/cca_stdll/cca_specific.c289
1 files changed, 248 insertions, 41 deletions
diff --git a/usr/lib/pkcs11/cca_stdll/cca_specific.c b/usr/lib/pkcs11/cca_stdll/cca_specific.c
index 750eed5..671ab16 100644
--- a/usr/lib/pkcs11/cca_stdll/cca_specific.c
+++ b/usr/lib/pkcs11/cca_stdll/cca_specific.c
@@ -32,6 +32,7 @@
#include "csulincl.h"
#include "ec_defs.h"
#include "trace.h"
+#include "cca_func.h"
CK_CHAR manuf[] = "IBM Corp.";
CK_CHAR model[] = "IBM CCA Token";
@@ -40,6 +41,100 @@ CK_CHAR label[] = "IBM PKCS#11 for CCA";
#define CCASHAREDLIB "libcsulcca.so"
+static CSNBCKI_t dll_CSNBCKI;
+static CSNBCKM_t dll_CSNBCKM;
+static CSNBDKX_t dll_CSNBDKX;
+static CSNBDKM_t dll_CSNBDKM;
+static CSNBMKP_t dll_CSNBMKP;
+static CSNBKEX_t dll_CSNBKEX;
+static CSNBKGN_t dll_CSNBKGN;
+static CSNBKGN2_t dll_CSNBKGN2;
+static CSNBKIM_t dll_CSNBKIM;
+static CSNBKPI_t dll_CSNBKPI;
+static CSNBKPI2_t dll_CSNBKPI2;
+static CSNBKSI_t dll_CSNBKSI;
+static CSNBKRC_t dll_CSNBKRC;
+static CSNBAKRC_t dll_CSNBAKRC;
+static CSNBKRD_t dll_CSNBKRD;
+static CSNBKRL_t dll_CSNBKRL;
+static CSNBKRR_t dll_CSNBKRR;
+static CSNBKRW_t dll_CSNBKRW;
+static CSNDKRC_t dll_CSNDKRC;
+static CSNDKRD_t dll_CSNDKRD;
+static CSNDKRL_t dll_CSNDKRL;
+static CSNDKRR_t dll_CSNDKRR;
+static CSNDKRW_t dll_CSNDKRW;
+static CSNBKYT_t dll_CSNBKYT;
+static CSNBKYTX_t dll_CSNBKYTX;
+static CSNBKTC_t dll_CSNBKTC;
+static CSNBKTR_t dll_CSNBKTR;
+static CSNBRNG_t dll_CSNBRNG;
+static CSNBSAE_t dll_CSNBSAE;
+static CSNBSAD_t dll_CSNBSAD;
+static CSNBDEC_t dll_CSNBDEC;
+static CSNBENC_t dll_CSNBENC;
+static CSNBMGN_t dll_CSNBMGN;
+static CSNBMVR_t dll_CSNBMVR;
+static CSNBKTB_t dll_CSNBKTB;
+static CSNBKTB2_t dll_CSNBKTB2;
+static CSNDPKG_t dll_CSNDPKG;
+static CSNDPKB_t dll_CSNDPKB;
+static CSNBOWH_t dll_CSNBOWH;
+static CSNDPKI_t dll_CSNDPKI;
+static CSNDDSG_t dll_CSNDDSG;
+static CSNDDSV_t dll_CSNDDSV;
+static CSNDKTC_t dll_CSNDKTC;
+static CSNDPKX_t dll_CSNDPKX;
+static CSNDSYI_t dll_CSNDSYI;
+static CSNDSYX_t dll_CSNDSYX;
+static CSUACFQ_t dll_CSUACFQ;
+static CSUACFC_t dll_CSUACFC;
+static CSNDSBC_t dll_CSNDSBC;
+static CSNDSBD_t dll_CSNDSBD;
+static CSUALCT_t dll_CSUALCT;
+static CSUAACM_t dll_CSUAACM;
+static CSUAACI_t dll_CSUAACI;
+static CSNDPKH_t dll_CSNDPKH;
+static CSNDPKR_t dll_CSNDPKR;
+static CSUAMKD_t dll_CSUAMKD;
+static CSNDRKD_t dll_CSNDRKD;
+static CSNDRKL_t dll_CSNDRKL;
+static CSNDSYG_t dll_CSNDSYG;
+static CSNBPTR_t dll_CSNBPTR;
+static CSNBCPE_t dll_CSNBCPE;
+static CSNBCPA_t dll_CSNBCPA;
+static CSNBPGN_t dll_CSNBPGN;
+static CSNBPVR_t dll_CSNBPVR;
+static CSNBDKG_t dll_CSNBDKG;
+static CSNBEPG_t dll_CSNBEPG;
+static CSNBCVE_t dll_CSNBCVE;
+static CSNBCSG_t dll_CSNBCSG;
+static CSNBCSV_t dll_CSNBCSV;
+static CSNBCVG_t dll_CSNBCVG;
+static CSNBKTP_t dll_CSNBKTP;
+static CSNDPKE_t dll_CSNDPKE;
+static CSNDPKD_t dll_CSNDPKD;
+static CSNBPEX_t dll_CSNBPEX;
+static CSNBPEXX_t dll_CSNBPEXX;
+static CSUARNT_t dll_CSUARNT;
+static CSNBCVT_t dll_CSNBCVT;
+static CSNBMDG_t dll_CSNBMDG;
+static CSUACRA_t dll_CSUACRA;
+static CSUACRD_t dll_CSUACRD;
+static CSNBTRV_t dll_CSNBTRV;
+static CSNBSKY_t dll_CSNBSKY;
+static CSNBSPN_t dll_CSNBSPN;
+static CSNBPCU_t dll_CSNBPCU;
+static CSUAPCV_t dll_CSUAPCV;
+static CSUAPRB_t dll_CSUAPRB;
+static CSUADHK_t dll_CSUADHK;
+static CSUADHQ_t dll_CSUADHQ;
+static CSNDTBC_t dll_CSNDTBC;
+static CSNDRKX_t dll_CSNDRKX;
+static CSNBKET_t dll_CSNBKET;
+static CSNBHMG_t dll_CSNBHMG;
+static CSNBHMV_t dll_CSNBHMV;
+
/* mechanisms provided by this token */
MECH_LIST_ELEMENT mech_list[] = {
{CKM_DES_KEY_GEN, {8, 8, CKF_HW|CKF_GENERATE}},
@@ -101,7 +196,7 @@ token_specific_rng(CK_BYTE *output, CK_ULONG bytes)
memcpy(form, "RANDOM ", (size_t)CCA_KEYWORD_SIZE);
while (bytes_so_far < bytes) {
- CSNBRNG(&return_code,
+ dll_CSNBRNG(&return_code,
&reason_code,
NULL,
NULL,
@@ -128,12 +223,122 @@ token_specific_rng(CK_BYTE *output, CK_ULONG bytes)
return CKR_OK;
}
+CK_RV cca_resolve_lib_sym(void *hdl) {
+ char *error = NULL;
+
+ dlerror(); /* Clear existing error */
+
+ dll_CSNBCKI = (CSNBCKI_t)dlsym(hdl, "CSNBCKI");
+ dll_CSNBCKM = (CSNBCKM_t)dlsym(hdl, "CSNBCKM");
+ dll_CSNBDKX = (CSNBDKX_t)dlsym(hdl, "CSNBDKX");
+ dll_CSNBDKM = (CSNBDKM_t)dlsym(hdl, "CSNBDKM");
+ dll_CSNBMKP = (CSNBMKP_t)dlsym(hdl, "CSNBMKP");
+ dll_CSNBKEX = (CSNBKEX_t)dlsym(hdl, "CSNBKEX");
+ dll_CSNBKGN = (CSNBKGN_t)dlsym(hdl, "CSNBKGN");
+ dll_CSNBKGN2 = (CSNBKGN2_t)dlsym(hdl, "CSNBKGN2");
+ dll_CSNBKIM = (CSNBKIM_t)dlsym(hdl, "CSNBKIM");
+ dll_CSNBKPI = (CSNBKPI_t)dlsym(hdl, "CSNBKPI");
+ dll_CSNBKPI2 = (CSNBKPI2_t)dlsym(hdl, "CSNBKPI2");
+ dll_CSNBKSI = (CSNBKSI_t)dlsym(hdl, "CSNBKSI");
+ dll_CSNBKRC = (CSNBKRC_t)dlsym(hdl, "CSNBKRC");
+ dll_CSNBAKRC = (CSNBAKRC_t)dlsym(hdl, "CSNBAKRC");
+ dll_CSNBKRD = (CSNBKRD_t)dlsym(hdl, "CSNBKRD");
+ dll_CSNBKRL = (CSNBKRL_t)dlsym(hdl, "CSNBKRL");
+ dll_CSNBKRR = (CSNBKRR_t)dlsym(hdl, "CSNBKRR");
+ dll_CSNBKRW = (CSNBKRW_t)dlsym(hdl, "CSNBKRW");
+ dll_CSNDKRC = (CSNDKRC_t)dlsym(hdl, "CSNDKRC");
+ dll_CSNDKRD = (CSNDKRD_t)dlsym(hdl, "CSNDKRD");
+ dll_CSNDKRL = (CSNDKRL_t)dlsym(hdl, "CSNDKRL");
+ dll_CSNDKRR = (CSNDKRR_t)dlsym(hdl, "CSNDKRR");
+ dll_CSNDKRW = (CSNDKRW_t)dlsym(hdl, "CSNDKRW");
+ dll_CSNBKYT = (CSNBKYT_t)dlsym(hdl, "CSNBKYT");
+ dll_CSNBKYTX = (CSNBKYTX_t)dlsym(hdl, "CSNBKYTX");
+ dll_CSNBKTC = (CSNBKTC_t)dlsym(hdl, "CSNBKTC");
+ dll_CSNBKTR = (CSNBKTR_t)dlsym(hdl, "CSNBKTR");
+ dll_CSNBRNG = (CSNBRNG_t)dlsym(hdl, "CSNBRNG");
+ dll_CSNBSAE = (CSNBSAE_t)dlsym(hdl, "CSNBSAE");
+ dll_CSNBSAD = (CSNBSAD_t)dlsym(hdl, "CSNBSAD");
+ dll_CSNBDEC = (CSNBDEC_t)dlsym(hdl, "CSNBDEC");
+ dll_CSNBENC = (CSNBENC_t)dlsym(hdl, "CSNBENC");
+ dll_CSNBMGN = (CSNBMGN_t)dlsym(hdl, "CSNBMGN");
+ dll_CSNBMVR = (CSNBMVR_t)dlsym(hdl, "CSNBMVR");
+ dll_CSNBKTB = (CSNBKTB_t)dlsym(hdl, "CSNBKTB");
+ dll_CSNBKTB2 = (CSNBKTB2_t)dlsym(hdl, "CSNBKTB2");
+ dll_CSNDPKG = (CSNDPKG_t)dlsym(hdl, "CSNDPKG");
+ dll_CSNDPKB = (CSNDPKB_t)dlsym(hdl, "CSNDPKB");
+ dll_CSNBOWH = (CSNBOWH_t)dlsym(hdl, "CSNBOWH");
+ dll_CSNDPKI = (CSNDPKI_t)dlsym(hdl, "CSNDPKI");
+ dll_CSNDDSG = (CSNDDSG_t)dlsym(hdl, "CSNDDSG");
+ dll_CSNDDSV = (CSNDDSV_t)dlsym(hdl, "CSNDDSV");
+ dll_CSNDKTC = (CSNDKTC_t)dlsym(hdl, "CSNDKTC");
+ dll_CSNDPKX = (CSNDPKX_t)dlsym(hdl, "CSNDPKX");
+ dll_CSNDSYI = (CSNDSYI_t)dlsym(hdl, "CSNDSYI");
+ dll_CSNDSYX = (CSNDSYX_t)dlsym(hdl, "CSNDSYX");
+ dll_CSUACFQ = (CSUACFQ_t)dlsym(hdl, "CSUACFQ");
+ dll_CSUACFC = (CSUACFC_t)dlsym(hdl, "CSUACFC");
+ dll_CSNDSBC = (CSNDSBC_t)dlsym(hdl, "CSNDSBC");
+ dll_CSNDSBD = (CSNDSBD_t)dlsym(hdl, "CSNDSBD");
+ dll_CSUALCT = (CSUALCT_t)dlsym(hdl, "CSUALCT");
+ dll_CSUAACM = (CSUAACM_t)dlsym(hdl, "CSUAACM");
+ dll_CSUAACI = (CSUAACI_t)dlsym(hdl, "CSUAACI");
+ dll_CSNDPKH = (CSNDPKH_t)dlsym(hdl, "CSNDPKH");
+ dll_CSNDPKR = (CSNDPKR_t)dlsym(hdl, "CSNDPKR");
+ dll_CSUAMKD = (CSUAMKD_t)dlsym(hdl, "CSUAMKD");
+ dll_CSNDRKD = (CSNDRKD_t)dlsym(hdl, "CSNDRKD");
+ dll_CSNDRKL = (CSNDRKL_t)dlsym(hdl, "CSNDRKL");
+ dll_CSNDSYG = (CSNDSYG_t)dlsym(hdl, "CSNDSYG");
+ dll_CSNBPTR = (CSNBPTR_t)dlsym(hdl, "CSNBPTR");
+ dll_CSNBCPE = (CSNBCPE_t)dlsym(hdl, "CSNBCPE");
+ dll_CSNBCPA = (CSNBCPA_t)dlsym(hdl, "CSNBCPA");
+ dll_CSNBPGN = (CSNBPGN_t)dlsym(hdl, "CSNBPGN");
+ dll_CSNBPVR = (CSNBPVR_t)dlsym(hdl, "CSNBPVR");
+ dll_CSNBDKG = (CSNBDKG_t)dlsym(hdl, "CSNBDKG");
+ dll_CSNBEPG = (CSNBEPG_t)dlsym(hdl, "CSNBEPG");
+ dll_CSNBCVE = (CSNBCVE_t)dlsym(hdl, "CSNBCVE");
+ dll_CSNBCSG = (CSNBCSG_t)dlsym(hdl, "CSNBCSG");
+ dll_CSNBCSV = (CSNBCSV_t)dlsym(hdl, "CSNBCSV");
+ dll_CSNBCVG = (CSNBCVG_t)dlsym(hdl, "CSNBCVG");
+ dll_CSNBKTP = (CSNBKTP_t)dlsym(hdl, "CSNBKTP");
+ dll_CSNDPKE = (CSNDPKE_t)dlsym(hdl, "CSNDPKE");
+ dll_CSNDPKD = (CSNDPKD_t)dlsym(hdl, "CSNDPKD");
+ dll_CSNBPEX = (CSNBPEX_t)dlsym(hdl, "CSNBPEX");
+ dll_CSNBPEXX = (CSNBPEXX_t)dlsym(hdl, "CSNBPEXX");
+ dll_CSUARNT = (CSUARNT_t)dlsym(hdl, "CSUARNT");
+ dll_CSNBCVT = (CSNBCVT_t)dlsym(hdl, "CSNBCVT");
+ dll_CSNBMDG = (CSNBMDG_t)dlsym(hdl, "CSNBMDG");
+ dll_CSUACRA = (CSUACRA_t)dlsym(hdl, "CSUACRA");
+ dll_CSUACRD = (CSUACRD_t)dlsym(hdl, "CSUACRD");
+ dll_CSNBTRV = (CSNBTRV_t)dlsym(hdl, "CSNBTRV");
+ dll_CSNBSKY = (CSNBSKY_t)dlsym(hdl, "CSNBSKY");
+ dll_CSNBSPN = (CSNBSPN_t)dlsym(hdl, "CSNBSPN");
+ dll_CSNBPCU = (CSNBPCU_t)dlsym(hdl, "CSNBPCU");
+ dll_CSUAPCV = (CSUAPCV_t)dlsym(hdl, "CSUAPCV");
+ dll_CSUAPRB = (CSUAPRB_t)dlsym(hdl, "CSUAPRB");
+ dll_CSUADHK = (CSUADHK_t)dlsym(hdl, "CSUADHK");
+ dll_CSUADHQ = (CSUADHQ_t)dlsym(hdl, "CSUADHQ");
+ dll_CSNDTBC = (CSNDTBC_t)dlsym(hdl, "CSNDTBC");
+ dll_CSNDRKX = (CSNDRKX_t)dlsym(hdl, "CSNDRKX");
+ dll_CSNBKET = (CSNBKET_t)dlsym(hdl, "CSNBKET");
+ dll_CSNBHMG = (CSNBHMG_t)dlsym(hdl, "CSNBHMG");
+ dll_CSNBHMV = (CSNBHMV_t)dlsym(hdl, "CSNBHMV");
+
+ if ((error = dlerror()) != NULL) {
+ OCK_SYSLOG(LOG_ERR, "%s\n", error);
+ exit(EXIT_FAILURE);
+ }
+ else
+ return CKR_OK;
+}
+
CK_RV
token_specific_init(CK_SLOT_ID SlotNumber, char *conf_name)
{
unsigned char rule_array[256] = { 0, };
long return_code, reason_code, rule_array_count, verb_data_length;
void *lib_csulcca;
+ CK_RV rc;
+
+ TRACE_INFO("cca %s slot=%lu running\n", __func__, SlotNumber);
lib_csulcca = dlopen(CCASHAREDLIB, RTLD_GLOBAL | RTLD_NOW);
if (lib_csulcca == NULL) {
@@ -144,11 +349,15 @@ token_specific_init(CK_SLOT_ID SlotNumber, char *conf_name)
return CKR_FUNCTION_FAILED;
}
+ rc = cca_resolve_lib_sym(lib_csulcca);
+ if (rc)
+ exit(rc);
+
memcpy(rule_array, "STATCCAE", 8);
rule_array_count = 1;
verb_data_length = 0;
- CSUACFQ(&return_code,
+ dll_CSUACFQ(&return_code,
&reason_code,
NULL,
NULL,
@@ -177,6 +386,7 @@ token_specific_init(CK_SLOT_ID SlotNumber, char *conf_name)
CK_RV
token_specific_final()
{
+ TRACE_INFO("cca %s running\n", __func__);
return CKR_OK;
}
@@ -223,7 +433,7 @@ CK_RV cca_key_gen(enum cca_key_type type, CK_BYTE *key, unsigned char *key_form,
return CKR_FUNCTION_FAILED;
}
- CSNBKGN(&return_code,
+ dll_CSNBKGN(&return_code,
&reason_code,
NULL,
NULL,
@@ -242,9 +452,6 @@ CK_RV cca_key_gen(enum cca_key_type type, CK_BYTE *key, unsigned char *key_form,
return CKR_FUNCTION_FAILED;
}
-// memcpy(key, generated_key_identifier_1, (size_t)CCA_KEY_ID_SIZE);
-
-
return CKR_OK;
}
@@ -322,7 +529,7 @@ token_specific_des_cbc(CK_BYTE *in_data,
memcpy(rule_array, "CBC ", (size_t)CCA_KEYWORD_SIZE);
if (encrypt) {
- CSNBENC(&return_code,
+ dll_CSNBENC(&return_code,
&reason_code,
NULL,
NULL,
@@ -336,7 +543,7 @@ token_specific_des_cbc(CK_BYTE *in_data,
chaining_vector,
local_out);//out_data); //out);
} else {
- CSNBDEC(&return_code,
+ dll_CSNBDEC(&return_code,
&reason_code,
NULL,
NULL,
@@ -650,7 +857,7 @@ token_specific_rsa_generate_keypair(TEMPLATE *publ_tmpl,
key_token_length = CCA_KEY_TOKEN_SIZE;
- CSNDPKB(&return_code,
+ dll_CSNDPKB(&return_code,
&reason_code,
NULL,
NULL,
@@ -687,7 +894,7 @@ token_specific_rsa_generate_keypair(TEMPLATE *publ_tmpl,
regeneration_data_length = 0;
- CSNDPKG(&return_code,
+ dll_CSNDPKG(&return_code,
&reason_code,
NULL,
NULL,
@@ -752,7 +959,7 @@ token_specific_rsa_encrypt(CK_BYTE *in_data,
data_structure_length = 0;
- CSNDPKE(&return_code,
+ dll_CSNDPKE(&return_code,
&reason_code,
NULL,
NULL,
@@ -806,7 +1013,7 @@ token_specific_rsa_decrypt(CK_BYTE *in_data,
data_structure_length = 0;
- CSNDPKD(&return_code,
+ dll_CSNDPKD(&return_code,
&reason_code,
NULL,
NULL,
@@ -854,7 +1061,7 @@ token_specific_rsa_sign(CK_BYTE * in_data,
rule_array_count = 1;
memcpy(rule_array, "PKCS-1.1", CCA_KEYWORD_SIZE);
- CSNDDSG(&return_code,
+ dll_CSNDDSG(&return_code,
&reason_code,
NULL,
NULL,
@@ -900,7 +1107,7 @@ token_specific_rsa_verify(CK_BYTE * in_data,
rule_array_count = 1;
memcpy(rule_array, "PKCS-1.1", CCA_KEYWORD_SIZE);
- CSNDDSV(&return_code,
+ dll_CSNDDSV(&return_code,
&reason_code,
NULL,
NULL,
@@ -976,7 +1183,7 @@ token_specific_aes_key_gen(CK_BYTE *aes_key, CK_ULONG len, CK_ULONG key_size)
}
#endif
rule_array_count = 4;
- CSNBKTB(&return_code,
+ dll_CSNBKTB(&return_code,
&reason_code,
&exit_data_len,
exit_data,
@@ -1035,7 +1242,7 @@ token_specific_aes_ecb(CK_BYTE *in_data,
rule_array_count*(size_t)CCA_KEYWORD_SIZE);
if (encrypt) {
- CSNBSAE(&return_code,
+ dll_CSNBSAE(&return_code,
&reason_code,
&exit_data_len,
exit_data,
@@ -1057,7 +1264,7 @@ token_specific_aes_ecb(CK_BYTE *in_data,
&opt_data_len,
NULL);
} else {
- CSNBSAD(&return_code,
+ dll_CSNBSAD(&return_code,
&reason_code,
&exit_data_len,
exit_data,
@@ -1148,7 +1355,7 @@ token_specific_aes_cbc(CK_BYTE *in_data,
length = in_data_len;
key_len = 64;
if (encrypt) {
- CSNBSAE(&return_code,
+ dll_CSNBSAE(&return_code,
&reason_code,
&exit_data_len,
exit_data,
@@ -1170,7 +1377,7 @@ token_specific_aes_cbc(CK_BYTE *in_data,
&opt_data_len,
NULL);
} else {
- CSNBSAD(&return_code,
+ dll_CSNBSAD(&return_code,
&reason_code,
&exit_data_len,
exit_data,
@@ -1484,7 +1691,7 @@ token_specific_ec_generate_keypair(TEMPLATE *publ_tmpl,
key_token_length = CCA_KEY_TOKEN_SIZE;
- CSNDPKB(&return_code,
+ dll_CSNDPKB(&return_code,
&reason_code,
&exit_data_len,
exit_data,
@@ -1521,7 +1728,7 @@ token_specific_ec_generate_keypair(TEMPLATE *publ_tmpl,
regeneration_data_length = 0;
- CSNDPKG(&return_code,
+ dll_CSNDPKG(&return_code,
&reason_code,
NULL,
NULL,
@@ -1577,7 +1784,7 @@ token_specific_ec_sign(CK_BYTE * in_data,
rule_array_count = 1;
memcpy(rule_array, "ECDSA ", CCA_KEYWORD_SIZE);
- CSNDDSG(&return_code,
+ dll_CSNDDSG(&return_code,
&reason_code,
NULL,
NULL,
@@ -1624,7 +1831,7 @@ token_specific_ec_verify(CK_BYTE * in_data,
rule_array_count = 1;
memcpy(rule_array, "ECDSA ", CCA_KEYWORD_SIZE);
- CSNDDSV(&return_code,
+ dll_CSNDDSV(&return_code,
&reason_code,
NULL,
NULL,
@@ -1729,7 +1936,7 @@ CK_RV token_specific_sha(DIGEST_CONTEXT *ctx, CK_BYTE *in_data,
}
- CSNBOWH(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBOWH(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &in_data_len, in_data, &cca_ctx->chain_vector_len,
cca_ctx->chain_vector, &cca_ctx->hash_len, cca_ctx->hash);
@@ -1876,7 +2083,7 @@ send:
break;
}
- CSNBOWH(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBOWH(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, use_buffer ? &buffer_len : (long *)&in_data_len,
use_buffer ? buffer : in_data, &cca_ctx->chain_vector_len,
cca_ctx->chain_vector, &cca_ctx->hash_len, cca_ctx->hash);
@@ -1968,7 +2175,7 @@ CK_RV token_specific_sha_final(DIGEST_CONTEXT *ctx, CK_BYTE *out_data,
cca_ctx->tail ? cca_ctx->tail : dummy_buf,
cca_ctx->chain_vector_len, cca_ctx->hash_len);
- CSNBOWH(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBOWH(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &cca_ctx->tail_len,
cca_ctx->tail ? cca_ctx->tail : dummy_buf,
&cca_ctx->chain_vector_len, cca_ctx->chain_vector,
@@ -2113,7 +2320,7 @@ CK_RV ccatok_hmac(SIGN_VERIFY_CONTEXT *ctx, CK_BYTE *in_data,
TRACE_INFO("The mac length is %ld\n", cca_ctx->hash_len);
if (sign) {
- CSNBHMG(&return_code, &reason_code, NULL, NULL,
+ dll_CSNBHMG(&return_code, &reason_code, NULL, NULL,
&rule_array_count, rule_array, &attr->ulValueLen,
attr->pValue, &in_data_len, in_data,
&cca_ctx->chain_vector_len, cca_ctx->chain_vector,
@@ -2134,7 +2341,7 @@ CK_RV ccatok_hmac(SIGN_VERIFY_CONTEXT *ctx, CK_BYTE *in_data,
memcpy(signature, cca_ctx->hash, cca_ctx->hash_len);
*sig_len = cca_ctx->hash_len;
} else { // verify
- CSNBHMV(&return_code, &reason_code, NULL, NULL,
+ dll_CSNBHMV(&return_code, &reason_code, NULL, NULL,
&rule_array_count, rule_array, &attr->ulValueLen,
attr->pValue, &in_data_len, in_data,
&cca_ctx->chain_vector_len, cca_ctx->chain_vector,
@@ -2317,7 +2524,7 @@ send:
TRACE_INFO("CSNBHMG: key length is %lu\n", attr->ulValueLen);
if (sign) {
- CSNBHMG(&return_code, &reason_code, NULL, NULL,
+ dll_CSNBHMG(&return_code, &reason_code, NULL, NULL,
&rule_array_count, rule_array, &attr->ulValueLen,
attr->pValue,
use_buffer ? &buffer_len : (long *)&in_data_len,
@@ -2332,7 +2539,7 @@ send:
rc = CKR_FUNCTION_FAILED;
}
} else { // verify
- CSNBHMV(&return_code, &reason_code, NULL, NULL,
+ dll_CSNBHMV(&return_code, &reason_code, NULL, NULL,
&rule_array_count, rule_array, &attr->ulValueLen,
attr->pValue,
use_buffer ? &buffer_len : (long *)&in_data_len,
@@ -2425,7 +2632,7 @@ CK_RV ccatok_hmac_final(SIGN_VERIFY_CONTEXT *ctx, CK_BYTE *signature,
TRACE_INFO("The mac length is %ld\n", cca_ctx->hash_len);
if (sign) {
- CSNBHMG(&return_code, &reason_code, NULL, NULL,
+ dll_CSNBHMG(&return_code, &reason_code, NULL, NULL,
&rule_array_count, rule_array, &attr->ulValueLen,
attr->pValue, &cca_ctx->tail_len, cca_ctx->tail,
&cca_ctx->chain_vector_len, cca_ctx->chain_vector,
@@ -2446,7 +2653,7 @@ CK_RV ccatok_hmac_final(SIGN_VERIFY_CONTEXT *ctx, CK_BYTE *signature,
*sig_len = cca_ctx->hash_len;
} else { // verify
- CSNBHMV(&return_code, &reason_code, NULL, NULL,
+ dll_CSNBHMV(&return_code, &reason_code, NULL, NULL,
&rule_array_count,rule_array, &attr->ulValueLen,
attr->pValue, &cca_ctx->tail_len, cca_ctx->tail,
&cca_ctx->chain_vector_len, cca_ctx->chain_vector,
@@ -2641,7 +2848,7 @@ static CK_RV rsa_import_privkey_crt(TEMPLATE *priv_tmpl)
key_token_length = CCA_KEY_TOKEN_SIZE;
- CSNDPKB(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNDPKB(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &key_value_structure_length, key_value_structure,
&private_key_name_length, private_key_name, 0, NULL, 0, NULL,
0, NULL, 0, NULL, 0, NULL, &key_token_length, key_token);
@@ -2661,7 +2868,7 @@ static CK_RV rsa_import_privkey_crt(TEMPLATE *priv_tmpl)
key_token_length = CCA_KEY_TOKEN_SIZE;
- CSNDPKI(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNDPKI(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &key_token_length, key_token,
transport_key_identifier, &target_key_token_length,
target_key_token);
@@ -2772,7 +2979,7 @@ static CK_RV rsa_import_pubkey(TEMPLATE *publ_tmpl)
// Create a key token for the public key.
// Public keys do not need to be wrapped, so just call PKB.
- CSNDPKB(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNDPKB(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &key_value_structure_length, key_value_structure,
&private_key_name_length, private_key_name, 0, NULL, 0,
NULL, 0, NULL, 0, NULL, 0, NULL, &key_token_length, key_token);
@@ -2829,7 +3036,7 @@ static CK_RV import_symmetric_key(OBJECT *object, CK_ULONG keytype)
rule_array_count = 1;
- CSNBCKM(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBCKM(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &attr->ulValueLen, attr->pValue, target_key_id);
if (return_code != CCA_SUCCESS) {
@@ -2888,7 +3095,7 @@ static CK_RV import_generic_secret_key(OBJECT *object)
5 * CCA_KEYWORD_SIZE);
rule_array_count = 5;
- CSNBKTB2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBKTB2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &clr_key_len, NULL, &key_name_len, NULL,
&user_data_len, NULL, &token_data_len, NULL, &verb_data_len,
NULL, &key_token_len, key_token);
@@ -2904,7 +3111,7 @@ static CK_RV import_generic_secret_key(OBJECT *object)
key_part_len = keylen * 8;
key_token_len = sizeof(key_token);
- CSNBKPI2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBKPI2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &key_part_len, attr->pValue, &key_token_len,
key_token);
if (return_code != CCA_SUCCESS) {
@@ -2919,7 +3126,7 @@ static CK_RV import_generic_secret_key(OBJECT *object)
key_part_len = 0;
key_token_len = sizeof(key_token);
- CSNBKPI2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBKPI2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &key_part_len, NULL, &key_token_len, key_token);
if (return_code != CCA_SUCCESS) {
TRACE_ERROR("CSNBKPI2 (HMAC KEY IMPORT COMPLETE) failed."
@@ -3067,7 +3274,7 @@ CK_RV token_specific_generic_secret_key_gen (TEMPLATE *template)
memcpy(rule_array, "INTERNALHMAC MAC GENERATE",
4 * CCA_KEYWORD_SIZE);
- CSNBKTB2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
+ dll_CSNBKTB2(&return_code, &reason_code, NULL, NULL, &rule_array_count,
rule_array, &clear_key_length, NULL, &key_name_length,
NULL, &user_data_length, NULL, &zero_length, NULL,
&zero_length, NULL, &key_token_length, key_token);
@@ -3100,7 +3307,7 @@ CK_RV token_specific_generic_secret_key_gen (TEMPLATE *template)
*/
memcpy(key_type2, " ", CCA_KEYWORD_SIZE);
- CSNBKGN2(&return_code, &reason_code, &zero_length, NULL,
+ dll_CSNBKGN2(&return_code, &reason_code, &zero_length, NULL,
&rule_array_count, rule_array, &clear_key_length, key_type1,
key_type2, &key_name_length, NULL, &key_name_length, NULL,
&user_data_length, NULL, &user_data_length, NULL, &zero_length,