Added SILC Thread Queue API
[silc.git] / lib / silccrypt / silcpkcs1_i.h
index ac74848f86002bcc070450235ecdba359bf01ffc..8f3cfe01e3d1d402bbe705f21512ffd580f41446 100644 (file)
 #ifndef SILCPKCS1_I_H
 #define SILCPKCS1_I_H
 
-SilcBool silc_pkcs1_generate_key(const struct SilcPKCSAlgorithmStruct *pkcs,
-                                SilcUInt32 keylen,
-                                SilcRng rng,
-                                void **ret_public_key,
-                                void **ret_private_key);
-int silc_pkcs1_import_public_key(const struct SilcPKCSAlgorithmStruct *pkcs,
-                                void *key,
-                                SilcUInt32 key_len,
-                                void **ret_public_key);
-unsigned char *
-silc_pkcs1_export_public_key(const struct SilcPKCSAlgorithmStruct *pkcs,
-                            SilcStack stack,
-                            void *public_key,
-                            SilcUInt32 *ret_len);
-SilcUInt32
-silc_pkcs1_public_key_bitlen(const struct SilcPKCSAlgorithmStruct *pkcs,
-                            void *public_key);
-void *silc_pkcs1_public_key_copy(const struct SilcPKCSAlgorithmStruct *pkcs,
-                                void *public_key);
-SilcBool
-silc_pkcs1_public_key_compare(const struct SilcPKCSAlgorithmStruct *pkcs,
-                             void *key1, void *key2);
-void silc_pkcs1_public_key_free(const struct SilcPKCSAlgorithmStruct *pkcs,
-                               void *public_key);
-int silc_pkcs1_import_private_key(const struct SilcPKCSAlgorithmStruct *pkcs,
-                                 void *key,
-                                 SilcUInt32 key_len,
-                                 void **ret_private_key);
-unsigned char *
-silc_pkcs1_export_private_key(const struct SilcPKCSAlgorithmStruct *pkcs,
-                             SilcStack stack,
-                             void *private_key,
-                             SilcUInt32 *ret_len);
-SilcUInt32
-silc_pkcs1_private_key_bitlen(const struct SilcPKCSAlgorithmStruct *pkcs,
-                             void *private_key);
-void silc_pkcs1_private_key_free(const struct SilcPKCSAlgorithmStruct *pkcs,
-                                void *private_key);
-SilcAsyncOperation
-silc_pkcs1_encrypt(const struct SilcPKCSAlgorithmStruct *pkcs,
-                  void *public_key,
-                  unsigned char *src,
-                  SilcUInt32 src_len,
-                  SilcRng rng,
-                  SilcPKCSEncryptCb encrypt_cb,
-                  void *context);
-SilcAsyncOperation
-silc_pkcs1_decrypt(const struct SilcPKCSAlgorithmStruct *pkcs,
-                  void *private_key,
-                  unsigned char *src,
-                  SilcUInt32 src_len,
-                  SilcPKCSDecryptCb decrypt_cb,
-                  void *context);
-SilcAsyncOperation silc_pkcs1_sign(const struct SilcPKCSAlgorithmStruct *pkcs,
-                                  void *private_key,
-                                  unsigned char *src,
-                                  SilcUInt32 src_len,
-                                  SilcBool compute_hash,
-                                  SilcHash hash,
-                                  SilcPKCSSignCb sign_cb,
-                                  void *context);
-SilcAsyncOperation silc_pkcs1_verify(const struct SilcPKCSAlgorithmStruct *pkcs,
-                                    void *public_key,
-                                    unsigned char *signature,
-                                    SilcUInt32 signature_len,
-                                    unsigned char *data,
-                                    SilcUInt32 data_len,
-                                    SilcHash hash,
-                                    SilcPKCSVerifyCb verify_cb,
-                                    void *context);
-SilcAsyncOperation
-silc_pkcs1_sign_no_oid(const struct SilcPKCSAlgorithmStruct *pkcs,
-                      void *private_key,
-                      unsigned char *src,
-                      SilcUInt32 src_len,
-                      SilcBool compute_hash,
-                      SilcHash hash,
-                      SilcPKCSSignCb sign_cb,
-                      void *context);
-SilcAsyncOperation
-silc_pkcs1_verify_no_oid(const struct SilcPKCSAlgorithmStruct *pkcs,
-                        void *public_key,
-                        unsigned char *signature,
-                        SilcUInt32 signature_len,
-                        unsigned char *data,
-                        SilcUInt32 data_len,
-                        SilcHash hash,
-                        SilcPKCSVerifyCb verify_cb,
-                        void *context);
+SILC_PKCS_ALG_GENERATE_KEY(silc_pkcs1_generate_key);
+SILC_PKCS_ALG_IMPORT_PUBLIC_KEY(silc_pkcs1_import_public_key);
+SILC_PKCS_ALG_EXPORT_PUBLIC_KEY(silc_pkcs1_export_public_key);
+SILC_PKCS_ALG_PUBLIC_KEY_BITLEN(silc_pkcs1_public_key_bitlen);
+SILC_PKCS_ALG_PUBLIC_KEY_COPY(silc_pkcs1_public_key_copy);
+SILC_PKCS_ALG_PUBLIC_KEY_COMPARE(silc_pkcs1_public_key_compare);
+SILC_PKCS_ALG_PUBLIC_KEY_FREE(silc_pkcs1_public_key_free);
+SILC_PKCS_ALG_IMPORT_PRIVATE_KEY(silc_pkcs1_import_private_key);
+SILC_PKCS_ALG_EXPORT_PRIVATE_KEY(silc_pkcs1_export_private_key);
+SILC_PKCS_ALG_PRIVATE_KEY_BITLEN(silc_pkcs1_private_key_bitlen);
+SILC_PKCS_ALG_PRIVATE_KEY_FREE(silc_pkcs1_private_key_free);
+SILC_PKCS_ALG_ENCRYPT(silc_pkcs1_encrypt);
+SILC_PKCS_ALG_DECRYPT(silc_pkcs1_decrypt);
+SILC_PKCS_ALG_SIGN(silc_pkcs1_sign);
+SILC_PKCS_ALG_VERIFY(silc_pkcs1_verify);
+SILC_PKCS_ALG_SIGN(silc_pkcs1_sign_no_oid);
+SILC_PKCS_ALG_VERIFY(silc_pkcs1_verify_no_oid);
 
 #endif /* SILCPKCS1_I_H */