STRUCT SEV_DATA_PDH_CERT_EXPORT(9)
π struct sev_data_pdh_cert_export(9) π
okay bestie, so this is a page from the Kernel API Manual, and it's all about one little struct: struct sev_data_pdh_cert_export. It's giving "backstage pass to the PDH_CERT_EXPORT command" energy, and honestly? iconic. Let's get into it π«Ά
β¨ NAME β¨
struct sev_data_pdh_cert_export β the parameters for the PDH_CERT_EXPORT command. that's the whole vibe, no cap.
π¦ SYNOPSIS π¦
here's the struct in all her main-character glory, copied exactly so you know I'm not playing with you:
struct sev_data_pdh_cert_export {
u64 pdh_cert_address;
u32 pdh_cert_len;
u32 reserved;
u64 cert_chain_address;
u32 cert_chain_len;
};
likeβ¦ look at her. five fields. lowkey flawless π
π Members π
okay so the manual only spells out two of the fields, and I'm not about to make stuff up about the rest (that's not the vibe, fr fr). so:
cert_chain_addressβ the PDH certificate chain. yes bestie, the address of it. that's what the page says, and I'm just the messenger π§cert_chain_lenβ the length of the PDH certificate chain. the manual literally says "len of PDH certificate chain," so we're keeping it cute and keeping it exact β¨
the other fields (pdh_cert_address,pdh_cert_len,reserved) are chillin' up in the struct too β they're right there in the synopsis, no erasure happening. the page just doesn't give them their own little blurbs. iykyk π
π SEE ALSO π
bestie this list is long, it's giving full group chat, everyone's invited, nobody's left on read. first up, the source file:
- Kernel file
./include/linux/psp-sev.h
and now the whole squad, all the structs:
struct sev_data_init(9)struct sev_data_init_ex(9)struct sev_data_pek_csr(9)struct sev_data_download_firmware(9)struct sev_data_get_id(9)struct sev_data_decommission(9)struct sev_data_activate(9)struct sev_data_deactivate(9)struct sev_data_guest_status(9)struct sev_data_launch_start(9)struct sev_data_launch_update_data(9)struct sev_data_launch_update_vmsa(9)struct sev_data_launch_measure(9)struct sev_data_launch_secret(9)struct sev_data_launch_finish(9)struct sev_data_send_start(9)struct sev_data_send_finish(9)struct sev_data_send_cancel(9)struct sev_data_receive_start(9)struct sev_data_receive_update_data(9)struct sev_data_receive_update_vmsa(9)struct sev_data_receive_finish(9)struct sev_data_dbg(9)struct sev_data_attestation_report(9)struct sev_data_snp_download_firmware(9)struct sev_data_snp_activate(9)struct sev_data_snp_addr(9)struct sev_data_snp_launch_start(9)struct sev_data_snp_launch_update(9)struct sev_data_snp_launch_finish(9)struct sev_data_snp_guest_status(9)struct sev_data_snp_page_reclaim(9)struct sev_data_snp_page_unsmash(9)struct sev_data_snp_dbg(9)struct sev_data_snp_guest_request(9)struct sev_data_snp_init_ex(9)struct sev_data_range(9)struct sev_data_range_list(9)struct sev_data_snp_shutdown_ex(9)struct sev_platform_init_args(9)struct sev_data_snp_commit(9)struct sev_data_snp_feature_info(9)struct sev_data_snp_verify_mitigation(9)struct sev_data_snp_verify_mitigation_dst(9)struct sev_snp_tcb_version_genoa_milan(9)struct sev_snp_tcb_version_turin(9)
and the functions, because they'd be so pressed if we forgot them π
sev_module_init(9)sev_platform_init(9)sev_platform_status(9)sev_issue_cmd_external_user(9)sev_guest_deactivate(9)sev_guest_activate(9)sev_guest_df_flush(9)sev_guest_decommission(9)sev_do_cmd(9)
and that's the whole page, bestie. no crumbs left behind, every single reference made the cut π
this lil masterpiece lives over in ./include/linux, and the source/version + date line says October 2026 β so yeah, she's dated, she's filed, she's done. mwah π
π¦ 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