1109998Smarkmtypedef int cl_engine_init(void); 2109998Smarkmtypedef int cl_mod_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, 3296465Sdelphij const BIGNUM *m, BN_CTX *cgx); 4109998Smarkmtypedef int cl_mod_exp_crt(BIGNUM *r, BIGNUM *a, const BIGNUM *p, 5296465Sdelphij const BIGNUM *q, const BIGNUM *dmp1, 6296465Sdelphij const BIGNUM *dmq1, const BIGNUM *iqmp, 7296465Sdelphij BN_CTX *ctx); 8109998Smarkmtypedef int cl_rsa_mod_exp(BIGNUM *r0, const BIGNUM *I, RSA *rsa); 9109998Smarkmtypedef int cl_rsa_pub_enc(int flen, const unsigned char *from, 10296465Sdelphij unsigned char *to, RSA *rsa, int padding); 11109998Smarkmtypedef int cl_rsa_pub_dec(int flen, const unsigned char *from, 12296465Sdelphij unsigned char *to, RSA *rsa, int padding); 13296465Sdelphijtypedef int cl_rsa_priv_enc(int flen, const unsigned char *from, 14296465Sdelphij unsigned char *to, RSA *rsa, int padding); 15296465Sdelphijtypedef int cl_rsa_priv_dec(int flen, const unsigned char *from, 16296465Sdelphij unsigned char *to, RSA *rsa, int padding); 17109998Smarkmtypedef int cl_rand_bytes(unsigned char *buf, int num); 18109998Smarkmtypedef DSA_SIG *cl_dsa_sign(const unsigned char *dgst, int dlen, DSA *dsa); 19109998Smarkmtypedef int cl_dsa_verify(const unsigned char *dgst, int dgst_len, 20296465Sdelphij DSA_SIG *sig, DSA *dsa); 21109998Smarkm 22109998Smarkmstatic const char *CLUSTER_LABS_LIB_NAME = "cluster_labs"; 23296465Sdelphijstatic const char *CLUSTER_LABS_F1 = "hw_engine_init"; 24296465Sdelphijstatic const char *CLUSTER_LABS_F2 = "hw_mod_exp"; 25296465Sdelphijstatic const char *CLUSTER_LABS_F3 = "hw_mod_exp_crt"; 26296465Sdelphijstatic const char *CLUSTER_LABS_F4 = "hw_rsa_mod_exp"; 27296465Sdelphijstatic const char *CLUSTER_LABS_F5 = "hw_rsa_priv_enc"; 28296465Sdelphijstatic const char *CLUSTER_LABS_F6 = "hw_rsa_priv_dec"; 29296465Sdelphijstatic const char *CLUSTER_LABS_F7 = "hw_rsa_pub_enc"; 30296465Sdelphijstatic const char *CLUSTER_LABS_F8 = "hw_rsa_pub_dec"; 31296465Sdelphijstatic const char *CLUSTER_LABS_F20 = "hw_rand_bytes"; 32296465Sdelphijstatic const char *CLUSTER_LABS_F30 = "hw_dsa_sign"; 33296465Sdelphijstatic const char *CLUSTER_LABS_F31 = "hw_dsa_verify"; 34