summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2004-10-03 11:07:04 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:59:36 -0500
commit263212aba5d05367cc9ff92daf6b1047ea699ac3 (patch)
treef3b03d482c5ea644b3ba3cea33540e72dc0c5c07 /source4/librpc
parent9880410f1ffb4c7d58f4c4059fb132b98d3520b5 (diff)
downloadsamba-263212aba5d05367cc9ff92daf6b1047ea699ac3.tar.gz
samba-263212aba5d05367cc9ff92daf6b1047ea699ac3.tar.bz2
samba-263212aba5d05367cc9ff92daf6b1047ea699ac3.zip
r2807: OK I think winreg_EnumValue() finally works. The previous version
didn't work with non-NULL registry value names. Update testsuite to enumerate all keys and values two levels deep. (This used to be commit c09f0f355ba6a589121588492aa2db5deb7121e0)
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/idl/winreg.idl24
1 files changed, 19 insertions, 5 deletions
diff --git a/source4/librpc/idl/winreg.idl b/source4/librpc/idl/winreg.idl
index adc8f7aee1..c06e94b34c 100644
--- a/source4/librpc/idl/winreg.idl
+++ b/source4/librpc/idl/winreg.idl
@@ -127,23 +127,37 @@
typedef struct {
uint32 max_len;
uint32 offset;
+ uint32 len;
+ } EnumValueIn;
+
+ typedef struct {
+ uint16 len;
+ uint16 max_len;
+ EnumValueIn *buffer;
+ } EnumValueNameIn;
+
+ typedef struct {
+ uint32 max_len;
+ uint32 offset;
DATA_BLOB buffer;
- } EnumValue;
+ } EnumValueOut;
typedef struct {
uint16 len;
uint16 max_len;
- EnumValue *buffer;
- } EnumValueName;
+ unistr *name;
+ } EnumValueNameOut;
/******************/
/* Function: 0x0a */
WERROR winreg_EnumValue(
[in,ref] policy_handle *handle,
[in] uint32 enum_index,
- [in,out] EnumValueName name,
+ [in] EnumValueNameIn name_in,
+ [out] EnumValueNameOut name_out,
[in,out] uint32 *type,
- [in,out] EnumValue *value,
+ [in] EnumValueIn *value_in,
+ [out] EnumValueOut *value_out,
[in,out] uint32 *value_len1,
[in,out] uint32 *value_len2
);