From aad22cabbf52c2d5cea9ee80fa8e1960944f9d7e Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 9 Dec 2004 07:05:47 +0000 Subject: r4111: fixed winreg to use much simpler (and I believe correct) IDL for QueryValue (This used to be commit 659d0295314c6a070698fc81223044f4d7366993) --- source4/librpc/idl/winreg.idl | 24 ++++++++---------------- source4/torture/rpc/winreg.c | 7 ++----- 2 files changed, 10 insertions(+), 21 deletions(-) (limited to 'source4') diff --git a/source4/librpc/idl/winreg.idl b/source4/librpc/idl/winreg.idl index a3e81f3a94..2dbd4de944 100644 --- a/source4/librpc/idl/winreg.idl +++ b/source4/librpc/idl/winreg.idl @@ -231,12 +231,9 @@ [in,ref] policy_handle *handle, [in] winreg_String value_name, [in,out] uint32 *type, - [in] uint32 *offered, - [in] uint32 unknown1, - [in] uint32 unknown2, - [out] EnumValueOut *value_out, - [in,out] uint32 *value_len1, - [in,out] uint32 *value_len2 + [in,out,size_is(*size),length_is(*length)] uint8 *data, + [in,out] uint32 *size, + [in,out] uint32 *length ); /******************/ @@ -262,19 +259,14 @@ [in] sec_desc_buf *sec_desc ); - typedef struct { - uint32 max_len; - [length_is(buf_max_len)] uint8 *buffer; - uint32 len; - } winreg_Value; - /******************/ /* Function: 0x16 */ WERROR winreg_SetValue( - [in,ref] policy_handle *handle, - [in] winreg_String name, - [in] uint32 type, - [in] winreg_Value value + [in,ref] policy_handle *handle, + [in] winreg_String name, + [in] uint32 type, + [in,size_is(size)] uint8 *data, + [in] uint32 size ); /******************/ diff --git a/source4/torture/rpc/winreg.c b/source4/torture/rpc/winreg.c index ebadbc87e2..592f2ff86a 100644 --- a/source4/torture/rpc/winreg.c +++ b/source4/torture/rpc/winreg.c @@ -304,11 +304,8 @@ static BOOL test_QueryValue(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct p r.in.handle = handle; r.in.value_name.name = valuename; r.in.type = &zero; - r.in.unknown1 = 0; - r.in.unknown2 = 0; - r.in.offered = &offered; - r.in.value_len1 = &offered; - r.in.value_len2 = &zero; + r.in.size = &offered; + r.in.length = &zero; status = dcerpc_winreg_QueryValue(p, mem_ctx, &r); if(NT_STATUS_IS_ERR(status)) { -- cgit