From e8a3825ebc4dfe55581b980507384153b99f534d Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 14 Nov 2003 07:20:46 +0000 Subject: we can now do a level1 NetDfsEnum() (This used to be commit f32641f73f7ff12b797378b3b533603ff1d526b5) --- source4/librpc/idl/dfs.idl | 26 +++++++++++++++++++++++--- source4/librpc/idl/echo.idl | 23 +++++++++++++++++------ 2 files changed, 40 insertions(+), 9 deletions(-) (limited to 'source4/librpc/idl') diff --git a/source4/librpc/idl/dfs.idl b/source4/librpc/idl/dfs.idl index 110dc3563d..19781568a3 100644 --- a/source4/librpc/idl/dfs.idl +++ b/source4/librpc/idl/dfs.idl @@ -39,7 +39,7 @@ /******************/ /* Function: 0x04 */ NTSTATUS dfs_Info ( - [in,ref] unistr *path, + [in,ref] unistr_noterm *path, [in] unistr *server, [in] unistr *share, [in] uint16 level @@ -48,9 +48,29 @@ /******************/ /* Function: 0x05 */ + typedef struct { + unistr *str; + } dfs_String; + + typedef struct { + uint32 count; + [size_is(count)] dfs_String *s; + } dfs_Enum1; + + typedef union { + case(1) dfs_Enum1 *enum1; + } dfs_EnumInfo; + + typedef struct { + uint32 level; + [switch_is(level)] dfs_EnumInfo e; + } dfs_EnumStruct; + NTSTATUS dfs_Enum ( - [in] unistr *name, [in] uint32 level, - [in] uint32 buffer_size + [in] uint32 bufsize, + [in,out] dfs_EnumStruct *info, + [in] uint32 *unknown, + [in,out] uint32 *total ); } diff --git a/source4/librpc/idl/echo.idl b/source4/librpc/idl/echo.idl index af6cb567d7..f7c65485f8 100644 --- a/source4/librpc/idl/echo.idl +++ b/source4/librpc/idl/echo.idl @@ -25,16 +25,27 @@ interface rpcecho [out,ref,size_is(len)] uint8 *data ); -#define long uint32 +#define int uint32 typedef struct { - long bar; - long count; - long foo; - [size_is(count)] long s[*]; + int *count; + } echo_Enum1; + + typedef struct { + int *count; + } echo_Enum3; + + typedef union { + [case(1)] echo_Enum1 enum1; + [case(3)] echo_Enum3 enum3; + } echo_EnumInfo; + + typedef struct { + int level; + [switch_is(level)] echo_EnumInfo e; } Struct1; void TestCall ( - [out] Struct1 **s1 + [out] Struct1 *s1 ); } -- cgit