X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=blobdiff_plain;f=lib%2Fsilccrypt%2Fsilchmac.h;h=532c1b68d162127ec2f8c8e623c0f51a9e72787c;hp=7e70974cfd94d8e022aff672f29d3dc3a210e4ec;hb=fb8dbc2d9cd7ff5d197654f873ac18aa6ef9c5e3;hpb=e51f4e881515d5e6d69596c4b8fc5235159b3d56 diff --git a/lib/silccrypt/silchmac.h b/lib/silccrypt/silchmac.h index 7e70974c..532c1b68 100644 --- a/lib/silccrypt/silchmac.h +++ b/lib/silccrypt/silchmac.h @@ -74,13 +74,21 @@ struct SilcHmacStruct { uint32 key_len; }; +/* Marks for all hmacs. This can be used in silc_hmac_unregister + to unregister all hmacs at once. */ +#define SILC_ALL_HMACS ((SilcHmacObject *)1) + +/* Default hmacs for silc_hmac_register_default(). */ +extern SilcHmacObject silc_default_hmacs[]; + /* Prototypes */ -int silc_hmac_register(SilcHmacObject *hmac); -int silc_hmac_unregister(SilcHmacObject *hmac); -int silc_hmac_alloc(char *name, SilcHash hash, SilcHmac *new_hmac); +bool silc_hmac_register(SilcHmacObject *hmac); +bool silc_hmac_unregister(SilcHmacObject *hmac); +bool silc_hmac_register_default(void); +bool silc_hmac_alloc(char *name, SilcHash hash, SilcHmac *new_hmac); void silc_hmac_free(SilcHmac hmac); -int silc_hmac_is_supported(const char *name); -char *silc_hmac_get_supported(); +bool silc_hmac_is_supported(const char *name); +char *silc_hmac_get_supported(void); uint32 silc_hmac_len(SilcHmac hmac); void silc_hmac_set_key(SilcHmac hmac, const unsigned char *key, uint32 key_len);