summaryrefslogtreecommitdiff
path: root/source4/lib/registry/regf.idl
diff options
context:
space:
mode:
Diffstat (limited to 'source4/lib/registry/regf.idl')
-rw-r--r--source4/lib/registry/regf.idl22
1 files changed, 12 insertions, 10 deletions
diff --git a/source4/lib/registry/regf.idl b/source4/lib/registry/regf.idl
index 8bef15c79e..03f63debc8 100644
--- a/source4/lib/registry/regf.idl
+++ b/source4/lib/registry/regf.idl
@@ -13,17 +13,18 @@
interface regf
{
- typedef struct {
- uint32 major;
- uint32 minor;
- uint32 release;
- uint32 build;
- } regf_version;
-
- /* 1.3.0.1 for WinNT 4
+ /*
+ * Registry version number
+ * 1.3.0.1 for WinNT 4
* 1.5.0.1 for WinXP
*/
+ typedef struct {
+ [value(1)] uint32 major;
+ [value(3)] uint32 minor;
+ [value(0)] uint32 release;
+ [value(1)] uint32 build;
+ } regf_version;
/*
"regf" is obviously the abbreviation for "Registry file". "regf" is the
@@ -70,7 +71,7 @@ interface regf
typedef enum {
REG_ROOT_KEY = 0x20,
- REG_SUB_KEY = 0x2C,
+ REG_SUB_KEY = 0x2C,
REG_SYM_LINK = 0x10
} reg_key_type;
@@ -90,7 +91,7 @@ interface regf
uint32 num_values;
uint32 values_offset;
uint32 sk_offset;
- uint32 clsnam_offset;
+ uint32 clsname_offset;
uint32 unk4[5];
uint16 name_length;
uint16 clsname_length;
@@ -112,6 +113,7 @@ interface regf
uint32 base37; /* base37 of key name */
} lh_hash;
+ /* Subkey listing with hash of first 4 characters */
typedef struct {
uint16 key_count;
lh_hash hashes[key_count];