Crate tdcall

Source
Expand description

Common TDCALL handling for issuing tdcalls and functionality using tdcalls.

Structs§

TdcallInput
Input to a tdcall. This is not defined in the TDX specification, but a contract between callers of this module and this module’s handling of tdcalls.
TdcallOutput
Output from a tdcall. This is not defined in the TDX specification, but a contract between callers of this module and this module’s handling of tdcalls.
TdgPageAttrRdResult
The result returned from tdcall_page_attr_rd.

Enums§

AcceptPagesAttributes
The page attributes to accept pages with.
AcceptPagesError
The error returned by accept_pages.

Traits§

Tdcall
Trait to perform tdcalls used by this module.

Functions§

accept_pages
Accept pages from range using tdcall_accept_pages.
set_page_attributes
Set page attributes from range using tdcall_page_attr_wr.
tdcall_accept_pages
Issue a TDG.MEM.PAGE.ACCEPT call.
tdcall_io_in
Perform a tdcall based io port read.
tdcall_io_out
Perform a tdcall based io port write.
tdcall_map_gpa
Issue a map gpa call to change page visibility for accepted pages via a TDG.VP.VMCALL.
tdcall_page_attr_rd
Issue a TDG.MEM.PAGE.ATTR.RD call.
tdcall_page_attr_wr
Issue a TDG.MEM.PAGE.ATTR.WR call.
tdcall_rdmsr
Perform a tdcall based MSR read. This is done by issuing a TDG.VP.VMCALL.
tdcall_vp_invgla
Issue a TDG.VP.INVGLA call.
tdcall_vp_rd
Issue a TDG.VP.RD call.
tdcall_vp_wr
Issue a TDG.VP.WR call.
tdcall_wrmsr
Perform a tdcall based MSR write. This is done by issuing a TDG.VP.VMCALL.