s4-srvsvc: merge srvsvc_NetFileGetInfo from s3 idl.
[ira/wip.git] / source4 / librpc / idl / srvsvc.idl
index a3faaad1fd180df99364415fc345cdcee681d085..bb186e1a9472cc34f04be0da4001fe3c8748b870 100644 (file)
@@ -68,7 +68,7 @@ import "security.idl", "svcctl.idl";
                [in,unique] [string,charset(UTF16)] uint16 *server_unc,
                [in]   [string,charset(UTF16)] uint16 device_name[],
                [in]   uint32 level,
-               [out,switch_is(level)]   srvsvc_NetCharDevInfo info
+               [out,ref,switch_is(level)]   srvsvc_NetCharDevInfo *info
                );
 
        /******************/
@@ -135,7 +135,7 @@ import "security.idl", "svcctl.idl";
                [in]   [string,charset(UTF16)] uint16 queue_name[],
                [in]   [string,charset(UTF16)] uint16 user[],
                [in]   uint32 level,
-               [out,switch_is(level)]   srvsvc_NetCharDevQInfo info
+               [out,switch_is(level),ref]   srvsvc_NetCharDevQInfo *info
                );
 
        /******************/
@@ -274,7 +274,7 @@ import "security.idl", "svcctl.idl";
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]   uint32 fid,
                [in]   uint32 level,
-               [out,switch_is(level)]   srvsvc_NetFileInfo info
+               [out,switch_is(level),ref]   srvsvc_NetFileInfo *info
                );
 
        /******************/
@@ -565,7 +565,7 @@ import "security.idl", "svcctl.idl";
        WERROR srvsvc_NetShareAdd(
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]   uint32 level,
-               [in,switch_is(level)] srvsvc_NetShareInfo info,
+               [in,ref,switch_is(level)] srvsvc_NetShareInfo *info,
                [in,out,unique]   uint32 *parm_error
                );
 
@@ -586,7 +586,7 @@ import "security.idl", "svcctl.idl";
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]   [string,charset(UTF16)] uint16 share_name[],
                [in]   uint32 level,
-               [out,switch_is(level)] srvsvc_NetShareInfo info
+               [out,ref,switch_is(level)] srvsvc_NetShareInfo *info
                );
 
        /******************/
@@ -595,7 +595,7 @@ import "security.idl", "svcctl.idl";
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]   [string,charset(UTF16)] uint16 share_name[],
                [in]   uint32 level,
-               [in,switch_is(level)] srvsvc_NetShareInfo info,
+               [in,ref,switch_is(level)] srvsvc_NetShareInfo *info,
                [in,out,unique]   uint32 *parm_error
                );
 
@@ -620,7 +620,7 @@ import "security.idl", "svcctl.idl";
        WERROR srvsvc_NetShareCheck(
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]   [string,charset(UTF16)] uint16 device_name[],
-               [out]  srvsvc_ShareType type
+               [out,ref]  srvsvc_ShareType *type
                );
 
 /**************************/
@@ -1130,7 +1130,7 @@ import "security.idl", "svcctl.idl";
        WERROR srvsvc_NetSrvGetInfo(
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]   uint32 level,
-               [out,switch_is(level)] srvsvc_NetSrvInfo info
+               [out,ref,switch_is(level)] srvsvc_NetSrvInfo *info
                );
 
        /******************/
@@ -1138,7 +1138,7 @@ import "security.idl", "svcctl.idl";
        WERROR srvsvc_NetSrvSetInfo(
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]   uint32 level,
-               [in,switch_is(level)] srvsvc_NetSrvInfo info,
+               [in,ref,switch_is(level)] srvsvc_NetSrvInfo *info,
                [in,out,unique]   uint32 *parm_error
                );
 
@@ -1204,7 +1204,7 @@ import "security.idl", "svcctl.idl";
                [in,unique]      [string,charset(UTF16)] uint16 *service,
                [in]      uint32 level,
                [in]      uint32 options,
-               [out]     srvsvc_Statistics stat
+               [out,ref]     srvsvc_Statistics **stats
                );
 
 /**************************/
@@ -1285,14 +1285,18 @@ import "security.idl", "svcctl.idl";
                [default];
        } srvsvc_NetTransportCtr;
 
+       typedef struct {
+               uint32 level;
+               [switch_is(level)] srvsvc_NetTransportCtr ctr;
+       } srvsvc_NetTransportInfoCtr;
+
        /******************/
        /* Function: 0x1a */
        WERROR srvsvc_NetTransportEnum(
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
-               [in,out] uint32 level,
-               [in,out,switch_is(level)]   srvsvc_NetTransportCtr transports,
+               [in,out,ref] srvsvc_NetTransportInfoCtr *transports,
                [in]   uint32 max_buffer,
-               [out]   uint32 totalentries,
+               [out,ref]   uint32 *totalentries,
                [in,out,unique]   uint32 *resume_handle
                );
 
@@ -1301,7 +1305,7 @@ import "security.idl", "svcctl.idl";
        WERROR srvsvc_NetTransportDel(
                [in,unique]   [string,charset(UTF16)] uint16 *server_unc,
                [in]    uint32 level,
-               [in,switch_is(level)]   srvsvc_NetTransportInfo info
+               [in]    srvsvc_NetTransportInfo0 *info0
                );
 
 /**************************/