summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
Diffstat (limited to 'source4')
-rw-r--r--source4/librpc/idl/srvsvc.idl823
-rw-r--r--source4/librpc/idl/wkssvc.idl43
2 files changed, 744 insertions, 122 deletions
diff --git a/source4/librpc/idl/srvsvc.idl b/source4/librpc/idl/srvsvc.idl
index 17e9491fbe..4d737a6c0d 100644
--- a/source4/librpc/idl/srvsvc.idl
+++ b/source4/librpc/idl/srvsvc.idl
@@ -9,56 +9,164 @@
pointer_default(unique)
] interface srvsvc
{
+/**************************/
+/* srvsvc_NetCharDev */
+/**************************/
+ typedef struct {
+ unistr *device;
+ } srvsvc_NetCharDevInfo0;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetCharDevInfo0 *array;
+ } srvsvc_NetCharDevCtr0;
+
+ typedef struct {
+ unistr *device;
+ uint32 status;
+ unistr *user;
+ uint32 time;
+ } srvsvc_NetCharDevInfo1;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetCharDevInfo1 *array;
+ } srvsvc_NetCharDevCtr1;
+
+ typedef union {
+ [case(0)] srvsvc_NetCharDevInfo0 *info0;
+ [case(1)] srvsvc_NetCharDevInfo1 *info1;
+ [default] ;
+ } srvsvc_NetCharDevInfo;
+
+ typedef union {
+ [case(0)] srvsvc_NetCharDevCtr0 *ctr0;
+ [case(1)] srvsvc_NetCharDevCtr1 *ctr1;
+ [default] ;
+ } srvsvc_NetCharDevCtr;
+
/******************/
/* Function: 0x00 */
- NTSTATUS srvsvc_NETRCHARDEVENUM(
+ WERROR srvsvc_NetCharDevEnum(
+ [in] unistr *server_unc,
+ [in,out] uint32 level,
+ [in,out,switch_is(level)] srvsvc_NetCharDevCtr ctr,
+ [in] uint32 max_buffer,
+ [out] uint32 totalentries,
+ [in,out] uint32 *resume_handle
);
/******************/
/* Function: 0x01 */
- NTSTATUS srvsvc_NETRCHARDEVGETINFO(
+ WERROR srvsvc_NetCharDevGetInfo(
+ [in] unistr *server_unc,
+ [in] unistr device_name,
+ [in] uint32 level,
+ [out,switch_is(level)] srvsvc_NetCharDevInfo info
);
/******************/
/* Function: 0x02 */
- NTSTATUS srvsvc_NETRCHARDEVCONTROL(
+ WERROR srvsvc_NetCharDevControl(
+ [in] unistr *server_unc,
+ [in] unistr device_name,
+ [in] uint32 opcode
);
+/**************************/
+/* srvsvc_NetCharDevQ */
+/**************************/
+ typedef struct {
+ unistr *device;
+ } srvsvc_NetCharDevQInfo0;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetCharDevQInfo0 *array;
+ } srvsvc_NetCharDevQCtr0;
+
+ typedef struct {
+ unistr *device;
+ uint32 priority;
+ unistr *devices;
+ uint32 users;
+ uint32 num_ahead;
+ } srvsvc_NetCharDevQInfo1;
+
+ typedef struct {
+ uint32 count;
+ [size_is(count)] srvsvc_NetCharDevQInfo1 *array;
+ } srvsvc_NetCharDevQCtr1;
+
+ typedef union {
+ [case(0)] srvsvc_NetCharDevQInfo0 *info0;
+ [case(1)] srvsvc_NetCharDevQInfo1 *info1;
+ [default] ;
+ } srvsvc_NetCharDevQInfo;
+
+ typedef union {
+ [case(0)] srvsvc_NetCharDevQCtr0 *ctr0;
+ [case(1)] srvsvc_NetCharDevQCtr1 *ctr1;
+ [default] ;
+ } srvsvc_NetCharDevQCtr;
+
/******************/
/* Function: 0x03 */
- NTSTATUS srvsvc_NETRCHARDEVQENUM(
+ WERROR srvsvc_NetCharDevQEnum(
+ [in] unistr *server_unc,
+ [in] unistr *user,
+ [in,out] uint32 level,
+ [in,out,switch_is(level)] srvsvc_NetCharDevQCtr ctr,
+ [in] uint32 max_buffer,
+ [out] uint32 totalentries,
+ [in,out] uint32 *resume_handle
);
/******************/
/* Function: 0x04 */
- NTSTATUS srvsvc_NETRCHARDEVQGETINFO(
+ WERROR srvsvc_NetCharDevQGetInfo(
+ [in] unistr *server_unc,
+ [in] unistr queue_name,
+ [in] unistr user,
+ [in] uint32 level,
+ [out,switch_is(level)] srvsvc_NetCharDevQInfo info
);
/******************/
/* Function: 0x05 */
- NTSTATUS srvsvc_NETRCHARDEVQSETINFO(
+ WERROR srvsvc_NetCharDevQSetInfo(
+ [in] unistr *server_unc,
+ [in] unistr queue_name,
+ [in] uint32 level,
+ [in,switch_is(level)] srvsvc_NetCharDevQInfo info,
+ [in,out] uint32 *parm_error
);
/******************/
/* Function: 0x06 */
- NTSTATUS srvsvc_NETRCHARDEVQPURGE(
+ WERROR srvsvc_NetCharDevQPurge(
+ [in] unistr *server_unc,
+ [in] unistr queue_name
);
/******************/
/* Function: 0x07 */
- NTSTATUS srvsvc_NETRCHARDEVQPURGESELF(
+ WERROR srvsvc_NetCharDevQPurgeSelf(
+ [in] unistr *server_unc,
+ [in] unistr queue_name,
+ [in] unistr computer_name
);
- /******************/
- /* Function: 0x08 */
-
+/**************************/
+/* srvsvc_NetConn */
+/**************************/
typedef struct {
uint32 conn_id;
- } srvsvc_NetConn0;
+ } srvsvc_NetConnInfo0;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetConn0 *array;
+ [size_is(count)] srvsvc_NetConnInfo0 *array;
} srvsvc_NetConnCtr0;
typedef struct {
@@ -69,11 +177,11 @@
uint32 conn_time;
unistr *user;
unistr *client;
- } srvsvc_NetConn1;
+ } srvsvc_NetConnInfo1;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetConn1 *array;
+ [size_is(count)] srvsvc_NetConnInfo1 *array;
} srvsvc_NetConnCtr1;
typedef union {
@@ -82,26 +190,28 @@
[default] ;
} srvsvc_NetConnCtr;
+ /******************/
+ /* Function: 0x08 */
WERROR srvsvc_NetConnEnum(
[in] unistr *server_unc,
[in] unistr *path,
[in,out] uint32 level,
[in,out,switch_is(level)] srvsvc_NetConnCtr ctr,
- [in] uint32 preferred_len,
- [out] uint32 total,
+ [in] uint32 max_buffer,
+ [out] uint32 totalentries,
[in,out] uint32 *resume_handle
);
- /******************/
- /* Function: 0x09 */
-
+/**************************/
+/* srvsvc_NetFile */
+/**************************/
typedef struct {
uint32 fid;
- } srvsvc_NetFile2;
+ } srvsvc_NetFileInfo2;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetFile2 *array;
+ [size_is(count)] srvsvc_NetFileInfo2 *array;
} srvsvc_NetFileCtr2;
typedef struct {
@@ -110,50 +220,64 @@
uint32 num_locks;
unistr *path;
unistr *user;
- } srvsvc_NetFile3;
+ } srvsvc_NetFileInfo3;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetFile3 *array;
+ [size_is(count)] srvsvc_NetFileInfo3 *array;
} srvsvc_NetFileCtr3;
typedef union {
+ [case(2)] srvsvc_NetFileInfo2 *info2;
+ [case(3)] srvsvc_NetFileInfo3 *info3;
+ [default] ;
+ } srvsvc_NetFileInfo;
+
+ typedef union {
[case(2)] srvsvc_NetFileCtr2 *ctr2;
[case(3)] srvsvc_NetFileCtr3 *ctr3;
[default] ;
} srvsvc_NetFileCtr;
+ /******************/
+ /* Function: 0x09 */
WERROR srvsvc_NetFileEnum(
[in] unistr *server_unc,
[in] unistr *path,
[in] unistr *user,
- [in,out] uint32 level,
+ [in,out] uint32 level,
[in,out,switch_is(level)] srvsvc_NetFileCtr ctr,
- [in] uint32 preferred_len,
- [out] uint32 total,
+ [in] uint32 max_buffer,
+ [out] uint32 totalentries,
[in,out] uint32 *resume_handle
);
/******************/
/* Function: 0x0a */
- NTSTATUS srvsvc_NETRFILEGETINFO(
+ WERROR srvsvc_NetFileGetInfo(
+ [in] unistr *server_unc,
+ [in] uint32 fid,
+ [in] uint32 level,
+ [out,switch_is(level)] srvsvc_NetFileInfo info
);
/******************/
/* Function: 0x0b */
- NTSTATUS srvsvc_NET_FILE_CLOSE(
+ WERROR srvsvc_NetFileClose(
+ [in] unistr *server_unc,
+ [in] uint32 fid
);
- /******************/
- /* Function: 0x0c */
-
+/**************************/
+/* srvsvc_NetSess */
+/**************************/
typedef struct {
unistr *client;
- } srvsvc_NetSess0;
+ } srvsvc_NetSessInfo0;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetSess0 *array;
+ [size_is(count)] srvsvc_NetSessInfo0 *array;
} srvsvc_NetSessCtr0;
typedef struct {
@@ -163,11 +287,11 @@
uint32 time;
uint32 idle_time;
uint32 user_flags;
- } srvsvc_NetSess1;
+ } srvsvc_NetSessInfo1;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetSess1 *array;
+ [size_is(count)] srvsvc_NetSessInfo1 *array;
} srvsvc_NetSessCtr1;
typedef struct {
@@ -178,11 +302,11 @@
uint32 idle_time;
uint32 user_flags;
unistr *client_type;
- } srvsvc_NetSess2;
+ } srvsvc_NetSessInfo2;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetSess2 *array;
+ [size_is(count)] srvsvc_NetSessInfo2 *array;
} srvsvc_NetSessCtr2;
typedef struct {
@@ -190,11 +314,11 @@
unistr *user;
uint32 time;
uint32 idle_time;
- } srvsvc_NetSess10;
+ } srvsvc_NetSessInfo10;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetSess10 *array;
+ [size_is(count)] srvsvc_NetSessInfo10 *array;
} srvsvc_NetSessCtr10;
typedef struct {
@@ -206,11 +330,11 @@
uint32 user_flags;
unistr *client_type;
unistr *transport;
- } srvsvc_NetSess502;
+ } srvsvc_NetSessInfo502;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetSess502 *array;
+ [size_is(count)] srvsvc_NetSessInfo502 *array;
} srvsvc_NetSessCtr502;
typedef union {
@@ -222,48 +346,48 @@
[default] ;
} srvsvc_NetSessCtr;
+ /******************/
+ /* Function: 0x0c */
WERROR srvsvc_NetSessEnum(
[in] unistr *server_unc,
[in] unistr *client,
[in] unistr *user,
[in,out] uint32 level,
[in,out,switch_is(level)] srvsvc_NetSessCtr ctr,
- [in] uint32 preferred_len,
- [out] uint32 total,
+ [in] uint32 max_buffer,
+ [out] uint32 totalentries,
[in,out] uint32 *resume_handle
);
/******************/
/* Function: 0x0d */
- NTSTATUS srvsvc_NETRSESSIONDEL(
- );
-
- /******************/
- /* Function: 0x0e */
- NTSTATUS srvsvc_NET_SHARE_ADD(
+ WERROR srvsvc_NetSessDel(
+ [in] unistr *server_unc,
+ [in] unistr *client,
+ [in] unistr *user
);
- /******************/
- /* Function: 0x0f */
-
+/**************************/
+/* srvsvc_NetShare */
+/**************************/
typedef struct {
unistr *name;
- } srvsvc_NetShare0;
+ } srvsvc_NetShareInfo0;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetShare0 *array;
+ [size_is(count)] srvsvc_NetShareInfo0 *array;
} srvsvc_NetShareCtr0;
typedef struct {
unistr *name;
uint32 type;
unistr *comment;
- } srvsvc_NetShare1;
+ } srvsvc_NetShareInfo1;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetShare1 *array;
+ [size_is(count)] srvsvc_NetShareInfo1 *array;
} srvsvc_NetShareCtr1;
typedef struct {
@@ -275,11 +399,11 @@
uint32 current_users;
unistr *path;
unistr *password;
- } srvsvc_NetShare2;
+ } srvsvc_NetShareInfo2;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetShare2 *array;
+ [size_is(count)] srvsvc_NetShareInfo2 *array;
} srvsvc_NetShareCtr2;
typedef struct {
@@ -287,11 +411,11 @@
uint32 type;
unistr *comment;
uint32 csc_policy;
- } srvsvc_NetShare501;
+ } srvsvc_NetShareInfo501;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetShare501 *array;
+ [size_is(count)] srvsvc_NetShareInfo501 *array;
} srvsvc_NetShareCtr501;
typedef struct {
@@ -305,16 +429,21 @@
unistr *password;
uint32 unknown;
[subcontext(4)] security_descriptor *sd;
- } srvsvc_NetShare502;
+ } srvsvc_NetShareInfo502;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetShare502 *array;
+ [size_is(count)] srvsvc_NetShareInfo502 *array;
} srvsvc_NetShareCtr502;
- typedef struct {
- unistr *comment;
- } srvsvc_NetShare1004;
+ 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;
+ [default] ;
+ } srvsvc_NetShareInfo;
typedef union {
[case(0)] srvsvc_NetShareCtr0 *ctr0;
@@ -325,77 +454,555 @@
[default] ;
} srvsvc_NetShareCtr;
+ /******************/
+ /* Function: 0x0e */
+ WERROR srvsvc_NetShareAdd(
+ [in] unistr *server_unc,
+ [in] uint32 level,
+ [in,switch_is(level)] srvsvc_NetShareInfo info,
+ [in,out] uint32 *parm_error
+ );
+
+ /******************/
+ /* Function: 0x0f */
WERROR srvsvc_NetShareEnumAll (
- [in] unistr *server_unc,
- [in,out] uint32 level,
+ [in] unistr *server_unc,
+ [in,out] uint32 level,
[in,out,switch_is(level)] srvsvc_NetShareCtr ctr,
- [in] uint32 max_buffer,
- [out] uint32 totalentries,
- [in,out] uint32 *resume_handle
+ [in] uint32 max_buffer,
+ [out] uint32 totalentries,
+ [in,out] uint32 *resume_handle
);
/******************/
/* Function: 0x10 */
- NTSTATUS srvsvc_NET_SHARE_GET_INFO(
+ WERROR srvsvc_NetShareGetInfo(
+ [in] unistr *server_unc,
+ [in] unistr *share_name,
+ [in] uint32 level,
+ [out,switch_is(level)] srvsvc_NetShareInfo info
);
/******************/
/* Function: 0x11 */
- NTSTATUS srvsvc_NET_SHARE_SET_INFO(
+ WERROR srvsvc_NetShareSetInfo(
+ [in] unistr *server_unc,
+ [in] unistr *share_name,
+ [in] uint32 level,
+ [in,switch_is(level)] srvsvc_NetShareInfo info,
+ [in,out] uint32 *parm_error
);
/******************/
/* Function: 0x12 */
- NTSTATUS srvsvc_NET_SHARE_DEL(
+ WERROR srvsvc_NetShareDel(
+ [in] unistr *server_unc,
+ [in] unistr *share_name,
+ [in] uint32 reserved
);
/******************/
/* Function: 0x13 */
- NTSTATUS srvsvc_NET_SHARE_DEL_STICKY(
+ WERROR srvsvc_NetShareDelSticky(
+ [in] unistr *server_unc,
+ [in] unistr *share_name,
+ [in] uint32 reserved
);
/******************/
/* Function: 0x14 */
- NTSTATUS srvsvc_NETRSHARECHECK(
+ WERROR srvsvc_NetShareCheck(
+ [in] unistr *server_unc,
+ [in] unistr *share_name,
+ [out] uint32 type
);
+/**************************/
+/* srvsvc_NetSrv */
+/**************************/
+ typedef struct {
+ uint32 platform_id;
+ unistr *server_unc;
+ } srvsvc_NetSrvInfo100;
+
+ typedef struct {
+ uint32 platform_id;
+ unistr *server_unc;
+ uint32 ver_major;
+ uint32 ver_minor;
+ uint32 type;
+ unistr *comment;
+ } srvsvc_NetSrvInfo101;
+
+ typedef struct {
+ uint32 platform_id;
+ unistr *server_unc;
+ uint32 ver_major;
+ uint32 ver_minor;
+ uint32 type;
+ unistr *comment;
+ uint32 users;
+ uint32 disc;
+ uint32 hidden;
+ uint32 announce;
+ uint32 anndelta;
+ uint32 licences;
+ unistr *userpath;
+ } srvsvc_NetSrvInfo102;
+
+ typedef struct {
+ uint32 ulist_mtime;
+ uint32 glist_mtime;
+ uint32 alist_mtime;
+ unistr *alerts;
+ uint32 security;
+ uint32 numadmin;
+ uint32 lanmask;
+ unistr *guestaccount;
+ uint32 chdevs;
+ uint32 chdevqs;
+ uint32 chdevjobs;
+ uint32 connections;
+ uint32 shares;
+ uint32 openfiles;
+ uint32 sessopen;
+ uint32 sesssvc;
+ uint32 sessreqs;
+ uint32 opensearch;
+ uint32 activelocks;
+ uint32 sizereqbufs;
+ uint32 numbigbufs;
+ uint32 numfiletasks;
+ uint32 alertsched;
+ uint32 eroralert;
+ uint32 logonalert;
+ uint32 accessalert;
+ uint32 diskalert;
+ uint32 netioalert;
+ uint32 maxaudits;
+ unistr *srvheuristics;
+ } srvsvc_NetSrvInfo402;
+
+ typedef struct {
+ uint32 ulist_mtime;
+ uint32 glist_mtime;
+ uint32 alist_mtime;
+ unistr *alerts;
+ uint32 security;
+ uint32 numadmin;
+ uint32 lanmask;
+ unistr *guestaccount;
+ uint32 chdevs;
+ uint32 chdevqs;
+ uint32 chdevjobs;
+ uint32 connections;
+ uint32 shares;
+ uint32 openfiles;
+ uint32 sessopen;
+ uint32 sesssvc;
+ uint32 sessreqs;
+ uint32 opensearch;
+ uint32 activelocks;
+ uint32 sizereqbufs;
+ uint32 numbigbufs;
+ uint32 numfiletasks;
+ uint32 alertsched;
+ uint32 eroralert;
+ uint32 logonalert;
+ uint32 accessalert;
+ uint32 diskalert;
+ uint32 netioalert;
+ uint32 maxaudits;
+ unistr *srvheuristics;
+ uint32 auditedevents;
+ uint32 auditprofile;
+ unistr *autopath;
+ } srvsvc_NetSrvInfo403;
+
+ typedef struct {
+ uint32 sessopen;
+ uint32 sesssvc;
+ uint32 opensearch;
+ uint32 sizereqbufs;
+ uint32 initworkitems;
+ uint32 maxworkitems;
+ uint32 rawworkitems;
+ uint32 irpstacksize;
+ uint32 maxrawbuflen;
+ uint32 sessusers;
+ uint32 sessconns;
+ uint32 maxpagedmemoryusage;
+ uint32 maxnonpagedmemoryusage;
+ uint32 enablesoftcompat;
+ uint32 enableforcedlogoff;
+ uint32 timesource;
+ uint32 acceptdownlevelapis;
+ uint32 lmannounce;
+ } srvsvc_NetSrvInfo502;
+
+ typedef struct{
+ uint32 sessopen;
+ uint32 sesssvc;
+ uint32 opensearch;
+ uint32 sizereqbufs;
+ uint32 initworkitems;
+ uint32 maxworkitems;
+ uint32 rawworkitems;
+ uint32 irpstacksize;
+ uint32 maxrawbuflen;
+ uint32 sessusers;
+ uint32 sessconns;
+ uint32 maxpagedmemoryusage;
+ uint32 maxnonpagedmemoryusage;
+ uint32 enablesoftcompat;
+ uint32 enableforcedlogoff;
+ uint32 timesource;
+ uint32 acceptdownlevelapis;
+ uint32 lmannounce;
+ unistr *domain;
+ uint32 maxcopyreadlen;
+ uint32 maxcopywritelen;
+ uint32 minkeepsearch;
+ uint32 maxkeepsearch;
+ uint32 minkeepcomplsearch;
+ uint32 maxkeepcomplsearch;
+ uint32 threadcountadd;
+ uint32 numlockthreads;
+ uint32 scavtimeout;
+ uint32 minrcvqueue;
+ uint32 minfreeworkitems;
+ uint32 xactmemsize;
+ uint32 threadpriority;
+ uint32 maxmpxct;
+ uint32 oplockbreakwait;
+ uint32 oplockbreakresponsewait;
+ uint32 enableoplocks;
+ uint32 enableoplockforceclose;
+ uint32 enablefcbopens;
+ uint32 enableraw;
+ uint32 enablesharednetdrives;
+ uint32 minfreeconnections;
+ uint32 maxfreeconnections;
+ } srvsvc_NetSrvInfo503;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo599;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1005;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1010;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1016;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1017;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1018;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1107;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1501;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1502;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1503;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1506;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1509;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1510;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1511;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1512;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1513;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1514;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1515;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1516;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1518;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1520;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1521;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1522;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1523;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1524;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1525;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1528;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1529;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1530;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1533;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1534;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1535;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1536;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1537;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1538;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1539;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1540;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1541;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1542;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1543;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1544;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1545;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1546;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1547;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1548;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1549;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1550;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1552;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1553;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1554;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1555;
+
+ typedef struct{
+ uint32 dummy;
+ } srvsvc_NetSrvInfo1556;
+
+
+ typedef union{
+ [case(100)] srvsvc_NetSrvInfo100 *info100;
+ [case(101)] srvsvc_NetSrvInfo101 *info101;
+ [case(102)] srvsvc_NetSrvInfo102 *info102;
+ [case(402)] srvsvc_NetSrvInfo402 *info402;
+ [case(403)] srvsvc_NetSrvInfo403 *info403;
+ [case(502)] srvsvc_NetSrvInfo502 *info502;
+ [case(503)] srvsvc_NetSrvInfo503 *info503;
+ [case(599)] srvsvc_NetSrvInfo599 *info599;
+ [case(1005)] srvsvc_NetSrvInfo1005 *info1005;
+ [case(1010)] srvsvc_NetSrvInfo1010 *info1010;
+ [case(1016)] srvsvc_NetSrvInfo1016 *info1016;
+ [case(1017)] srvsvc_NetSrvInfo1017 *info1017;
+ [case(1018)] srvsvc_NetSrvInfo1018 *info1018;
+ [case(1107)] srvsvc_NetSrvInfo1107 *info1107;
+ [case(1501)] srvsvc_NetSrvInfo1501 *info1501;
+ [case(1502)] srvsvc_NetSrvInfo1502 *info1502;
+ [case(1503)] srvsvc_NetSrvInfo1503 *info1503;
+ [case(1506)] srvsvc_NetSrvInfo1506 *info1506;
+ [case(1509)] srvsvc_NetSrvInfo1509 *info1509;
+ [case(1510)] srvsvc_NetSrvInfo1510 *info1510;
+ [case(1511)] srvsvc_NetSrvInfo1511 *info1511;
+ [case(1512)] srvsvc_NetSrvInfo1512 *info1512;
+ [case(1513)] srvsvc_NetSrvInfo1513 *info1513;
+ [case(1514)] srvsvc_NetSrvInfo1514 *info1514;
+ [case(1515)] srvsvc_NetSrvInfo1515 *info1515;
+ [case(1516)] srvsvc_NetSrvInfo1516 *info1516;
+ [case(1518)] srvsvc_NetSrvInfo1518 *info1518;
+ [case(1520)] srvsvc_NetSrvInfo1520 *info1520;
+ [case(1521)] srvsvc_NetSrvInfo1521 *info1521;
+ [case(1522)] srvsvc_NetSrvInfo1522 *info1522;
+ [case(1523)] srvsvc_NetSrvInfo1523 *info1523;
+ [case(1524)] srvsvc_NetSrvInfo1524 *info1524;
+ [case(1525)] srvsvc_NetSrvInfo1525 *info1525;
+ [case(1528)] srvsvc_NetSrvInfo1528 *info1528;
+ [case(1529)] srvsvc_NetSrvInfo1529 *info1529;
+ [case(1530)] srvsvc_NetSrvInfo1530 *info1530;
+ [case(1533)] srvsvc_NetSrvInfo1533 *info1533;
+ [case(1534)] srvsvc_NetSrvInfo1534 *info1534;
+ [case(1535)] srvsvc_NetSrvInfo1535 *info1535;
+ [case(1536)] srvsvc_NetSrvInfo1536 *info1536;
+ [case(1537)] srvsvc_NetSrvInfo1537 *info1537;
+ [case(1538)] srvsvc_NetSrvInfo1538 *info1538;
+ [case(1539)] srvsvc_NetSrvInfo1539 *info1539;
+ [case(1540)] srvsvc_NetSrvInfo1540 *info1540;
+ [case(1541)] srvsvc_NetSrvInfo1541 *info1541;
+ [case(1542)] srvsvc_NetSrvInfo1542 *info1542;
+ [case(1543)] srvsvc_NetSrvInfo1543 *info1543;
+ [case(1544)] srvsvc_NetSrvInfo1544 *info1544;
+ [case(1545)] srvsvc_NetSrvInfo1545 *info1545;
+ [case(1546)] srvsvc_NetSrvInfo1546 *info1546;
+ [case(1547)] srvsvc_NetSrvInfo1547 *info1547;
+ [case(1548)] srvsvc_NetSrvInfo1548 *info1548;
+ [case(1549)] srvsvc_NetSrvInfo1549 *info1549;
+ [case(1550)] srvsvc_NetSrvInfo1550 *info1550;
+ [case(1552)] srvsvc_NetSrvInfo1552 *info1552;
+ [case(1553)] srvsvc_NetSrvInfo1553 *info1553;
+ [case(1554)] srvsvc_NetSrvInfo1554 *info1554;
+ [case(1555)] srvsvc_NetSrvInfo1555 *info1555;
+ [case(1556)] srvsvc_NetSrvInfo1556 *info1556;
+ [default];
+ } srvsvc_NetSrvInfo;
+
/******************/
/* Function: 0x15 */
- NTSTATUS srvsvc_NET_SRV_GET_INFO(
+ WERROR srvsvc_NetSrvGetInfo(
+ [in] unistr *server_unc,
+ [in] uint32 level,
+ [out,switch_is(level)] srvsvc_NetSrvInfo info
);
/******************/
/* Function: 0x16 */
- NTSTATUS srvsvc_NET_SRV_SET_INFO(
+ WERROR srvsvc_NetSrvSetInfo(
+ [in] unistr *server_unc,
+ [in] uint32 level,
+ [in,switch_is(level)] srvsvc_NetSrvInfo info,
+ [in,out] uint32 *parm_error
);
- /******************/
- /* Function: 0x17 */
-
+/**************************/
+/* srvsvc_NetDisk */
+/**************************/
typedef struct {
uint32 unknown;
lstring disk;
uint16 unknown2;
- } srvsvc_NetDisk0;
+ } srvsvc_NetDiskInfo0;
typedef struct {
uint32 unknown;
uint32 count;
- [size_is(count)] srvsvc_NetDisk0 array[];
+ [size_is(count)] srvsvc_NetDiskInfo0 array[];
} srvsvc_NetDiskCtr0;
typedef union {
[case(0)] srvsvc_NetDiskCtr0 *ctr0;
} srvsvc_NetDiskCtr;
+ /******************/
+ /* Function: 0x17 */
WERROR srvsvc_NetDiskEnum(
[in] unistr *server_unc,
[in] uint32 level,
- [out] uint32 num_entries,
+ [out] uint32 count,
[in,switch_is(level)] srvsvc_NetDiskCtr ctr,
- [out] srvsvc_NetDiskCtr0 *disks,
+ [out] srvsvc_NetDiskCtr0 *ctr0,
[in] uint32 unknown,
- [out] uint32 max_entries,
+ [out] uint32 totalentries,
[in,out] uint32 *resume_handle
);
@@ -408,61 +1015,69 @@
/* Function: 0x19 */
NTSTATUS srvsvc_NETRSERVERTRANSPORTADD(
);
-
- /******************/
- /* Function: 0x1a */
+/**************************/
+/* srvsvc_NetTransport */
+/**************************/
typedef struct {
uint32 count;
uint8 addr[count];
- } srvsvc_TransportAddress;
+ } srvsvc_NetTransportAddress;
typedef struct {
uint32 vcs;
unistr *name;
- srvsvc_TransportAddress *addr;
+ srvsvc_NetTransportAddress *addr;
uint32 addr_len;
unistr *net_addr;
- } srvsvc_NetTransport0;
+ } srvsvc_NetTransportInfo0;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetTransport0 *array;
+ [size_is(count)] srvsvc_NetTransportInfo0 *array;
} srvsvc_NetTransportCtr0;
typedef struct {
uint32 vcs;
unistr *name;
- srvsvc_TransportAddress *addr;
+ srvsvc_NetTransportAddress *addr;
uint32 addr_len;
unistr *net_addr;
unistr *domain;
- } srvsvc_NetTransport1;
+ } srvsvc_NetTransportInfo1;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetTransport1 *array;
+ [size_is(count)] srvsvc_NetTransportInfo1 *array;
} srvsvc_NetTransportCtr1;
typedef struct {
uint32 dummy;
- } srvsvc_NetTransport2;
+ } srvsvc_NetTransportInfo2;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetTransport2 *array;
+ [size_is(count)] srvsvc_NetTransportInfo2 *array;
} srvsvc_NetTransportCtr2;
typedef struct {
uint32 dummy;
- } srvsvc_NetTransport3;
+ } srvsvc_NetTransportInfo3;
typedef struct {
uint32 count;
- [size_is(count)] srvsvc_NetTransport3 *array;
+ [size_is(count)] srvsvc_NetTransportInfo3 *array;
} srvsvc_NetTransportCtr3;
typedef union {
+ [case(0)] srvsvc_NetTransportInfo0 *info0;
+ [case(1)] srvsvc_NetTransportInfo1 *info1;
+ [case(2)] srvsvc_NetTransportInfo2 *info2;
+ [case(3)] srvsvc_NetTransportInfo3 *info3;
+ [default];
+ } srvsvc_NetTransportInfo;
+
+ typedef union {
[case(0)] srvsvc_NetTransportCtr0 *ctr0;
[case(1)] srvsvc_NetTransportCtr1 *ctr1;
[case(2)] srvsvc_NetTransportCtr2 *ctr2;
@@ -470,12 +1085,14 @@
[default];
} srvsvc_NetTransportCtr;
+ /******************/
+ /* Function: 0x1a */
WERROR srvsvc_NetTransportEnum(
[in] unistr *server_unc,
[in,out] uint32 level,
[in,out,switch_is(level)] srvsvc_NetTransportCtr ctr,
- [in] uint32 preferred_len,
- [out] uint32 total,
+ [in] uint32 max_buffer,
+ [out] uint32 totalentries,
[in,out] uint32 *resume_handle
);
@@ -532,7 +1149,7 @@
[in] unistr *server_unc,
[in,out] uint32 level,
[in,out,switch_is(level)] srvsvc_NetShareCtr ctr,
- [in] uint32 preferred_len,
+ [in] uint32 max_buffer,
[out] uint32 totalentries,
[in,out] uint32 *resume_handle
);
diff --git a/source4/librpc/idl/wkssvc.idl b/source4/librpc/idl/wkssvc.idl
index 31e37d4759..9a92d4e3e0 100644
--- a/source4/librpc/idl/wkssvc.idl
+++ b/source4/librpc/idl/wkssvc.idl
@@ -21,7 +21,7 @@
unistr *domain;
uint32 ver_major;
uint32 ver_minor;
- } wkssvc_Info100;
+ } wkssvc_NetWkstaInfo100;
typedef struct {
uint32 platform_id;
@@ -30,7 +30,7 @@
uint32 ver_major;
uint32 ver_minor;
unistr *lan_root;
- } wkssvc_Info101;
+ } wkssvc_NetWkstaInfo101;
typedef struct {
uint32 platform_id;
@@ -40,7 +40,7 @@
uint32 ver_minor;
unistr *lan_root;
uint32 logged_on_users;
- } wkssvc_Info102;
+ } wkssvc_NetWkstaInfo102;
typedef struct {
uint32 char_wait;
@@ -78,25 +78,30 @@
BOOL buf_read_only_files;
BOOL force_core_create_mode;
BOOL use_512_byte_max_transfer;
- } wkssvc_Info502;
+ } wkssvc_NetWkstaInfo502;
typedef union {
- [case(100)] wkssvc_Info100 *info100;
- [case(101)] wkssvc_Info101 *info101;
- [case(102)] wkssvc_Info102 *info102;
- [case(502)] wkssvc_Info502 *info502;
- } wkssvc_Info;
+ [case(100)] wkssvc_NetWkstaInfo100 *info100;
+ [case(101)] wkssvc_NetWkstaInfo101 *info101;
+ [case(102)] wkssvc_NetWkstaInfo102 *info102;
+ [case(502)] wkssvc_NetWkstaInfo502 *info502;
+ } wkssvc_NetWkstaInfo;
- WERROR wkssvc_QueryInfo(
+ WERROR wkssvc_NetWkstaGetInfo(
[in] unistr *server_name,
[in] uint32 level,
- [out,switch_is(level)] wkssvc_Info info
+ [out,switch_is(level)] wkssvc_NetWkstaInfo info
);
/******************/
/* Function: 0x01 */
- WERROR wkssvc_SetInfo();
+ WERROR wkssvc_NetWkstaSetInfo(
+ [in] unistr *server_name,
+ [in] uint32 level,
+ [in,switch_is(level)] wkssvc_NetWkstaInfo info,
+ [in,out] uint32 *parm_error
+ );
/*****************************/
/* Function 0x02 */
@@ -120,22 +125,22 @@
unistr *name;
unistr *address;
uint32 wan_link;
- } wkssvc_TransportInfo0;
+ } wkssvc_NetWkstaTransportInfo0;
typedef struct {
uint32 count;
- [size_is(count)] wkssvc_TransportInfo0 *transports;
- } wkssvc_TransportInfoArray;
+ [size_is(count)] wkssvc_NetWkstaTransportInfo0 *array;
+ } wkssvc_NetWkstaTransportCtr0;
typedef union {
- [case(0)] wkssvc_TransportInfoArray *array;
+ [case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0;
[default] ;
- } wkssvc_TransportInfo;
+ } wkssvc_NetWkstaTransportCtr;
- WERROR wkssvc_TransportEnum (
+ WERROR wkssvc_NetWkstaTransportEnum (
[in] unistr *server_name,
[in,out] uint32 level,
- [in,out,switch_is(level)] wkssvc_TransportInfo info,
+ [in,out,switch_is(level)] wkssvc_NetWkstaTransportCtr ctr,
[in] uint32 max_buffer,
[out] uint32 totalentries,
[in,out] uint32 *resume_handle