summaryrefslogtreecommitdiff
path: root/source4/librpc/idl
diff options
context:
space:
mode:
Diffstat (limited to 'source4/librpc/idl')
-rw-r--r--source4/librpc/idl/dfs.idl57
-rw-r--r--source4/librpc/idl/echo.idl16
-rw-r--r--source4/librpc/idl/lsa.idl2
3 files changed, 73 insertions, 2 deletions
diff --git a/source4/librpc/idl/dfs.idl b/source4/librpc/idl/dfs.idl
new file mode 100644
index 0000000000..d9b20f14c9
--- /dev/null
+++ b/source4/librpc/idl/dfs.idl
@@ -0,0 +1,57 @@
+/*
+ dfs interface definition
+*/
+
+[ uuid(4fc742e0-4a10-11cf-8273-00aa004ae673),
+ version(3.0),
+ pointer_default(unique)
+] interface netdfs
+{
+ /******************/
+ /* Function: 0x00 */
+ void dfs_Exist(
+ [out,ref] uint32 *exist_flag
+ );
+
+
+ /******************/
+ /* Function: 0x01 */
+ NTSTATUS dfs_Add (
+ [in] unistr *path,
+ [in] unistr *server,
+ [in] unistr *share,
+ [in] unistr *comment,
+ [in] uint32 flags
+ );
+
+ /******************/
+ /* Function: 0x02 */
+ NTSTATUS dfs_Remove (
+ [in,ref] unistr *path,
+ [in] unistr *server,
+ [in] unistr *share
+ );
+
+ /******************/
+ /* Function: 0x03 */
+ NTSTATUS dfs_UNKNOWN3 ();
+
+ /******************/
+ /* Function: 0x04 */
+ NTSTATUS dfs_Info (
+ [in,ref] unistr *path,
+ [in] unistr *server,
+ [in] unistr *share,
+ [in] uint16 level
+ );
+
+
+ /******************/
+ /* Function: 0x05 */
+ NTSTATUS dfs_Enum (
+ [in] unistr *name,
+ [in] uint32 level,
+ [in] uint32 buffer_size,
+ [in,out,ref] uint32 *resume_handle
+ );
+}
diff --git a/source4/librpc/idl/echo.idl b/source4/librpc/idl/echo.idl
index e366d7931a..af6cb567d7 100644
--- a/source4/librpc/idl/echo.idl
+++ b/source4/librpc/idl/echo.idl
@@ -11,7 +11,8 @@ interface rpcecho
/* Echo an array of bytes back at the caller */
void echo_EchoData(
[in] uint32 len,
- [in,out,ref,size_is(len)] uint8 *data
+ [in] [size_is(len)] uint8 in_data[],
+ [out] [size_is(len)] uint8 out_data[]
);
/* Sink data to the server */
void echo_SinkData(
@@ -23,4 +24,17 @@ interface rpcecho
[in] uint32 len,
[out,ref,size_is(len)] uint8 *data
);
+
+#define long uint32
+
+ typedef struct {
+ long bar;
+ long count;
+ long foo;
+ [size_is(count)] long s[*];
+ } Struct1;
+
+ void TestCall (
+ [out] Struct1 **s1
+ );
}
diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl
index 38f66f37e6..ce6a151f42 100644
--- a/source4/librpc/idl/lsa.idl
+++ b/source4/librpc/idl/lsa.idl
@@ -334,8 +334,8 @@
typedef struct {
uint32 count;
+ uint32 unknown;
[size_is(count)] lsa_LUIDAttribute set[*];
- uint32 unknown[1];
} lsa_PrivilegeSet;
NTSTATUS lsa_EnumPrivsAccount (