static int ibm_4758_cca_finish(ENGINE *e) { free_CCA4758_LIB_NAME(); if(!dso) { CCA4758err(CCA4758_F_IBM_4758_CCA_FINISH, CCA4758_R_NOT_LOADED); return 0; } if(!DSO_free(dso)) { CCA4758err(CCA4758_F_IBM_4758_CCA_FINISH, CCA4758_R_UNIT_FAILURE); return 0; } dso = NULL; #ifndef OPENSSL_NO_RSA keyRecordRead = (F_KEYRECORDREAD)0; randomNumberGenerate = (F_RANDOMNUMBERGENERATE)0; digitalSignatureGenerate = (F_DIGITALSIGNATUREGENERATE)0; digitalSignatureVerify = (F_DIGITALSIGNATUREVERIFY)0; publicKeyExtract = (F_PUBLICKEYEXTRACT)0; pkaEncrypt = (F_PKAENCRYPT)0; pkaDecrypt = (F_PKADECRYPT)0; #endif randomNumberGenerate = (F_RANDOMNUMBERGENERATE)0; return 1; }
static int ibm_4758_cca_destroy(ENGINE *e) { ERR_unload_CCA4758_strings(); free_CCA4758_LIB_NAME(); return 1; }
static long set_CCA4758_LIB_NAME(const char *name) { free_CCA4758_LIB_NAME(); return (((CCA4758_LIB_NAME = BUF_strdup(name)) != NULL) ? 1 : 0); }