KCAPI_AKCIPHER_VERIF(3)

✨ kcapi_akcipher_verify_aio ✨

okay bestie, welcome to the libkcapi corner of the Programming Interface section β€” this is kcapi_akcipher_verify_aio(3), and she's here to verify data (asynchronous one shot). no cap. 🫢


🌸 SYNOPSIS 🌸

ssize_t kcapi_akcipher_verify_aio(struct kcapi_handle * handle,
                                  struct iovec * iniov,
                                  struct iovec * outiov, size_t iovlen,
                                  int access);

that's the whole vibe. one shot, async, no takebacks πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • handle β€” [in] your cipher handle, the main character of this whole operation πŸ‘‘
  • iniov β€” [in] the head of the scatter-gather list array holding the plaintext πŸ“
  • outiov β€” [out] the head of the scatter-gather list of the destination buffers that get filled with ciphertext ✨
  • iovlen β€” [in] how many scatter-gather list entries there are, like literally the count πŸ“‹
  • access β€” [in] the kernel access type, and you have three choices bestie:
    • KCAPI_ACCESS_HEURISTIC β€” use the internal heuristic for the fastest kernel access πŸƒβ€β™€οΈ
    • KCAPI_ACCESS_VMSPLICE β€” use vmsplice access πŸŽ€
    • KCAPI_ACCESS_SENDMSG β€” sendmsg access πŸ’Œ

πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the tea: the individual scatter-gather list entries are processed with separate invocations of the given cipher. one at a time, each their own moment. periodt. πŸ”₯

now the memory? it should be aligned at the page boundary using posix_memalign(sysconf(_SC_PAGESIZE)). if it is not aligned at the page boundary, the vmsplice call may not send all data to the kernel 😭 β€” that's a real one, not a drill.

and the return value, because we love a good exit story: number of bytes verify upon success; a negative errno-style error code if an error occurred. slay when it works, errno when it doesn't πŸ’€


πŸ’œ AUTHOR πŸ’œ

  • Stephan Mueller <smueller@chronox.de> β€” Author. iconic behavior, honestly πŸ‘‘

libkcapi Manual 1.5.0 · July 2025 🧚


and that's the whole page bestie, no notes, ate and left no crumbs πŸ’…βœ¨ β€” this was kcapi_akcipher_verify_aio(3) from the Programming Interface crew, libkcapi Manual 1.5.0, dated July 2025. go verify something cute πŸŽ€πŸ«Ά

πŸ“¦ where this page comes from