From d9429a874c5bd463f4b89db55fdae14b1764a494 Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Thu, 1 Jul 2010 11:22:20 +0200 Subject: 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 --- source3/registry/reg_objects.c | 6 +++--- source3/registry/reg_objects.h | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'source3') 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); -- cgit