libnvme(2)

🌸 libnvme(2) β€” the API manual, bestie edition 🌸

okay so welcome to libnvme, the manual page you're reading is number 2 in section 2, and today's main character is a lil enum called enum nvme_id_ctrl_sanicap πŸ’… she's all about Indicates attributes for sanitize operations. That's it. That's her whole job. And honestly? Iconic.


✨ NAME ✨

enum nvme_id_ctrl_sanicap β€” bestie, this thing indicates attributes for sanitize operations. like, it's the vibe check for what your controller can actually do when you tell it to wipe stuff. 🧹✨


πŸ¦‹ SYNOPSIS πŸ¦‹

enum nvme_id_ctrl_sanicap {
    NVME_CTRL_SANICAP_CES ,
    NVME_CTRL_SANICAP_BES ,
    NVME_CTRL_SANICAP_OWS ,
    NVME_CTRL_SANICAP_NDI ,
    NVME_CTRL_SANICAP_NODMMAS

};

look at her. five constants. no notes. πŸŽ€


πŸ’– Constants πŸ’–

okay this is the part where we go one by one, no skipping, because every single one of these matters, fr fr.

  • NVME_CTRL_SANICAP_CES β€” Crypto Erase Support. if this is set, then the controller supports the Crypto Erase sanitize operation. slay πŸ’…
  • NVME_CTRL_SANICAP_BES β€” Block Erase Support. if this is set, then the controller supports the Block Erase sanitize operation. block by block, she's thorough 🧱
  • NVME_CTRL_SANICAP_OWS β€” Overwrite Support. if this is set, then the controller supports the Overwrite sanitize operation. just write right over it, no cap πŸ”₯
  • NVME_CTRL_SANICAP_NDI β€” No-Deallocate Inhibited. okay listen closely because this one's got layers: if it's set and the No-Deallocate Response Mode bit is set, then the controller deallocates after the sanitize operation even if the No-Deallocate After Sanitize bit is set in a Sanitize command. yes, that's a lot of conditions. yes, all of them count. she said "read me twice" 😭
  • NVME_CTRL_SANICAP_NODMMAS β€” No-Deallocate Modifies Media After Sanitize, mask to extract value. it's a mask, bestie. you mask it, you extract the value. that's the whole gig πŸ™ˆ

lowkey reminder: these are enum constants, so you don't call them, you check them. no arguments, no return values, no exit statuses, nothing spicy. just bits doing bit things 🫢

and that's the whole page!! every constant accounted for, nothing dropped, we ate and left no crumbs πŸ‘‘

this was enum nvme_id_ctrl_sanicap in libnvme, manual page section 2, from the libnvme API Manual, dated July 2026 β€” mwah, love you, go sanitize something responsibly πŸ’–πŸŒΈβœ¨

πŸ“¦ where this page comes from