s4: allow pam_winbind.so to be build on samba4
[Samba/ekacnet.git] / source3 / librpc / idl / libnetapi.idl
blob593ee1c560381a99506751e1b3a8df9abcc7616b
1 /*
2 libnetapi interface definition
3 */
5 cpp_quote("#define LIBNETAPI_LOCAL_SERVER(x) (!x || is_myname_or_ipaddr(x))")
6 cpp_quote("#ifndef MAXSUBAUTHS")
7 cpp_quote("#define MAXSUBAUTHS 15 /* max sub authorities in a SID */")
8 cpp_quote("#endif")
11 pointer_default(unique)
13 interface libnetapi
15 const int ERROR_MORE_DATA = 234L;
17 [public] typedef [v1_enum] enum {
18 NERR_Success=0
19 } NET_API_STATUS;
21 [public] typedef struct {
22 uint8 sid_rev_num;
23 uint8 num_auths;
24 uint8 id_auth[6];
25 uint32 sub_auths[MAXSUBAUTHS];
26 } domsid;
28 /*******************************************/
29 /* NetJoinDomain */
30 /*******************************************/
32 typedef [public,bitmap32bit] bitmap {
33 NETSETUP_JOIN_DOMAIN = 0x00000001,
34 NETSETUP_ACCT_CREATE = 0x00000002,
35 NETSETUP_ACCT_DELETE = 0x00000004,
36 NETSETUP_WIN9X_UPGRADE = 0x00000010,
37 NETSETUP_DOMAIN_JOIN_IF_JOINED = 0x00000020,
38 NETSETUP_JOIN_UNSECURE = 0x00000040,
39 NETSETUP_MACHINE_PWD_PASSED = 0x00000080,
40 NETSETUP_DEFER_SPN_SET = 0x00000100,
41 NETSETUP_JOIN_DC_ACCOUNT = 0x00000200,
42 NETSETUP_JOIN_WITH_NEW_NAME = 0x00000400,
43 NETSETUP_INSTALL_INVOCATION = 0x00040000,
44 NETSETUP_IGNORE_UNSUPPORTED_FLAGS = 0x10000000
45 } NetJoinFlags;
47 [nopush,nopull] NET_API_STATUS NetJoinDomain(
48 [in,unique] string *server,
49 [in,ref] string *domain,
50 [in,unique] string *account_ou,
51 [in,unique] string *account,
52 [in,unique] string *password,
53 [in] NetJoinFlags join_flags
56 /*******************************************/
57 /* NetUnjoinDomain */
58 /*******************************************/
60 [nopush,nopull] NET_API_STATUS NetUnjoinDomain(
61 [in,unique] string *server_name,
62 [in,unique] string *account,
63 [in,unique] string *password,
64 [in] NetJoinFlags unjoin_flags
67 /*******************************************/
68 /* NetGetJoinInformation */
69 /*******************************************/
71 typedef enum {
72 NetSetupUnknownStatus = 0,
73 NetSetupUnjoined = 1,
74 NetSetupWorkgroupName = 2,
75 NetSetupDomainName = 3
76 } NETSETUP_JOIN_STATUS;
78 [nopush,nopull] NET_API_STATUS NetGetJoinInformation(
79 [in,unique] string *server_name,
80 [out] string **name_buffer,
81 [out] uint16 *name_type
84 /*******************************************/
85 /* NetGetJoinableOUs */
86 /*******************************************/
88 [nopush,nopull] NET_API_STATUS NetGetJoinableOUs(
89 [in,unique] string *server_name,
90 [in,ref] string *domain,
91 [in,unique] string *account,
92 [in,unique] string *password,
93 [out] uint32 *ou_count,
94 [out] string ***ous
97 /*******************************************/
98 /* NetRenameMachineInDomain */
99 /*******************************************/
101 [nopush,nopull] NET_API_STATUS NetRenameMachineInDomain(
102 [in] string server_name,
103 [in] string new_machine_name,
104 [in] string account,
105 [in] string password,
106 [in] uint32 rename_options
109 /*******************************************/
110 /* NetServerGetInfo */
111 /*******************************************/
113 [public] typedef struct {
114 uint32 sv100_platform_id;
115 string sv100_name;
116 } SERVER_INFO_100;
118 [public] typedef struct {
119 uint32 sv101_platform_id;
120 string sv101_name;
121 uint32 sv101_version_major;
122 uint32 sv101_version_minor;
123 uint32 sv101_type;
124 string sv101_comment;
125 } SERVER_INFO_101;
127 [public] typedef struct {
128 uint32 sv102_platform_id;
129 string sv102_name;
130 uint32 sv102_version_major;
131 uint32 sv102_version_minor;
132 uint32 sv102_type;
133 string sv102_comment;
134 uint32 sv102_users;
135 uint32 sv102_disc;
136 boolean8 sv102_hidden;
137 uint32 sv102_announce;
138 uint32 sv102_anndelta;
139 uint32 sv102_licenses;
140 string sv102_userpath;
141 } SERVER_INFO_102;
143 [public] typedef struct {
144 uint32 sv402_ulist_mtime;
145 uint32 sv402_glist_mtime;
146 uint32 sv402_alist_mtime;
147 string sv402_alerts;
148 uint32 sv402_security;
149 uint32 sv402_numadmin;
150 uint32 sv402_lanmask;
151 string sv402_guestacct;
152 uint32 sv402_chdevs;
153 uint32 sv402_chdevq;
154 uint32 sv402_chdevjobs;
155 uint32 sv402_connections;
156 uint32 sv402_shares;
157 uint32 sv402_openfiles;
158 uint32 sv402_sessopens;
159 uint32 sv402_sessvcs;
160 uint32 sv402_sessreqs;
161 uint32 sv402_opensearch;
162 uint32 sv402_activelocks;
163 uint32 sv402_numreqbuf;
164 uint32 sv402_sizreqbuf;
165 uint32 sv402_numbigbuf;
166 uint32 sv402_numfiletasks;
167 uint32 sv402_alertsched;
168 uint32 sv402_erroralert;
169 uint32 sv402_logonalert;
170 uint32 sv402_accessalert;
171 uint32 sv402_diskalert;
172 uint32 sv402_netioalert;
173 uint32 sv402_maxauditsz;
174 string sv402_srvheuristics;
175 } SERVER_INFO_402;
177 [public] typedef struct {
178 uint32 sv403_ulist_mtime;
179 uint32 sv403_glist_mtime;
180 uint32 sv403_alist_mtime;
181 string sv403_alerts;
182 uint32 sv403_security;
183 uint32 sv403_numadmin;
184 uint32 sv403_lanmask;
185 string sv403_guestacct;
186 uint32 sv403_chdevs;
187 uint32 sv403_chdevq;
188 uint32 sv403_chdevjobs;
189 uint32 sv403_connections;
190 uint32 sv403_shares;
191 uint32 sv403_openfiles;
192 uint32 sv403_sessopens;
193 uint32 sv403_sessvcs;
194 uint32 sv403_sessreqs;
195 uint32 sv403_opensearch;
196 uint32 sv403_activelocks;
197 uint32 sv403_numreqbuf;
198 uint32 sv403_sizreqbuf;
199 uint32 sv403_numbigbuf;
200 uint32 sv403_numfiletasks;
201 uint32 sv403_alertsched;
202 uint32 sv403_erroralert;
203 uint32 sv403_logonalert;
204 uint32 sv403_accessalert;
205 uint32 sv403_diskalert;
206 uint32 sv403_netioalert;
207 uint32 sv403_maxauditsz;
208 string sv403_srvheuristics;
209 uint32 sv403_auditedevents;
210 uint32 sv403_autoprofile;
211 string sv403_autopath;
212 } SERVER_INFO_403;
214 [public] typedef struct {
215 uint32 sv502_sessopens;
216 uint32 sv502_sessvcs;
217 uint32 sv502_opensearch;
218 uint32 sv502_sizreqbuf;
219 uint32 sv502_initworkitems;
220 uint32 sv502_maxworkitems;
221 uint32 sv502_rawworkitems;
222 uint32 sv502_irpstacksize;
223 uint32 sv502_maxrawbuflen;
224 uint32 sv502_sessusers;
225 uint32 sv502_sessconns;
226 uint32 sv502_maxpagedmemoryusage;
227 uint32 sv502_maxnonpagedmemoryusage;
228 boolean8 sv502_enablesoftcompat;
229 boolean8 sv502_enableforcedlogoff;
230 boolean8 sv502_timesource;
231 boolean8 sv502_acceptdownlevelapis;
232 boolean8 sv502_lmannounce;
233 } SERVER_INFO_502;
235 [public] typedef struct {
236 uint32 sv503_sessopens;
237 uint32 sv503_sessvcs;
238 uint32 sv503_opensearch;
239 uint32 sv503_sizreqbuf;
240 uint32 sv503_initworkitems;
241 uint32 sv503_maxworkitems;
242 uint32 sv503_rawworkitems;
243 uint32 sv503_irpstacksize;
244 uint32 sv503_maxrawbuflen;
245 uint32 sv503_sessusers;
246 uint32 sv503_sessconns;
247 uint32 sv503_maxpagedmemoryusage;
248 uint32 sv503_maxnonpagedmemoryusage;
249 boolean8 sv503_enablesoftcompat;
250 boolean8 sv503_enableforcedlogoff;
251 boolean8 sv503_timesource;
252 boolean8 sv503_acceptdownlevelapis;
253 boolean8 sv503_lmannounce;
254 string sv503_domain;
255 uint32 sv503_maxcopyreadlen;
256 uint32 sv503_maxcopywritelen;
257 uint32 sv503_minkeepsearch;
258 uint32 sv503_maxkeepsearch;
259 uint32 sv503_minkeepcomplsearch;
260 uint32 sv503_maxkeepcomplsearch;
261 uint32 sv503_threadcountadd;
262 uint32 sv503_numblockthreads;
263 uint32 sv503_scavtimeout;
264 uint32 sv503_minrcvqueue;
265 uint32 sv503_minfreeworkitems;
266 uint32 sv503_xactmemsize;
267 uint32 sv503_threadpriority;
268 uint32 sv503_maxmpxct;
269 uint32 sv503_oplockbreakwait;
270 uint32 sv503_oplockbreakresponsewait;
271 boolean8 sv503_enableoplocks;
272 boolean8 sv503_enableoplockforceclose;
273 boolean8 sv503_enablefcbopens;
274 boolean8 sv503_enableraw;
275 boolean8 sv503_enablesharednetdrives;
276 uint32 sv503_minfreeconnections;
277 uint32 sv503_maxfreeconnections;
278 } SERVER_INFO_503;
280 [public] typedef struct {
281 uint32 sv599_sessopens;
282 uint32 sv599_sessvcs;
283 uint32 sv599_opensearch;
284 uint32 sv599_sizreqbuf;
285 uint32 sv599_initworkitems;
286 uint32 sv599_maxworkitems;
287 uint32 sv599_rawworkitems;
288 uint32 sv599_irpstacksize;
289 uint32 sv599_maxrawbuflen;
290 uint32 sv599_sessusers;
291 uint32 sv599_sessconns;
292 uint32 sv599_maxpagedmemoryusage;
293 uint32 sv599_maxnonpagedmemoryusage;
294 boolean8 sv599_enablesoftcompat;
295 boolean8 sv599_enableforcedlogoff;
296 boolean8 sv599_timesource;
297 boolean8 sv599_acceptdownlevelapis;
298 boolean8 sv599_lmannounce;
299 string sv599_domain;
300 uint32 sv599_maxcopyreadlen;
301 uint32 sv599_maxcopywritelen;
302 uint32 sv599_minkeepsearch;
303 uint32 sv599_maxkeepsearch;
304 uint32 sv599_minkeepcomplsearch;
305 uint32 sv599_maxkeepcomplsearch;
306 uint32 sv599_threadcountadd;
307 uint32 sv599_numblockthreads;
308 uint32 sv599_scavtimeout;
309 uint32 sv599_minrcvqueue;
310 uint32 sv599_minfreeworkitems;
311 uint32 sv599_xactmemsize;
312 uint32 sv599_threadpriority;
313 uint32 sv599_maxmpxct;
314 uint32 sv599_oplockbreakwait;
315 uint32 sv599_oplockbreakresponsewait;
316 boolean8 sv599_enableoplocks;
317 boolean8 sv599_enableoplockforceclose;
318 boolean8 sv599_enablefcbopens;
319 boolean8 sv599_enableraw;
320 boolean8 sv599_enablesharednetdrives;
321 uint32 sv599_minfreeconnections;
322 uint32 sv599_maxfreeconnections;
323 uint32 sv599_initsesstable;
324 uint32 sv599_initconntable;
325 uint32 sv599_initfiletable;
326 uint32 sv599_initsearchtable;
327 uint32 sv599_alertschedule;
328 uint32 sv599_errorthreshold;
329 uint32 sv599_networkerrorthreshold;
330 uint32 sv599_diskspacethreshold;
331 uint32 sv599_reserved;
332 uint32 sv599_maxlinkdelay;
333 uint32 sv599_minlinkthroughput;
334 uint32 sv599_linkinfovalidtime;
335 uint32 sv599_scavqosinfoupdatetime;
336 uint32 sv599_maxworkitemidletime;
337 } SERVER_INFO_599;
339 [public] typedef struct {
340 uint32 sv598_maxrawworkitems;
341 uint32 sv598_maxthreadsperqueue;
342 uint32 sv598_producttype;
343 uint32 sv598_serversize;
344 uint32 sv598_connectionlessautodisc;
345 uint32 sv598_sharingviolationretries;
346 uint32 sv598_sharingviolationdelay;
347 uint32 sv598_maxglobalopensearch;
348 uint32 sv598_removeduplicatesearches;
349 uint32 sv598_lockviolationoffset;
350 uint32 sv598_lockviolationdelay;
351 uint32 sv598_mdlreadswitchover;
352 uint32 sv598_cachedopenlimit;
353 uint32 sv598_otherqueueaffinity;
354 boolean8 sv598_restrictnullsessaccess;
355 boolean8 sv598_enablewfw311directipx;
356 uint32 sv598_queuesamplesecs;
357 uint32 sv598_balancecount;
358 uint32 sv598_preferredaffinity;
359 uint32 sv598_maxfreerfcbs;
360 uint32 sv598_maxfreemfcbs;
361 uint32 sv598_maxfreelfcbs;
362 uint32 sv598_maxfreepagedpoolchunks;
363 uint32 sv598_minpagedpoolchunksize;
364 uint32 sv598_maxpagedpoolchunksize;
365 boolean8 sv598_sendsfrompreferredprocessor;
366 uint32 sv598_cacheddirectorylimit;
367 uint32 sv598_maxcopylength;
368 boolean8 sv598_enablecompression;
369 boolean8 sv598_autosharewks;
370 boolean8 sv598_autoshareserver;
371 boolean8 sv598_enablesecuritysignature;
372 boolean8 sv598_requiresecuritysignature;
373 uint32 sv598_minclientbuffersize;
374 GUID sv598_serverguid;
375 uint32 sv598_ConnectionNoSessionsTimeout;
376 uint32 sv598_IdleThreadTimeOut;
377 boolean8 sv598_enableW9xsecuritysignature;
378 boolean8 sv598_enforcekerberosreauthentication;
379 boolean8 sv598_disabledos;
380 uint32 sv598_lowdiskspaceminimum;
381 boolean8 sv598_disablestrictnamechecking;
382 } SERVER_INFO_598;
384 [public] typedef struct {
385 string sv1005_comment;
386 } SERVER_INFO_1005;
388 [public] typedef struct {
389 uint32 sv1107_users;
390 } SERVER_INFO_1107;
392 [public] typedef struct {
393 int32 sv1010_disc;
394 } SERVER_INFO_1010;
396 [public] typedef struct {
397 boolean8 sv1016_hidden;
398 } SERVER_INFO_1016;
400 [public] typedef struct {
401 uint32 sv1017_announce;
402 } SERVER_INFO_1017;
404 [public] typedef struct {
405 uint32 sv1018_anndelta;
406 } SERVER_INFO_1018;
408 [public] typedef struct {
409 uint32 sv1501_sessopens;
410 } SERVER_INFO_1501;
412 [public] typedef struct {
413 uint32 sv1502_sessvcs;
414 } SERVER_INFO_1502;
416 [public] typedef struct {
417 uint32 sv1503_opensearch;
418 } SERVER_INFO_1503;
420 [public] typedef struct {
421 uint32 sv1506_maxworkitems;
422 } SERVER_INFO_1506;
424 [public] typedef struct {
425 uint32 sv1509_maxrawbuflen;
426 } SERVER_INFO_1509;
428 [public] typedef struct {
429 uint32 sv1510_sessusers;
430 } SERVER_INFO_1510;
432 [public] typedef struct {
433 uint32 sv1511_sessconns;
434 } SERVER_INFO_1511;
436 [public] typedef struct {
437 uint32 sv1512_maxnonpagedmemoryusage;
438 } SERVER_INFO_1512;
440 [public] typedef struct {
441 uint32 sv1513_maxpagedmemoryusage;
442 } SERVER_INFO_1513;
444 [public] typedef struct {
445 boolean8 sv1514_enablesoftcompat;
446 } SERVER_INFO_1514;
448 [public] typedef struct {
449 boolean8 sv1515_enableforcedlogoff;
450 } SERVER_INFO_1515;
452 [public] typedef struct {
453 boolean8 sv1516_timesource;
454 } SERVER_INFO_1516;
456 [public] typedef struct {
457 boolean8 sv1518_lmannounce;
458 } SERVER_INFO_1518;
460 [public] typedef struct {
461 uint32 sv1520_maxcopyreadlen;
462 } SERVER_INFO_1520;
464 [public] typedef struct {
465 uint32 sv1521_maxcopywritelen;
466 } SERVER_INFO_1521;
468 [public] typedef struct {
469 uint32 sv1522_minkeepsearch;
470 } SERVER_INFO_1522;
472 [public] typedef struct {
473 uint32 sv1523_maxkeepsearch;
474 } SERVER_INFO_1523;
476 [public] typedef struct {
477 uint32 sv1524_minkeepcomplsearch;
478 } SERVER_INFO_1524;
480 [public] typedef struct {
481 uint32 sv1525_maxkeepcomplsearch;
482 } SERVER_INFO_1525;
484 [public] typedef struct {
485 uint32 sv1528_scavtimeout;
486 } SERVER_INFO_1528;
488 [public] typedef struct {
489 uint32 sv1529_minrcvqueue;
490 } SERVER_INFO_1529;
492 [public] typedef struct {
493 uint32 sv1530_minfreeworkitems;
494 } SERVER_INFO_1530;
496 [public] typedef struct {
497 uint32 sv1533_maxmpxct;
498 } SERVER_INFO_1533;
500 [public] typedef struct {
501 uint32 sv1534_oplockbreakwait;
502 } SERVER_INFO_1534;
504 [public] typedef struct {
505 uint32 sv1535_oplockbreakresponsewait;
506 } SERVER_INFO_1535;
508 [public] typedef struct {
509 boolean8 sv1536_enableoplocks;
510 } SERVER_INFO_1536;
512 [public] typedef struct {
513 boolean8 sv1537_enableoplockforceclose;
514 } SERVER_INFO_1537;
516 [public] typedef struct {
517 boolean8 sv1538_enablefcbopens;
518 } SERVER_INFO_1538;
520 [public] typedef struct {
521 boolean8 sv1539_enableraw;
522 } SERVER_INFO_1539;
524 [public] typedef struct {
525 boolean8 sv1540_enablesharednetdrives;
526 } SERVER_INFO_1540;
528 [public] typedef struct {
529 boolean8 sv1541_minfreeconnections;
530 } SERVER_INFO_1541;
532 [public] typedef struct {
533 boolean8 sv1542_maxfreeconnections;
534 } SERVER_INFO_1542;
536 [public] typedef struct {
537 uint32 sv1543_initsesstable;
538 } SERVER_INFO_1543;
540 [public] typedef struct {
541 uint32 sv1544_initconntable;
542 } SERVER_INFO_1544;
544 [public] typedef struct {
545 uint32 sv1545_initfiletable;
546 } SERVER_INFO_1545;
548 [public] typedef struct {
549 uint32 sv1546_initsearchtable;
550 } SERVER_INFO_1546;
552 [public] typedef struct {
553 uint32 sv1547_alertschedule;
554 } SERVER_INFO_1547;
556 [public] typedef struct {
557 uint32 sv1548_errorthreshold;
558 } SERVER_INFO_1548;
560 [public] typedef struct {
561 uint32 sv1549_networkerrorthreshold;
562 } SERVER_INFO_1549;
564 [public] typedef struct {
565 uint32 sv1550_diskspacethreshold;
566 } SERVER_INFO_1550;
568 [public] typedef struct {
569 uint32 sv1552_maxlinkdelay;
570 } SERVER_INFO_1552;
572 [public] typedef struct {
573 uint32 sv1553_minlinkthroughput;
574 } SERVER_INFO_1553;
576 [public] typedef struct {
577 uint32 sv1554_linkinfovalidtime;
578 } SERVER_INFO_1554;
580 [public] typedef struct {
581 uint32 sv1555_scavqosinfoupdatetime;
582 } SERVER_INFO_1555;
584 [public] typedef struct {
585 uint32 sv1556_maxworkitemidletime;
586 } SERVER_INFO_1556;
588 [public] typedef struct {
589 uint32 sv1557_maxrawworkitems;
590 } SERVER_INFO_1557;
592 [public] typedef struct {
593 uint32 sv1560_producttype;
594 } SERVER_INFO_1560;
596 [public] typedef struct {
597 uint32 sv1561_serversize;
598 } SERVER_INFO_1561;
600 [public] typedef struct {
601 uint32 sv1562_connectionlessautodisc;
602 } SERVER_INFO_1562;
604 [public] typedef struct {
605 uint32 sv1563_sharingviolationretries;
606 } SERVER_INFO_1563;
608 [public] typedef struct {
609 uint32 sv1564_sharingviolationdelay;
610 } SERVER_INFO_1564;
612 [public] typedef struct {
613 uint32 sv1565_maxglobalopensearch;
614 } SERVER_INFO_1565;
616 [public] typedef struct {
617 boolean8 sv1566_removeduplicatesearches;
618 } SERVER_INFO_1566;
620 [public] typedef struct {
621 uint32 sv1567_lockviolationretries;
622 } SERVER_INFO_1567;
624 [public] typedef struct {
625 uint32 sv1568_lockviolationoffset;
626 } SERVER_INFO_1568;
628 [public] typedef struct {
629 uint32 sv1569_lockviolationdelay;
630 } SERVER_INFO_1569;
632 [public] typedef struct {
633 uint32 sv1570_mdlreadswitchover;
634 } SERVER_INFO_1570;
636 [public] typedef struct {
637 uint32 sv1571_cachedopenlimit;
638 } SERVER_INFO_1571;
640 [public] typedef struct {
641 uint32 sv1572_criticalthreads;
642 } SERVER_INFO_1572;
644 [public] typedef struct {
645 uint32 sv1573_restrictnullsessaccess;
646 } SERVER_INFO_1573;
648 [public] typedef struct {
649 uint32 sv1574_enablewfw311directipx;
650 } SERVER_INFO_1574;
652 [public] typedef struct {
653 uint32 sv1575_otherqueueaffinity;
654 } SERVER_INFO_1575;
656 [public] typedef struct {
657 uint32 sv1576_queuesamplesecs;
658 } SERVER_INFO_1576;
660 [public] typedef struct {
661 uint32 sv1577_balancecount;
662 } SERVER_INFO_1577;
664 [public] typedef struct {
665 uint32 sv1578_preferredaffinity;
666 } SERVER_INFO_1578;
668 [public] typedef struct {
669 uint32 sv1579_maxfreerfcbs;
670 } SERVER_INFO_1579;
672 [public] typedef struct {
673 uint32 sv1580_maxfreemfcbs;
674 } SERVER_INFO_1580;
676 [public] typedef struct {
677 uint32 sv1581_maxfreemlcbs;
678 } SERVER_INFO_1581;
680 [public] typedef struct {
681 uint32 sv1582_maxfreepagedpoolchunks;
682 } SERVER_INFO_1582;
684 [public] typedef struct {
685 uint32 sv1583_minpagedpoolchunksize;
686 } SERVER_INFO_1583;
688 [public] typedef struct {
689 uint32 sv1584_maxpagedpoolchunksize;
690 } SERVER_INFO_1584;
692 [public] typedef struct {
693 boolean8 sv1585_sendsfrompreferredprocessor;
694 } SERVER_INFO_1585;
696 [public] typedef struct {
697 uint32 sv1586_maxthreadsperqueue;
698 } SERVER_INFO_1586;
700 [public] typedef struct {
701 uint32 sv1587_cacheddirectorylimit;
702 } SERVER_INFO_1587;
704 [public] typedef struct {
705 uint32 sv1588_maxcopylength;
706 } SERVER_INFO_1588;
708 [public] typedef struct {
709 uint32 sv1590_enablecompression;
710 } SERVER_INFO_1590;
712 [public] typedef struct {
713 uint32 sv1591_autosharewks;
714 } SERVER_INFO_1591;
716 [public] typedef struct {
717 uint32 sv1592_autosharewks;
718 } SERVER_INFO_1592;
720 [public] typedef struct {
721 uint32 sv1593_enablesecuritysignature;
722 } SERVER_INFO_1593;
724 [public] typedef struct {
725 uint32 sv1594_requiresecuritysignature;
726 } SERVER_INFO_1594;
728 [public] typedef struct {
729 uint32 sv1595_minclientbuffersize;
730 } SERVER_INFO_1595;
732 [public] typedef struct {
733 uint32 sv1596_ConnectionNoSessionsTimeout;
734 } SERVER_INFO_1596;
736 [public] typedef struct {
737 uint32 sv1597_IdleThreadTimeOut;
738 } SERVER_INFO_1597;
740 [public] typedef struct {
741 uint32 sv1598_enableW9xsecuritysignature;
742 } SERVER_INFO_1598;
744 [public] typedef struct {
745 boolean8 sv1598_enforcekerberosreauthentication;
746 } SERVER_INFO_1599;
748 [public] typedef struct {
749 boolean8 sv1598_disabledos;
750 } SERVER_INFO_1600;
752 [public] typedef struct {
753 uint32 sv1598_lowdiskspaceminimum;
754 } SERVER_INFO_1601;
756 [public] typedef struct {
757 boolean8 sv_1598_disablestrictnamechecking;
758 } SERVER_INFO_1602;
760 [nopush,nopull] NET_API_STATUS NetServerGetInfo(
761 [in,unique] string *server_name,
762 [in] uint32 level,
763 [out] uint8 **buffer
766 /*******************************************/
767 /* NetServerSetInfo */
768 /*******************************************/
770 [nopush,nopull] NET_API_STATUS NetServerSetInfo(
771 [in,unique] string *server_name,
772 [in] uint32 level,
773 [in] uint8 *buffer,
774 [out] uint32 *parm_error
777 /*******************************************/
778 /* NetGetDCName */
779 /*******************************************/
781 [nopush,nopull] NET_API_STATUS NetGetDCName(
782 [in,unique] string *server_name,
783 [in,unique] string *domain_name,
784 [out] uint8 **buffer
787 /*******************************************/
788 /* NetGetAnyDCName */
789 /*******************************************/
791 [nopush,nopull] NET_API_STATUS NetGetAnyDCName(
792 [in,unique] string *server_name,
793 [in,unique] string *domain_name,
794 [out] uint8 **buffer
797 /*******************************************/
798 /* DsGetDcName */
799 /*******************************************/
801 [public] typedef struct {
802 string domain_controller_name;
803 string domain_controller_address;
804 uint32 domain_controller_address_type;
805 GUID domain_guid;
806 string domain_name;
807 string dns_forest_name;
808 uint32 flags;
809 string dc_site_name;
810 string client_site_name;
811 } DOMAIN_CONTROLLER_INFO;
813 [nopush,nopull] NET_API_STATUS DsGetDcName(
814 [in,unique] string *server_name,
815 [in,ref] string *domain_name,
816 [in,unique] GUID *domain_guid,
817 [in,unique] string *site_name,
818 [in] uint32 flags,
819 [out,ref] DOMAIN_CONTROLLER_INFO **dc_info
822 /*******************************************/
823 /* NetUserAdd */
824 /*******************************************/
826 [public] typedef struct {
827 string usri0_name;
828 } USER_INFO_0;
830 /* priv */
831 const int USER_PRIV_GUEST = 0;
832 const int USER_PRIV_USER = 1;
833 const int USER_PRIV_ADMIN = 2;
835 [public] typedef struct {
836 string usri1_name;
837 string usri1_password;
838 uint32 usri1_password_age;
839 uint32 usri1_priv;
840 string usri1_home_dir;
841 string usri1_comment;
842 uint32 usri1_flags;
843 string usri1_script_path;
844 } USER_INFO_1;
846 /* auth_flags in USER_INFO_2 */
848 const int AF_OP_PRINT = 0x1;
849 const int AF_OP_COMM = 0x2;
850 const int AF_OP_SERVER = 0x4;
851 const int AF_OP_ACCOUNTS = 0x8;
852 const int AF_SETTABLE_BITS = (AF_OP_PRINT | AF_OP_COMM | AF_OP_SERVER | AF_OP_ACCOUNTS);
854 const int USER_MAXSTORAGE_UNLIMITED = (uint32_t)-1L;
856 [public] typedef struct {
857 string usri2_name;
858 string usri2_password;
859 uint32 usri2_password_age;
860 uint32 usri2_priv;
861 string usri2_home_dir;
862 string usri2_comment;
863 uint32 usri2_flags;
864 string usri2_script_path;
865 uint32 usri2_auth_flags;
866 string usri2_full_name;
867 string usri2_usr_comment;
868 string usri2_parms;
869 string usri2_workstations;
870 uint32 usri2_last_logon;
871 uint32 usri2_last_logoff;
872 uint32 usri2_acct_expires;
873 uint32 usri2_max_storage;
874 uint32 usri2_units_per_week;
875 uint8 *usri2_logon_hours;
876 uint32 usri2_bad_pw_count;
877 uint32 usri2_num_logons;
878 string usri2_logon_server;
879 uint32 usri2_country_code;
880 uint32 usri2_code_page;
881 } USER_INFO_2;
883 [public] typedef struct {
884 string usri3_name;
885 uint32 usri3_password_age;
886 uint32 usri3_priv;
887 string usri3_home_dir;
888 string usri3_comment;
889 uint32 usri3_flags;
890 string usri3_script_path;
891 uint32 usri3_auth_flags;
892 string usri3_full_name;
893 string usri3_usr_comment;
894 string usri3_parms;
895 string usri3_workstations;
896 uint32 usri3_last_logon;
897 uint32 usri3_last_logoff;
898 uint32 usri3_acct_expires;
899 uint32 usri3_max_storage;
900 uint32 usri3_units_per_week;
901 uint8 *usri3_logon_hours;
902 uint32 usri3_bad_pw_count;
903 uint32 usri3_num_logons;
904 string usri3_logon_server;
905 uint32 usri3_country_code;
906 uint32 usri3_code_page;
907 uint32 usri3_user_id;
908 uint32 usri3_primary_group_id;
909 string usri3_profile;
910 string usri3_home_dir_drive;
911 uint32 usri3_password_expired;
912 } USER_INFO_3;
914 [public] typedef struct {
915 string usri4_name;
916 string usri4_password;
917 uint32 usri4_password_age;
918 uint32 usri4_priv;
919 string usri4_home_dir;
920 string usri4_comment;
921 uint32 usri4_flags;
922 string usri4_script_path;
923 uint32 usri4_auth_flags;
924 string usri4_full_name;
925 string usri4_usr_comment;
926 string usri4_parms;
927 string usri4_workstations;
928 uint32 usri4_last_logon;
929 uint32 usri4_last_logoff;
930 uint32 usri4_acct_expires;
931 uint32 usri4_max_storage;
932 uint32 usri4_units_per_week;
933 uint8 *usri4_logon_hours;
934 uint32 usri4_bad_pw_count;
935 uint32 usri4_num_logons;
936 string usri4_logon_server;
937 uint32 usri4_country_code;
938 uint32 usri4_code_page;
939 domsid *usri4_user_sid;
940 uint32 usri4_primary_group_id;
941 string usri4_profile;
942 string usri4_home_dir_drive;
943 uint32 usri4_password_expired;
944 } USER_INFO_4;
946 [public] typedef struct {
947 string usri10_name;
948 string usri10_comment;
949 string usri10_usr_comment;
950 string usri10_full_name;
951 } USER_INFO_10;
953 [public] typedef struct {
954 string usri11_name;
955 string usri11_comment;
956 string usri11_usr_comment;
957 string usri11_full_name;
958 uint32 usri11_priv;
959 uint32 usri11_auth_flags;
960 uint32 usri11_password_age;
961 string usri11_home_dir;
962 string usri11_parms;
963 uint32 usri11_last_logon;
964 uint32 usri11_last_logoff;
965 uint32 usri11_bad_pw_count;
966 uint32 usri11_num_logons;
967 string usri11_logon_server;
968 uint32 usri11_country_code;
969 string usri11_workstations;
970 uint32 usri11_max_storage;
971 uint32 usri11_units_per_week;
972 uint8 *usri11_logon_hours;
973 uint32 usri11_code_page;
974 } USER_INFO_11;
976 [public] typedef struct {
977 string usri20_name;
978 string usri20_full_name;
979 string usri20_comment;
980 uint32 usri20_flags;
981 uint32 usri20_user_id;
982 } USER_INFO_20;
984 const int ENCRYPTED_PWLEN = 16;
986 [public] typedef struct {
987 uint8 usri21_password[ENCRYPTED_PWLEN];
988 } USER_INFO_21;
990 [public] typedef struct {
991 string usri22_name;
992 uint8 usri22_password[ENCRYPTED_PWLEN];
993 uint32 usri22_password_age;
994 uint32 usri22_priv;
995 string usri22_home_dir;
996 string usri22_comment;
997 uint32 usri22_flags;
998 uint32 usri22_script_path;
999 uint32 usri22_auth_flags;
1000 string usri22_full_name;
1001 string usri22_usr_comment;
1002 string usri22_parms;
1003 string usri22_workstations;
1004 uint32 usri22_last_logon;
1005 uint32 usri22_last_logoff;
1006 uint32 usri22_acct_expires;
1007 uint32 usri22_max_storage;
1008 uint32 usri22_units_per_week;
1009 uint8 *usri22_logon_hours;
1010 uint32 usri22_bad_pw_count;
1011 uint32 usri22_num_logons;
1012 string usri22_logon_server;
1013 uint32 usri22_country_code;
1014 uint32 usri22_code_page;
1015 } USER_INFO_22;
1017 [public] typedef struct {
1018 string usri23_name;
1019 string usri23_full_name;
1020 string usri23_comment;
1021 uint32 usri23_flags;
1022 domsid *usri23_user_sid;
1023 } USER_INFO_23;
1025 [public] typedef struct {
1026 string usri1003_password;
1027 } USER_INFO_1003;
1029 [public] typedef struct {
1030 uint32 usri1005_priv;
1031 } USER_INFO_1005;
1033 [public] typedef struct {
1034 string usri1006_home_dir;
1035 } USER_INFO_1006;
1037 [public] typedef struct {
1038 string usri1007_comment;
1039 } USER_INFO_1007;
1041 [public] typedef struct {
1042 uint32 usri1008_flags;
1043 } USER_INFO_1008;
1045 [public] typedef struct {
1046 string usri1009_script_path;
1047 } USER_INFO_1009;
1049 [public] typedef struct {
1050 uint32 usri1010_auth_flags;
1051 } USER_INFO_1010;
1053 [public] typedef struct {
1054 string usri1011_full_name;
1055 } USER_INFO_1011;
1057 [public] typedef struct {
1058 string usri1012_usr_comment;
1059 } USER_INFO_1012;
1061 [public] typedef struct {
1062 string usri1013_parms;
1063 } USER_INFO_1013;
1065 [public] typedef struct {
1066 string usri1014_workstations;
1067 } USER_INFO_1014;
1069 [public] typedef struct {
1070 uint32 usri1017_acct_expires;
1071 } USER_INFO_1017;
1073 [public] typedef struct {
1074 uint32 usri1018_max_storage;
1075 } USER_INFO_1018;
1077 [public] typedef struct {
1078 uint32 usri1020_units_per_week;
1079 uint8 *usri1020_logon_hours;
1080 } USER_INFO_1020;
1082 [public] typedef struct {
1083 string usri1023_logon_server;
1084 } USER_INFO_1023;
1086 [public] typedef struct {
1087 uint32 usri1024_country_code;
1088 } USER_INFO_1024;
1090 [public] typedef struct {
1091 uint32 usri1025_code_page;
1092 } USER_INFO_1025;
1094 [public] typedef struct {
1095 uint32 usri1051_primary_group_id;
1096 } USER_INFO_1051;
1098 [public] typedef struct {
1099 string usri1052_profile;
1100 } USER_INFO_1052;
1102 [public] typedef struct {
1103 string usri1053_home_dir_drive;
1104 } USER_INFO_1053;
1106 [public] typedef struct {
1107 string usriX_name;
1108 string usriX_password;
1109 uint32 usriX_password_age;
1110 uint32 usriX_priv;
1111 string usriX_home_dir;
1112 string usriX_comment;
1113 uint32 usriX_flags;
1114 string usriX_script_path;
1115 uint32 usriX_auth_flags;
1116 string usriX_full_name;
1117 string usriX_usr_comment;
1118 string usriX_parms;
1119 string usriX_workstations;
1120 uint32 usriX_last_logon;
1121 uint32 usriX_last_logoff;
1122 uint32 usriX_acct_expires;
1123 uint32 usriX_max_storage;
1124 uint32 usriX_units_per_week;
1125 uint8 *usriX_logon_hours;
1126 uint32 usriX_bad_pw_count;
1127 uint32 usriX_num_logons;
1128 string usriX_logon_server;
1129 uint32 usriX_country_code;
1130 uint32 usriX_code_page;
1131 string usriX_profile;
1132 string usriX_home_dir_drive;
1133 uint32 usriX_user_id;
1134 uint32 usriX_primary_group_id;
1135 uint32 usriX_password_expired;
1136 } USER_INFO_X;
1138 [nopush,nopull] NET_API_STATUS NetUserAdd(
1139 [in,unique] string *server_name,
1140 [in] uint32 level,
1141 [in,ref] uint8 *buffer,
1142 [out,ref] uint32 *parm_error
1145 /*******************************************/
1146 /* NetUserDel */
1147 /*******************************************/
1149 [nopush,nopull] NET_API_STATUS NetUserDel(
1150 [in,unique] string *server_name,
1151 [in,ref] string *user_name
1154 /*******************************************/
1155 /* NetUserEnum */
1156 /*******************************************/
1158 const int FILTER_TEMP_DUPLICATE_ACCOUNT = 0x0001;
1159 const int FILTER_NORMAL_ACCOUNT = 0x0002;
1160 const int FILTER_INTERDOMAIN_TRUST_ACCOUNT = 0x0008;
1161 const int FILTER_WORKSTATION_TRUST_ACCOUNT = 0x0010;
1162 const int FILTER_SERVER_TRUST_ACCOUNT = 0x0020;
1164 [nopush,nopull] NET_API_STATUS NetUserEnum(
1165 [in,unique] string *server_name,
1166 [in] uint32 level,
1167 [in] uint32 filter,
1168 [out,ref] uint8 **buffer,
1169 [in] uint32 prefmaxlen,
1170 [out,ref] uint32 *entries_read,
1171 [out,ref] uint32 *total_entries,
1172 [in,out,ref] uint32 *resume_handle
1175 /*******************************************/
1176 /* NetUserChangePassword */
1177 /*******************************************/
1179 [nopush,nopull] NET_API_STATUS NetUserChangePassword(
1180 [in] string domain_name,
1181 [in] string user_name,
1182 [in] string old_password,
1183 [in] string new_password
1186 /*******************************************/
1187 /* NetUserGetInfo */
1188 /*******************************************/
1190 [nopush,nopull] NET_API_STATUS NetUserGetInfo(
1191 [in] string server_name,
1192 [in] string user_name,
1193 [in] uint32 level,
1194 [out] uint8 **buffer
1197 /*******************************************/
1198 /* NetUserSetInfo */
1199 /*******************************************/
1201 [nopush,nopull] NET_API_STATUS NetUserSetInfo(
1202 [in] string server_name,
1203 [in] string user_name,
1204 [in] uint32 level,
1205 [in] uint8 *buffer,
1206 [out] uint32 *parm_err
1209 /*******************************************/
1210 /* NetUserGetGroups */
1211 /*******************************************/
1213 [public] typedef struct {
1214 string grui0_name;
1215 } GROUP_USERS_INFO_0;
1217 [public] typedef struct {
1218 string grui1_name;
1219 uint32 grui1_attributes;
1220 } GROUP_USERS_INFO_1;
1222 [nopush,nopull] NET_API_STATUS NetUserGetGroups(
1223 [in] string server_name,
1224 [in] string user_name,
1225 [in] uint32 level,
1226 [out] uint8 **buffer,
1227 [in] uint32 prefmaxlen,
1228 [out,ref] uint32 *entries_read,
1229 [out,ref] uint32 *total_entries
1232 /*******************************************/
1233 /* NetUserSetGroups */
1234 /*******************************************/
1236 [nopush,nopull] NET_API_STATUS NetUserSetGroups(
1237 [in] string server_name,
1238 [in] string user_name,
1239 [in] uint32 level,
1240 [in] uint8 *buffer,
1241 [in] uint32 num_entries
1244 /*******************************************/
1245 /* NetUserGetLocalGroups */
1246 /*******************************************/
1248 const int LG_INCLUDE_INDIRECT = 0x0001;
1250 typedef struct {
1251 string lgrui0_name;
1252 } LOCALGROUP_USERS_INFO_0;
1254 [nopush,nopull] NET_API_STATUS NetUserGetLocalGroups(
1255 [in] string server_name,
1256 [in] string user_name,
1257 [in] uint32 level,
1258 [in] uint32 flags,
1259 [out] uint8 **buffer,
1260 [in] uint32 prefmaxlen,
1261 [out,ref] uint32 *entries_read,
1262 [out,ref] uint32 *total_entries
1265 /*******************************************/
1266 /* NetUserModalsGet */
1267 /*******************************************/
1269 const int TIMEQ_FOREVER = (uint32_t)-1L;
1271 typedef struct {
1272 uint32 usrmod0_min_passwd_len;
1273 uint32 usrmod0_max_passwd_age;
1274 uint32 usrmod0_min_passwd_age;
1275 uint32 usrmod0_force_logoff;
1276 uint32 usrmod0_password_hist_len;
1277 } USER_MODALS_INFO_0;
1279 typedef struct {
1280 uint32 usrmod1_role;
1281 string usrmod1_primary;
1282 } USER_MODALS_INFO_1;
1284 typedef struct {
1285 string usrmod2_domain_name;
1286 domsid *usrmod2_domain_id;
1287 } USER_MODALS_INFO_2;
1289 typedef struct {
1290 uint32 usrmod3_lockout_duration;
1291 uint32 usrmod3_lockout_observation_window;
1292 uint32 usrmod3_lockout_threshold;
1293 } USER_MODALS_INFO_3;
1295 typedef struct {
1296 uint32 usrmod1001_min_passwd_len;
1297 } USER_MODALS_INFO_1001;
1299 typedef struct {
1300 uint32 usrmod1002_max_passwd_age;
1301 } USER_MODALS_INFO_1002;
1303 typedef struct {
1304 uint32 usrmod1003_min_passwd_age;
1305 } USER_MODALS_INFO_1003;
1307 typedef struct {
1308 uint32 usrmod1004_force_logoff;
1309 } USER_MODALS_INFO_1004;
1311 typedef struct {
1312 uint32 usrmod1005_password_hist_len;
1313 } USER_MODALS_INFO_1005;
1315 typedef struct {
1316 uint32 usrmod1006_role;
1317 } USER_MODALS_INFO_1006;
1319 typedef struct {
1320 string usrmod1007_primary;
1321 } USER_MODALS_INFO_1007;
1323 [nopush,nopull] NET_API_STATUS NetUserModalsGet(
1324 [in] string server_name,
1325 [in] uint32 level,
1326 [out,ref] uint8 **buffer
1329 /*******************************************/
1330 /* NetUserModalsSet */
1331 /*******************************************/
1333 [nopush,nopull] NET_API_STATUS NetUserModalsSet(
1334 [in] string server_name,
1335 [in] uint32 level,
1336 [in] uint8 *buffer,
1337 [out,ref] uint32 *parm_err
1340 /*******************************************/
1341 /* NetQueryDisplayInformation */
1342 /*******************************************/
1344 [public] typedef struct {
1345 string usri1_name;
1346 string usri1_comment;
1347 uint32 usri1_flags;
1348 string usri1_full_name;
1349 uint32 usri1_user_id;
1350 uint32 usri1_next_index;
1351 } NET_DISPLAY_USER;
1353 [public] typedef struct {
1354 string usri2_name;
1355 string usri2_comment;
1356 uint32 usri2_flags;
1357 uint32 usri2_user_id;
1358 uint32 usri2_next_index;
1359 } NET_DISPLAY_MACHINE;
1361 [public] typedef struct {
1362 string grpi3_name;
1363 string grpi3_comment;
1364 uint32 grpi3_group_id;
1365 uint32 grpi3_attributes;
1366 uint32 grpi3_next_index;
1367 } NET_DISPLAY_GROUP;
1369 [nopush,nopull] NET_API_STATUS NetQueryDisplayInformation(
1370 [in,unique] string *server_name,
1371 [in] uint32 level,
1372 [in] uint32 idx,
1373 [in] uint32 entries_requested,
1374 [in] uint32 prefmaxlen,
1375 [out,ref] uint32 *entries_read,
1376 [out,ref,noprint] void **buffer
1379 /*******************************************/
1380 /* NetGroupAdd */
1381 /*******************************************/
1383 typedef struct {
1384 string grpi0_name;
1385 } GROUP_INFO_0;
1387 typedef struct {
1388 string grpi1_name;
1389 string grpi1_comment;
1390 } GROUP_INFO_1;
1392 typedef struct {
1393 string grpi2_name;
1394 string grpi2_comment;
1395 uint32 grpi2_group_id;
1396 uint32 grpi2_attributes;
1397 } GROUP_INFO_2;
1399 typedef struct {
1400 string grpi3_name;
1401 string grpi3_comment;
1402 domsid *grpi3_group_sid;
1403 uint32 grpi3_attributes;
1404 } GROUP_INFO_3;
1406 typedef struct {
1407 string grpi1002_comment;
1408 } GROUP_INFO_1002;
1410 typedef struct {
1411 uint32 grpi1005_attributes;
1412 } GROUP_INFO_1005;
1414 [nopush,nopull] NET_API_STATUS NetGroupAdd(
1415 [in] string server_name,
1416 [in] uint32 level,
1417 [in] uint8 *buffer,
1418 [out] uint32 *parm_err
1421 /*******************************************/
1422 /* NetGroupDel */
1423 /*******************************************/
1425 [nopush,nopull] NET_API_STATUS NetGroupDel(
1426 [in] string server_name,
1427 [in] string group_name
1430 /*******************************************/
1431 /* NetGroupEnum */
1432 /*******************************************/
1434 [nopush,nopull] NET_API_STATUS NetGroupEnum(
1435 [in] string server_name,
1436 [in] uint32 level,
1437 [out,ref] uint8 **buffer,
1438 [in] uint32 prefmaxlen,
1439 [out,ref] uint32 *entries_read,
1440 [out,ref] uint32 *total_entries,
1441 [in,out,ref] uint32 *resume_handle
1444 /*******************************************/
1445 /* NetGroupSetInfo */
1446 /*******************************************/
1448 [nopush,nopull] NET_API_STATUS NetGroupSetInfo(
1449 [in] string server_name,
1450 [in] string group_name,
1451 [in] uint32 level,
1452 [in] uint8 *buffer,
1453 [out] uint32 *parm_err
1456 /*******************************************/
1457 /* NetGroupGetInfo */
1458 /*******************************************/
1460 [nopush,nopull] NET_API_STATUS NetGroupGetInfo(
1461 [in] string server_name,
1462 [in] string group_name,
1463 [in] uint32 level,
1464 [out] uint8 **buffer
1467 /*******************************************/
1468 /* NetGroupAddUser */
1469 /*******************************************/
1471 [nopush,nopull] NET_API_STATUS NetGroupAddUser(
1472 [in] string server_name,
1473 [in] string group_name,
1474 [in] string user_name
1477 /*******************************************/
1478 /* NetGroupDelUser */
1479 /*******************************************/
1481 [nopush,nopull] NET_API_STATUS NetGroupDelUser(
1482 [in] string server_name,
1483 [in] string group_name,
1484 [in] string user_name
1487 /*******************************************/
1488 /* NetGroupGetUsers */
1489 /*******************************************/
1491 [nopush,nopull] NET_API_STATUS NetGroupGetUsers(
1492 [in] string server_name,
1493 [in] string group_name,
1494 [in] uint32 level,
1495 [out] uint8 **buffer,
1496 [in] uint32 prefmaxlen,
1497 [out,ref] uint32 *entries_read,
1498 [out,ref] uint32 *total_entries,
1499 [in,out,ref] uint32 *resume_handle
1502 /*******************************************/
1503 /* NetGroupSetUsers */
1504 /*******************************************/
1506 [nopush,nopull] NET_API_STATUS NetGroupSetUsers(
1507 [in] string server_name,
1508 [in] string group_name,
1509 [in] uint32 level,
1510 [in] uint8 *buffer,
1511 [in] uint32 num_entries
1514 /*******************************************/
1515 /* NetLocalGroupAdd */
1516 /*******************************************/
1518 typedef struct {
1519 string lgrpi0_name;
1520 } LOCALGROUP_INFO_0;
1522 typedef struct {
1523 string lgrpi1_name;
1524 string lgrpi1_comment;
1525 } LOCALGROUP_INFO_1;
1527 typedef struct {
1528 string lgrpi1002_comment;
1529 } LOCALGROUP_INFO_1002;
1531 [nopush,nopull] NET_API_STATUS NetLocalGroupAdd(
1532 [in] string server_name,
1533 [in] uint32 level,
1534 [in] uint8 *buffer,
1535 [out,ref] uint32 *parm_err
1538 /*******************************************/
1539 /* NetLocalGroupDel */
1540 /*******************************************/
1542 [nopush,nopull] NET_API_STATUS NetLocalGroupDel(
1543 [in] string server_name,
1544 [in] string group_name
1547 /*******************************************/
1548 /* NetLocalGroupGetInfo */
1549 /*******************************************/
1551 [nopush,nopull] NET_API_STATUS NetLocalGroupGetInfo(
1552 [in] string server_name,
1553 [in] string group_name,
1554 [in] uint32 level,
1555 [out,ref] uint8 **buffer
1558 /*******************************************/
1559 /* NetLocalGroupSetInfo */
1560 /*******************************************/
1562 [nopush,nopull] NET_API_STATUS NetLocalGroupSetInfo(
1563 [in] string server_name,
1564 [in] string group_name,
1565 [in] uint32 level,
1566 [in,ref] uint8 *buffer,
1567 [out,ref] uint32 *parm_err
1570 /*******************************************/
1571 /* NetLocalGroupEnum */
1572 /*******************************************/
1574 [nopush,nopull] NET_API_STATUS NetLocalGroupEnum(
1575 [in] string server_name,
1576 [in] uint32 level,
1577 [out,ref] uint8 **buffer,
1578 [in] uint32 prefmaxlen,
1579 [out,ref] uint32 *entries_read,
1580 [out,ref] uint32 *total_entries,
1581 [in,out,ref] uint32 *resume_handle
1584 /*******************************************/
1585 /* NetLocalGroupAddMembers */
1586 /*******************************************/
1588 typedef enum {
1589 SidTypeUser = 1,
1590 SidTypeGroup = 2,
1591 SidTypeDomain = 3,
1592 SidTypeAlias = 4,
1593 SidTypeWellKnownGroup = 5,
1594 SidTypeDeletedAccount = 6,
1595 SidTypeInvalid = 7,
1596 SidTypeUnknown = 8,
1597 SidTypeComputer = 9,
1598 SidTypeLabel = 10
1599 } SID_NAME_USE;
1601 typedef struct {
1602 domsid *lgrmi0_sid;
1603 } LOCALGROUP_MEMBERS_INFO_0;
1605 typedef struct {
1606 domsid *lgrmi1_sid;
1607 SID_NAME_USE lgrmi1_sidusage;
1608 string lgrmi1_name;
1609 } LOCALGROUP_MEMBERS_INFO_1;
1611 typedef struct {
1612 domsid *lgrmi2_sid;
1613 SID_NAME_USE lgrmi2_sidusage;
1614 string lgrmi2_domainandname;
1615 } LOCALGROUP_MEMBERS_INFO_2;
1617 typedef struct {
1618 string lgrmi3_domainandname;
1619 } LOCALGROUP_MEMBERS_INFO_3;
1621 [nopush,nopull] NET_API_STATUS NetLocalGroupAddMembers(
1622 [in] string server_name,
1623 [in] string group_name,
1624 [in] uint32 level,
1625 [in] uint8 *buffer,
1626 [in] uint32 total_entries
1629 /*******************************************/
1630 /* NetLocalGroupDelMembers */
1631 /*******************************************/
1633 [nopush,nopull] NET_API_STATUS NetLocalGroupDelMembers(
1634 [in] string server_name,
1635 [in] string group_name,
1636 [in] uint32 level,
1637 [in] uint8 *buffer,
1638 [in] uint32 total_entries
1641 /*******************************************/
1642 /* NetLocalGroupGetMembers */
1643 /*******************************************/
1645 [nopush,nopull] NET_API_STATUS NetLocalGroupGetMembers(
1646 [in] string server_name,
1647 [in] string local_group_name,
1648 [in] uint32 level,
1649 [out] uint8 **buffer,
1650 [in] uint32 prefmaxlen,
1651 [out] uint32 *entries_read,
1652 [out] uint32 *total_entries,
1653 [in,out] uint32 *resume_handle
1656 /*******************************************/
1657 /* NetLocalGroupSetMembers */
1658 /*******************************************/
1660 [nopush,nopull] NET_API_STATUS NetLocalGroupSetMembers(
1661 [in] string server_name,
1662 [in] string group_name,
1663 [in] uint32 level,
1664 [in] uint8 *buffer,
1665 [in] uint32 total_entries
1668 /*******************************************/
1669 /* NetRemoteTOD */
1670 /*******************************************/
1672 typedef struct {
1673 uint32 tod_elapsedt;
1674 uint32 tod_msecs;
1675 uint32 tod_hours;
1676 uint32 tod_mins;
1677 uint32 tod_secs;
1678 uint32 tod_hunds;
1679 int32 tod_timezone;
1680 uint32 tod_tinterval;
1681 uint32 tod_day;
1682 uint32 tod_month;
1683 uint32 tod_year;
1684 uint32 tod_weekday;
1685 } TIME_OF_DAY_INFO;
1687 [nopush,nopull] NET_API_STATUS NetRemoteTOD(
1688 [in] string server_name,
1689 [out,ref] uint8 **buffer
1692 /*******************************************/
1693 /* NetShareAdd */
1694 /*******************************************/
1696 typedef struct {
1697 string shi0_netname;
1698 } SHARE_INFO_0;
1700 typedef struct {
1701 string shi1_netname;
1702 uint32 shi1_type;
1703 string shi1_remark;
1704 } SHARE_INFO_1;
1706 typedef struct {
1707 string shi2_netname;
1708 uint32 shi2_type;
1709 string shi2_remark;
1710 uint32 shi2_permissions;
1711 uint32 shi2_max_uses;
1712 uint32 shi2_current_uses;
1713 string shi2_path;
1714 string shi2_passwd;
1715 } SHARE_INFO_2;
1717 typedef struct {
1718 string shi501_netname;
1719 uint32 shi501_type;
1720 string shi501_remark;
1721 uint32 shi501_flags;
1722 } SHARE_INFO_501;
1724 typedef struct {
1725 string shi1004_remark;
1726 } SHARE_INFO_1004;
1728 const int CSC_MASK = 0x30;
1730 typedef [public,bitmap32bit] bitmap {
1731 SHI1005_FLAGS_DFS = 0x01,
1732 SHI1005_FLAGS_DFS_ROOT = 0x02,
1733 CSC_CACHE_MANUAL_REINT = 0x00,
1734 CSC_CACHE_AUTO_REINT = 0x10,
1735 CSC_CACHE_VDO = 0x20,
1736 CSC_CACHE_NONE = 0x30,
1737 SHI1005_FLAGS_RESTRICT_EXCLUSIVE_OPENS = 0x0100,
1738 SHI1005_FLAGS_FORCE_SHARED_DELETE = 0x0200,
1739 SHI1005_FLAGS_ALLOW_NAMESPACE_CACHING = 0x0400,
1740 SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM = 0x0800
1741 } SHARE_INFO_1005_FLAGS;
1743 typedef struct {
1744 SHARE_INFO_1005_FLAGS shi1005_flags;
1745 } SHARE_INFO_1005;
1747 typedef struct {
1748 uint32 shi1006_max_uses;
1749 } SHARE_INFO_1006;
1751 [nopush,nopull] NET_API_STATUS NetShareAdd(
1752 [in] string server_name,
1753 [in] uint32 level,
1754 [in] uint8 *buffer,
1755 [out] uint32 *parm_err
1758 /*******************************************/
1759 /* NetShareDel */
1760 /*******************************************/
1762 [nopush,nopull] NET_API_STATUS NetShareDel(
1763 [in] string server_name,
1764 [in] string net_name,
1765 [in] uint32 reserved
1768 /*******************************************/
1769 /* NetShareEnum */
1770 /*******************************************/
1772 [nopush,nopull] NET_API_STATUS NetShareEnum(
1773 [in] string server_name,
1774 [in] uint32 level,
1775 [out] uint8 **buffer,
1776 [in] uint32 prefmaxlen,
1777 [out] uint32 *entries_read,
1778 [out] uint32 *total_entries,
1779 [in,out] uint32 *resume_handle
1782 /*******************************************/
1783 /* NetShareGetInfo */
1784 /*******************************************/
1786 [nopush,nopull] NET_API_STATUS NetShareGetInfo(
1787 [in] string server_name,
1788 [in] string net_name,
1789 [in] uint32 level,
1790 [out] uint8 **buffer
1793 /*******************************************/
1794 /* NetShareSetInfo */
1795 /*******************************************/
1797 [nopush,nopull] NET_API_STATUS NetShareSetInfo(
1798 [in] string server_name,
1799 [in] string net_name,
1800 [in] uint32 level,
1801 [in] uint8 *buffer,
1802 [out] uint32 *parm_err
1805 /*******************************************/
1806 /* NetFileClose */
1807 /*******************************************/
1809 [nopush,nopull] NET_API_STATUS NetFileClose(
1810 [in] string server_name,
1811 [in] uint32 fileid
1814 /*******************************************/
1815 /* NetFileGetInfo */
1816 /*******************************************/
1818 typedef struct {
1819 uint32 fi2_id;
1820 } FILE_INFO_2;
1822 typedef struct {
1823 uint32 fi3_id;
1824 uint32 fi3_permissions;
1825 uint32 fi3_num_locks;
1826 string fi3_pathname;
1827 string fi3_username;
1828 } FILE_INFO_3;
1830 [nopush,nopull] NET_API_STATUS NetFileGetInfo(
1831 [in] string server_name,
1832 [in] uint32 fileid,
1833 [in] uint32 level,
1834 [out] uint8 **buffer
1837 /*******************************************/
1838 /* NetFileEnum */
1839 /*******************************************/
1841 [nopush,nopull] NET_API_STATUS NetFileEnum(
1842 [in] string server_name,
1843 [in] string base_path,
1844 [in] string user_name,
1845 [in] uint32 level,
1846 [out] uint8 **buffer,
1847 [in] uint32 prefmaxlen,
1848 [out] uint32 *entries_read,
1849 [out] uint32 *total_entries,
1850 [in,out] uint32 *resume_handle
1853 /*******************************************/
1854 /* NetShutdownInit */
1855 /*******************************************/
1857 [nopush,nopull] NET_API_STATUS NetShutdownInit(
1858 [in] string server_name,
1859 [in] string message,
1860 [in] uint32 timeout,
1861 [in] uint8 force_apps,
1862 [in] uint8 do_reboot
1865 /*******************************************/
1866 /* NetShutdownAbort */
1867 /*******************************************/
1869 [nopush,nopull] NET_API_STATUS NetShutdownAbort(
1870 [in] string server_name
1873 /*******************************************/
1874 /* I_NetLogonControl */
1875 /*******************************************/
1877 typedef struct {
1878 uint32 netlog1_flags;
1879 NET_API_STATUS netlog1_pdc_connection_status;
1880 } NETLOGON_INFO_1;
1882 typedef struct {
1883 uint32 netlog2_flags;
1884 NET_API_STATUS netlog2_pdc_connection_status;
1885 string netlog2_trusted_dc_name;
1886 NET_API_STATUS netlog2_tc_connection_status;
1887 } NETLOGON_INFO_2;
1889 typedef struct {
1890 uint32 netlog1_flags;
1891 uint32 netlog3_logon_attempts;
1892 uint32 netlog3_reserved1;
1893 uint32 netlog3_reserved2;
1894 uint32 netlog3_reserved3;
1895 uint32 netlog3_reserved4;
1896 uint32 netlog3_reserved5;
1897 } NETLOGON_INFO_3;
1899 typedef struct {
1900 string netlog4_trusted_dc_name;
1901 string netlog4_trusted_domain_name;
1902 } NETLOGON_INFO_4;
1904 [nopush,nopull] NET_API_STATUS I_NetLogonControl(
1905 [in] string server_name,
1906 [in] uint32 function_code,
1907 [in] uint32 query_level,
1908 [out,ref] uint8 **buffer
1911 /*******************************************/
1912 /* I_NetLogonControl2 */
1913 /*******************************************/
1915 [nopush,nopull] NET_API_STATUS I_NetLogonControl2(
1916 [in] string server_name,
1917 [in] uint32 function_code,
1918 [in] uint32 query_level,
1919 [in] uint8 *data,
1920 [out,ref] uint8 **buffer