diff options
author | CVS Import User <samba-bugs@samba.org> | 2004-04-04 11:51:10 +0000 |
---|---|---|
committer | CVS Import User <samba-bugs@samba.org> | 2004-04-04 11:51:10 +0000 |
commit | e3d2dbdff6711b0bc768fb6b08f41240f21d5fba (patch) | |
tree | 159ef54b59b18e9b950f5c6af105915214244912 /source/librpc/idl/dfs.idl | |
parent | 139b1658ca30692835c1a7203c7cd003e587ac12 (diff) | |
download | samba-e3d2dbdff6711b0bc768fb6b08f41240f21d5fba.tar.gz samba-e3d2dbdff6711b0bc768fb6b08f41240f21d5fba.tar.xz samba-e3d2dbdff6711b0bc768fb6b08f41240f21d5fba.zip |
r6: merge in the samba4 HEAD branch from cvs
to checkout try:
svn co svn+ssh://svn.samba.org/home/svn/samba/branches/SAMBA_4_0
metze
Diffstat (limited to 'source/librpc/idl/dfs.idl')
-rw-r--r-- | source/librpc/idl/dfs.idl | 174 |
1 files changed, 174 insertions, 0 deletions
diff --git a/source/librpc/idl/dfs.idl b/source/librpc/idl/dfs.idl new file mode 100644 index 00000000000..16c19744746 --- /dev/null +++ b/source/librpc/idl/dfs.idl @@ -0,0 +1,174 @@ +/* + dfs interface definition +*/ + +#include "idl_types.h" + +[ 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 */ + WERROR dfs_Add ( + [in,ref] unistr *path, + [in,ref] unistr *server, + [in] unistr *share, + [in] unistr *comment, + [in] uint32 flags + ); + + /******************/ + /* Function: 0x02 */ + WERROR dfs_Remove ( + [in,ref] unistr *path, + [in] unistr *server, + [in] unistr *share + ); + + /******************/ + /* Function: 0x03 */ + WERROR dfs_SetInfo (); + + /******************/ + /* Function: 0x04 */ + + typedef struct { + unistr *path; + } dfs_Info1; + + typedef struct { + unistr *path; + unistr *comment; + uint32 state; + uint32 num_stores; + } dfs_Info2; + + typedef struct { + uint32 state; + unistr *server; + unistr *share; + } dfs_StorageInfo; + + typedef struct { + unistr *path; + unistr *comment; + uint32 state; + uint32 num_stores; + [size_is(num_stores)] dfs_StorageInfo *stores; + } dfs_Info3; + + typedef struct { + unistr *path; + unistr *comment; + uint32 state; + uint32 timeout; + GUID guid; + uint32 num_stores; + [size_is(num_stores)] dfs_StorageInfo *stores; + } dfs_Info4; + + typedef struct { + unistr *comment; + } dfs_Info100; + + typedef struct { + uint32 state; + } dfs_Info101; + + typedef struct { + uint32 timeout; + } dfs_Info102; + + typedef struct { + unistr *dom_root; + } dfs_Info200; + + typedef struct { + uint32 flags; + unistr *dom_root; + } dfs_Info300; + + typedef union { + [case(1)] dfs_Info1 *info1; + [case(2)] dfs_Info2 *info2; + [case(3)] dfs_Info3 *info3; + [case(4)] dfs_Info4 *info4; + [case(100)] dfs_Info100 *info100; + [case(101)] dfs_Info101 *info101; + [case(102)] dfs_Info102 *info102; + [default] ; + } dfs_Info; + + WERROR dfs_GetInfo ( + [in,ref] unistr *path, + [in] unistr *server, + [in] unistr *share, + [in] uint32 level, + [out,switch_is(level)] dfs_Info info + ); + + /******************/ + /* Function: 0x05 */ + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info1 *s; + } dfs_EnumArray1; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info2 *s; + } dfs_EnumArray2; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info3 *s; + } dfs_EnumArray3; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info4 *s; + } dfs_EnumArray4; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info200 *s; + } dfs_EnumArray200; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info300 *s; + } dfs_EnumArray300; + + + typedef union { + [case(1)] dfs_EnumArray1 *info1; + [case(2)] dfs_EnumArray2 *info2; + [case(3)] dfs_EnumArray3 *info3; + [case(4)] dfs_EnumArray4 *info4; + [case(200)] dfs_EnumArray200 *info200; + [case(300)] dfs_EnumArray300 *info300; + } dfs_EnumInfo; + + typedef struct { + uint32 level; + [switch_is(level)] dfs_EnumInfo e; + } dfs_EnumStruct; + + WERROR dfs_Enum ( + [in] uint32 level, + [in] uint32 bufsize, + [in,out] dfs_EnumStruct *info, + [in] uint32 *unknown, + [in,out] uint32 *total + ); +} |