summaryrefslogtreecommitdiff
path: root/source3/lib/util_reg_api.c
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-11-24 15:26:08 +0100
committerGünther Deschner <gd@samba.org>2009-11-24 15:47:59 +0100
commitd4e06596d50e008425b9d346c3814a03eea8309a (patch)
tree1d90754af6cbb2e6a541e6fbd14896291e50c9b2 /source3/lib/util_reg_api.c
parentbe90385a0b1f8a29c5d181d26c0844f314d04ea7 (diff)
downloadsamba-d4e06596d50e008425b9d346c3814a03eea8309a.tar.gz
samba-d4e06596d50e008425b9d346c3814a03eea8309a.tar.bz2
samba-d4e06596d50e008425b9d346c3814a03eea8309a.zip
s3-registry: remove reg_pull_multi_sz().
Guenther
Diffstat (limited to 'source3/lib/util_reg_api.c')
-rw-r--r--source3/lib/util_reg_api.c23
1 files changed, 18 insertions, 5 deletions
diff --git a/source3/lib/util_reg_api.c b/source3/lib/util_reg_api.c
index 56ecc5472d..503db774fc 100644
--- a/source3/lib/util_reg_api.c
+++ b/source3/lib/util_reg_api.c
@@ -102,14 +102,27 @@ WERROR registry_pull_value(TALLOC_CTX *mem_ctx,
SAFE_FREE(tmp);
break;
}
- case REG_MULTI_SZ:
- err = reg_pull_multi_sz(value, (void *)data, length,
- &value->v.multi_sz.num_strings,
- &value->v.multi_sz.strings);
- if (!(W_ERROR_IS_OK(err))) {
+ case REG_MULTI_SZ: {
+ int i;
+ const char **vals;
+ DATA_BLOB blob;
+
+ blob = data_blob_const(data, length);
+
+ if (!pull_reg_multi_sz(mem_ctx, &blob, &vals)) {
+ err = WERR_NOMEM;
goto error;
}
+
+ for (i=0; vals[i]; i++) {
+ ;;
+ }
+
+ value->v.multi_sz.num_strings = i;
+ value->v.multi_sz.strings = (char **)vals;
+
break;
+ }
case REG_BINARY:
value->v.binary = data_blob_talloc(mem_ctx, data, length);
break;