STRUCT PFRU_PAYLOAD_HDR(9)
β¨ struct pfru_payload_hdr(9) β¨
okay bestie, welcome to the Kernel API Manual β we're looking at struct pfru_payload_hdr today and honestly? it's giving backstage pass energy π
π NAME π
struct pfru_payload_hdr β the Capsule file payload header. yeah. that's it. that's the whole name. iconic of it tbh.
πΈ SYNOPSIS πΈ
here's the whole struct, copy-paste-able, no cap:
struct pfru_payload_hdr {
__u32 sig;
__u32 hdr_version;
__u32 hdr_size;
__u32 hw_ver;
__u32 rt_ver;
__u8 platform_id[16];
__u32 svn_ver;
};
lowkey love how platform_id is the only one with a size on it β it's the main character of this struct fr fr π
π¦ Members π¦
let's go field by field, bestie, no skipping, we don't do that here π
sigβ the signature of this capsule file. like a little autograph so you know whose capsule it is β¨hdr_versionβ the revision of this header structure. version check, but make it header-flavored πhdr_sizeβ the size of this header, and yes it includes theOemHeaderbytes. don't forget those or the math will not math πhw_verβ the supported firmware version. the hw one. we stan a version field that knows what it is π«Άrt_verβ version of the code injection image. the rt one. very "different field, different job" of it πplatform_idβ a platform specific GUID that says which platform this capsule image supports. 16 bytes of pure platform-identity realness π§
okay so real talk βsvn_vershows up in the struct up there in the SYNOPSIS, but this page doesn't give it a Members entry anywhere. so we're not gonna invent one, bestie. it exists, it's__u32, and that's all the page is willing to tell us π no cap, don't make stuff up.
β SEE ALSO β
go read these next, they're all connected, iykyk π«
- Kernel file
./include/uapi/linux/pfrut.h PFRU_IOC_SET_REV(9)PFRU_IOC_STAGE(9)PFRU_IOC_ACTIVATE(9)PFRU_IOC_STAGE_ACTIVATE(9)PFRU_IOC_QUERY_CAP(9)struct pfru_update_cap_info(9)struct pfru_com_buf_info(9)struct pfru_updated_result(9)struct pfrt_log_data_info(9)struct pfrt_log_info(9)PFRT_LOG_IOC_SET_INFO(9)PFRT_LOG_IOC_GET_INFO(9)PFRT_LOG_IOC_GET_DATA_INFO(9)
and that's the whole page, bestie, you ate that π
mwah β this one came from ./include/uapi/linux, dated October 2026, and it's filed under struct pfru_payload_hdr(9) in case you need to find it again. go forth and be iconic ππ¦
π¦ 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