[default] ;
} srvsvc_NetCharDevCtr;
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] srvsvc_NetCharDevCtr ctr;
+ } srvsvc_NetCharDevInfoCtr;
+
/******************/
/* Function: 0x00 */
WERROR srvsvc_NetCharDevEnum(
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
- [in,out] uint32 level,
- [in,out,switch_is(level)] srvsvc_NetCharDevCtr ctr,
+ [in,out,ref] srvsvc_NetCharDevInfoCtr *info_ctr,
[in] uint32 max_buffer,
- [out] uint32 totalentries,
+ [out,ref] uint32 *totalentries,
[in,out,unique] uint32 *resume_handle
);
/******************/
/* Function: 0x01 */
WERROR srvsvc_NetCharDevGetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *server_unc,
+ [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
);
/******************/
/* Function: 0x02 */
WERROR srvsvc_NetCharDevControl(
- [in,unique] [string,charset(UTF16)] uint16 *server_unc,
+ [in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in] [string,charset(UTF16)] uint16 device_name[],
[in] uint32 opcode
);
[default] ;
} srvsvc_NetCharDevQCtr;
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] srvsvc_NetCharDevQCtr ctr;
+ } srvsvc_NetCharDevQInfoCtr;
+
/******************/
/* Function: 0x03 */
WERROR srvsvc_NetCharDevQEnum(
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in,unique] [string,charset(UTF16)] uint16 *user,
- [in,out] uint32 level,
- [in,out,switch_is(level)] srvsvc_NetCharDevQCtr ctr,
+ [in,out,ref] srvsvc_NetCharDevQInfoCtr *info_ctr,
[in] uint32 max_buffer,
- [out] uint32 totalentries,
+ [out,ref] uint32 *totalentries,
[in,out,unique] uint32 *resume_handle
);
/******************/
/* Function: 0x04 */
WERROR srvsvc_NetCharDevQGetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *server_unc,
+ [in,unique] [string,charset(UTF16)] uint16 *server_unc,
[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
);
/******************/
/* Function: 0x05 */
WERROR srvsvc_NetCharDevQSetInfo(
- [in,unique] [string,charset(UTF16)] uint16 *server_unc,
+ [in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in] [string,charset(UTF16)] uint16 queue_name[],
[in] uint32 level,
[in,switch_is(level)] srvsvc_NetCharDevQInfo info,
/******************/
/* Function: 0x06 */
WERROR srvsvc_NetCharDevQPurge(
- [in,unique] [string,charset(UTF16)] uint16 *server_unc,
+ [in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in] [string,charset(UTF16)] uint16 queue_name[]
);
/******************/
/* Function: 0x07 */
WERROR srvsvc_NetCharDevQPurgeSelf(
- [in,unique] [string,charset(UTF16)] uint16 *server_unc,
+ [in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in] [string,charset(UTF16)] uint16 queue_name[],
[in] [string,charset(UTF16)] uint16 computer_name[]
);
[default] ;
} srvsvc_NetConnCtr;
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] srvsvc_NetConnCtr ctr;
+ } srvsvc_NetConnInfoCtr;
+
/******************/
/* Function: 0x08 */
WERROR srvsvc_NetConnEnum(
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in,unique] [string,charset(UTF16)] uint16 *path,
- [in,out] uint32 level,
- [in,out,switch_is(level)] srvsvc_NetConnCtr ctr,
+ [in,out,ref] srvsvc_NetConnInfoCtr *info_ctr,
[in] uint32 max_buffer,
- [out] uint32 totalentries,
+ [out,ref] uint32 *totalentries,
[in,out,unique] uint32 *resume_handle
);
[default] ;
} srvsvc_NetFileCtr;
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] srvsvc_NetFileCtr ctr;
+ } srvsvc_NetFileInfoCtr;
+
/******************/
/* Function: 0x09 */
WERROR srvsvc_NetFileEnum(
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in,unique] [string,charset(UTF16)] uint16 *path,
[in,unique] [string,charset(UTF16)] uint16 *user,
- [in,out] uint32 level,
- [in,out,switch_is(level)] srvsvc_NetFileCtr ctr,
+ [in,out,ref] srvsvc_NetFileInfoCtr *info_ctr,
[in] uint32 max_buffer,
- [out] uint32 totalentries,
+ [out,ref] uint32 *totalentries,
[in,out,unique] uint32 *resume_handle
);
[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
);
/******************/
/******************/
/* Function: 0x0c */
+
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] srvsvc_NetSessCtr ctr;
+ } srvsvc_NetSessInfoCtr;
+
WERROR srvsvc_NetSessEnum(
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in,unique] [string,charset(UTF16)] uint16 *client,
[in,unique] [string,charset(UTF16)] uint16 *user,
- [in,out] uint32 level,
- [in,out,switch_is(level)] srvsvc_NetSessCtr ctr,
+ [in,out,ref] srvsvc_NetSessInfoCtr *info_ctr,
[in] uint32 max_buffer,
- [out] uint32 totalentries,
+ [out,ref] uint32 *totalentries,
[in,out,unique] uint32 *resume_handle
);
[string,charset(UTF16)] uint16 *name;
} srvsvc_NetShareInfo0;
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetShareInfo0 *array;
+ } srvsvc_NetShareCtr0;
+
typedef struct {
[string,charset(UTF16)] uint16 *name;
srvsvc_ShareType type;
[string,charset(UTF16)] uint16 *comment;
} srvsvc_NetShareInfo1;
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetShareInfo1 *array;
+ } srvsvc_NetShareCtr1;
+
typedef struct {
[string,charset(UTF16)] uint16 *name;
srvsvc_ShareType type;
[string,charset(UTF16)] uint16 *password;
} srvsvc_NetShareInfo2;
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetShareInfo2 *array;
+ } srvsvc_NetShareCtr2;
+
typedef struct {
[string,charset(UTF16)] uint16 *name;
srvsvc_ShareType type;
uint32 csc_policy;
} srvsvc_NetShareInfo501;
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetShareInfo501 *array;
+ } srvsvc_NetShareCtr501;
+
typedef struct {
[string,charset(UTF16)] uint16 *name;
srvsvc_ShareType type;
[string,charset(UTF16)] uint16 *comment;
uint32 permissions;
- int32 max_users;
+ uint32 max_users;
uint32 current_users;
[string,charset(UTF16)] uint16 *path;
[string,charset(UTF16)] uint16 *password;
- /* maybe here is a struct sec_desc_buf following */
- uint32 unknown;
- [subcontext(4)] security_descriptor *sd;
+ sec_desc_buf sd_buf;
} srvsvc_NetShareInfo502;
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetShareInfo502 *array;
+ } srvsvc_NetShareCtr502;
+
typedef struct {
[string,charset(UTF16)] uint16 *comment;
} srvsvc_NetShareInfo1004;
typedef struct {
- int32 max_users;
- } srvsvc_NetShareInfo1006;
+ uint32 count;
+ [size_is(count)] srvsvc_NetShareInfo1004 *array;
+ } srvsvc_NetShareCtr1004;
typedef bitmap {
SHARE_1005_IN_DFS = 0x00000001,
NetShareInfo1005Flags dfs_flags;
} srvsvc_NetShareInfo1005;
- typedef struct {
- uint32 flags;
- [string,charset(UTF16)] uint16 *alternate_directory_name;
- } srvsvc_NetShareInfo1007;
-
- typedef union {
- [case(0)] srvsvc_NetShareInfo0 *info0;
- [case(1)] srvsvc_NetShareInfo1 *info1;
- [case(2)] srvsvc_NetShareInfo2 *info2;
- [case(501)] srvsvc_NetShareInfo501 *info501;
- [case(502)] srvsvc_NetShareInfo502 *info502;
- [case(1004)] srvsvc_NetShareInfo1004 *info1004;
- [case(1005)] srvsvc_NetShareInfo1005 *info1005;
- [case(1006)] srvsvc_NetShareInfo1006 *info1006;
- [case(1007)] srvsvc_NetShareInfo1007 *info1007;
- [case(1501)] sec_desc_buf *info1501;
- [default] ;
- } srvsvc_NetShareInfo;
-
- typedef struct {
- uint32 count;
- [size_is(count)] srvsvc_NetShareInfo0 *array;
- } srvsvc_NetShareCtr0;
-
- typedef struct {
- uint32 count;
- [size_is(count)] srvsvc_NetShareInfo1 *array;
- } srvsvc_NetShareCtr1;
-
- typedef struct {
- uint32 count;
- [size_is(count)] srvsvc_NetShareInfo2 *array;
- } srvsvc_NetShareCtr2;
-
- typedef struct {
- uint32 count;
- [size_is(count)] srvsvc_NetShareInfo501 *array;
- } srvsvc_NetShareCtr501;
-
- typedef struct {
- uint32 count;
- [size_is(count)] srvsvc_NetShareInfo502 *array;
- } srvsvc_NetShareCtr502;
-
- typedef struct {
- uint32 count;
- [size_is(count)] srvsvc_NetShareInfo1004 *array;
- } srvsvc_NetShareCtr1004;
-
typedef struct {
uint32 count;
[size_is(count)] srvsvc_NetShareInfo1005 *array;
} srvsvc_NetShareCtr1005;
+ typedef struct {
+ uint32 max_users;
+ } srvsvc_NetShareInfo1006;
+
typedef struct {
uint32 count;
[size_is(count)] srvsvc_NetShareInfo1006 *array;
} srvsvc_NetShareCtr1006;
+ typedef struct {
+ uint32 flags;
+ [string,charset(UTF16)] uint16 *alternate_directory_name;
+ } srvsvc_NetShareInfo1007;
+
typedef struct {
uint32 count;
[size_is(count)] srvsvc_NetShareInfo1007 *array;
[size_is(count)] sec_desc_buf *array;
} srvsvc_NetShareCtr1501;
+ typedef union {
+ [case(0)] srvsvc_NetShareInfo0 *info0;
+ [case(1)] srvsvc_NetShareInfo1 *info1;
+ [case(2)] srvsvc_NetShareInfo2 *info2;
+ [case(501)] srvsvc_NetShareInfo501 *info501;
+ [case(502)] srvsvc_NetShareInfo502 *info502;
+ [case(1004)] srvsvc_NetShareInfo1004 *info1004;
+ [case(1005)] srvsvc_NetShareInfo1005 *info1005;
+ [case(1006)] srvsvc_NetShareInfo1006 *info1006;
+ [case(1007)] srvsvc_NetShareInfo1007 *info1007;
+ [case(1501)] sec_desc_buf *info1501;
+ [default] ;
+ } srvsvc_NetShareInfo;
+
typedef union {
[case(0)] srvsvc_NetShareCtr0 *ctr0;
[case(1)] srvsvc_NetShareCtr1 *ctr1;
[default] ;
} srvsvc_NetShareCtr;
+ typedef struct {
+ uint32 level;
+ [switch_is(level)] srvsvc_NetShareCtr ctr;
+ } srvsvc_NetShareInfoCtr;
+
/******************/
/* Function: 0x0e */
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
);
[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
);
/******************/
[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
);
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
);
/**************************/
uint32 sessreqs;
uint32 opensearch;
uint32 activelocks;
+ uint32 numreqbufs;
uint32 sizereqbufs;
uint32 numbigbufs;
uint32 numfiletasks;
uint32 sessreqs;
uint32 opensearch;
uint32 activelocks;
+ uint32 numreqbufs;
uint32 sizereqbufs;
uint32 numbigbufs;
uint32 numfiletasks;
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
);
/******************/
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
);
WERROR srvsvc_NetDiskEnum(
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in] uint32 level,
- [in,out] srvsvc_NetDiskInfo info,
+ [in,out,ref] srvsvc_NetDiskInfo *info,
[in] uint32 maxlen,
- [out] uint32 totalentries,
+ [out,ref] uint32 *totalentries,
[in,out,unique] uint32 *resume_handle
);
[in,unique] [string,charset(UTF16)] uint16 *service,
[in] uint32 level,
[in] uint32 options,
- [out] srvsvc_Statistics stat
+ [out,ref] srvsvc_Statistics **stats
);
/**************************/
[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
);
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
);
/**************************/
/* Function: 0x1c */
WERROR srvsvc_NetRemoteTOD(
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
- [out,unique] srvsvc_NetRemoteTODInfo *info
+ [out,ref] srvsvc_NetRemoteTODInfo **info
);
/**************************/
[in,unique] [string,charset(UTF16)] uint16 *server_unc,
[in] [string,charset(UTF16)] uint16 path[],
[in] uint32 pathflags,
- [out] uint32 pathtype
+ [out,ref] uint32 *pathtype
);
/******************/
[out] [size_is(maxbuf)] uint8 can_path[],
[in] uint32 maxbuf,
[in] [string,charset(UTF16)] uint16 prefix[],
- [in,out] uint32 pathtype,
+ [in,out,ref] uint32 *pathtype,
[in] uint32 pathflags
);
/******************/
/* Function: 0x22 */
- WERROR srvsvc_NETRPRNAMECANONICALIZE(
+ [todo] WERROR srvsvc_NETRPRNAMECANONICALIZE(
);
/******************/
[in,unique] [string,charset(UTF16)] uint16 *share,
[in] [string,charset(UTF16)] uint16 file[],
[in] security_secinfo securityinformation,
- [out,unique] sec_desc_buf *sd_buf
+ [out,ref] sec_desc_buf **sd_buf
);
/******************/
[in,unique] [string,charset(UTF16)] uint16 *share,
[in] [string,charset(UTF16)] uint16 file[],
[in] security_secinfo securityinformation,
- [in] sec_desc_buf sd_buf
+ [in,ref] sec_desc_buf *sd_buf
);
/******************/
/* Function: 0x2b */
- WERROR srvsvc_NETRDFSGETVERSION(
+ [todo] WERROR srvsvc_NETRDFSGETVERSION(
);
/******************/
/* Function: 0x2c */
- WERROR srvsvc_NETRDFSCREATELOCALPARTITION(
+ [todo] WERROR srvsvc_NETRDFSCREATELOCALPARTITION(
);
/******************/
/* Function: 0x2d */
- WERROR srvsvc_NETRDFSDELETELOCALPARTITION(
+ [todo] WERROR srvsvc_NETRDFSDELETELOCALPARTITION(
);
/******************/
/* Function: 0x2e */
- WERROR srvsvc_NETRDFSSETLOCALVOLUMESTATE(
+ [todo] WERROR srvsvc_NETRDFSSETLOCALVOLUMESTATE(
);
/******************/
/* Function: 0x2f */
- WERROR srvsvc_NETRDFSSETSERVERINFO(
+ [todo] WERROR srvsvc_NETRDFSSETSERVERINFO(
);
/******************/
/* Function: 0x30 */
- WERROR srvsvc_NETRDFSCREATEEXITPOINT(
+ [todo] WERROR srvsvc_NETRDFSCREATEEXITPOINT(
);
/******************/
/* Function: 0x31 */
- WERROR srvsvc_NETRDFSDELETEEXITPOINT(
+ [todo] WERROR srvsvc_NETRDFSDELETEEXITPOINT(
);
/******************/
/* Function: 0x32 */
- WERROR srvsvc_NETRDFSMODIFYPREFIX(
+ [todo] WERROR srvsvc_NETRDFSMODIFYPREFIX(
);
/******************/
/* Function: 0x33 */
- WERROR srvsvc_NETRDFSFIXLOCALVOLUME(
+ [todo] WERROR srvsvc_NETRDFSFIXLOCALVOLUME(
);
/******************/
/* Function: 0x34 */
- WERROR srvsvc_NETRDFSMANAGERREPORTSITEINFO(
+ [todo] WERROR srvsvc_NETRDFSMANAGERREPORTSITEINFO(
);
/******************/
/* Function: 0x35 */
- WERROR srvsvc_NETRSERVERTRANSPORTDELEX(
+ [todo] WERROR srvsvc_NETRSERVERTRANSPORTDELEX(
);
}