/* header auto-generated by pidl */ #ifndef _PIDL_HEADER_regf #define _PIDL_HEADER_regf #include #include "libcli/util/ntstatus.h" #ifndef _HEADER_regf #define _HEADER_regf #define REGF_OFFSET_NONE ( 0xffffffff ) struct regf_version { uint32_t major;/* [value] */ uint32_t minor; uint32_t release;/* [value(0)] */ uint32_t build;/* [value] */ }/* [noprint] */; struct regf_hdr { const char *REGF_ID;/* [charset(DOS)] */ uint32_t update_counter1; uint32_t update_counter2; NTTIME modtime; struct regf_version version; uint32_t data_offset; uint32_t last_block; uint32_t uk7;/* [value] */ const char *description;/* [charset(UTF16)] */ uint32_t padding[99]; uint32_t chksum; }/* [noprint,public] */; struct hbin_block { const char *HBIN_ID;/* [charset(DOS)] */ uint32_t offset_from_first; uint32_t offset_to_next; uint32_t unknown[2]; NTTIME last_change; uint32_t block_size; uint8_t *data; }/* [noprint,public] */; enum reg_key_type #ifndef USE_UINT_ENUMS { REG_ROOT_KEY=(int)(0x2C), REG_SUB_KEY=(int)(0x20), REG_SYM_LINK=(int)(0x10) } #else { __do_not_use_enum_reg_key_type=0x7FFFFFFF} #define REG_ROOT_KEY ( 0x2C ) #define REG_SUB_KEY ( 0x20 ) #define REG_SYM_LINK ( 0x10 ) #endif ; struct nk_block { const char *header;/* [charset(DOS)] */ enum reg_key_type type; NTTIME last_change; uint32_t uk1; uint32_t parent_offset; uint32_t num_subkeys; uint32_t uk2; uint32_t subkeys_offset; uint32_t unknown_offset; uint32_t num_values; uint32_t values_offset; uint32_t sk_offset; uint32_t clsname_offset; uint32_t unk3[5]; uint16_t name_length;/* [value(strlen(key_name))] */ uint16_t clsname_length; const char *key_name;/* [charset(DOS)] */ }/* [noprint,public] */; struct sk_block { const char *header;/* [charset(DOS)] */ uint16_t tag; uint32_t prev_offset; uint32_t next_offset; uint32_t ref_cnt; uint32_t rec_size; uint8_t *sec_desc; }/* [noprint,public] */; struct lh_hash { uint32_t nk_offset; uint32_t base37; }/* [noprint] */; struct lh_block { const char *header;/* [charset(DOS)] */ uint16_t key_count; struct lh_hash *hr; }/* [noprint,public] */; struct li_block { const char *header;/* [charset(DOS)] */ uint16_t key_count; uint32_t *nk_offset; }/* [noprint,public] */; struct ri_block { const char *header;/* [charset(DOS)] */ uint16_t key_count; uint32_t *offset; }/* [noprint,public] */; struct vk_block { const char *header;/* [charset(DOS)] */ uint16_t name_length;/* [value(strlen(data_name))] */ uint32_t data_length; uint32_t data_offset; uint32_t data_type; uint16_t flag; uint16_t unk1; const char *data_name;/* [charset(DOS)] */ }/* [noprint,public] */; struct hash_record { uint32_t nk_offset; const char *hash;/* [charset(DOS)] */ }/* [noprint] */; struct lf_block { const char *header;/* [charset(DOS)] */ uint16_t key_count; struct hash_record *hr; }/* [noprint,public] */; #endif /* _HEADER_regf */ #endif /* _PIDL_HEADER_regf */