| 25 | } |
| 26 | |
| 27 | void hmac(const void *src, size_t slen, |
| 28 | const void *key, size_t klen, |
| 29 | struct hmac *hmac) |
| 30 | { |
| 31 | crypto_auth_hmacsha256_state state; |
| 32 | |
| 33 | hmac_start(&state, key, klen); |
| 34 | hmac_update(&state, src, slen); |
| 35 | hmac_done(&state, hmac); |
| 36 | } |
| 37 | |
| 38 | void subkey_from_hmac(const char *prefix, |
| 39 | const struct secret *base, |
no test coverage detected