ASYNCHRONOUS HASH REQUEST HANDLE(9)
β¨ Asynchronous Hash Request Handle(9) β¨
hi bestie!! welcome to the Kernel API Manual π«Ά this one is short and sweet but it's honestly such an important little guy, so let's get into it π
πΈ NAME πΈ
ahash_request β the Asynchronous Hash Request Handle, aka the little data structure that holds literally everything your async hash op needs π
π DESCRIPTION π
okay so picture this: the ahash_request data structure contains all the pointers to data required for the asynchronous cipher operation. like, all of them. it's giving "I brought everything to the group project" energy π
what's actually in there:
- the cipher handle β and here's the slay part, it can be used by multiple
ahash_requestinstances at the same time, no cap π₯ - a pointer to the plaintext
- the message digest output buffer
- the asynchronous callback function
- etc. (yes the manpage literally says etc., we love a vague queen π)
and the way it works is basically this: it acts as a handle to the ahash_request_* API calls, in a similar way as the ahash handle acts as a handle to the crypto_ahash_* API calls. it's the same vibe, just one level down β main character energy for the request layer π«
π¦ SEE ALSO π¦
so many friends omg. go read these, iykyk π
the file itself:
- Kernel file
./include/crypto/hash.h
the structs & big-picture pages:
- Message Digest Algorithm Definitions(9)
struct ahash_alg(9)struct shash_alg(9)- Asynchronous Message Digest API(9)
the async family (the crypto_ahash_* girlies):
crypto_alloc_ahash(9)crypto_free_ahash(9)crypto_has_ahash(9)crypto_ahash_blocksize(9)crypto_ahash_digestsize(9)crypto_ahash_statesize(9)crypto_ahash_reqtfm(9)crypto_ahash_reqsize(9)crypto_ahash_setkey(9)crypto_ahash_finup(9)crypto_ahash_final(9)crypto_ahash_digest(9)crypto_ahash_export(9)crypto_ahash_import(9)crypto_ahash_init(9)crypto_ahash_update(9)
the request family (the ahash_request_* besties β this is our girl's home turf π):
ahash_request_set_tfm(9)ahash_request_alloc(9)ahash_request_free(9)ahash_request_set_callback(9)ahash_request_set_crypt(9)ahash_request_set_virt(9)
the synchronous side (because the sync girlies deserve love too π):
- Synchronous Message Digest API(9)
crypto_alloc_shash(9)crypto_free_shash(9)crypto_shash_blocksize(9)crypto_shash_digestsize(9)crypto_shash_descsize(9)crypto_shash_setkey(9)crypto_shash_digest(9)crypto_shash_tfm_digest(9)crypto_shash_export(9)crypto_shash_import(9)crypto_shash_init(9)crypto_shash_finup(9)crypto_shash_update(9)crypto_shash_final(9)
that's the whole page bestie, short and iconic πβ¨
mwah π this one lives in ./include/crypto and the version vibes are giving October 2026 β go touch some hashes, ily π§π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms