Lines Matching refs:hkey
1617 static inline void atmel_sha_hmac_key_init(struct atmel_sha_hmac_key *hkey) in atmel_sha_hmac_key_init() argument
1619 memset(hkey, 0, sizeof(*hkey)); in atmel_sha_hmac_key_init()
1622 static inline void atmel_sha_hmac_key_release(struct atmel_sha_hmac_key *hkey) in atmel_sha_hmac_key_release() argument
1624 kfree(hkey->keydup); in atmel_sha_hmac_key_release()
1625 memset(hkey, 0, sizeof(*hkey)); in atmel_sha_hmac_key_release()
1628 static inline int atmel_sha_hmac_key_set(struct atmel_sha_hmac_key *hkey, in atmel_sha_hmac_key_set() argument
1632 atmel_sha_hmac_key_release(hkey); in atmel_sha_hmac_key_set()
1634 if (keylen > sizeof(hkey->buffer)) { in atmel_sha_hmac_key_set()
1635 hkey->keydup = kmemdup(key, keylen, GFP_KERNEL); in atmel_sha_hmac_key_set()
1636 if (!hkey->keydup) in atmel_sha_hmac_key_set()
1640 memcpy(hkey->buffer, key, keylen); in atmel_sha_hmac_key_set()
1643 hkey->valid = true; in atmel_sha_hmac_key_set()
1644 hkey->keylen = keylen; in atmel_sha_hmac_key_set()
1648 static inline bool atmel_sha_hmac_key_get(const struct atmel_sha_hmac_key *hkey, in atmel_sha_hmac_key_get() argument
1652 if (!hkey->valid) in atmel_sha_hmac_key_get()
1655 *keylen = hkey->keylen; in atmel_sha_hmac_key_get()
1656 *key = (hkey->keydup) ? hkey->keydup : hkey->buffer; in atmel_sha_hmac_key_get()
1664 struct atmel_sha_hmac_key hkey; member
1727 if (likely(!atmel_sha_hmac_key_get(&hmac->hkey, &key, &keylen))) in atmel_sha_hmac_setup()
1810 atmel_sha_hmac_key_release(&hmac->hkey); in atmel_sha_hmac_setup_done()
1855 return atmel_sha_hmac_key_set(&hmac->hkey, key, keylen); in atmel_sha_hmac_setkey()
2004 atmel_sha_hmac_key_init(&hmac->hkey); in atmel_sha_hmac_cra_init()
2013 atmel_sha_hmac_key_release(&hmac->hkey); in atmel_sha_hmac_cra_exit()