diff options
author | Günther Deschner <gd@samba.org> | 2010-07-01 11:22:20 +0200 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2010-07-02 10:50:22 +0200 |
commit | d9429a874c5bd463f4b89db55fdae14b1764a494 (patch) | |
tree | 768335458b04e9067d81143204b401b407016875 /source3/registry | |
parent | ddb8fae40174c72be8b3b6fc1c67cbaad3343153 (diff) | |
download | samba-d9429a874c5bd463f4b89db55fdae14b1764a494.tar.gz samba-d9429a874c5bd463f4b89db55fdae14b1764a494.tar.bz2 samba-d9429a874c5bd463f4b89db55fdae14b1764a494.zip |
s3-registry: remove 2 byte winreg type limitation.
We already pull and push 4 byte winreg type in the registry.tdb, we were just
not using full 4 bytes within the reg_object functions.
With this change we finally pass the set extended value torture test.
Guenther
Diffstat (limited to 'source3/registry')
-rw-r--r-- | source3/registry/reg_objects.c | 6 | ||||
-rw-r--r-- | source3/registry/reg_objects.h | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/source3/registry/reg_objects.c b/source3/registry/reg_objects.c index 459f7fca70..04b981015e 100644 --- a/source3/registry/reg_objects.c +++ b/source3/registry/reg_objects.c @@ -31,7 +31,7 @@ struct regval_blob { fstring valuename; - uint16_t type; + uint32_t type; /* this should be encapsulated in an RPC_DATA_BLOB */ uint32_t size; /* in bytes */ uint8_t *data_p; @@ -460,7 +460,7 @@ bool regval_ctr_key_exists(struct regval_ctr *ctr, const char *value) **********************************************************************/ struct regval_blob *regval_compose(TALLOC_CTX *ctx, const char *name, - uint16_t type, + uint32_t type, const uint8_t *data_p, size_t size) { struct regval_blob *regval = TALLOC_P(ctx, struct regval_blob); @@ -489,7 +489,7 @@ struct regval_blob *regval_compose(TALLOC_CTX *ctx, const char *name, Add a new registry value to the array **********************************************************************/ -int regval_ctr_addvalue(struct regval_ctr *ctr, const char *name, uint16_t type, +int regval_ctr_addvalue(struct regval_ctr *ctr, const char *name, uint32_t type, const uint8_t *data_p, size_t size) { if ( !name ) diff --git a/source3/registry/reg_objects.h b/source3/registry/reg_objects.h index 737a2d5021..a84bc8a80b 100644 --- a/source3/registry/reg_objects.h +++ b/source3/registry/reg_objects.h @@ -57,9 +57,9 @@ struct regval_blob* regval_ctr_specific_value(struct regval_ctr *ctr, uint32_t idx); bool regval_ctr_key_exists(struct regval_ctr *ctr, const char *value); struct regval_blob *regval_compose(TALLOC_CTX *ctx, const char *name, - uint16_t type, + uint32_t type, const uint8_t *data_p, size_t size); -int regval_ctr_addvalue(struct regval_ctr *ctr, const char *name, uint16_t type, +int regval_ctr_addvalue(struct regval_ctr *ctr, const char *name, uint32_t type, const uint8_t *data_p, size_t size); int regval_ctr_addvalue_sz(struct regval_ctr *ctr, const char *name, const char *data); int regval_ctr_addvalue_multi_sz(struct regval_ctr *ctr, const char *name, const char **data); |