d217656845d7ca7b2567191bf2153f72ac1527e1
[gd/samba/.git] / source3 / lib / netapi / libnetapi.h
1 /*
2  *  Unix SMB/CIFS implementation.
3  *  NetApi Support
4  *  Copyright (C) Guenther Deschner 2007-2008
5  *
6  *  This program is free software; you can redistribute it and/or modify
7  *  it under the terms of the GNU General Public License as published by
8  *  the Free Software Foundation; either version 3 of the License, or
9  *  (at your option) any later version.
10  *
11  *  This program is distributed in the hope that it will be useful,
12  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  *  GNU General Public License for more details.
15  *
16  *  You should have received a copy of the GNU General Public License
17  *  along with this program; if not, see <http://www.gnu.org/licenses/>.
18  */
19
20 #ifndef __LIBNETAPI_LIBNETAPI__
21 #define __LIBNETAPI_LIBNETAPI__
22 NET_API_STATUS NetJoinDomain(const char * server /* [in] [unique] */,
23                              const char * domain /* [in] [ref] */,
24                              const char * account_ou /* [in] [unique] */,
25                              const char * account /* [in] [unique] */,
26                              const char * password /* [in] [unique] */,
27                              uint32_t join_flags /* [in] */);
28 WERROR NetJoinDomain_r(struct libnetapi_ctx *ctx,
29                        struct NetJoinDomain *r);
30 WERROR NetJoinDomain_l(struct libnetapi_ctx *ctx,
31                        struct NetJoinDomain *r);
32 NET_API_STATUS NetUnjoinDomain(const char * server_name /* [in] [unique] */,
33                                const char * account /* [in] [unique] */,
34                                const char * password /* [in] [unique] */,
35                                uint32_t unjoin_flags /* [in] */);
36 WERROR NetUnjoinDomain_r(struct libnetapi_ctx *ctx,
37                          struct NetUnjoinDomain *r);
38 WERROR NetUnjoinDomain_l(struct libnetapi_ctx *ctx,
39                          struct NetUnjoinDomain *r);
40 NET_API_STATUS NetGetJoinInformation(const char * server_name /* [in] [unique] */,
41                                      const char * *name_buffer /* [out] [ref] */,
42                                      uint16_t *name_type /* [out] [ref] */);
43 WERROR NetGetJoinInformation_r(struct libnetapi_ctx *ctx,
44                                struct NetGetJoinInformation *r);
45 WERROR NetGetJoinInformation_l(struct libnetapi_ctx *ctx,
46                                struct NetGetJoinInformation *r);
47 NET_API_STATUS NetGetJoinableOUs(const char * server_name /* [in] [unique] */,
48                                  const char * domain /* [in] [ref] */,
49                                  const char * account /* [in] [unique] */,
50                                  const char * password /* [in] [unique] */,
51                                  uint32_t *ou_count /* [out] [ref] */,
52                                  const char * **ous /* [out] [ref] */);
53 WERROR NetGetJoinableOUs_r(struct libnetapi_ctx *ctx,
54                            struct NetGetJoinableOUs *r);
55 WERROR NetGetJoinableOUs_l(struct libnetapi_ctx *ctx,
56                            struct NetGetJoinableOUs *r);
57 NET_API_STATUS NetRenameMachineInDomain(const char * server_name /* [in] */,
58                                         const char * new_machine_name /* [in] */,
59                                         const char * account /* [in] */,
60                                         const char * password /* [in] */,
61                                         uint32_t rename_options /* [in] */);
62 WERROR NetRenameMachineInDomain_r(struct libnetapi_ctx *ctx,
63                                   struct NetRenameMachineInDomain *r);
64 WERROR NetRenameMachineInDomain_l(struct libnetapi_ctx *ctx,
65                                   struct NetRenameMachineInDomain *r);
66 NET_API_STATUS NetProvisionComputerAccount(const char * domain /* [in] [ref] */,
67                                            const char * machine_name /* [in] [ref] */,
68                                            const char * machine_account_ou /* [in] [unique] */,
69                                            const char * dcname /* [in] [unique] */,
70                                            uint32_t options /* [in] */,
71                                            uint8_t **provision_bin_data /* [in,out] [unique] */,
72                                            uint32_t *provision_bin_data_size /* [in,out] [unique] */,
73                                            const char * *provision_text_data /* [in,out] [unique] */);
74 WERROR NetProvisionComputerAccount_r(struct libnetapi_ctx *ctx,
75                                      struct NetProvisionComputerAccount *r);
76 WERROR NetProvisionComputerAccount_l(struct libnetapi_ctx *ctx,
77                                      struct NetProvisionComputerAccount *r);
78 NET_API_STATUS NetRequestOfflineDomainJoin(uint8_t *provision_bin_data /* [in] [unique] */,
79                                            uint32_t provision_bin_data_size /* [in] */,
80                                            uint32_t options /* [in] */,
81                                            const char * windows_path /* [in] [unique] */);
82 WERROR NetRequestOfflineDomainJoin_r(struct libnetapi_ctx *ctx,
83                                      struct NetRequestOfflineDomainJoin *r);
84 WERROR NetRequestOfflineDomainJoin_l(struct libnetapi_ctx *ctx,
85                                      struct NetRequestOfflineDomainJoin *r);
86 NET_API_STATUS NetServerGetInfo(const char * server_name /* [in] [unique] */,
87                                 uint32_t level /* [in] */,
88                                 uint8_t **buffer /* [out] [ref] */);
89 WERROR NetServerGetInfo_r(struct libnetapi_ctx *ctx,
90                           struct NetServerGetInfo *r);
91 WERROR NetServerGetInfo_l(struct libnetapi_ctx *ctx,
92                           struct NetServerGetInfo *r);
93 NET_API_STATUS NetServerSetInfo(const char * server_name /* [in] [unique] */,
94                                 uint32_t level /* [in] */,
95                                 uint8_t *buffer /* [in] [ref] */,
96                                 uint32_t *parm_error /* [out] [ref] */);
97 WERROR NetServerSetInfo_r(struct libnetapi_ctx *ctx,
98                           struct NetServerSetInfo *r);
99 WERROR NetServerSetInfo_l(struct libnetapi_ctx *ctx,
100                           struct NetServerSetInfo *r);
101 NET_API_STATUS NetWkstaGetInfo(const char * server_name /* [in] [unique] */,
102                                uint32_t level /* [in] */,
103                                uint8_t **buffer /* [out] [ref] */);
104 WERROR NetWkstaGetInfo_r(struct libnetapi_ctx *ctx,
105                          struct NetWkstaGetInfo *r);
106 WERROR NetWkstaGetInfo_l(struct libnetapi_ctx *ctx,
107                          struct NetWkstaGetInfo *r);
108 NET_API_STATUS NetGetDCName(const char * server_name /* [in] [unique] */,
109                             const char * domain_name /* [in] [unique] */,
110                             uint8_t **buffer /* [out] [ref] */);
111 WERROR NetGetDCName_r(struct libnetapi_ctx *ctx,
112                       struct NetGetDCName *r);
113 WERROR NetGetDCName_l(struct libnetapi_ctx *ctx,
114                       struct NetGetDCName *r);
115 NET_API_STATUS NetGetAnyDCName(const char * server_name /* [in] [unique] */,
116                                const char * domain_name /* [in] [unique] */,
117                                uint8_t **buffer /* [out] [ref] */);
118 WERROR NetGetAnyDCName_r(struct libnetapi_ctx *ctx,
119                          struct NetGetAnyDCName *r);
120 WERROR NetGetAnyDCName_l(struct libnetapi_ctx *ctx,
121                          struct NetGetAnyDCName *r);
122 NET_API_STATUS DsGetDcName(const char * server_name /* [in] [unique] */,
123                            const char * domain_name /* [in] [ref] */,
124                            struct GUID *domain_guid /* [in] [unique] */,
125                            const char * site_name /* [in] [unique] */,
126                            uint32_t flags /* [in] */,
127                            struct DOMAIN_CONTROLLER_INFO **dc_info /* [out] [ref] */);
128 WERROR DsGetDcName_r(struct libnetapi_ctx *ctx,
129                      struct DsGetDcName *r);
130 WERROR DsGetDcName_l(struct libnetapi_ctx *ctx,
131                      struct DsGetDcName *r);
132 NET_API_STATUS NetUserAdd(const char * server_name /* [in] [unique] */,
133                           uint32_t level /* [in] */,
134                           uint8_t *buffer /* [in] [ref] */,
135                           uint32_t *parm_error /* [out] [ref] */);
136 WERROR NetUserAdd_r(struct libnetapi_ctx *ctx,
137                     struct NetUserAdd *r);
138 WERROR NetUserAdd_l(struct libnetapi_ctx *ctx,
139                     struct NetUserAdd *r);
140 NET_API_STATUS NetUserDel(const char * server_name /* [in] [unique] */,
141                           const char * user_name /* [in] [ref] */);
142 WERROR NetUserDel_r(struct libnetapi_ctx *ctx,
143                     struct NetUserDel *r);
144 WERROR NetUserDel_l(struct libnetapi_ctx *ctx,
145                     struct NetUserDel *r);
146 NET_API_STATUS NetUserEnum(const char * server_name /* [in] [unique] */,
147                            uint32_t level /* [in] */,
148                            uint32_t filter /* [in] */,
149                            uint8_t **buffer /* [out] [ref] */,
150                            uint32_t prefmaxlen /* [in] */,
151                            uint32_t *entries_read /* [out] [ref] */,
152                            uint32_t *total_entries /* [out] [ref] */,
153                            uint32_t *resume_handle /* [in,out] [ref] */);
154 WERROR NetUserEnum_r(struct libnetapi_ctx *ctx,
155                      struct NetUserEnum *r);
156 WERROR NetUserEnum_l(struct libnetapi_ctx *ctx,
157                      struct NetUserEnum *r);
158 NET_API_STATUS NetUserChangePassword(const char * domain_name /* [in] */,
159                                      const char * user_name /* [in] */,
160                                      const char * old_password /* [in] */,
161                                      const char * new_password /* [in] */);
162 WERROR NetUserChangePassword_r(struct libnetapi_ctx *ctx,
163                                struct NetUserChangePassword *r);
164 WERROR NetUserChangePassword_l(struct libnetapi_ctx *ctx,
165                                struct NetUserChangePassword *r);
166 NET_API_STATUS NetUserGetInfo(const char * server_name /* [in] */,
167                               const char * user_name /* [in] */,
168                               uint32_t level /* [in] */,
169                               uint8_t **buffer /* [out] [ref] */);
170 WERROR NetUserGetInfo_r(struct libnetapi_ctx *ctx,
171                         struct NetUserGetInfo *r);
172 WERROR NetUserGetInfo_l(struct libnetapi_ctx *ctx,
173                         struct NetUserGetInfo *r);
174 NET_API_STATUS NetUserSetInfo(const char * server_name /* [in] */,
175                               const char * user_name /* [in] */,
176                               uint32_t level /* [in] */,
177                               uint8_t *buffer /* [in] [ref] */,
178                               uint32_t *parm_err /* [out] [ref] */);
179 WERROR NetUserSetInfo_r(struct libnetapi_ctx *ctx,
180                         struct NetUserSetInfo *r);
181 WERROR NetUserSetInfo_l(struct libnetapi_ctx *ctx,
182                         struct NetUserSetInfo *r);
183 NET_API_STATUS NetUserGetGroups(const char * server_name /* [in] */,
184                                 const char * user_name /* [in] */,
185                                 uint32_t level /* [in] */,
186                                 uint8_t **buffer /* [out] [ref] */,
187                                 uint32_t prefmaxlen /* [in] */,
188                                 uint32_t *entries_read /* [out] [ref] */,
189                                 uint32_t *total_entries /* [out] [ref] */);
190 WERROR NetUserGetGroups_r(struct libnetapi_ctx *ctx,
191                           struct NetUserGetGroups *r);
192 WERROR NetUserGetGroups_l(struct libnetapi_ctx *ctx,
193                           struct NetUserGetGroups *r);
194 NET_API_STATUS NetUserSetGroups(const char * server_name /* [in] */,
195                                 const char * user_name /* [in] */,
196                                 uint32_t level /* [in] */,
197                                 uint8_t *buffer /* [in] [ref] */,
198                                 uint32_t num_entries /* [in] */);
199 WERROR NetUserSetGroups_r(struct libnetapi_ctx *ctx,
200                           struct NetUserSetGroups *r);
201 WERROR NetUserSetGroups_l(struct libnetapi_ctx *ctx,
202                           struct NetUserSetGroups *r);
203 NET_API_STATUS NetUserGetLocalGroups(const char * server_name /* [in] */,
204                                      const char * user_name /* [in] */,
205                                      uint32_t level /* [in] */,
206                                      uint32_t flags /* [in] */,
207                                      uint8_t **buffer /* [out] [ref] */,
208                                      uint32_t prefmaxlen /* [in] */,
209                                      uint32_t *entries_read /* [out] [ref] */,
210                                      uint32_t *total_entries /* [out] [ref] */);
211 WERROR NetUserGetLocalGroups_r(struct libnetapi_ctx *ctx,
212                                struct NetUserGetLocalGroups *r);
213 WERROR NetUserGetLocalGroups_l(struct libnetapi_ctx *ctx,
214                                struct NetUserGetLocalGroups *r);
215 NET_API_STATUS NetUserModalsGet(const char * server_name /* [in] */,
216                                 uint32_t level /* [in] */,
217                                 uint8_t **buffer /* [out] [ref] */);
218 WERROR NetUserModalsGet_r(struct libnetapi_ctx *ctx,
219                           struct NetUserModalsGet *r);
220 WERROR NetUserModalsGet_l(struct libnetapi_ctx *ctx,
221                           struct NetUserModalsGet *r);
222 NET_API_STATUS NetUserModalsSet(const char * server_name /* [in] */,
223                                 uint32_t level /* [in] */,
224                                 uint8_t *buffer /* [in] [ref] */,
225                                 uint32_t *parm_err /* [out] [ref] */);
226 WERROR NetUserModalsSet_r(struct libnetapi_ctx *ctx,
227                           struct NetUserModalsSet *r);
228 WERROR NetUserModalsSet_l(struct libnetapi_ctx *ctx,
229                           struct NetUserModalsSet *r);
230 NET_API_STATUS NetQueryDisplayInformation(const char * server_name /* [in] [unique] */,
231                                           uint32_t level /* [in] */,
232                                           uint32_t idx /* [in] */,
233                                           uint32_t entries_requested /* [in] */,
234                                           uint32_t prefmaxlen /* [in] */,
235                                           uint32_t *entries_read /* [out] [ref] */,
236                                           void **buffer /* [out] [noprint,ref] */);
237 WERROR NetQueryDisplayInformation_r(struct libnetapi_ctx *ctx,
238                                     struct NetQueryDisplayInformation *r);
239 WERROR NetQueryDisplayInformation_l(struct libnetapi_ctx *ctx,
240                                     struct NetQueryDisplayInformation *r);
241 NET_API_STATUS NetGroupAdd(const char * server_name /* [in] */,
242                            uint32_t level /* [in] */,
243                            uint8_t *buffer /* [in] [ref] */,
244                            uint32_t *parm_err /* [out] [ref] */);
245 WERROR NetGroupAdd_r(struct libnetapi_ctx *ctx,
246                      struct NetGroupAdd *r);
247 WERROR NetGroupAdd_l(struct libnetapi_ctx *ctx,
248                      struct NetGroupAdd *r);
249 NET_API_STATUS NetGroupDel(const char * server_name /* [in] */,
250                            const char * group_name /* [in] */);
251 WERROR NetGroupDel_r(struct libnetapi_ctx *ctx,
252                      struct NetGroupDel *r);
253 WERROR NetGroupDel_l(struct libnetapi_ctx *ctx,
254                      struct NetGroupDel *r);
255 NET_API_STATUS NetGroupEnum(const char * server_name /* [in] */,
256                             uint32_t level /* [in] */,
257                             uint8_t **buffer /* [out] [ref] */,
258                             uint32_t prefmaxlen /* [in] */,
259                             uint32_t *entries_read /* [out] [ref] */,
260                             uint32_t *total_entries /* [out] [ref] */,
261                             uint32_t *resume_handle /* [in,out] [ref] */);
262 WERROR NetGroupEnum_r(struct libnetapi_ctx *ctx,
263                       struct NetGroupEnum *r);
264 WERROR NetGroupEnum_l(struct libnetapi_ctx *ctx,
265                       struct NetGroupEnum *r);
266 NET_API_STATUS NetGroupSetInfo(const char * server_name /* [in] */,
267                                const char * group_name /* [in] */,
268                                uint32_t level /* [in] */,
269                                uint8_t *buffer /* [in] [ref] */,
270                                uint32_t *parm_err /* [out] [ref] */);
271 WERROR NetGroupSetInfo_r(struct libnetapi_ctx *ctx,
272                          struct NetGroupSetInfo *r);
273 WERROR NetGroupSetInfo_l(struct libnetapi_ctx *ctx,
274                          struct NetGroupSetInfo *r);
275 NET_API_STATUS NetGroupGetInfo(const char * server_name /* [in] */,
276                                const char * group_name /* [in] */,
277                                uint32_t level /* [in] */,
278                                uint8_t **buffer /* [out] [ref] */);
279 WERROR NetGroupGetInfo_r(struct libnetapi_ctx *ctx,
280                          struct NetGroupGetInfo *r);
281 WERROR NetGroupGetInfo_l(struct libnetapi_ctx *ctx,
282                          struct NetGroupGetInfo *r);
283 NET_API_STATUS NetGroupAddUser(const char * server_name /* [in] */,
284                                const char * group_name /* [in] */,
285                                const char * user_name /* [in] */);
286 WERROR NetGroupAddUser_r(struct libnetapi_ctx *ctx,
287                          struct NetGroupAddUser *r);
288 WERROR NetGroupAddUser_l(struct libnetapi_ctx *ctx,
289                          struct NetGroupAddUser *r);
290 NET_API_STATUS NetGroupDelUser(const char * server_name /* [in] */,
291                                const char * group_name /* [in] */,
292                                const char * user_name /* [in] */);
293 WERROR NetGroupDelUser_r(struct libnetapi_ctx *ctx,
294                          struct NetGroupDelUser *r);
295 WERROR NetGroupDelUser_l(struct libnetapi_ctx *ctx,
296                          struct NetGroupDelUser *r);
297 NET_API_STATUS NetGroupGetUsers(const char * server_name /* [in] */,
298                                 const char * group_name /* [in] */,
299                                 uint32_t level /* [in] */,
300                                 uint8_t **buffer /* [out] [ref] */,
301                                 uint32_t prefmaxlen /* [in] */,
302                                 uint32_t *entries_read /* [out] [ref] */,
303                                 uint32_t *total_entries /* [out] [ref] */,
304                                 uint32_t *resume_handle /* [in,out] [ref] */);
305 WERROR NetGroupGetUsers_r(struct libnetapi_ctx *ctx,
306                           struct NetGroupGetUsers *r);
307 WERROR NetGroupGetUsers_l(struct libnetapi_ctx *ctx,
308                           struct NetGroupGetUsers *r);
309 NET_API_STATUS NetGroupSetUsers(const char * server_name /* [in] */,
310                                 const char * group_name /* [in] */,
311                                 uint32_t level /* [in] */,
312                                 uint8_t *buffer /* [in] [ref] */,
313                                 uint32_t num_entries /* [in] */);
314 WERROR NetGroupSetUsers_r(struct libnetapi_ctx *ctx,
315                           struct NetGroupSetUsers *r);
316 WERROR NetGroupSetUsers_l(struct libnetapi_ctx *ctx,
317                           struct NetGroupSetUsers *r);
318 NET_API_STATUS NetLocalGroupAdd(const char * server_name /* [in] */,
319                                 uint32_t level /* [in] */,
320                                 uint8_t *buffer /* [in] [ref] */,
321                                 uint32_t *parm_err /* [out] [ref] */);
322 WERROR NetLocalGroupAdd_r(struct libnetapi_ctx *ctx,
323                           struct NetLocalGroupAdd *r);
324 WERROR NetLocalGroupAdd_l(struct libnetapi_ctx *ctx,
325                           struct NetLocalGroupAdd *r);
326 NET_API_STATUS NetLocalGroupDel(const char * server_name /* [in] */,
327                                 const char * group_name /* [in] */);
328 WERROR NetLocalGroupDel_r(struct libnetapi_ctx *ctx,
329                           struct NetLocalGroupDel *r);
330 WERROR NetLocalGroupDel_l(struct libnetapi_ctx *ctx,
331                           struct NetLocalGroupDel *r);
332 NET_API_STATUS NetLocalGroupGetInfo(const char * server_name /* [in] */,
333                                     const char * group_name /* [in] */,
334                                     uint32_t level /* [in] */,
335                                     uint8_t **buffer /* [out] [ref] */);
336 WERROR NetLocalGroupGetInfo_r(struct libnetapi_ctx *ctx,
337                               struct NetLocalGroupGetInfo *r);
338 WERROR NetLocalGroupGetInfo_l(struct libnetapi_ctx *ctx,
339                               struct NetLocalGroupGetInfo *r);
340 NET_API_STATUS NetLocalGroupSetInfo(const char * server_name /* [in] */,
341                                     const char * group_name /* [in] */,
342                                     uint32_t level /* [in] */,
343                                     uint8_t *buffer /* [in] [ref] */,
344                                     uint32_t *parm_err /* [out] [ref] */);
345 WERROR NetLocalGroupSetInfo_r(struct libnetapi_ctx *ctx,
346                               struct NetLocalGroupSetInfo *r);
347 WERROR NetLocalGroupSetInfo_l(struct libnetapi_ctx *ctx,
348                               struct NetLocalGroupSetInfo *r);
349 NET_API_STATUS NetLocalGroupEnum(const char * server_name /* [in] */,
350                                  uint32_t level /* [in] */,
351                                  uint8_t **buffer /* [out] [ref] */,
352                                  uint32_t prefmaxlen /* [in] */,
353                                  uint32_t *entries_read /* [out] [ref] */,
354                                  uint32_t *total_entries /* [out] [ref] */,
355                                  uint32_t *resume_handle /* [in,out] [ref] */);
356 WERROR NetLocalGroupEnum_r(struct libnetapi_ctx *ctx,
357                            struct NetLocalGroupEnum *r);
358 WERROR NetLocalGroupEnum_l(struct libnetapi_ctx *ctx,
359                            struct NetLocalGroupEnum *r);
360 NET_API_STATUS NetLocalGroupAddMembers(const char * server_name /* [in] */,
361                                        const char * group_name /* [in] */,
362                                        uint32_t level /* [in] */,
363                                        uint8_t *buffer /* [in] [ref] */,
364                                        uint32_t total_entries /* [in] */);
365 WERROR NetLocalGroupAddMembers_r(struct libnetapi_ctx *ctx,
366                                  struct NetLocalGroupAddMembers *r);
367 WERROR NetLocalGroupAddMembers_l(struct libnetapi_ctx *ctx,
368                                  struct NetLocalGroupAddMembers *r);
369 NET_API_STATUS NetLocalGroupDelMembers(const char * server_name /* [in] */,
370                                        const char * group_name /* [in] */,
371                                        uint32_t level /* [in] */,
372                                        uint8_t *buffer /* [in] [ref] */,
373                                        uint32_t total_entries /* [in] */);
374 WERROR NetLocalGroupDelMembers_r(struct libnetapi_ctx *ctx,
375                                  struct NetLocalGroupDelMembers *r);
376 WERROR NetLocalGroupDelMembers_l(struct libnetapi_ctx *ctx,
377                                  struct NetLocalGroupDelMembers *r);
378 NET_API_STATUS NetLocalGroupGetMembers(const char * server_name /* [in] */,
379                                        const char * local_group_name /* [in] */,
380                                        uint32_t level /* [in] */,
381                                        uint8_t **buffer /* [out] [ref] */,
382                                        uint32_t prefmaxlen /* [in] */,
383                                        uint32_t *entries_read /* [out] [ref] */,
384                                        uint32_t *total_entries /* [out] [ref] */,
385                                        uint32_t *resume_handle /* [in,out] [ref] */);
386 WERROR NetLocalGroupGetMembers_r(struct libnetapi_ctx *ctx,
387                                  struct NetLocalGroupGetMembers *r);
388 WERROR NetLocalGroupGetMembers_l(struct libnetapi_ctx *ctx,
389                                  struct NetLocalGroupGetMembers *r);
390 NET_API_STATUS NetLocalGroupSetMembers(const char * server_name /* [in] */,
391                                        const char * group_name /* [in] */,
392                                        uint32_t level /* [in] */,
393                                        uint8_t *buffer /* [in] [ref] */,
394                                        uint32_t total_entries /* [in] */);
395 WERROR NetLocalGroupSetMembers_r(struct libnetapi_ctx *ctx,
396                                  struct NetLocalGroupSetMembers *r);
397 WERROR NetLocalGroupSetMembers_l(struct libnetapi_ctx *ctx,
398                                  struct NetLocalGroupSetMembers *r);
399 NET_API_STATUS NetRemoteTOD(const char * server_name /* [in] */,
400                             uint8_t **buffer /* [out] [ref] */);
401 WERROR NetRemoteTOD_r(struct libnetapi_ctx *ctx,
402                       struct NetRemoteTOD *r);
403 WERROR NetRemoteTOD_l(struct libnetapi_ctx *ctx,
404                       struct NetRemoteTOD *r);
405 NET_API_STATUS NetShareAdd(const char * server_name /* [in] */,
406                            uint32_t level /* [in] */,
407                            uint8_t *buffer /* [in] [ref] */,
408                            uint32_t *parm_err /* [out] [ref] */);
409 WERROR NetShareAdd_r(struct libnetapi_ctx *ctx,
410                      struct NetShareAdd *r);
411 WERROR NetShareAdd_l(struct libnetapi_ctx *ctx,
412                      struct NetShareAdd *r);
413 NET_API_STATUS NetShareDel(const char * server_name /* [in] */,
414                            const char * net_name /* [in] */,
415                            uint32_t reserved /* [in] */);
416 WERROR NetShareDel_r(struct libnetapi_ctx *ctx,
417                      struct NetShareDel *r);
418 WERROR NetShareDel_l(struct libnetapi_ctx *ctx,
419                      struct NetShareDel *r);
420 NET_API_STATUS NetShareEnum(const char * server_name /* [in] */,
421                             uint32_t level /* [in] */,
422                             uint8_t **buffer /* [out] [ref] */,
423                             uint32_t prefmaxlen /* [in] */,
424                             uint32_t *entries_read /* [out] [ref] */,
425                             uint32_t *total_entries /* [out] [ref] */,
426                             uint32_t *resume_handle /* [in,out] [ref] */);
427 WERROR NetShareEnum_r(struct libnetapi_ctx *ctx,
428                       struct NetShareEnum *r);
429 WERROR NetShareEnum_l(struct libnetapi_ctx *ctx,
430                       struct NetShareEnum *r);
431 NET_API_STATUS NetShareGetInfo(const char * server_name /* [in] */,
432                                const char * net_name /* [in] */,
433                                uint32_t level /* [in] */,
434                                uint8_t **buffer /* [out] [ref] */);
435 WERROR NetShareGetInfo_r(struct libnetapi_ctx *ctx,
436                          struct NetShareGetInfo *r);
437 WERROR NetShareGetInfo_l(struct libnetapi_ctx *ctx,
438                          struct NetShareGetInfo *r);
439 NET_API_STATUS NetShareSetInfo(const char * server_name /* [in] */,
440                                const char * net_name /* [in] */,
441                                uint32_t level /* [in] */,
442                                uint8_t *buffer /* [in] [ref] */,
443                                uint32_t *parm_err /* [out] [ref] */);
444 WERROR NetShareSetInfo_r(struct libnetapi_ctx *ctx,
445                          struct NetShareSetInfo *r);
446 WERROR NetShareSetInfo_l(struct libnetapi_ctx *ctx,
447                          struct NetShareSetInfo *r);
448 NET_API_STATUS NetFileClose(const char * server_name /* [in] */,
449                             uint32_t fileid /* [in] */);
450 WERROR NetFileClose_r(struct libnetapi_ctx *ctx,
451                       struct NetFileClose *r);
452 WERROR NetFileClose_l(struct libnetapi_ctx *ctx,
453                       struct NetFileClose *r);
454 NET_API_STATUS NetFileGetInfo(const char * server_name /* [in] */,
455                               uint32_t fileid /* [in] */,
456                               uint32_t level /* [in] */,
457                               uint8_t **buffer /* [out] [ref] */);
458 WERROR NetFileGetInfo_r(struct libnetapi_ctx *ctx,
459                         struct NetFileGetInfo *r);
460 WERROR NetFileGetInfo_l(struct libnetapi_ctx *ctx,
461                         struct NetFileGetInfo *r);
462 NET_API_STATUS NetFileEnum(const char * server_name /* [in] */,
463                            const char * base_path /* [in] */,
464                            const char * user_name /* [in] */,
465                            uint32_t level /* [in] */,
466                            uint8_t **buffer /* [out] [ref] */,
467                            uint32_t prefmaxlen /* [in] */,
468                            uint32_t *entries_read /* [out] [ref] */,
469                            uint32_t *total_entries /* [out] [ref] */,
470                            uint32_t *resume_handle /* [in,out] [ref] */);
471 WERROR NetFileEnum_r(struct libnetapi_ctx *ctx,
472                      struct NetFileEnum *r);
473 WERROR NetFileEnum_l(struct libnetapi_ctx *ctx,
474                      struct NetFileEnum *r);
475 NET_API_STATUS NetShutdownInit(const char * server_name /* [in] */,
476                                const char * message /* [in] */,
477                                uint32_t timeout /* [in] */,
478                                uint8_t force_apps /* [in] */,
479                                uint8_t do_reboot /* [in] */);
480 WERROR NetShutdownInit_r(struct libnetapi_ctx *ctx,
481                          struct NetShutdownInit *r);
482 WERROR NetShutdownInit_l(struct libnetapi_ctx *ctx,
483                          struct NetShutdownInit *r);
484 NET_API_STATUS NetShutdownAbort(const char * server_name /* [in] */);
485 WERROR NetShutdownAbort_r(struct libnetapi_ctx *ctx,
486                           struct NetShutdownAbort *r);
487 WERROR NetShutdownAbort_l(struct libnetapi_ctx *ctx,
488                           struct NetShutdownAbort *r);
489 NET_API_STATUS I_NetLogonControl(const char * server_name /* [in] */,
490                                  uint32_t function_code /* [in] */,
491                                  uint32_t query_level /* [in] */,
492                                  uint8_t **buffer /* [out] [ref] */);
493 WERROR I_NetLogonControl_r(struct libnetapi_ctx *ctx,
494                            struct I_NetLogonControl *r);
495 WERROR I_NetLogonControl_l(struct libnetapi_ctx *ctx,
496                            struct I_NetLogonControl *r);
497 NET_API_STATUS I_NetLogonControl2(const char * server_name /* [in] */,
498                                   uint32_t function_code /* [in] */,
499                                   uint32_t query_level /* [in] */,
500                                   uint8_t *data /* [in] [unique] */,
501                                   uint8_t **buffer /* [out] [ref] */);
502 WERROR I_NetLogonControl2_r(struct libnetapi_ctx *ctx,
503                             struct I_NetLogonControl2 *r);
504 WERROR I_NetLogonControl2_l(struct libnetapi_ctx *ctx,
505                             struct I_NetLogonControl2 *r);
506 #endif /* __LIBNETAPI_LIBNETAPI__ */