Wireshark 2.9.0-477-g68ec514b The Wireshark network protocol analyzer

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

srvsvc.idl
1 #include "idl_types.h"
2
3 /*import "security.idl", "svcctl.idl";*/
4
5 /*
6 srvsvc interface definitions
7 */
8
9 [ uuid("4b324fc8-1670-01d3-1278-5a47bf6ee188"),
10 version(3.0),
11 endpoint("ncacn_np:[\\pipe\\srvsvc]", "ncacn_ip_tcp:", "ncalrpc:"),
12 pointer_default(unique),
13 pointer_default_top(unique),
14 helpstring("Server Service")
15 ] interface srvsvc
16 {
17 typedef bitmap svcctl_ServerType svcctl_ServerType;
18 typedef bitmap security_secinfo security_secinfo;
19
20 /**************************/
21 /* srvsvc_NetCharDev */
22 /**************************/
23 typedef struct {
24 [string,charset(UTF16)] uint16 *device;
25 } srvsvc_NetCharDevInfo0;
26
27 typedef struct {
28 uint32 count;
29 [size_is(count)] srvsvc_NetCharDevInfo0 *array;
30 } srvsvc_NetCharDevCtr0;
31
32 typedef struct {
33 [string,charset(UTF16)] uint16 *device;
34 uint32 status;
35 [string,charset(UTF16)] uint16 *user;
36 uint32 time;
37 } srvsvc_NetCharDevInfo1;
38
39 typedef struct {
40 uint32 count;
41 [size_is(count)] srvsvc_NetCharDevInfo1 *array;
42 } srvsvc_NetCharDevCtr1;
43
44 typedef union {
45 [case(0)] srvsvc_NetCharDevInfo0 *info0;
46 [case(1)] srvsvc_NetCharDevInfo1 *info1;
47 [default] ;
48 } srvsvc_NetCharDevInfo;
49
50 typedef union {
51 [case(0)] srvsvc_NetCharDevCtr0 *ctr0;
52 [case(1)] srvsvc_NetCharDevCtr1 *ctr1;
53 [default] ;
54 } srvsvc_NetCharDevCtr;
55
56 /******************/
57 /* Function: 0x00 */
58 WERROR srvsvc_NetCharDevEnum(
59 [in] [string,charset(UTF16)] uint16 *server_unc,
60 [in,out,ref] uint32 *level,
61 [in,out,switch_is(level),ref] srvsvc_NetCharDevCtr *ctr,
62 [in] uint32 max_buffer,
63 [out,ref] uint32 *totalentries,
64 [in,out] uint32 *resume_handle
65 );
66
67 /******************/
68 /* Function: 0x01 */
69 WERROR srvsvc_NetCharDevGetInfo(
70 [in] [string,charset(UTF16)] uint16 *server_unc,
71 [in] [string,charset(UTF16)] uint16 device_name[],
72 [in] uint32 level,
73 [out,switch_is(level),ref] srvsvc_NetCharDevInfo *info
74 );
75
76 /******************/
77 /* Function: 0x02 */
78 WERROR srvsvc_NetCharDevControl(
79 [in] [string,charset(UTF16)] uint16 *server_unc,
80 [in] [string,charset(UTF16)] uint16 device_name[],
81 [in] uint32 opcode
82 );
83
84 /**************************/
85 /* srvsvc_NetCharDevQ */
86 /**************************/
87 typedef struct {
88 [string,charset(UTF16)] uint16 *device;
89 } srvsvc_NetCharDevQInfo0;
90
91 typedef struct {
92 uint32 count;
93 [size_is(count)] srvsvc_NetCharDevQInfo0 *array;
94 } srvsvc_NetCharDevQCtr0;
95
96 typedef struct {
97 [string,charset(UTF16)] uint16 *device;
98 uint32 priority;
99 [string,charset(UTF16)] uint16 *devices;
100 uint32 users;
101 uint32 num_ahead;
102 } srvsvc_NetCharDevQInfo1;
103
104 typedef struct {
105 uint32 count;
106 [size_is(count)] srvsvc_NetCharDevQInfo1 *array;
107 } srvsvc_NetCharDevQCtr1;
108
109 typedef union {
110 [case(0)] srvsvc_NetCharDevQInfo0 *info0;
111 [case(1)] srvsvc_NetCharDevQInfo1 *info1;
112 [default] ;
113 } srvsvc_NetCharDevQInfo;
114
115 typedef union {
116 [case(0)] srvsvc_NetCharDevQCtr0 *ctr0;
117 [case(1)] srvsvc_NetCharDevQCtr1 *ctr1;
118 [default] ;
119 } srvsvc_NetCharDevQCtr;
120
121 /******************/
122 /* Function: 0x03 */
123 WERROR srvsvc_NetCharDevQEnum(
124 [in] [string,charset(UTF16)] uint16 *server_unc,
125 [in] [string,charset(UTF16)] uint16 *user,
126 [in,out,ref] uint32 *level,
127 [in,out,switch_is(level),ref] srvsvc_NetCharDevQCtr *ctr,
128 [in] uint32 max_buffer,
129 [out,ref] uint32 *totalentries,
130 [in,out] uint32 *resume_handle
131 );
132
133 /******************/
134 /* Function: 0x04 */
135 WERROR srvsvc_NetCharDevQGetInfo(
136 [in] [string,charset(UTF16)] uint16 *server_unc,
137 [in] [string,charset(UTF16)] uint16 queue_name[],
138 [in] [string,charset(UTF16)] uint16 user[],
139 [in] uint32 level,
140 [out,switch_is(level),ref] srvsvc_NetCharDevQInfo *info
141 );
142
143 /******************/
144 /* Function: 0x05 */
145 WERROR srvsvc_NetCharDevQSetInfo(
146 [in] [string,charset(UTF16)] uint16 *server_unc,
147 [in] [string,charset(UTF16)] uint16 queue_name[],
148 [in] uint32 level,
149 [in,switch_is(level)] srvsvc_NetCharDevQInfo info,
150 [in,out] uint32 *parm_error
151 );
152
153 /******************/
154 /* Function: 0x06 */
155 WERROR srvsvc_NetCharDevQPurge(
156 [in] [string,charset(UTF16)] uint16 *server_unc,
157 [in] [string,charset(UTF16)] uint16 queue_name[]
158 );
159
160 /******************/
161 /* Function: 0x07 */
162 WERROR srvsvc_NetCharDevQPurgeSelf(
163 [in] [string,charset(UTF16)] uint16 *server_unc,
164 [in] [string,charset(UTF16)] uint16 queue_name[],
165 [in] [string,charset(UTF16)] uint16 computer_name[]
166 );
167
168 /**************************/
169 /* srvsvc_NetConn */
170 /**************************/
171 typedef struct {
172 uint32 conn_id;
173 } srvsvc_NetConnInfo0;
174
175 typedef struct {
176 uint32 count;
177 [size_is(count)] srvsvc_NetConnInfo0 *array;
178 } srvsvc_NetConnCtr0;
179
180 typedef struct {
181 uint32 conn_id;
182 uint32 conn_type;
183 uint32 num_open;
184 uint32 num_users;
185 uint32 conn_time;
186 [string,charset(UTF16)] uint16 *user;
187 [string,charset(UTF16)] uint16 *share;
188 } srvsvc_NetConnInfo1;
189
190 typedef struct {
191 uint32 count;
192 [size_is(count)] srvsvc_NetConnInfo1 *array;
193 } srvsvc_NetConnCtr1;
194
195 typedef union {
196 [case(0)] srvsvc_NetConnCtr0 *ctr0;
197 [case(1)] srvsvc_NetConnCtr1 *ctr1;
198 [default] ;
199 } srvsvc_NetConnCtr;
200
201 /******************/
202 /* Function: 0x08 */
203 WERROR srvsvc_NetConnEnum(
204 [in] [string,charset(UTF16)] uint16 *server_unc,
205 [in] [string,charset(UTF16)] uint16 *path,
206 [in,out,ref] uint32 *level,
207 [in,out,switch_is(level),ref] srvsvc_NetConnCtr *ctr,
208 [in] uint32 max_buffer,
209 [out,ref] uint32 *totalentries,
210 [in,out] uint32 *resume_handle
211 );
212
213 /**************************/
214 /* srvsvc_NetFile */
215 /**************************/
216 typedef struct {
217 uint32 fid;
218 } srvsvc_NetFileInfo2;
219
220 typedef struct {
221 uint32 count;
222 [size_is(count)] srvsvc_NetFileInfo2 *array;
223 } srvsvc_NetFileCtr2;
224
225 typedef struct {
226 uint32 fid;
227 uint32 permissions;
228 uint32 num_locks;
229 [string,charset(UTF16)] uint16 *path;
230 [string,charset(UTF16)] uint16 *user;
231 } srvsvc_NetFileInfo3;
232
233 typedef struct {
234 uint32 count;
235 [size_is(count)] srvsvc_NetFileInfo3 *array;
236 } srvsvc_NetFileCtr3;
237
238 typedef union {
239 [case(2)] srvsvc_NetFileInfo2 *info2;
240 [case(3)] srvsvc_NetFileInfo3 *info3;
241 [default] ;
242 } srvsvc_NetFileInfo;
243
244 typedef union {
245 [case(2)] srvsvc_NetFileCtr2 *ctr2;
246 [case(3)] srvsvc_NetFileCtr3 *ctr3;
247 [default] ;
248 } srvsvc_NetFileCtr;
249
250 /******************/
251 /* Function: 0x09 */
252 WERROR srvsvc_NetFileEnum(
253 [in] [string,charset(UTF16)] uint16 *server_unc,
254 [in] [string,charset(UTF16)] uint16 *path,
255 [in] [string,charset(UTF16)] uint16 *user,
256 [in,out,ref] uint32 *level,
257 [in,out,switch_is(level),ref] srvsvc_NetFileCtr *ctr,
258 [in] uint32 max_buffer,
259 [out,ref] uint32 *totalentries,
260 [in,out] uint32 *resume_handle
261 );
262
263 /******************/
264 /* Function: 0x0a */
265 WERROR srvsvc_NetFileGetInfo(
266 [in] [string,charset(UTF16)] uint16 *server_unc,
267 [in] uint32 fid,
268 [in] uint32 level,
269 [out,switch_is(level),ref] srvsvc_NetFileInfo *info
270 );
271
272 /******************/
273 /* Function: 0x0b */
274 WERROR srvsvc_NetFileClose(
275 [in] [string,charset(UTF16)] uint16 *server_unc,
276 [in] uint32 fid
277 );
278
279 /**************************/
280 /* srvsvc_NetSess */
281 /**************************/
282 typedef [bitmap32bit] bitmap {
283 SESS_GUEST = 0x00000001,
284 SESS_NOENCRYPTION = 0x00000002
285 } srvsvc_SessionUserFlags;
286
287 typedef struct {
288 [string,charset(UTF16)] uint16 *client;
289 } srvsvc_NetSessInfo0;
290
291 typedef struct {
292 uint32 count;
293 [size_is(count)] srvsvc_NetSessInfo0 *array;
294 } srvsvc_NetSessCtr0;
295
296 typedef struct {
297 [string,charset(UTF16)] uint16 *client;
298 [string,charset(UTF16)] uint16 *user;
299 uint32 num_open;
300 uint32 time;
301 uint32 idle_time;
302 srvsvc_SessionUserFlags user_flags;
303 } srvsvc_NetSessInfo1;
304
305 typedef struct {
306 uint32 count;
307 [size_is(count)] srvsvc_NetSessInfo1 *array;
308 } srvsvc_NetSessCtr1;
309
310 typedef struct {
311 [string,charset(UTF16)] uint16 *client;
312 [string,charset(UTF16)] uint16 *user;
313 uint32 num_open;
314 uint32 time;
315 uint32 idle_time;
316 srvsvc_SessionUserFlags user_flags;
317 [string,charset(UTF16)] uint16 *client_type;
318 } srvsvc_NetSessInfo2;
319
320 typedef struct {
321 uint32 count;
322 [size_is(count)] srvsvc_NetSessInfo2 *array;
323 } srvsvc_NetSessCtr2;
324
325 typedef struct {
326 [string,charset(UTF16)] uint16 *client;
327 [string,charset(UTF16)] uint16 *user;
328 uint32 time;
329 uint32 idle_time;
330 } srvsvc_NetSessInfo10;
331
332 typedef struct {
333 uint32 count;
334 [size_is(count)] srvsvc_NetSessInfo10 *array;
335 } srvsvc_NetSessCtr10;
336
337 typedef struct {
338 [string,charset(UTF16)] uint16 *client;
339 [string,charset(UTF16)] uint16 *user;
340 uint32 num_open;
341 uint32 time;
342 uint32 idle_time;
343 srvsvc_SessionUserFlags user_flags;
344 [string,charset(UTF16)] uint16 *client_type;
345 [string,charset(UTF16)] uint16 *transport;
346 } srvsvc_NetSessInfo502;
347
348 typedef struct {
349 uint32 count;
350 [size_is(count)] srvsvc_NetSessInfo502 *array;
351 } srvsvc_NetSessCtr502;
352
353 typedef union {
354 [case(0)] srvsvc_NetSessCtr0 *ctr0;
355 [case(1)] srvsvc_NetSessCtr1 *ctr1;
356 [case(2)] srvsvc_NetSessCtr2 *ctr2;
357 [case(10)] srvsvc_NetSessCtr10 *ctr10;
358 [case(502)] srvsvc_NetSessCtr502 *ctr502;
359 [default] ;
360 } srvsvc_NetSessCtr;
361
362 /******************/
363 /* Function: 0x0c */
364 WERROR srvsvc_NetSessEnum(
365 [in] [string,charset(UTF16)] uint16 *server_unc,
366 [in] [string,charset(UTF16)] uint16 *client,
367 [in] [string,charset(UTF16)] uint16 *user,
368 [in,out,ref] uint32 *level,
369 [in,out,switch_is(level),ref] srvsvc_NetSessCtr *ctr,
370 [in] uint32 max_buffer,
371 [out,ref] uint32 *totalentries,
372 [in,out] uint32 *resume_handle
373 );
374
375 /******************/
376 /* Function: 0x0d */
377 WERROR srvsvc_NetSessDel(
378 [in] [string,charset(UTF16)] uint16 *server_unc,
379 [in] [string,charset(UTF16)] uint16 *client,
380 [in] [string,charset(UTF16)] uint16 *user
381 );
382
383 /**************************/
384 /* srvsvc_NetShare */
385 /**************************/
386
387 /* share types */
388 const uint32 STYPE_TEMPORARY = 0x40000000; /* share is a temporary one */
389 const uint32 STYPE_HIDDEN = 0x80000000; /* share is a hidden one */
390
391 typedef [v1_enum, flag(NDR_PAHEX)] enum {
392 STYPE_DISKTREE = 0,
393 STYPE_DISKTREE_TEMPORARY = STYPE_DISKTREE|STYPE_TEMPORARY,
394 STYPE_DISKTREE_HIDDEN = STYPE_DISKTREE|STYPE_HIDDEN,
395 STYPE_PRINTQ = 1,
396 STYPE_PRINTQ_TEMPORARY = STYPE_PRINTQ|STYPE_TEMPORARY,
397 STYPE_PRINTQ_HIDDEN = STYPE_PRINTQ|STYPE_HIDDEN,
398 STYPE_DEVICE = 2, /* Serial device */
399 STYPE_DEVICE_TEMPORARY = STYPE_DEVICE|STYPE_TEMPORARY,
400 STYPE_DEVICE_HIDDEN = STYPE_DEVICE|STYPE_HIDDEN,
401 STYPE_IPC = 3, /* Interprocess communication (IPC) */
402 STYPE_IPC_TEMPORARY = STYPE_IPC|STYPE_TEMPORARY,
403 STYPE_IPC_HIDDEN = STYPE_IPC|STYPE_HIDDEN
404 } srvsvc_ShareType;
405
406 typedef struct {
407 [string,charset(UTF16)] uint16 *name;
408 } srvsvc_NetShareInfo0;
409
410 typedef struct {
411 [string,charset(UTF16)] uint16 *name;
412 srvsvc_ShareType type;
413 [string,charset(UTF16)] uint16 *comment;
414 } srvsvc_NetShareInfo1;
415
416 typedef struct {
417 [string,charset(UTF16)] uint16 *name;
418 srvsvc_ShareType type;
419 [string,charset(UTF16)] uint16 *comment;
420 uint32 permissions;
421 uint32 max_users;
422 uint32 current_users;
423 [string,charset(UTF16)] uint16 *path;
424 [string,charset(UTF16)] uint16 *password;
425 } srvsvc_NetShareInfo2;
426
427 typedef struct {
428 [string,charset(UTF16)] uint16 *name;
429 srvsvc_ShareType type;
430 [string,charset(UTF16)] uint16 *comment;
431 uint32 csc_policy;
432 } srvsvc_NetShareInfo501;
433
434 typedef struct {
435 [string,charset(UTF16)] uint16 *name;
436 srvsvc_ShareType type;
437 [string,charset(UTF16)] uint16 *comment;
438 uint32 permissions;
439 int32 max_users;
440 uint32 current_users;
441 [string,charset(UTF16)] uint16 *path;
442 [string,charset(UTF16)] uint16 *password;
443 /* maybe here is a struct sec_desc_buf following */
444 uint32 unknown;
445 [subcontext(4)] security_descriptor *sd;
446 } srvsvc_NetShareInfo502;
447
448 typedef struct {
449 [string,charset(UTF16)] uint16 *comment;
450 } srvsvc_NetShareInfo1004;
451
452 typedef struct {
453 int32 max_users;
454 } srvsvc_NetShareInfo1006;
455
456 typedef [bitmap32bit] bitmap {
457 SHARE_1005_FLAGS_IN_DFS = 0x00000001,
458 SHARE_1005_FLAGS_DFS_ROOT = 0x00000002,
459 CSC_CACHE_AUTO_REINT = 0x00000010,
460 CSC_CACHE_VDO = 0x00000020,
461 FLAGS_RESTRICT_EXCLUSIVE_OPENS = 0x00000100,
462 FLAGS_FORCE_SHARED_DELETE = 0x00000200,
463 FLAGS_ALLOW_NAMESPACE_CACHING = 0x00000400,
464 FLAGS_ACCESS_BASED_DIRECTORY_ENUM = 0x00000800
465 } srvsvc_DFSFlags;
466
467 const uint32 SHARE_1005_CSC_POLICY_MASK = 0x00000030;
468 const uint32 SHARE_1005_CSC_POLICY_SHIFT = 4;
469
470 typedef struct {
471 uint32 count;
472 [size_is(count)] srvsvc_NetShareInfo0 *array;
473 } srvsvc_NetShareCtr0;
474
475 typedef struct {
476 uint32 count;
477 [size_is(count)] srvsvc_NetShareInfo1 *array;
478 } srvsvc_NetShareCtr1;
479
480 typedef struct {
481 uint32 count;
482 [size_is(count)] srvsvc_NetShareInfo2 *array;
483 } srvsvc_NetShareCtr2;
484
485 typedef struct {
486 uint32 count;
487 [size_is(count)] srvsvc_NetShareInfo501 *array;
488 } srvsvc_NetShareCtr501;
489
490 typedef struct {
491 uint32 count;
492 [size_is(count)] srvsvc_NetShareInfo502 *array;
493 } srvsvc_NetShareCtr502;
494
495 typedef struct {
496 uint32 count;
497 [size_is(count)] srvsvc_NetShareInfo1004 *array;
498 } srvsvc_NetShareCtr1004;
499
500 typedef struct {
501 srvsvc_DFSFlags dfs_flags;
502 } srvsvc_NetShareInfo1005;
503
504 typedef struct {
505 uint32 count;
506 [size_is(count)] srvsvc_NetShareInfo1005 *array;
507 } srvsvc_NetShareCtr1005;
508
509 typedef struct {
510 uint32 count;
511 [size_is(count)] srvsvc_NetShareInfo1006 *array;
512 } srvsvc_NetShareCtr1006;
513
514 typedef struct {
515 uint32 flags;
516 [string,charset(UTF16)] uint16 *alternate_directory_name;
517 } srvsvc_NetShareInfo1007;
518
519 typedef struct {
520 uint32 count;
521 [size_is(count)] srvsvc_NetShareInfo1007 *array;
522 } srvsvc_NetShareCtr1007;
523
524 typedef struct {
525 uint32 count;
526 [size_is(count)] sec_desc_buf *array;
527 } srvsvc_NetShareCtr1501;
528
529 typedef union {
530 [case(0)] srvsvc_NetShareInfo0 *info0;
531 [case(1)] srvsvc_NetShareInfo1 *info1;
532 [case(2)] srvsvc_NetShareInfo2 *info2;
533 [case(501)] srvsvc_NetShareInfo501 *info501;
534 [case(502)] srvsvc_NetShareInfo502 *info502;
535 [case(1004)] srvsvc_NetShareInfo1004 *info1004;
536 [case(1005)] srvsvc_NetShareInfo1005 *info1005;
537 [case(1006)] srvsvc_NetShareInfo1006 *info1006;
538 [case(1007)] srvsvc_NetShareInfo1007 *info1007;
539 [case(1501)] sec_desc_buf *info1501;
540 [default] ;
541 } srvsvc_NetShareInfo;
542
543 typedef union {
544 [case(0)] srvsvc_NetShareCtr0 *ctr0;
545 [case(1)] srvsvc_NetShareCtr1 *ctr1;
546 [case(2)] srvsvc_NetShareCtr2 *ctr2;
547 [case(501)] srvsvc_NetShareCtr501 *ctr501;
548 [case(502)] srvsvc_NetShareCtr502 *ctr502;
549 [case(1004)] srvsvc_NetShareCtr1004 *ctr1004;
550 [case(1005)] srvsvc_NetShareCtr1005 *ctr1005;
551 [case(1006)] srvsvc_NetShareCtr1006 *ctr1006;
552 [case(1007)] srvsvc_NetShareCtr1007 *ctr1007;
553 [case(1501)] srvsvc_NetShareCtr1501 *ctr1501;
554 [default] ;
555 } srvsvc_NetShareCtr;
556
557 /******************/
558 /* Function: 0x0e */
559 WERROR srvsvc_NetShareAdd(
560 [in] [string,charset(UTF16)] uint16 *server_unc,
561 [in] uint32 level,
562 [in,switch_is(level)] srvsvc_NetShareInfo info,
563 [in,out] uint32 *parm_error
564 );
565
566 /******************/
567 /* Function: 0x0f */
568 WERROR srvsvc_NetShareEnumAll (
569 [in] [string,charset(UTF16)] uint16 *server_unc,
570 [in,out,ref] uint32 *level,
571 [in,out,switch_is(level),ref] srvsvc_NetShareCtr *ctr,
572 [in] uint32 max_buffer,
573 [out,ref] uint32 *totalentries,
574 [in,out] uint32 *resume_handle
575 );
576
577 /******************/
578 /* Function: 0x10 */
579 WERROR srvsvc_NetShareGetInfo(
580 [in] [string,charset(UTF16)] uint16 *server_unc,
581 [in] [string,charset(UTF16)] uint16 share_name[],
582 [in] uint32 level,
583 [out,switch_is(level),ref] srvsvc_NetShareInfo *info
584 );
585
586 /******************/
587 /* Function: 0x11 */
588 WERROR srvsvc_NetShareSetInfo(
589 [in] [string,charset(UTF16)] uint16 *server_unc,
590 [in] [string,charset(UTF16)] uint16 share_name[],
591 [in] uint32 level,
592 [in,switch_is(level)] srvsvc_NetShareInfo info,
593 [in,out] uint32 *parm_error
594 );
595
596 /******************/
597 /* Function: 0x12 */
598 WERROR srvsvc_NetShareDel(
599 [in] [string,charset(UTF16)] uint16 *server_unc,
600 [in] [string,charset(UTF16)] uint16 share_name[],
601 [in] uint32 reserved
602 );
603
604 /******************/
605 /* Function: 0x13 */
606 WERROR srvsvc_NetShareDelSticky(
607 [in] [string,charset(UTF16)] uint16 *server_unc,
608 [in] [string,charset(UTF16)] uint16 share_name[],
609 [in] uint32 reserved
610 );
611
612 /******************/
613 /* Function: 0x14 */
614 WERROR srvsvc_NetShareCheck(
615 [in] [string,charset(UTF16)] uint16 *server_unc,
616 [in] [string,charset(UTF16)] uint16 device_name[],
617 [out,ref] srvsvc_ShareType *type
618 );
619
620 /**************************/
621 /* srvsvc_NetSrv */
622 /**************************/
623 typedef [public,v1_enum] enum {
624 PLATFORM_ID_DOS = 300,
625 PLATFORM_ID_OS2 = 400,
626 PLATFORM_ID_NT = 500,
627 PLATFORM_ID_OSF = 600,
628 PLATFORM_ID_VMS = 700
629 } srvsvc_PlatformId;
630
631 typedef struct {
632 srvsvc_PlatformId platform_id;
633 [string,charset(UTF16)] uint16 *server_name;
634 } srvsvc_NetSrvInfo100;
635
636 typedef struct {
637 srvsvc_PlatformId platform_id;
638 [string,charset(UTF16)] uint16 *server_name;
639 uint32 version_major;
640 uint32 version_minor;
641 svcctl_ServerType server_type;
642 [string,charset(UTF16)] uint16 *comment;
643 } srvsvc_NetSrvInfo101;
644
645 typedef struct {
646 srvsvc_PlatformId platform_id;
647 [string,charset(UTF16)] uint16 *server_name;
648 uint32 version_major;
649 uint32 version_minor;
650 svcctl_ServerType server_type;
651 [string,charset(UTF16)] uint16 *comment;
652 uint32 users;
653 uint32 disc;
654 uint32 hidden;
655 uint32 announce;
656 uint32 anndelta;
657 uint32 licenses;
658 [string,charset(UTF16)] uint16 *userpath;
659 } srvsvc_NetSrvInfo102;
660
661 typedef struct {
662 uint32 ulist_mtime;
663 uint32 glist_mtime;
664 uint32 alist_mtime;
665 [string,charset(UTF16)] uint16 *alerts;
666 uint32 security;
667 uint32 numadmin;
668 uint32 lanmask;
669 [string,charset(UTF16)] uint16 *guestaccount;
670 uint32 chdevs;
671 uint32 chdevqs;
672 uint32 chdevjobs;
673 uint32 connections;
674 uint32 shares;
675 uint32 openfiles;
676 uint32 sessopen;
677 uint32 sesssvc;
678 uint32 sessreqs;
679 uint32 opensearch;
680 uint32 activelocks;
681 uint32 sizereqbufs;
682 uint32 numbigbufs;
683 uint32 numfiletasks;
684 uint32 alertsched;
685 uint32 erroralert;
686 uint32 logonalert;
687 uint32 accessalert;
688 uint32 diskalert;
689 uint32 netioalert;
690 uint32 maxaudits;
691 [string,charset(UTF16)] uint16 *srvheuristics;
692 } srvsvc_NetSrvInfo402;
693
694 typedef struct {
695 uint32 ulist_mtime;
696 uint32 glist_mtime;
697 uint32 alist_mtime;
698 [string,charset(UTF16)] uint16 *alerts;
699 uint32 security;
700 uint32 numadmin;
701 uint32 lanmask;
702 [string,charset(UTF16)] uint16 *guestaccount;
703 uint32 chdevs;
704 uint32 chdevqs;
705 uint32 chdevjobs;
706 uint32 connections;
707 uint32 shares;
708 uint32 openfiles;
709 uint32 sessopen;
710 uint32 sesssvc;
711 uint32 sessreqs;
712 uint32 opensearch;
713 uint32 activelocks;
714 uint32 sizereqbufs;
715 uint32 numbigbufs;
716 uint32 numfiletasks;
717 uint32 alertsched;
718 uint32 eroralert;
719 uint32 logonalert;
720 uint32 accessalert;
721 uint32 diskalert;
722 uint32 netioalert;
723 uint32 maxaudits;
724 [string,charset(UTF16)] uint16 *srvheuristics;
725 uint32 auditedevents;
726 uint32 auditprofile;
727 [string,charset(UTF16)] uint16 *autopath;
728 } srvsvc_NetSrvInfo403;
729
730 typedef struct {
731 uint32 sessopen;
732 uint32 sesssvc;
733 uint32 opensearch;
734 uint32 sizereqbufs;
735 uint32 initworkitems;
736 uint32 maxworkitems;
737 uint32 rawworkitems;
738 uint32 irpstacksize;
739 uint32 maxrawbuflen;
740 uint32 sessusers;
741 uint32 sessconns;
742 uint32 maxpagedmemoryusage;
743 uint32 maxnonpagedmemoryusage;
744 uint32 enablesoftcompat;
745 uint32 enableforcedlogoff;
746 uint32 timesource;
747 uint32 acceptdownlevelapis;
748 uint32 lmannounce;
749 } srvsvc_NetSrvInfo502;
750
751 typedef struct{
752 uint32 sessopen;
753 uint32 sesssvc;
754 uint32 opensearch;
755 uint32 sizereqbufs;
756 uint32 initworkitems;
757 uint32 maxworkitems;
758 uint32 rawworkitems;
759 uint32 irpstacksize;
760 uint32 maxrawbuflen;
761 uint32 sessusers;
762 uint32 sessconns;
763 uint32 maxpagedmemoryusage;
764 uint32 maxnonpagedmemoryusage;
765 uint32 enablesoftcompat;
766 uint32 enableforcedlogoff;
767 uint32 timesource;
768 uint32 acceptdownlevelapis;
769 uint32 lmannounce;
770 [string,charset(UTF16)] uint16 *domain;
771 uint32 maxcopyreadlen;
772 uint32 maxcopywritelen;
773 uint32 minkeepsearch;
774 uint32 maxkeepsearch;
775 uint32 minkeepcomplsearch;
776 uint32 maxkeepcomplsearch;
777 uint32 threadcountadd;
778 uint32 numlockthreads;
779 uint32 scavtimeout;
780 uint32 minrcvqueue;
781 uint32 minfreeworkitems;
782 uint32 xactmemsize;
783 uint32 threadpriority;
784 uint32 maxmpxct;
785 uint32 oplockbreakwait;
786 uint32 oplockbreakresponsewait;
787 uint32 enableoplocks;
788 uint32 enableoplockforceclose;
789 uint32 enablefcbopens;
790 uint32 enableraw;
791 uint32 enablesharednetdrives;
792 uint32 minfreeconnections;
793 uint32 maxfreeconnections;
794 } srvsvc_NetSrvInfo503;
795
796 typedef struct{
797 uint32 sessopen;
798 uint32 sesssvc;
799 uint32 opensearch;
800 uint32 sizereqbufs;
801 uint32 initworkitems;
802 uint32 maxworkitems;
803 uint32 rawworkitems;
804 uint32 irpstacksize;
805 uint32 maxrawbuflen;
806 uint32 sessusers;
807 uint32 sessconns;
808 uint32 maxpagedmemoryusage;
809 uint32 maxnonpagedmemoryusage;
810 uint32 enablesoftcompat;
811 uint32 enableforcedlogoff;
812 uint32 timesource;
813 uint32 acceptdownlevelapis;
814 uint32 lmannounce;
815 [string,charset(UTF16)] uint16 *domain;
816 uint32 maxcopyreadlen;
817 uint32 maxcopywritelen;
818 uint32 minkeepsearch;
819 uint32 minkeepcomplsearch;
820 uint32 maxkeepcomplsearch;
821 uint32 threadcountadd;
822 uint32 numlockthreads;
823 uint32 scavtimeout;
824 uint32 minrcvqueue;
825 uint32 minfreeworkitems;
826 uint32 xactmemsize;
827 uint32 threadpriority;
828 uint32 maxmpxct;
829 uint32 oplockbreakwait;
830 uint32 oplockbreakresponsewait;
831 uint32 enableoplocks;
832 uint32 enableoplockforceclose;
833 uint32 enablefcbopens;
834 uint32 enableraw;
835 uint32 enablesharednetdrives;
836 uint32 minfreeconnections;
837 uint32 maxfreeconnections;
838 uint32 initsesstable;
839 uint32 initconntable;
840 uint32 initfiletable;
841 uint32 initsearchtable;
842 uint32 alertsched;
843 uint32 errortreshold;
844 uint32 networkerrortreshold;
845 uint32 diskspacetreshold;
846 uint32 reserved;
847 uint32 maxlinkdelay;
848 uint32 minlinkthroughput;
849 uint32 linkinfovalidtime;
850 uint32 scavqosinfoupdatetime;
851 uint32 maxworkitemidletime;
852 } srvsvc_NetSrvInfo599;
853
854 typedef struct{
855 [string,charset(UTF16)] uint16 *comment;
856 } srvsvc_NetSrvInfo1005;
857
858 typedef struct{
859 uint32 disc;
860 } srvsvc_NetSrvInfo1010;
861
862 typedef struct{
863 uint32 hidden;
864 } srvsvc_NetSrvInfo1016;
865
866 typedef struct{
867 uint32 announce;
868 } srvsvc_NetSrvInfo1017;
869
870 typedef struct{
871 uint32 anndelta;
872 } srvsvc_NetSrvInfo1018;
873
874 typedef struct{
875 uint32 users;
876 } srvsvc_NetSrvInfo1107;
877
878 typedef struct{
879 uint32 sessopens;
880 } srvsvc_NetSrvInfo1501;
881
882 typedef struct{
883 uint32 sessvcs;
884 } srvsvc_NetSrvInfo1502;
885
886 typedef struct{
887 uint32 opensearch;
888 } srvsvc_NetSrvInfo1503;
889
890 typedef struct{
891 uint32 maxworkitems;
892 } srvsvc_NetSrvInfo1506;
893
894 typedef struct{
895 uint32 maxrawbuflen;
896 } srvsvc_NetSrvInfo1509;
897
898 typedef struct{
899 uint32 sessusers;
900 } srvsvc_NetSrvInfo1510;
901
902 typedef struct{
903 uint32 sesscons;
904 } srvsvc_NetSrvInfo1511;
905
906 typedef struct{
907 uint32 maxnonpagedmemoryusage;
908 } srvsvc_NetSrvInfo1512;
909
910 typedef struct{
911 uint32 maxpagedmemoryusage;
912 } srvsvc_NetSrvInfo1513;
913
914 typedef struct{
915 uint32 enablesoftcompat;
916 } srvsvc_NetSrvInfo1514;
917
918 typedef struct{
919 uint32 enableforcedlogoff;
920 } srvsvc_NetSrvInfo1515;
921
922 typedef struct{
923 uint32 timesource;
924 } srvsvc_NetSrvInfo1516;
925
926 typedef struct{
927 uint32 lmannounce;
928 } srvsvc_NetSrvInfo1518;
929
930 typedef struct{
931 uint32 maxcopyreadlen;
932 } srvsvc_NetSrvInfo1520;
933
934 typedef struct{
935 uint32 maxcopywritelen;
936 } srvsvc_NetSrvInfo1521;
937
938 typedef struct{
939 uint32 minkeepsearch;
940 } srvsvc_NetSrvInfo1522;
941
942 typedef struct{
943 uint32 maxkeepsearch;
944 } srvsvc_NetSrvInfo1523;
945
946 typedef struct{
947 uint32 minkeepcomplsearch;
948 } srvsvc_NetSrvInfo1524;
949
950 typedef struct{
951 uint32 maxkeepcomplsearch;
952 } srvsvc_NetSrvInfo1525;
953
954 typedef struct{
955 uint32 scavtimeout;
956 } srvsvc_NetSrvInfo1528;
957
958 typedef struct{
959 uint32 minrcvqueue;
960 } srvsvc_NetSrvInfo1529;
961
962 typedef struct{
963 uint32 minfreeworkitems;
964 } srvsvc_NetSrvInfo1530;
965
966 typedef struct{
967 uint32 maxmpxct;
968 } srvsvc_NetSrvInfo1533;
969
970 typedef struct{
971 uint32 oplockbreakwait;
972 } srvsvc_NetSrvInfo1534;
973
974 typedef struct{
975 uint32 oplockbreakresponsewait;
976 } srvsvc_NetSrvInfo1535;
977
978 typedef struct{
979 uint32 enableoplocks;
980 } srvsvc_NetSrvInfo1536;
981
982 typedef struct{
983 uint32 enableoplockforceclose;
984 } srvsvc_NetSrvInfo1537;
985
986 typedef struct{
987 uint32 enablefcbopens;
988 } srvsvc_NetSrvInfo1538;
989
990 typedef struct{
991 uint32 enableraw;
992 } srvsvc_NetSrvInfo1539;
993
994 typedef struct{
995 uint32 enablesharednetdrives;
996 } srvsvc_NetSrvInfo1540;
997
998 typedef struct{
999 uint32 minfreeconnections;
1000 } srvsvc_NetSrvInfo1541;
1001
1002 typedef struct{
1003 uint32 maxfreeconnections;
1004 } srvsvc_NetSrvInfo1542;
1005
1006 typedef struct{
1007 uint32 initsesstable;
1008 } srvsvc_NetSrvInfo1543;
1009
1010 typedef struct{
1011 uint32 initconntable;
1012 } srvsvc_NetSrvInfo1544;
1013
1014 typedef struct{
1015 uint32 initfiletable;
1016 } srvsvc_NetSrvInfo1545;
1017
1018 typedef struct{
1019 uint32 initsearchtable;
1020 } srvsvc_NetSrvInfo1546;
1021
1022 typedef struct{
1023 uint32 alertsched;
1024 } srvsvc_NetSrvInfo1547;
1025
1026 typedef struct{
1027 uint32 errortreshold;
1028 } srvsvc_NetSrvInfo1548;
1029
1030 typedef struct{
1031 uint32 networkerrortreshold;
1032 } srvsvc_NetSrvInfo1549;
1033
1034 typedef struct{
1035 uint32 diskspacetreshold;
1036 } srvsvc_NetSrvInfo1550;
1037
1038 typedef struct{
1039 uint32 maxlinkdelay;
1040 } srvsvc_NetSrvInfo1552;
1041
1042 typedef struct{
1043 uint32 minlinkthroughput;
1044 } srvsvc_NetSrvInfo1553;
1045
1046 typedef struct{
1047 uint32 linkinfovalidtime;
1048 } srvsvc_NetSrvInfo1554;
1049
1050 typedef struct{
1051 uint32 scavqosinfoupdatetime;
1052 } srvsvc_NetSrvInfo1555;
1053
1054 typedef struct{
1055 uint32 maxworkitemidletime;
1056 } srvsvc_NetSrvInfo1556;
1057
1058
1059 typedef union{
1060 [case(100)] srvsvc_NetSrvInfo100 *info100;
1061 [case(101)] srvsvc_NetSrvInfo101 *info101;
1062 [case(102)] srvsvc_NetSrvInfo102 *info102;
1063 [case(402)] srvsvc_NetSrvInfo402 *info402;
1064 [case(403)] srvsvc_NetSrvInfo403 *info403;
1065 [case(502)] srvsvc_NetSrvInfo502 *info502;
1066 [case(503)] srvsvc_NetSrvInfo503 *info503;
1067 [case(599)] srvsvc_NetSrvInfo599 *info599;
1068 [case(1005)] srvsvc_NetSrvInfo1005 *info1005;
1069 [case(1010)] srvsvc_NetSrvInfo1010 *info1010;
1070 [case(1016)] srvsvc_NetSrvInfo1016 *info1016;
1071 [case(1017)] srvsvc_NetSrvInfo1017 *info1017;
1072 [case(1018)] srvsvc_NetSrvInfo1018 *info1018;
1073 [case(1107)] srvsvc_NetSrvInfo1107 *info1107;
1074 [case(1501)] srvsvc_NetSrvInfo1501 *info1501;
1075 [case(1502)] srvsvc_NetSrvInfo1502 *info1502;
1076 [case(1503)] srvsvc_NetSrvInfo1503 *info1503;
1077 [case(1506)] srvsvc_NetSrvInfo1506 *info1506;
1078 [case(1509)] srvsvc_NetSrvInfo1509 *info1509;
1079 [case(1510)] srvsvc_NetSrvInfo1510 *info1510;
1080 [case(1511)] srvsvc_NetSrvInfo1511 *info1511;
1081 [case(1512)] srvsvc_NetSrvInfo1512 *info1512;
1082 [case(1513)] srvsvc_NetSrvInfo1513 *info1513;
1083 [case(1514)] srvsvc_NetSrvInfo1514 *info1514;
1084 [case(1515)] srvsvc_NetSrvInfo1515 *info1515;
1085 [case(1516)] srvsvc_NetSrvInfo1516 *info1516;
1086 [case(1518)] srvsvc_NetSrvInfo1518 *info1518;
1087 [case(1520)] srvsvc_NetSrvInfo1520 *info1520;
1088 [case(1521)] srvsvc_NetSrvInfo1521 *info1521;
1089 [case(1522)] srvsvc_NetSrvInfo1522 *info1522;
1090 [case(1523)] srvsvc_NetSrvInfo1523 *info1523;
1091 [case(1524)] srvsvc_NetSrvInfo1524 *info1524;
1092 [case(1525)] srvsvc_NetSrvInfo1525 *info1525;
1093 [case(1528)] srvsvc_NetSrvInfo1528 *info1528;
1094 [case(1529)] srvsvc_NetSrvInfo1529 *info1529;
1095 [case(1530)] srvsvc_NetSrvInfo1530 *info1530;
1096 [case(1533)] srvsvc_NetSrvInfo1533 *info1533;
1097 [case(1534)] srvsvc_NetSrvInfo1534 *info1534;
1098 [case(1535)] srvsvc_NetSrvInfo1535 *info1535;
1099 [case(1536)] srvsvc_NetSrvInfo1536 *info1536;
1100 [case(1537)] srvsvc_NetSrvInfo1537 *info1537;
1101 [case(1538)] srvsvc_NetSrvInfo1538 *info1538;
1102 [case(1539)] srvsvc_NetSrvInfo1539 *info1539;
1103 [case(1540)] srvsvc_NetSrvInfo1540 *info1540;
1104 [case(1541)] srvsvc_NetSrvInfo1541 *info1541;
1105 [case(1542)] srvsvc_NetSrvInfo1542 *info1542;
1106 [case(1543)] srvsvc_NetSrvInfo1543 *info1543;
1107 [case(1544)] srvsvc_NetSrvInfo1544 *info1544;
1108 [case(1545)] srvsvc_NetSrvInfo1545 *info1545;
1109 [case(1546)] srvsvc_NetSrvInfo1546 *info1546;
1110 [case(1547)] srvsvc_NetSrvInfo1547 *info1547;
1111 [case(1548)] srvsvc_NetSrvInfo1548 *info1548;
1112 [case(1549)] srvsvc_NetSrvInfo1549 *info1549;
1113 [case(1550)] srvsvc_NetSrvInfo1550 *info1550;
1114 [case(1552)] srvsvc_NetSrvInfo1552 *info1552;
1115 [case(1553)] srvsvc_NetSrvInfo1553 *info1553;
1116 [case(1554)] srvsvc_NetSrvInfo1554 *info1554;
1117 [case(1555)] srvsvc_NetSrvInfo1555 *info1555;
1118 [case(1556)] srvsvc_NetSrvInfo1556 *info1556;
1119 [default];
1120 } srvsvc_NetSrvInfo;
1121
1122 /******************/
1123 /* Function: 0x15 */
1124 WERROR srvsvc_NetSrvGetInfo(
1125 [in] [string,charset(UTF16)] uint16 *server_unc,
1126 [in] uint32 level,
1127 [out,switch_is(level),ref] srvsvc_NetSrvInfo *info
1128 );
1129
1130 /******************/
1131 /* Function: 0x16 */
1132 WERROR srvsvc_NetSrvSetInfo(
1133 [in] [string,charset(UTF16)] uint16 *server_unc,
1134 [in] uint32 level,
1135 [in,switch_is(level)] srvsvc_NetSrvInfo info,
1136 [in,out] uint32 *parm_error
1137 );
1138
1139 /**************************/
1140 /* srvsvc_NetDisk */
1141 /**************************/
1142 typedef struct {
1143 [flag(STR_LEN4)] string disk;
1144 } srvsvc_NetDiskInfo0;
1145
1146 typedef struct {
1147 uint32 count;
1148 [size_is(count), length_is(count)] srvsvc_NetDiskInfo0 *disks;
1149 } srvsvc_NetDiskInfo;
1150
1151 /******************/
1152 /* Function: 0x17 */
1153 WERROR srvsvc_NetDiskEnum(
1154 [in] [string,charset(UTF16)] uint16 *server_unc,
1155 [in] uint32 level,
1156 [in,out,ref] srvsvc_NetDiskInfo *info,
1157 [in] uint32 maxlen,
1158 [out,ref] uint32 *totalentries,
1159 [in,out] uint32 *resume_handle
1160 );
1161
1162 /**************************/
1163 /* srvsvc_NetStatistics */
1164 /**************************/
1165 typedef struct {
1166 uint32 start;
1167 uint32 fopens;
1168 uint32 devopens;
1169 uint32 jobsqueued;
1170 uint32 sopens;
1171 uint32 stimeouts;
1172 uint32 serrorout;
1173 uint32 pwerrors;
1174 uint32 permerrors;
1175 uint32 syserrors;
1176 uint32 bytessent_low;
1177 uint32 bytessent_high;
1178 uint32 bytesrcvd_low;
1179 uint32 bytesrcvd_high;
1180 uint32 avresponse;
1181 uint32 reqbufneed;
1182 uint32 bigbufneed;
1183 } srvsvc_Statistics;
1184
1185 /******************/
1186 /* Function: 0x18 */
1187 WERROR srvsvc_NetServerStatisticsGet(
1188 [in] [string,charset(UTF16)] uint16 *server_unc,
1189 [in] [string,charset(UTF16)] uint16 *service,
1190 [in] uint32 level,
1191 [in] uint32 options,
1192 [out,ref] srvsvc_Statistics *stat
1193 );
1194
1195 /**************************/
1196 /* srvsvc_NetTransport */
1197 /**************************/
1198 typedef struct {
1199 uint32 vcs;
1200 [string,charset(UTF16)] uint16 *name;
1201 [size_is(addr_len)] uint8 *addr;
1202 uint32 addr_len;
1203 [string,charset(UTF16)] uint16 *net_addr;
1204 } srvsvc_NetTransportInfo0;
1205
1206 /******************/
1207 /* Function: 0x19 */
1208 WERROR srvsvc_NetTransportAdd(
1209 [in] [string,charset(UTF16)] uint16 *server_unc,
1210 [in] uint32 level,
1211 [in,switch_is(level)] srvsvc_NetTransportInfo info
1212 );
1213
1214 typedef struct {
1215 uint32 count;
1216 [size_is(count)] srvsvc_NetTransportInfo0 *array;
1217 } srvsvc_NetTransportCtr0;
1218
1219 typedef struct {
1220 uint32 vcs;
1221 [string,charset(UTF16)] uint16 *name;
1222 [size_is(addr_len)] uint8 *addr;
1223 uint32 addr_len;
1224 [string,charset(UTF16)] uint16 *net_addr;
1225 [string,charset(UTF16)] uint16 *domain;
1226 } srvsvc_NetTransportInfo1;
1227
1228 typedef struct {
1229 uint32 count;
1230 [size_is(count)] srvsvc_NetTransportInfo1 *array;
1231 } srvsvc_NetTransportCtr1;
1232
1233 typedef [bitmap32bit] bitmap {
1234 SVTI2_REMAP_PIPE_NAMES = 0x00000001
1235 } srvsvc_TransportFlags;
1236
1237
1238 typedef struct {
1239 uint32 vcs;
1240 [string,charset(UTF16)] uint16 *name;
1241 [size_is(addr_len)] uint8 *addr;
1242 uint32 addr_len;
1243 [string,charset(UTF16)] uint16 *net_addr;
1244 [string,charset(UTF16)] uint16 *domain;
1245 srvsvc_TransportFlags transport_flags;
1246 } srvsvc_NetTransportInfo2;
1247
1248 typedef struct {
1249 uint32 count;
1250 [size_is(count)] srvsvc_NetTransportInfo2 *array;
1251 } srvsvc_NetTransportCtr2;
1252
1253 typedef struct {
1254 uint32 vcs;
1255 [string,charset(UTF16)] uint16 *name;
1256 [size_is(addr_len)] uint8 *addr;
1257 uint32 addr_len;
1258 [string,charset(UTF16)] uint16 *net_addr;
1259 [string,charset(UTF16)] uint16 *domain;
1260 srvsvc_TransportFlags transport_flags;
1261 uint32 password_len;
1262 uint8 password[256];
1263 } srvsvc_NetTransportInfo3;
1264
1265 typedef struct {
1266 uint32 count;
1267 [size_is(count)] srvsvc_NetTransportInfo3 *array;
1268 } srvsvc_NetTransportCtr3;
1269
1270 typedef union {
1271 [case(0)] srvsvc_NetTransportCtr0 *ctr0;
1272 [case(1)] srvsvc_NetTransportCtr1 *ctr1;
1273 [case(2)] srvsvc_NetTransportCtr2 *ctr2;
1274 [case(3)] srvsvc_NetTransportCtr3 *ctr3;
1275 [default];
1276 } srvsvc_NetTransportCtr;
1277
1278 /******************/
1279 /* Function: 0x1a */
1280 WERROR srvsvc_NetTransportEnum(
1281 [in] [string,charset(UTF16)] uint16 *server_unc,
1282 [in,out,ref] uint32 *level,
1283 [in,out,switch_is(level),ref] srvsvc_NetTransportCtr *transports,
1284 [in] uint32 max_buffer,
1285 [out,ref] uint32 *totalentries,
1286 [in,out] uint32 *resume_handle
1287 );
1288
1289 /******************/
1290 /* Function: 0x1b */
1291 WERROR srvsvc_NetTransportDel(
1292 [in] [string,charset(UTF16)] uint16 *server_unc,
1293 [in] uint32 unknown,
1294 [in] srvsvc_NetTransportInfo0 transport
1295 );
1296
1297 /**************************/
1298 /* srvsvc_NetRemoteTOD */
1299 /**************************/
1300 typedef struct {
1301 uint32 elapsed; /* time(NULL) */
1302 uint32 msecs; /* milliseconds till system reboot (uptime) */
1303 uint32 hours;
1304 uint32 mins;
1305 uint32 secs;
1306 uint32 hunds;
1307 int32 timezone; /* in minutes */
1308 uint32 tinterval; /* clock tick interval in 0.0001 second units; 310 on windows */
1309 uint32 day;
1310 uint32 month;
1311 uint32 year;
1312 uint32 weekday;
1313 } srvsvc_NetRemoteTODInfo;
1314
1315 /******************/
1316 /* Function: 0x1c */
1317 WERROR srvsvc_NetRemoteTOD(
1318 [in] [string,charset(UTF16)] uint16 *server_unc,
1319 [out,unique] srvsvc_NetRemoteTODInfo *info
1320 );
1321
1322 /**************************/
1323 /* srvsvc_NetServiceBits */
1324 /**************************/
1325 /******************/
1326 /* Function: 0x1d */
1327 WERROR srvsvc_NetSetServiceBits(
1328 [in] [string,charset(UTF16)] uint16 *server_unc,
1329 [in] [string,charset(UTF16)] uint16 *transport,
1330 [in] uint32 servicebits,
1331 [in] uint32 updateimmediately
1332 );
1333
1334 /**************************/
1335 /* srvsvc_NetPath */
1336 /**************************/
1337 /******************/
1338 /* Function: 0x1e */
1339 WERROR srvsvc_NetPathType(
1340 [in] [string,charset(UTF16)] uint16 *server_unc,
1341 [in] [string,charset(UTF16)] uint16 path[],
1342 [in] uint32 pathflags,
1343 [out,ref] uint32 *pathtype
1344 );
1345
1346 /******************/
1347 /* Function: 0x1f */
1348 WERROR srvsvc_NetPathCanonicalize(
1349 [in] [string,charset(UTF16)] uint16 *server_unc,
1350 [in] [string,charset(UTF16)] uint16 path[],
1351 [out] [size_is(maxbuf)] uint8 can_path[],
1352 [in] uint32 maxbuf,
1353 [in] [string,charset(UTF16)] uint16 prefix[],
1354 [in,out,ref] uint32 *pathtype,
1355 [in] uint32 pathflags
1356 );
1357
1358 /******************/
1359 /* Function: 0x20 */
1360 WERROR srvsvc_NetPathCompare(
1361 [in] [string,charset(UTF16)] uint16 *server_unc,
1362 [in] [string,charset(UTF16)] uint16 path1[],
1363 [in] [string,charset(UTF16)] uint16 path2[],
1364 [in] uint32 pathtype,
1365 [in] uint32 pathflags
1366 );
1367
1368 /**************************/
1369 /* srvsvc_NetName */
1370 /**************************/
1371 /******************/
1372 /* Function: 0x21 */
1373 WERROR srvsvc_NetNameValidate(
1374 [in] [string,charset(UTF16)] uint16 *server_unc,
1375 [in] [string,charset(UTF16)] uint16 name[],
1376 [in] uint32 name_type,
1377 [in] uint32 flags
1378 );
1379
1380 /******************/
1381 /* Function: 0x22 */
1382 WERROR srvsvc_NETRPRNAMECANONICALIZE(
1383 );
1384
1385 /******************/
1386 /* Function: 0x23 */
1387 WERROR srvsvc_NetPRNameCompare(
1388 [in] [string,charset(UTF16)] uint16 *server_unc,
1389 [in] [string,charset(UTF16)] uint16 name1[],
1390 [in] [string,charset(UTF16)] uint16 name2[],
1391 [in] uint32 name_type,
1392 [in] uint32 flags
1393 );
1394
1395 /**************************/
1396 /* srvsvc_NetShare ... */
1397 /**************************/
1398 /******************/
1399 /* Function: 0x24 */
1400 /* Note, there must be some way to return entries read vs
1401 total entries ... */
1402 WERROR srvsvc_NetShareEnum(
1403 [in] [string,charset(UTF16)] uint16 *server_unc,
1404 [in,out,ref] uint32 *level,
1405 [in,out,switch_is(level),ref] srvsvc_NetShareCtr *ctr,
1406 [in] uint32 max_buffer,
1407 [out,ref] uint32 *totalentries,
1408 [in,out] uint32 *resume_handle
1409 );
1410
1411 /******************/
1412 /* Function: 0x25 */
1413 WERROR srvsvc_NetShareDelStart(
1414 [in] [string,charset(UTF16)] uint16 *server_unc,
1415 [in] [string,charset(UTF16)] uint16 share[],
1416 [in] uint32 reserved,
1417 [out,unique] policy_handle *hnd
1418 );
1419
1420 /******************/
1421 /* Function: 0x26 */
1422 WERROR srvsvc_NetShareDelCommit(
1423 [in, out] policy_handle *hnd
1424 );
1425
1426 /******************/
1427 /* Function: 0x27 */
1428 WERROR srvsvc_NetGetFileSecurity(
1429 [in] [string,charset(UTF16)] uint16 *server_unc,
1430 [in] [string,charset(UTF16)] uint16 *share,
1431 [in] [string,charset(UTF16)] uint16 file[],
1432 [in] security_secinfo securityinformation,
1433 [out,unique] sec_desc_buf *sd_buf
1434 );
1435
1436 /******************/
1437 /* Function: 0x28 */
1438 WERROR srvsvc_NetSetFileSecurity(
1439 [in] [string,charset(UTF16)] uint16 *server_unc,
1440 [in] [string,charset(UTF16)] uint16 *share,
1441 [in] [string,charset(UTF16)] uint16 file[],
1442 [in] security_secinfo securityinformation,
1443 [in] sec_desc_buf sd_buf
1444 );
1445
1446
1447
1448 typedef [switch_type(uint32)] union {
1449 [case(0)] srvsvc_NetTransportInfo0 info0;
1450 [case(1)] srvsvc_NetTransportInfo1 info1;
1451 [case(2)] srvsvc_NetTransportInfo2 info2;
1452 [case(3)] srvsvc_NetTransportInfo3 info3;
1453 } srvsvc_NetTransportInfo;
1454
1455 /******************/
1456 /* Function: 0x29 */
1457 WERROR srvsvc_NetServerTransportAddEx(
1458 [in] [string,charset(UTF16)] uint16 *server_unc,
1459 [in] uint32 level,
1460 [in,switch_is(level)] srvsvc_NetTransportInfo info
1461 );
1462
1463 /******************/
1464 /* Function: 0x2a */
1465 WERROR srvsvc_NetServerSetServiceBitsEx(
1466 [in] [string,charset(UTF16)] uint16 *server_unc,
1467 [in] [string,charset(UTF16)] uint16 *emulated_server_unc,
1468 [in] [string,charset(UTF16)] uint16 *transport,
1469 [in] uint32 servicebitsofinterest,
1470 [in] uint32 servicebits,
1471 [in] uint32 updateimmediately
1472 );
1473
1474 /******************/
1475 /* Function: 0x2b */
1476 WERROR srvsvc_NETRDFSGETVERSION(
1477 );
1478
1479 /******************/
1480 /* Function: 0x2c */
1481 WERROR srvsvc_NETRDFSCREATELOCALPARTITION(
1482 );
1483
1484 /******************/
1485 /* Function: 0x2d */
1486 WERROR srvsvc_NETRDFSDELETELOCALPARTITION(
1487 );
1488
1489 /******************/
1490 /* Function: 0x2e */
1491 WERROR srvsvc_NETRDFSSETLOCALVOLUMESTATE(
1492 );
1493
1494 /******************/
1495 /* Function: 0x2f */
1496 WERROR srvsvc_NETRDFSSETSERVERINFO(
1497 );
1498
1499 /******************/
1500 /* Function: 0x30 */
1501 WERROR srvsvc_NETRDFSCREATEEXITPOINT(
1502 );
1503
1504 /******************/
1505 /* Function: 0x31 */
1506 WERROR srvsvc_NETRDFSDELETEEXITPOINT(
1507 );
1508
1509 /******************/
1510 /* Function: 0x32 */
1511 WERROR srvsvc_NETRDFSMODIFYPREFIX(
1512 );
1513
1514 /******************/
1515 /* Function: 0x33 */
1516 WERROR srvsvc_NETRDFSFIXLOCALVOLUME(
1517 );
1518
1519 /******************/
1520 /* Function: 0x34 */
1521 WERROR srvsvc_NETRDFSMANAGERREPORTSITEINFO(
1522 );
1523
1524 /******************/
1525 /* Function: 0x35 */
1526 WERROR srvsvc_NETRSERVERTRANSPORTDELEX(
1527 );
1528 }
info
Definition: file-pcapng.c:177
endpoint
Definition: conversation.c:27