#define SILC_ALL_PKCS ((SilcPKCSObject *)1)
/* Static list of PKCS for silc_pkcs_register_default(). */
-extern DLLAPI SilcPKCSObject silc_default_pkcs[];
+extern DLLAPI const SilcPKCSObject silc_default_pkcs[];
/* Default PKXS in the SILC protocol */
#define SILC_DEFAULT_PKCS "rsa"
SilcUInt32 data_len)
/* Prototypes */
-bool silc_pkcs_register(SilcPKCSObject *pkcs);
+bool silc_pkcs_register(const SilcPKCSObject *pkcs);
bool silc_pkcs_unregister(SilcPKCSObject *pkcs);
bool silc_pkcs_register_default(void);
bool silc_pkcs_alloc(const unsigned char *name, SilcPKCS *new_pkcs);
void silc_pkcs_free(SilcPKCS pkcs);
int silc_pkcs_is_supported(const unsigned char *name);
char *silc_pkcs_get_supported(void);
+int silc_pkcs_generate_key(SilcPKCS pkcs, SilcUInt32 bits_key_len,
+ SilcRng rng);
SilcUInt32 silc_pkcs_get_key_len(SilcPKCS self);
unsigned char *silc_pkcs_get_public_key(SilcPKCS pkcs, SilcUInt32 *len);
unsigned char *silc_pkcs_get_private_key(SilcPKCS pkcs, SilcUInt32 *len);