2 libnetapi interface definition
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 */")
11 pointer_default(unique)
15 const int ERROR_MORE_DATA
= 234L;
17 [public] typedef [v1_enum] enum {
21 [public] typedef struct {
25 uint32 sub_auths
[MAXSUBAUTHS
];
28 /*******************************************/
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
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 /*******************************************/
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 /*******************************************/
72 NetSetupUnknownStatus
= 0,
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
,
97 /*******************************************/
98 /* NetRenameMachineInDomain */
99 /*******************************************/
101 [nopush
,nopull
] NET_API_STATUS NetRenameMachineInDomain
(
102 [in] string server_name
,
103 [in] string new_machine_name
,
105 [in] string password
,
106 [in] uint32 rename_options
109 /*******************************************/
110 /* NetServerGetInfo */
111 /*******************************************/
113 [public] typedef struct {
114 uint32 sv100_platform_id
;
118 [public] typedef struct {
119 uint32 sv101_platform_id
;
121 uint32 sv101_version_major
;
122 uint32 sv101_version_minor
;
124 string sv101_comment
;
127 [public] typedef struct {
128 uint32 sv102_platform_id
;
130 uint32 sv102_version_major
;
131 uint32 sv102_version_minor
;
133 string sv102_comment
;
136 boolean8 sv102_hidden
;
137 uint32 sv102_announce
;
138 uint32 sv102_anndelta
;
139 uint32 sv102_licenses
;
140 string sv102_userpath
;
143 [public] typedef struct {
144 string sv1005_comment
;
147 [nopush
,nopull
] NET_API_STATUS NetServerGetInfo
(
148 [in,unique] string *server_name
,
153 /*******************************************/
154 /* NetServerSetInfo */
155 /*******************************************/
157 [nopush
,nopull
] NET_API_STATUS NetServerSetInfo
(
158 [in,unique] string *server_name
,
161 [out] uint32
*parm_error
164 /*******************************************/
166 /*******************************************/
168 [nopush
,nopull
] NET_API_STATUS NetGetDCName
(
169 [in,unique] string *server_name
,
170 [in,unique] string *domain_name
,
174 /*******************************************/
175 /* NetGetAnyDCName */
176 /*******************************************/
178 [nopush
,nopull
] NET_API_STATUS NetGetAnyDCName
(
179 [in,unique] string *server_name
,
180 [in,unique] string *domain_name
,
184 /*******************************************/
186 /*******************************************/
188 [public] typedef struct {
189 string domain_controller_name
;
190 string domain_controller_address
;
191 uint32 domain_controller_address_type
;
194 string dns_forest_name
;
197 string client_site_name
;
198 } DOMAIN_CONTROLLER_INFO
;
200 [nopush
,nopull
] NET_API_STATUS DsGetDcName
(
201 [in,unique] string *server_name
,
202 [in,ref] string *domain_name
,
203 [in,unique] GUID
*domain_guid
,
204 [in,unique] string *site_name
,
206 [out,ref] DOMAIN_CONTROLLER_INFO
**dc_info
209 /*******************************************/
211 /*******************************************/
213 [public] typedef struct {
218 const int USER_PRIV_GUEST
= 0;
219 const int USER_PRIV_USER
= 1;
220 const int USER_PRIV_ADMIN
= 2;
222 [public] typedef struct {
224 string usri1_password
;
225 uint32 usri1_password_age
;
227 string usri1_home_dir
;
228 string usri1_comment
;
230 string usri1_script_path
;
233 /* auth_flags in USER_INFO_2 */
235 const int AF_OP_PRINT
= 0x1;
236 const int AF_OP_COMM
= 0x2;
237 const int AF_OP_SERVER
= 0x4;
238 const int AF_OP_ACCOUNTS
= 0x8;
239 const int AF_SETTABLE_BITS
= (AF_OP_PRINT | AF_OP_COMM | AF_OP_SERVER | AF_OP_ACCOUNTS
);
241 const int USER_MAXSTORAGE_UNLIMITED
= (uint32_t
)-1L;
243 [public] typedef struct {
245 string usri2_password
;
246 uint32 usri2_password_age
;
248 string usri2_home_dir
;
249 string usri2_comment
;
251 string usri2_script_path
;
252 uint32 usri2_auth_flags
;
253 string usri2_full_name
;
254 string usri2_usr_comment
;
256 string usri2_workstations
;
257 uint32 usri2_last_logon
;
258 uint32 usri2_last_logoff
;
259 uint32 usri2_acct_expires
;
260 uint32 usri2_max_storage
;
261 uint32 usri2_units_per_week
;
262 uint8
*usri2_logon_hours
;
263 uint32 usri2_bad_pw_count
;
264 uint32 usri2_num_logons
;
265 string usri2_logon_server
;
266 uint32 usri2_country_code
;
267 uint32 usri2_code_page
;
270 [public] typedef struct {
272 uint32 usri3_password_age
;
274 string usri3_home_dir
;
275 string usri3_comment
;
277 string usri3_script_path
;
278 uint32 usri3_auth_flags
;
279 string usri3_full_name
;
280 string usri3_usr_comment
;
282 string usri3_workstations
;
283 uint32 usri3_last_logon
;
284 uint32 usri3_last_logoff
;
285 uint32 usri3_acct_expires
;
286 uint32 usri3_max_storage
;
287 uint32 usri3_units_per_week
;
288 uint8
*usri3_logon_hours
;
289 uint32 usri3_bad_pw_count
;
290 uint32 usri3_num_logons
;
291 string usri3_logon_server
;
292 uint32 usri3_country_code
;
293 uint32 usri3_code_page
;
294 uint32 usri3_user_id
;
295 uint32 usri3_primary_group_id
;
296 string usri3_profile
;
297 string usri3_home_dir_drive
;
298 uint32 usri3_password_expired
;
301 [public] typedef struct {
303 string usri4_password
;
304 uint32 usri4_password_age
;
306 string usri4_home_dir
;
307 string usri4_comment
;
309 string usri4_script_path
;
310 uint32 usri4_auth_flags
;
311 string usri4_full_name
;
312 string usri4_usr_comment
;
314 string usri4_workstations
;
315 uint32 usri4_last_logon
;
316 uint32 usri4_last_logoff
;
317 uint32 usri4_acct_expires
;
318 uint32 usri4_max_storage
;
319 uint32 usri4_units_per_week
;
320 uint8
*usri4_logon_hours
;
321 uint32 usri4_bad_pw_count
;
322 uint32 usri4_num_logons
;
323 string usri4_logon_server
;
324 uint32 usri4_country_code
;
325 uint32 usri4_code_page
;
326 domsid
*usri4_user_sid
;
327 uint32 usri4_primary_group_id
;
328 string usri4_profile
;
329 string usri4_home_dir_drive
;
330 uint32 usri4_password_expired
;
333 [public] typedef struct {
335 string usri10_comment
;
336 string usri10_usr_comment
;
337 string usri10_full_name
;
340 [public] typedef struct {
342 string usri11_comment
;
343 string usri11_usr_comment
;
344 string usri11_full_name
;
346 uint32 usri11_auth_flags
;
347 uint32 usri11_password_age
;
348 string usri11_home_dir
;
350 uint32 usri11_last_logon
;
351 uint32 usri11_last_logoff
;
352 uint32 usri11_bad_pw_count
;
353 uint32 usri11_num_logons
;
354 string usri11_logon_server
;
355 uint32 usri11_country_code
;
356 string usri11_workstations
;
357 uint32 usri11_max_storage
;
358 uint32 usri11_units_per_week
;
359 uint8
*usri11_logon_hours
;
360 uint32 usri11_code_page
;
363 [public] typedef struct {
365 string usri20_full_name
;
366 string usri20_comment
;
368 uint32 usri20_user_id
;
371 const int ENCRYPTED_PWLEN
= 16;
373 [public] typedef struct {
374 uint8 usri21_password
[ENCRYPTED_PWLEN
];
377 [public] typedef struct {
379 uint8 usri22_password
[ENCRYPTED_PWLEN
];
380 uint32 usri22_password_age
;
382 string usri22_home_dir
;
383 string usri22_comment
;
385 uint32 usri22_script_path
;
386 uint32 usri22_auth_flags
;
387 string usri22_full_name
;
388 string usri22_usr_comment
;
390 string usri22_workstations
;
391 uint32 usri22_last_logon
;
392 uint32 usri22_last_logoff
;
393 uint32 usri22_acct_expires
;
394 uint32 usri22_max_storage
;
395 uint32 usri22_units_per_week
;
396 uint8
*usri22_logon_hours
;
397 uint32 usri22_bad_pw_count
;
398 uint32 usri22_num_logons
;
399 string usri22_logon_server
;
400 uint32 usri22_country_code
;
401 uint32 usri22_code_page
;
404 [public] typedef struct {
406 string usri23_full_name
;
407 string usri23_comment
;
409 domsid
*usri23_user_sid
;
412 [public] typedef struct {
413 string usri1003_password
;
416 [public] typedef struct {
417 uint32 usri1005_priv
;
420 [public] typedef struct {
421 string usri1006_home_dir
;
424 [public] typedef struct {
425 string usri1007_comment
;
428 [public] typedef struct {
429 uint32 usri1008_flags
;
432 [public] typedef struct {
433 string usri1009_script_path
;
436 [public] typedef struct {
437 uint32 usri1010_auth_flags
;
440 [public] typedef struct {
441 string usri1011_full_name
;
444 [public] typedef struct {
445 string usri1012_usr_comment
;
448 [public] typedef struct {
449 string usri1013_parms
;
452 [public] typedef struct {
453 string usri1014_workstations
;
456 [public] typedef struct {
457 uint32 usri1017_acct_expires
;
460 [public] typedef struct {
461 uint32 usri1018_max_storage
;
464 [public] typedef struct {
465 uint32 usri1020_units_per_week
;
466 uint8
*usri1020_logon_hours
;
469 [public] typedef struct {
470 string usri1023_logon_server
;
473 [public] typedef struct {
474 uint32 usri1024_country_code
;
477 [public] typedef struct {
478 uint32 usri1025_code_page
;
481 [public] typedef struct {
482 uint32 usri1051_primary_group_id
;
485 [public] typedef struct {
486 string usri1052_profile
;
489 [public] typedef struct {
490 string usri1053_home_dir_drive
;
493 [public] typedef struct {
495 string usriX_password
;
496 uint32 usriX_password_age
;
498 string usriX_home_dir
;
499 string usriX_comment
;
501 string usriX_script_path
;
502 uint32 usriX_auth_flags
;
503 string usriX_full_name
;
504 string usriX_usr_comment
;
506 string usriX_workstations
;
507 uint32 usriX_last_logon
;
508 uint32 usriX_last_logoff
;
509 uint32 usriX_acct_expires
;
510 uint32 usriX_max_storage
;
511 uint32 usriX_units_per_week
;
512 uint8
*usriX_logon_hours
;
513 uint32 usriX_bad_pw_count
;
514 uint32 usriX_num_logons
;
515 string usriX_logon_server
;
516 uint32 usriX_country_code
;
517 uint32 usriX_code_page
;
518 string usriX_profile
;
519 string usriX_home_dir_drive
;
520 uint32 usriX_user_id
;
521 uint32 usriX_primary_group_id
;
522 uint32 usriX_password_expired
;
525 [nopush
,nopull
] NET_API_STATUS NetUserAdd
(
526 [in,unique] string *server_name
,
528 [in,ref] uint8
*buffer
,
529 [out,ref] uint32
*parm_error
532 /*******************************************/
534 /*******************************************/
536 [nopush
,nopull
] NET_API_STATUS NetUserDel
(
537 [in,unique] string *server_name
,
538 [in,ref] string *user_name
541 /*******************************************/
543 /*******************************************/
545 const int FILTER_TEMP_DUPLICATE_ACCOUNT
= 0x0001;
546 const int FILTER_NORMAL_ACCOUNT
= 0x0002;
547 const int FILTER_INTERDOMAIN_TRUST_ACCOUNT
= 0x0008;
548 const int FILTER_WORKSTATION_TRUST_ACCOUNT
= 0x0010;
549 const int FILTER_SERVER_TRUST_ACCOUNT
= 0x0020;
551 [nopush
,nopull
] NET_API_STATUS NetUserEnum
(
552 [in,unique] string *server_name
,
555 [out,ref] uint8
**buffer
,
556 [in] uint32 prefmaxlen
,
557 [out,ref] uint32
*entries_read
,
558 [out,ref] uint32
*total_entries
,
559 [in,out,ref] uint32
*resume_handle
562 /*******************************************/
563 /* NetUserChangePassword */
564 /*******************************************/
566 [nopush
,nopull
] NET_API_STATUS NetUserChangePassword
(
567 [in] string domain_name
,
568 [in] string user_name
,
569 [in] string old_password
,
570 [in] string new_password
573 /*******************************************/
575 /*******************************************/
577 [nopush
,nopull
] NET_API_STATUS NetUserGetInfo
(
578 [in] string server_name
,
579 [in] string user_name
,
584 /*******************************************/
586 /*******************************************/
588 [nopush
,nopull
] NET_API_STATUS NetUserSetInfo
(
589 [in] string server_name
,
590 [in] string user_name
,
593 [out] uint32
*parm_err
596 /*******************************************/
597 /* NetUserGetGroups */
598 /*******************************************/
600 [public] typedef struct {
602 } GROUP_USERS_INFO_0
;
604 [public] typedef struct {
606 uint32 grui1_attributes
;
607 } GROUP_USERS_INFO_1
;
609 [nopush
,nopull
] NET_API_STATUS NetUserGetGroups
(
610 [in] string server_name
,
611 [in] string user_name
,
613 [out] uint8
**buffer
,
614 [in] uint32 prefmaxlen
,
615 [out,ref] uint32
*entries_read
,
616 [out,ref] uint32
*total_entries
619 /*******************************************/
620 /* NetUserSetGroups */
621 /*******************************************/
623 [nopush
,nopull
] NET_API_STATUS NetUserSetGroups
(
624 [in] string server_name
,
625 [in] string user_name
,
628 [in] uint32 num_entries
631 /*******************************************/
632 /* NetUserGetLocalGroups */
633 /*******************************************/
635 const int LG_INCLUDE_INDIRECT
= 0x0001;
639 } LOCALGROUP_USERS_INFO_0
;
641 [nopush
,nopull
] NET_API_STATUS NetUserGetLocalGroups
(
642 [in] string server_name
,
643 [in] string user_name
,
646 [out] uint8
**buffer
,
647 [in] uint32 prefmaxlen
,
648 [out,ref] uint32
*entries_read
,
649 [out,ref] uint32
*total_entries
652 /*******************************************/
653 /* NetUserModalsGet */
654 /*******************************************/
656 const int TIMEQ_FOREVER
= (uint32_t
)-1L;
659 uint32 usrmod0_min_passwd_len
;
660 uint32 usrmod0_max_passwd_age
;
661 uint32 usrmod0_min_passwd_age
;
662 uint32 usrmod0_force_logoff
;
663 uint32 usrmod0_password_hist_len
;
664 } USER_MODALS_INFO_0
;
668 string usrmod1_primary
;
669 } USER_MODALS_INFO_1
;
672 string usrmod2_domain_name
;
673 domsid
*usrmod2_domain_id
;
674 } USER_MODALS_INFO_2
;
677 uint32 usrmod3_lockout_duration
;
678 uint32 usrmod3_lockout_observation_window
;
679 uint32 usrmod3_lockout_threshold
;
680 } USER_MODALS_INFO_3
;
683 uint32 usrmod1001_min_passwd_len
;
684 } USER_MODALS_INFO_1001
;
687 uint32 usrmod1002_max_passwd_age
;
688 } USER_MODALS_INFO_1002
;
691 uint32 usrmod1003_min_passwd_age
;
692 } USER_MODALS_INFO_1003
;
695 uint32 usrmod1004_force_logoff
;
696 } USER_MODALS_INFO_1004
;
699 uint32 usrmod1005_password_hist_len
;
700 } USER_MODALS_INFO_1005
;
703 uint32 usrmod1006_role
;
704 } USER_MODALS_INFO_1006
;
707 string usrmod1007_primary
;
708 } USER_MODALS_INFO_1007
;
710 [nopush
,nopull
] NET_API_STATUS NetUserModalsGet
(
711 [in] string server_name
,
713 [out,ref] uint8
**buffer
716 /*******************************************/
717 /* NetUserModalsSet */
718 /*******************************************/
720 [nopush
,nopull
] NET_API_STATUS NetUserModalsSet
(
721 [in] string server_name
,
724 [out,ref] uint32
*parm_err
727 /*******************************************/
728 /* NetQueryDisplayInformation */
729 /*******************************************/
731 [public] typedef struct {
733 string usri1_comment
;
735 string usri1_full_name
;
736 uint32 usri1_user_id
;
737 uint32 usri1_next_index
;
740 [public] typedef struct {
742 string usri2_comment
;
744 uint32 usri2_user_id
;
745 uint32 usri2_next_index
;
746 } NET_DISPLAY_MACHINE
;
748 [public] typedef struct {
750 string grpi3_comment
;
751 uint32 grpi3_group_id
;
752 uint32 grpi3_attributes
;
753 uint32 grpi3_next_index
;
756 [nopush
,nopull
] NET_API_STATUS NetQueryDisplayInformation
(
757 [in,unique] string *server_name
,
760 [in] uint32 entries_requested
,
761 [in] uint32 prefmaxlen
,
762 [out,ref] uint32
*entries_read
,
763 [out,ref,noprint
] void **buffer
766 /*******************************************/
768 /*******************************************/
776 string grpi1_comment
;
781 string grpi2_comment
;
782 uint32 grpi2_group_id
;
783 uint32 grpi2_attributes
;
788 string grpi3_comment
;
789 domsid
*grpi3_group_sid
;
790 uint32 grpi3_attributes
;
794 string grpi1002_comment
;
798 uint32 grpi1005_attributes
;
801 [nopush
,nopull
] NET_API_STATUS NetGroupAdd
(
802 [in] string server_name
,
805 [out] uint32
*parm_err
808 /*******************************************/
810 /*******************************************/
812 [nopush
,nopull
] NET_API_STATUS NetGroupDel
(
813 [in] string server_name
,
814 [in] string group_name
817 /*******************************************/
819 /*******************************************/
821 [nopush
,nopull
] NET_API_STATUS NetGroupEnum
(
822 [in] string server_name
,
824 [out,ref] uint8
**buffer
,
825 [in] uint32 prefmaxlen
,
826 [out,ref] uint32
*entries_read
,
827 [out,ref] uint32
*total_entries
,
828 [in,out,ref] uint32
*resume_handle
831 /*******************************************/
832 /* NetGroupSetInfo */
833 /*******************************************/
835 [nopush
,nopull
] NET_API_STATUS NetGroupSetInfo
(
836 [in] string server_name
,
837 [in] string group_name
,
840 [out] uint32
*parm_err
843 /*******************************************/
844 /* NetGroupGetInfo */
845 /*******************************************/
847 [nopush
,nopull
] NET_API_STATUS NetGroupGetInfo
(
848 [in] string server_name
,
849 [in] string group_name
,
854 /*******************************************/
855 /* NetGroupAddUser */
856 /*******************************************/
858 [nopush
,nopull
] NET_API_STATUS NetGroupAddUser
(
859 [in] string server_name
,
860 [in] string group_name
,
861 [in] string user_name
864 /*******************************************/
865 /* NetGroupDelUser */
866 /*******************************************/
868 [nopush
,nopull
] NET_API_STATUS NetGroupDelUser
(
869 [in] string server_name
,
870 [in] string group_name
,
871 [in] string user_name
874 /*******************************************/
875 /* NetGroupGetUsers */
876 /*******************************************/
878 [nopush
,nopull
] NET_API_STATUS NetGroupGetUsers
(
879 [in] string server_name
,
880 [in] string group_name
,
882 [out] uint8
**buffer
,
883 [in] uint32 prefmaxlen
,
884 [out,ref] uint32
*entries_read
,
885 [out,ref] uint32
*total_entries
,
886 [in,out,ref] uint32
*resume_handle
889 /*******************************************/
890 /* NetGroupSetUsers */
891 /*******************************************/
893 [nopush
,nopull
] NET_API_STATUS NetGroupSetUsers
(
894 [in] string server_name
,
895 [in] string group_name
,
898 [in] uint32 num_entries
901 /*******************************************/
902 /* NetLocalGroupAdd */
903 /*******************************************/
911 string lgrpi1_comment
;
915 string lgrpi1002_comment
;
916 } LOCALGROUP_INFO_1002
;
918 [nopush
,nopull
] NET_API_STATUS NetLocalGroupAdd
(
919 [in] string server_name
,
922 [out,ref] uint32
*parm_err
925 /*******************************************/
926 /* NetLocalGroupDel */
927 /*******************************************/
929 [nopush
,nopull
] NET_API_STATUS NetLocalGroupDel
(
930 [in] string server_name
,
931 [in] string group_name
934 /*******************************************/
935 /* NetLocalGroupGetInfo */
936 /*******************************************/
938 [nopush
,nopull
] NET_API_STATUS NetLocalGroupGetInfo
(
939 [in] string server_name
,
940 [in] string group_name
,
942 [out,ref] uint8
**buffer
945 /*******************************************/
946 /* NetLocalGroupSetInfo */
947 /*******************************************/
949 [nopush
,nopull
] NET_API_STATUS NetLocalGroupSetInfo
(
950 [in] string server_name
,
951 [in] string group_name
,
953 [in,ref] uint8
*buffer
,
954 [out,ref] uint32
*parm_err
957 /*******************************************/
958 /* NetLocalGroupEnum */
959 /*******************************************/
961 [nopush
,nopull
] NET_API_STATUS NetLocalGroupEnum
(
962 [in] string server_name
,
964 [out,ref] uint8
**buffer
,
965 [in] uint32 prefmaxlen
,
966 [out,ref] uint32
*entries_read
,
967 [out,ref] uint32
*total_entries
,
968 [in,out,ref] uint32
*resume_handle
971 /*******************************************/
972 /* NetLocalGroupAddMembers */
973 /*******************************************/
980 SidTypeWellKnownGroup
= 5,
981 SidTypeDeletedAccount
= 6,
990 } LOCALGROUP_MEMBERS_INFO_0
;
994 SID_NAME_USE lgrmi1_sidusage
;
996 } LOCALGROUP_MEMBERS_INFO_1
;
1000 SID_NAME_USE lgrmi2_sidusage
;
1001 string lgrmi2_domainandname
;
1002 } LOCALGROUP_MEMBERS_INFO_2
;
1005 string lgrmi3_domainandname
;
1006 } LOCALGROUP_MEMBERS_INFO_3
;
1008 [nopush
,nopull
] NET_API_STATUS NetLocalGroupAddMembers
(
1009 [in] string server_name
,
1010 [in] string group_name
,
1013 [in] uint32 total_entries
1016 /*******************************************/
1017 /* NetLocalGroupDelMembers */
1018 /*******************************************/
1020 [nopush
,nopull
] NET_API_STATUS NetLocalGroupDelMembers
(
1021 [in] string server_name
,
1022 [in] string group_name
,
1025 [in] uint32 total_entries
1028 /*******************************************/
1029 /* NetLocalGroupGetMembers */
1030 /*******************************************/
1032 [nopush
,nopull
] NET_API_STATUS NetLocalGroupGetMembers
(
1033 [in] string server_name
,
1034 [in] string local_group_name
,
1036 [out] uint8
**buffer
,
1037 [in] uint32 prefmaxlen
,
1038 [out] uint32
*entries_read
,
1039 [out] uint32
*total_entries
,
1040 [in,out] uint32
*resume_handle
1043 /*******************************************/
1044 /* NetLocalGroupSetMembers */
1045 /*******************************************/
1047 [nopush
,nopull
] NET_API_STATUS NetLocalGroupSetMembers
(
1048 [in] string server_name
,
1049 [in] string group_name
,
1052 [in] uint32 total_entries
1055 /*******************************************/
1057 /*******************************************/
1060 uint32 tod_elapsedt
;
1067 uint32 tod_tinterval
;
1074 [nopush
,nopull
] NET_API_STATUS NetRemoteTOD
(
1075 [in] string server_name
,
1076 [out,ref] uint8
**buffer
1079 /*******************************************/
1081 /*******************************************/
1084 string shi0_netname
;
1088 string shi1_netname
;
1094 string shi2_netname
;
1097 uint32 shi2_permissions
;
1098 uint32 shi2_max_uses
;
1099 uint32 shi2_current_uses
;
1105 string shi501_netname
;
1107 string shi501_remark
;
1108 uint32 shi501_flags
;
1112 string shi1004_remark
;
1115 const int CSC_MASK
= 0x30;
1117 typedef [public,bitmap32bit
] bitmap
{
1118 SHI1005_FLAGS_DFS
= 0x01,
1119 SHI1005_FLAGS_DFS_ROOT
= 0x02,
1120 CSC_CACHE_MANUAL_REINT
= 0x00,
1121 CSC_CACHE_AUTO_REINT
= 0x10,
1122 CSC_CACHE_VDO
= 0x20,
1123 CSC_CACHE_NONE
= 0x30,
1124 SHI1005_FLAGS_RESTRICT_EXCLUSIVE_OPENS
= 0x0100,
1125 SHI1005_FLAGS_FORCE_SHARED_DELETE
= 0x0200,
1126 SHI1005_FLAGS_ALLOW_NAMESPACE_CACHING
= 0x0400,
1127 SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM
= 0x0800
1128 } SHARE_INFO_1005_FLAGS
;
1131 SHARE_INFO_1005_FLAGS shi1005_flags
;
1135 uint32 shi1006_max_uses
;
1138 [nopush
,nopull
] NET_API_STATUS NetShareAdd
(
1139 [in] string server_name
,
1142 [out] uint32
*parm_err
1145 /*******************************************/
1147 /*******************************************/
1149 [nopush
,nopull
] NET_API_STATUS NetShareDel
(
1150 [in] string server_name
,
1151 [in] string net_name
,
1152 [in] uint32 reserved
1155 /*******************************************/
1157 /*******************************************/
1159 [nopush
,nopull
] NET_API_STATUS NetShareEnum
(
1160 [in] string server_name
,
1162 [out] uint8
**buffer
,
1163 [in] uint32 prefmaxlen
,
1164 [out] uint32
*entries_read
,
1165 [out] uint32
*total_entries
,
1166 [in,out] uint32
*resume_handle
1169 /*******************************************/
1170 /* NetShareGetInfo */
1171 /*******************************************/
1173 [nopush
,nopull
] NET_API_STATUS NetShareGetInfo
(
1174 [in] string server_name
,
1175 [in] string net_name
,
1177 [out] uint8
**buffer
1180 /*******************************************/
1181 /* NetShareSetInfo */
1182 /*******************************************/
1184 [nopush
,nopull
] NET_API_STATUS NetShareSetInfo
(
1185 [in] string server_name
,
1186 [in] string net_name
,
1189 [out] uint32
*parm_err
1192 /*******************************************/
1194 /*******************************************/
1196 [nopush
,nopull
] NET_API_STATUS NetFileClose
(
1197 [in] string server_name
,
1201 /*******************************************/
1202 /* NetFileGetInfo */
1203 /*******************************************/
1211 uint32 fi3_permissions
;
1212 uint32 fi3_num_locks
;
1213 string fi3_pathname
;
1214 string fi3_username
;
1217 [nopush
,nopull
] NET_API_STATUS NetFileGetInfo
(
1218 [in] string server_name
,
1221 [out] uint8
**buffer
1224 /*******************************************/
1226 /*******************************************/
1228 [nopush
,nopull
] NET_API_STATUS NetFileEnum
(
1229 [in] string server_name
,
1230 [in] string base_path
,
1231 [in] string user_name
,
1233 [out] uint8
**buffer
,
1234 [in] uint32 prefmaxlen
,
1235 [out] uint32
*entries_read
,
1236 [out] uint32
*total_entries
,
1237 [in,out] uint32
*resume_handle