void crypto_module_register(struct CryptModuleSpecs *specs)
Register a new crypto module.
#define STAILQ_ENTRY(type)
void * mutt_mem_calloc(size_t nmemb, size_t size)
Allocate zeroed memory on the heap.
void crypto_module_free(void)
Clean up the crypto modules.
#define STAILQ_REMOVE(head, elm, type, field)
static struct CryptModuleList CryptModules
STAILQ_HEAD(CryptModuleList, CryptModule)
#define STAILQ_FOREACH(var, head, field)
#define STAILQ_INSERT_HEAD(head, elm, field)
struct CryptModuleSpecs * crypto_module_lookup(int identifier)
Lookup a crypto module by name.
struct CryptModuleSpecs * specs
Crypto module definition.
#define STAILQ_FOREACH_SAFE(var, head, field, tvar)
#define STAILQ_HEAD_INITIALIZER(head)
int identifier
Identifying bit.