Line data Source code
1 : /* server functions auto-generated by pidl */
2 : #include "bin/default/librpc/gen_ndr/ndr_srvsvc.h"
3 : #include <util/debug.h>
4 :
5 : NTSTATUS dcerpc_server_srvsvc_init(TALLOC_CTX *);
6 :
7 : /* srvsvc - dcerpc server boilerplate generated by pidl */
8 :
9 :
10 31 : static NTSTATUS srvsvc__op_bind(struct dcesrv_connection_context *context, const struct dcesrv_interface *iface)
11 : {
12 : #ifdef DCESRV_INTERFACE_SRVSVC_BIND
13 : return DCESRV_INTERFACE_SRVSVC_BIND(context,iface);
14 : #else
15 31 : return NT_STATUS_OK;
16 : #endif
17 : }
18 :
19 31 : static void srvsvc__op_unbind(struct dcesrv_connection_context *context, const struct dcesrv_interface *iface)
20 : {
21 : #ifdef DCESRV_INTERFACE_SRVSVC_UNBIND
22 : DCESRV_INTERFACE_SRVSVC_UNBIND(context, iface);
23 : #else
24 31 : return;
25 : #endif
26 : }
27 :
28 8887 : static NTSTATUS srvsvc__op_ndr_pull(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, struct ndr_pull *pull, void **r)
29 : {
30 0 : enum ndr_err_code ndr_err;
31 8887 : uint16_t opnum = dce_call->pkt.u.request.opnum;
32 :
33 8887 : dce_call->fault_code = 0;
34 :
35 8887 : if (opnum >= ndr_table_srvsvc.num_calls) {
36 0 : dce_call->fault_code = DCERPC_FAULT_OP_RNG_ERROR;
37 0 : return NT_STATUS_NET_WRITE_FAULT;
38 : }
39 :
40 17774 : *r = talloc_named(mem_ctx,
41 8887 : ndr_table_srvsvc.calls[opnum].struct_size,
42 : "struct %s",
43 8887 : ndr_table_srvsvc.calls[opnum].name);
44 8887 : NT_STATUS_HAVE_NO_MEMORY(*r);
45 :
46 : /* unravel the NDR for the packet */
47 8887 : ndr_err = ndr_table_srvsvc.calls[opnum].ndr_pull(pull, NDR_IN, *r);
48 8887 : if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
49 0 : dce_call->fault_code = DCERPC_FAULT_NDR;
50 0 : return NT_STATUS_NET_WRITE_FAULT;
51 : }
52 :
53 8887 : return NT_STATUS_OK;
54 : }
55 :
56 8887 : static NTSTATUS srvsvc__op_dispatch(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, void *r)
57 : {
58 8887 : uint16_t opnum = dce_call->pkt.u.request.opnum;
59 :
60 8887 : switch (opnum) {
61 6 : case 0: {
62 6 : struct srvsvc_NetCharDevEnum *r2 = (struct srvsvc_NetCharDevEnum *)r;
63 6 : if (DEBUGLEVEL >= 10) {
64 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevEnum, NDR_IN, r2);
65 : }
66 6 : r2->out.result = dcesrv_srvsvc_NetCharDevEnum(dce_call, mem_ctx, r2);
67 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
68 0 : DEBUG(5,("function srvsvc_NetCharDevEnum will reply async\n"));
69 : }
70 6 : break;
71 : }
72 0 : case 1: {
73 0 : struct srvsvc_NetCharDevGetInfo *r2 = (struct srvsvc_NetCharDevGetInfo *)r;
74 0 : if (DEBUGLEVEL >= 10) {
75 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevGetInfo, NDR_IN, r2);
76 : }
77 0 : r2->out.result = dcesrv_srvsvc_NetCharDevGetInfo(dce_call, mem_ctx, r2);
78 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
79 0 : DEBUG(5,("function srvsvc_NetCharDevGetInfo will reply async\n"));
80 : }
81 0 : break;
82 : }
83 0 : case 2: {
84 0 : struct srvsvc_NetCharDevControl *r2 = (struct srvsvc_NetCharDevControl *)r;
85 0 : if (DEBUGLEVEL >= 10) {
86 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevControl, NDR_IN, r2);
87 : }
88 0 : r2->out.result = dcesrv_srvsvc_NetCharDevControl(dce_call, mem_ctx, r2);
89 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
90 0 : DEBUG(5,("function srvsvc_NetCharDevControl will reply async\n"));
91 : }
92 0 : break;
93 : }
94 6 : case 3: {
95 6 : struct srvsvc_NetCharDevQEnum *r2 = (struct srvsvc_NetCharDevQEnum *)r;
96 6 : if (DEBUGLEVEL >= 10) {
97 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQEnum, NDR_IN, r2);
98 : }
99 6 : r2->out.result = dcesrv_srvsvc_NetCharDevQEnum(dce_call, mem_ctx, r2);
100 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
101 0 : DEBUG(5,("function srvsvc_NetCharDevQEnum will reply async\n"));
102 : }
103 6 : break;
104 : }
105 0 : case 4: {
106 0 : struct srvsvc_NetCharDevQGetInfo *r2 = (struct srvsvc_NetCharDevQGetInfo *)r;
107 0 : if (DEBUGLEVEL >= 10) {
108 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQGetInfo, NDR_IN, r2);
109 : }
110 0 : r2->out.result = dcesrv_srvsvc_NetCharDevQGetInfo(dce_call, mem_ctx, r2);
111 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
112 0 : DEBUG(5,("function srvsvc_NetCharDevQGetInfo will reply async\n"));
113 : }
114 0 : break;
115 : }
116 0 : case 5: {
117 0 : struct srvsvc_NetCharDevQSetInfo *r2 = (struct srvsvc_NetCharDevQSetInfo *)r;
118 0 : if (DEBUGLEVEL >= 10) {
119 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQSetInfo, NDR_IN, r2);
120 : }
121 0 : r2->out.result = dcesrv_srvsvc_NetCharDevQSetInfo(dce_call, mem_ctx, r2);
122 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
123 0 : DEBUG(5,("function srvsvc_NetCharDevQSetInfo will reply async\n"));
124 : }
125 0 : break;
126 : }
127 0 : case 6: {
128 0 : struct srvsvc_NetCharDevQPurge *r2 = (struct srvsvc_NetCharDevQPurge *)r;
129 0 : if (DEBUGLEVEL >= 10) {
130 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQPurge, NDR_IN, r2);
131 : }
132 0 : r2->out.result = dcesrv_srvsvc_NetCharDevQPurge(dce_call, mem_ctx, r2);
133 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
134 0 : DEBUG(5,("function srvsvc_NetCharDevQPurge will reply async\n"));
135 : }
136 0 : break;
137 : }
138 0 : case 7: {
139 0 : struct srvsvc_NetCharDevQPurgeSelf *r2 = (struct srvsvc_NetCharDevQPurgeSelf *)r;
140 0 : if (DEBUGLEVEL >= 10) {
141 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQPurgeSelf, NDR_IN, r2);
142 : }
143 0 : r2->out.result = dcesrv_srvsvc_NetCharDevQPurgeSelf(dce_call, mem_ctx, r2);
144 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
145 0 : DEBUG(5,("function srvsvc_NetCharDevQPurgeSelf will reply async\n"));
146 : }
147 0 : break;
148 : }
149 6 : case 8: {
150 6 : struct srvsvc_NetConnEnum *r2 = (struct srvsvc_NetConnEnum *)r;
151 6 : if (DEBUGLEVEL >= 10) {
152 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetConnEnum, NDR_IN, r2);
153 : }
154 6 : r2->out.result = dcesrv_srvsvc_NetConnEnum(dce_call, mem_ctx, r2);
155 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
156 0 : DEBUG(5,("function srvsvc_NetConnEnum will reply async\n"));
157 : }
158 6 : break;
159 : }
160 6 : case 9: {
161 6 : struct srvsvc_NetFileEnum *r2 = (struct srvsvc_NetFileEnum *)r;
162 6 : if (DEBUGLEVEL >= 10) {
163 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetFileEnum, NDR_IN, r2);
164 : }
165 6 : r2->out.result = dcesrv_srvsvc_NetFileEnum(dce_call, mem_ctx, r2);
166 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
167 0 : DEBUG(5,("function srvsvc_NetFileEnum will reply async\n"));
168 : }
169 6 : break;
170 : }
171 0 : case 10: {
172 0 : struct srvsvc_NetFileGetInfo *r2 = (struct srvsvc_NetFileGetInfo *)r;
173 0 : if (DEBUGLEVEL >= 10) {
174 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetFileGetInfo, NDR_IN, r2);
175 : }
176 0 : r2->out.result = dcesrv_srvsvc_NetFileGetInfo(dce_call, mem_ctx, r2);
177 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
178 0 : DEBUG(5,("function srvsvc_NetFileGetInfo will reply async\n"));
179 : }
180 0 : break;
181 : }
182 0 : case 11: {
183 0 : struct srvsvc_NetFileClose *r2 = (struct srvsvc_NetFileClose *)r;
184 0 : if (DEBUGLEVEL >= 10) {
185 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetFileClose, NDR_IN, r2);
186 : }
187 0 : r2->out.result = dcesrv_srvsvc_NetFileClose(dce_call, mem_ctx, r2);
188 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
189 0 : DEBUG(5,("function srvsvc_NetFileClose will reply async\n"));
190 : }
191 0 : break;
192 : }
193 15 : case 12: {
194 15 : struct srvsvc_NetSessEnum *r2 = (struct srvsvc_NetSessEnum *)r;
195 15 : if (DEBUGLEVEL >= 10) {
196 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSessEnum, NDR_IN, r2);
197 : }
198 15 : r2->out.result = dcesrv_srvsvc_NetSessEnum(dce_call, mem_ctx, r2);
199 15 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
200 0 : DEBUG(5,("function srvsvc_NetSessEnum will reply async\n"));
201 : }
202 15 : break;
203 : }
204 0 : case 13: {
205 0 : struct srvsvc_NetSessDel *r2 = (struct srvsvc_NetSessDel *)r;
206 0 : if (DEBUGLEVEL >= 10) {
207 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSessDel, NDR_IN, r2);
208 : }
209 0 : r2->out.result = dcesrv_srvsvc_NetSessDel(dce_call, mem_ctx, r2);
210 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
211 0 : DEBUG(5,("function srvsvc_NetSessDel will reply async\n"));
212 : }
213 0 : break;
214 : }
215 0 : case 14: {
216 0 : struct srvsvc_NetShareAdd *r2 = (struct srvsvc_NetShareAdd *)r;
217 0 : if (DEBUGLEVEL >= 10) {
218 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareAdd, NDR_IN, r2);
219 : }
220 0 : r2->out.result = dcesrv_srvsvc_NetShareAdd(dce_call, mem_ctx, r2);
221 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
222 0 : DEBUG(5,("function srvsvc_NetShareAdd will reply async\n"));
223 : }
224 0 : break;
225 : }
226 32 : case 15: {
227 32 : struct srvsvc_NetShareEnumAll *r2 = (struct srvsvc_NetShareEnumAll *)r;
228 32 : if (DEBUGLEVEL >= 10) {
229 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareEnumAll, NDR_IN, r2);
230 : }
231 32 : r2->out.result = dcesrv_srvsvc_NetShareEnumAll(dce_call, mem_ctx, r2);
232 32 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
233 0 : DEBUG(5,("function srvsvc_NetShareEnumAll will reply async\n"));
234 : }
235 32 : break;
236 : }
237 271 : case 16: {
238 271 : struct srvsvc_NetShareGetInfo *r2 = (struct srvsvc_NetShareGetInfo *)r;
239 271 : if (DEBUGLEVEL >= 10) {
240 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareGetInfo, NDR_IN, r2);
241 : }
242 271 : r2->out.result = dcesrv_srvsvc_NetShareGetInfo(dce_call, mem_ctx, r2);
243 271 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
244 0 : DEBUG(5,("function srvsvc_NetShareGetInfo will reply async\n"));
245 : }
246 271 : break;
247 : }
248 0 : case 17: {
249 0 : struct srvsvc_NetShareSetInfo *r2 = (struct srvsvc_NetShareSetInfo *)r;
250 0 : if (DEBUGLEVEL >= 10) {
251 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareSetInfo, NDR_IN, r2);
252 : }
253 0 : r2->out.result = dcesrv_srvsvc_NetShareSetInfo(dce_call, mem_ctx, r2);
254 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
255 0 : DEBUG(5,("function srvsvc_NetShareSetInfo will reply async\n"));
256 : }
257 0 : break;
258 : }
259 0 : case 18: {
260 0 : struct srvsvc_NetShareDel *r2 = (struct srvsvc_NetShareDel *)r;
261 0 : if (DEBUGLEVEL >= 10) {
262 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDel, NDR_IN, r2);
263 : }
264 0 : r2->out.result = dcesrv_srvsvc_NetShareDel(dce_call, mem_ctx, r2);
265 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
266 0 : DEBUG(5,("function srvsvc_NetShareDel will reply async\n"));
267 : }
268 0 : break;
269 : }
270 0 : case 19: {
271 0 : struct srvsvc_NetShareDelSticky *r2 = (struct srvsvc_NetShareDelSticky *)r;
272 0 : if (DEBUGLEVEL >= 10) {
273 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDelSticky, NDR_IN, r2);
274 : }
275 0 : r2->out.result = dcesrv_srvsvc_NetShareDelSticky(dce_call, mem_ctx, r2);
276 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
277 0 : DEBUG(5,("function srvsvc_NetShareDelSticky will reply async\n"));
278 : }
279 0 : break;
280 : }
281 42 : case 20: {
282 42 : struct srvsvc_NetShareCheck *r2 = (struct srvsvc_NetShareCheck *)r;
283 42 : if (DEBUGLEVEL >= 10) {
284 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareCheck, NDR_IN, r2);
285 : }
286 42 : r2->out.result = dcesrv_srvsvc_NetShareCheck(dce_call, mem_ctx, r2);
287 42 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
288 0 : DEBUG(5,("function srvsvc_NetShareCheck will reply async\n"));
289 : }
290 42 : break;
291 : }
292 16 : case 21: {
293 16 : struct srvsvc_NetSrvGetInfo *r2 = (struct srvsvc_NetSrvGetInfo *)r;
294 16 : if (DEBUGLEVEL >= 10) {
295 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSrvGetInfo, NDR_IN, r2);
296 : }
297 16 : r2->out.result = dcesrv_srvsvc_NetSrvGetInfo(dce_call, mem_ctx, r2);
298 16 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
299 0 : DEBUG(5,("function srvsvc_NetSrvGetInfo will reply async\n"));
300 : }
301 16 : break;
302 : }
303 0 : case 22: {
304 0 : struct srvsvc_NetSrvSetInfo *r2 = (struct srvsvc_NetSrvSetInfo *)r;
305 0 : if (DEBUGLEVEL >= 10) {
306 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSrvSetInfo, NDR_IN, r2);
307 : }
308 0 : r2->out.result = dcesrv_srvsvc_NetSrvSetInfo(dce_call, mem_ctx, r2);
309 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
310 0 : DEBUG(5,("function srvsvc_NetSrvSetInfo will reply async\n"));
311 : }
312 0 : break;
313 : }
314 3 : case 23: {
315 3 : struct srvsvc_NetDiskEnum *r2 = (struct srvsvc_NetDiskEnum *)r;
316 3 : if (DEBUGLEVEL >= 10) {
317 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetDiskEnum, NDR_IN, r2);
318 : }
319 3 : r2->out.result = dcesrv_srvsvc_NetDiskEnum(dce_call, mem_ctx, r2);
320 3 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
321 0 : DEBUG(5,("function srvsvc_NetDiskEnum will reply async\n"));
322 : }
323 3 : break;
324 : }
325 0 : case 24: {
326 0 : struct srvsvc_NetServerStatisticsGet *r2 = (struct srvsvc_NetServerStatisticsGet *)r;
327 0 : if (DEBUGLEVEL >= 10) {
328 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetServerStatisticsGet, NDR_IN, r2);
329 : }
330 0 : r2->out.result = dcesrv_srvsvc_NetServerStatisticsGet(dce_call, mem_ctx, r2);
331 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
332 0 : DEBUG(5,("function srvsvc_NetServerStatisticsGet will reply async\n"));
333 : }
334 0 : break;
335 : }
336 0 : case 25: {
337 0 : struct srvsvc_NetTransportAdd *r2 = (struct srvsvc_NetTransportAdd *)r;
338 0 : if (DEBUGLEVEL >= 10) {
339 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetTransportAdd, NDR_IN, r2);
340 : }
341 0 : r2->out.result = dcesrv_srvsvc_NetTransportAdd(dce_call, mem_ctx, r2);
342 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
343 0 : DEBUG(5,("function srvsvc_NetTransportAdd will reply async\n"));
344 : }
345 0 : break;
346 : }
347 6 : case 26: {
348 6 : struct srvsvc_NetTransportEnum *r2 = (struct srvsvc_NetTransportEnum *)r;
349 6 : if (DEBUGLEVEL >= 10) {
350 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetTransportEnum, NDR_IN, r2);
351 : }
352 6 : r2->out.result = dcesrv_srvsvc_NetTransportEnum(dce_call, mem_ctx, r2);
353 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
354 0 : DEBUG(5,("function srvsvc_NetTransportEnum will reply async\n"));
355 : }
356 6 : break;
357 : }
358 0 : case 27: {
359 0 : struct srvsvc_NetTransportDel *r2 = (struct srvsvc_NetTransportDel *)r;
360 0 : if (DEBUGLEVEL >= 10) {
361 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetTransportDel, NDR_IN, r2);
362 : }
363 0 : r2->out.result = dcesrv_srvsvc_NetTransportDel(dce_call, mem_ctx, r2);
364 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
365 0 : DEBUG(5,("function srvsvc_NetTransportDel will reply async\n"));
366 : }
367 0 : break;
368 : }
369 24 : case 28: {
370 24 : struct srvsvc_NetRemoteTOD *r2 = (struct srvsvc_NetRemoteTOD *)r;
371 24 : if (DEBUGLEVEL >= 10) {
372 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetRemoteTOD, NDR_IN, r2);
373 : }
374 24 : r2->out.result = dcesrv_srvsvc_NetRemoteTOD(dce_call, mem_ctx, r2);
375 24 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
376 0 : DEBUG(5,("function srvsvc_NetRemoteTOD will reply async\n"));
377 : }
378 24 : break;
379 : }
380 0 : case 29: {
381 0 : struct srvsvc_NetSetServiceBits *r2 = (struct srvsvc_NetSetServiceBits *)r;
382 0 : if (DEBUGLEVEL >= 10) {
383 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSetServiceBits, NDR_IN, r2);
384 : }
385 0 : r2->out.result = dcesrv_srvsvc_NetSetServiceBits(dce_call, mem_ctx, r2);
386 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
387 0 : DEBUG(5,("function srvsvc_NetSetServiceBits will reply async\n"));
388 : }
389 0 : break;
390 : }
391 0 : case 30: {
392 0 : struct srvsvc_NetPathType *r2 = (struct srvsvc_NetPathType *)r;
393 0 : if (DEBUGLEVEL >= 10) {
394 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPathType, NDR_IN, r2);
395 : }
396 0 : r2->out.result = dcesrv_srvsvc_NetPathType(dce_call, mem_ctx, r2);
397 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
398 0 : DEBUG(5,("function srvsvc_NetPathType will reply async\n"));
399 : }
400 0 : break;
401 : }
402 0 : case 31: {
403 0 : struct srvsvc_NetPathCanonicalize *r2 = (struct srvsvc_NetPathCanonicalize *)r;
404 0 : if (DEBUGLEVEL >= 10) {
405 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPathCanonicalize, NDR_IN, r2);
406 : }
407 0 : r2->out.result = dcesrv_srvsvc_NetPathCanonicalize(dce_call, mem_ctx, r2);
408 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
409 0 : DEBUG(5,("function srvsvc_NetPathCanonicalize will reply async\n"));
410 : }
411 0 : break;
412 : }
413 0 : case 32: {
414 0 : struct srvsvc_NetPathCompare *r2 = (struct srvsvc_NetPathCompare *)r;
415 0 : if (DEBUGLEVEL >= 10) {
416 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPathCompare, NDR_IN, r2);
417 : }
418 0 : r2->out.result = dcesrv_srvsvc_NetPathCompare(dce_call, mem_ctx, r2);
419 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
420 0 : DEBUG(5,("function srvsvc_NetPathCompare will reply async\n"));
421 : }
422 0 : break;
423 : }
424 8424 : case 33: {
425 8424 : struct srvsvc_NetNameValidate *r2 = (struct srvsvc_NetNameValidate *)r;
426 8424 : if (DEBUGLEVEL >= 10) {
427 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetNameValidate, NDR_IN, r2);
428 : }
429 8424 : r2->out.result = dcesrv_srvsvc_NetNameValidate(dce_call, mem_ctx, r2);
430 8424 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
431 0 : DEBUG(5,("function srvsvc_NetNameValidate will reply async\n"));
432 : }
433 8424 : break;
434 : }
435 0 : case 34: {
436 0 : struct srvsvc_NETRPRNAMECANONICALIZE *r2 = (struct srvsvc_NETRPRNAMECANONICALIZE *)r;
437 0 : if (DEBUGLEVEL >= 10) {
438 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRPRNAMECANONICALIZE, NDR_IN, r2);
439 : }
440 0 : r2->out.result = dcesrv_srvsvc_NETRPRNAMECANONICALIZE(dce_call, mem_ctx, r2);
441 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
442 0 : DEBUG(5,("function srvsvc_NETRPRNAMECANONICALIZE will reply async\n"));
443 : }
444 0 : break;
445 : }
446 0 : case 35: {
447 0 : struct srvsvc_NetPRNameCompare *r2 = (struct srvsvc_NetPRNameCompare *)r;
448 0 : if (DEBUGLEVEL >= 10) {
449 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPRNameCompare, NDR_IN, r2);
450 : }
451 0 : r2->out.result = dcesrv_srvsvc_NetPRNameCompare(dce_call, mem_ctx, r2);
452 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
453 0 : DEBUG(5,("function srvsvc_NetPRNameCompare will reply async\n"));
454 : }
455 0 : break;
456 : }
457 30 : case 36: {
458 30 : struct srvsvc_NetShareEnum *r2 = (struct srvsvc_NetShareEnum *)r;
459 30 : if (DEBUGLEVEL >= 10) {
460 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareEnum, NDR_IN, r2);
461 : }
462 30 : r2->out.result = dcesrv_srvsvc_NetShareEnum(dce_call, mem_ctx, r2);
463 30 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
464 0 : DEBUG(5,("function srvsvc_NetShareEnum will reply async\n"));
465 : }
466 30 : break;
467 : }
468 0 : case 37: {
469 0 : struct srvsvc_NetShareDelStart *r2 = (struct srvsvc_NetShareDelStart *)r;
470 0 : if (DEBUGLEVEL >= 10) {
471 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDelStart, NDR_IN, r2);
472 : }
473 0 : r2->out.result = dcesrv_srvsvc_NetShareDelStart(dce_call, mem_ctx, r2);
474 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
475 0 : DEBUG(5,("function srvsvc_NetShareDelStart will reply async\n"));
476 : }
477 0 : break;
478 : }
479 0 : case 38: {
480 0 : struct srvsvc_NetShareDelCommit *r2 = (struct srvsvc_NetShareDelCommit *)r;
481 0 : if (DEBUGLEVEL >= 10) {
482 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDelCommit, NDR_IN, r2);
483 : }
484 0 : r2->out.result = dcesrv_srvsvc_NetShareDelCommit(dce_call, mem_ctx, r2);
485 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
486 0 : DEBUG(5,("function srvsvc_NetShareDelCommit will reply async\n"));
487 : }
488 0 : break;
489 : }
490 0 : case 39: {
491 0 : struct srvsvc_NetGetFileSecurity *r2 = (struct srvsvc_NetGetFileSecurity *)r;
492 0 : if (DEBUGLEVEL >= 10) {
493 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetGetFileSecurity, NDR_IN, r2);
494 : }
495 0 : r2->out.result = dcesrv_srvsvc_NetGetFileSecurity(dce_call, mem_ctx, r2);
496 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
497 0 : DEBUG(5,("function srvsvc_NetGetFileSecurity will reply async\n"));
498 : }
499 0 : break;
500 : }
501 0 : case 40: {
502 0 : struct srvsvc_NetSetFileSecurity *r2 = (struct srvsvc_NetSetFileSecurity *)r;
503 0 : if (DEBUGLEVEL >= 10) {
504 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSetFileSecurity, NDR_IN, r2);
505 : }
506 0 : r2->out.result = dcesrv_srvsvc_NetSetFileSecurity(dce_call, mem_ctx, r2);
507 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
508 0 : DEBUG(5,("function srvsvc_NetSetFileSecurity will reply async\n"));
509 : }
510 0 : break;
511 : }
512 0 : case 41: {
513 0 : struct srvsvc_NetServerTransportAddEx *r2 = (struct srvsvc_NetServerTransportAddEx *)r;
514 0 : if (DEBUGLEVEL >= 10) {
515 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetServerTransportAddEx, NDR_IN, r2);
516 : }
517 0 : r2->out.result = dcesrv_srvsvc_NetServerTransportAddEx(dce_call, mem_ctx, r2);
518 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
519 0 : DEBUG(5,("function srvsvc_NetServerTransportAddEx will reply async\n"));
520 : }
521 0 : break;
522 : }
523 0 : case 42: {
524 0 : struct srvsvc_NetServerSetServiceBitsEx *r2 = (struct srvsvc_NetServerSetServiceBitsEx *)r;
525 0 : if (DEBUGLEVEL >= 10) {
526 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetServerSetServiceBitsEx, NDR_IN, r2);
527 : }
528 0 : r2->out.result = dcesrv_srvsvc_NetServerSetServiceBitsEx(dce_call, mem_ctx, r2);
529 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
530 0 : DEBUG(5,("function srvsvc_NetServerSetServiceBitsEx will reply async\n"));
531 : }
532 0 : break;
533 : }
534 0 : case 43: {
535 0 : struct srvsvc_NETRDFSGETVERSION *r2 = (struct srvsvc_NETRDFSGETVERSION *)r;
536 0 : if (DEBUGLEVEL >= 10) {
537 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSGETVERSION, NDR_IN, r2);
538 : }
539 0 : r2->out.result = dcesrv_srvsvc_NETRDFSGETVERSION(dce_call, mem_ctx, r2);
540 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
541 0 : DEBUG(5,("function srvsvc_NETRDFSGETVERSION will reply async\n"));
542 : }
543 0 : break;
544 : }
545 0 : case 44: {
546 0 : struct srvsvc_NETRDFSCREATELOCALPARTITION *r2 = (struct srvsvc_NETRDFSCREATELOCALPARTITION *)r;
547 0 : if (DEBUGLEVEL >= 10) {
548 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSCREATELOCALPARTITION, NDR_IN, r2);
549 : }
550 0 : r2->out.result = dcesrv_srvsvc_NETRDFSCREATELOCALPARTITION(dce_call, mem_ctx, r2);
551 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
552 0 : DEBUG(5,("function srvsvc_NETRDFSCREATELOCALPARTITION will reply async\n"));
553 : }
554 0 : break;
555 : }
556 0 : case 45: {
557 0 : struct srvsvc_NETRDFSDELETELOCALPARTITION *r2 = (struct srvsvc_NETRDFSDELETELOCALPARTITION *)r;
558 0 : if (DEBUGLEVEL >= 10) {
559 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSDELETELOCALPARTITION, NDR_IN, r2);
560 : }
561 0 : r2->out.result = dcesrv_srvsvc_NETRDFSDELETELOCALPARTITION(dce_call, mem_ctx, r2);
562 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
563 0 : DEBUG(5,("function srvsvc_NETRDFSDELETELOCALPARTITION will reply async\n"));
564 : }
565 0 : break;
566 : }
567 0 : case 46: {
568 0 : struct srvsvc_NETRDFSSETLOCALVOLUMESTATE *r2 = (struct srvsvc_NETRDFSSETLOCALVOLUMESTATE *)r;
569 0 : if (DEBUGLEVEL >= 10) {
570 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSSETLOCALVOLUMESTATE, NDR_IN, r2);
571 : }
572 0 : r2->out.result = dcesrv_srvsvc_NETRDFSSETLOCALVOLUMESTATE(dce_call, mem_ctx, r2);
573 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
574 0 : DEBUG(5,("function srvsvc_NETRDFSSETLOCALVOLUMESTATE will reply async\n"));
575 : }
576 0 : break;
577 : }
578 0 : case 47: {
579 0 : struct srvsvc_NETRDFSSETSERVERINFO *r2 = (struct srvsvc_NETRDFSSETSERVERINFO *)r;
580 0 : if (DEBUGLEVEL >= 10) {
581 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSSETSERVERINFO, NDR_IN, r2);
582 : }
583 0 : r2->out.result = dcesrv_srvsvc_NETRDFSSETSERVERINFO(dce_call, mem_ctx, r2);
584 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
585 0 : DEBUG(5,("function srvsvc_NETRDFSSETSERVERINFO will reply async\n"));
586 : }
587 0 : break;
588 : }
589 0 : case 48: {
590 0 : struct srvsvc_NETRDFSCREATEEXITPOINT *r2 = (struct srvsvc_NETRDFSCREATEEXITPOINT *)r;
591 0 : if (DEBUGLEVEL >= 10) {
592 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSCREATEEXITPOINT, NDR_IN, r2);
593 : }
594 0 : r2->out.result = dcesrv_srvsvc_NETRDFSCREATEEXITPOINT(dce_call, mem_ctx, r2);
595 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
596 0 : DEBUG(5,("function srvsvc_NETRDFSCREATEEXITPOINT will reply async\n"));
597 : }
598 0 : break;
599 : }
600 0 : case 49: {
601 0 : struct srvsvc_NETRDFSDELETEEXITPOINT *r2 = (struct srvsvc_NETRDFSDELETEEXITPOINT *)r;
602 0 : if (DEBUGLEVEL >= 10) {
603 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSDELETEEXITPOINT, NDR_IN, r2);
604 : }
605 0 : r2->out.result = dcesrv_srvsvc_NETRDFSDELETEEXITPOINT(dce_call, mem_ctx, r2);
606 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
607 0 : DEBUG(5,("function srvsvc_NETRDFSDELETEEXITPOINT will reply async\n"));
608 : }
609 0 : break;
610 : }
611 0 : case 50: {
612 0 : struct srvsvc_NETRDFSMODIFYPREFIX *r2 = (struct srvsvc_NETRDFSMODIFYPREFIX *)r;
613 0 : if (DEBUGLEVEL >= 10) {
614 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSMODIFYPREFIX, NDR_IN, r2);
615 : }
616 0 : r2->out.result = dcesrv_srvsvc_NETRDFSMODIFYPREFIX(dce_call, mem_ctx, r2);
617 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
618 0 : DEBUG(5,("function srvsvc_NETRDFSMODIFYPREFIX will reply async\n"));
619 : }
620 0 : break;
621 : }
622 0 : case 51: {
623 0 : struct srvsvc_NETRDFSFIXLOCALVOLUME *r2 = (struct srvsvc_NETRDFSFIXLOCALVOLUME *)r;
624 0 : if (DEBUGLEVEL >= 10) {
625 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSFIXLOCALVOLUME, NDR_IN, r2);
626 : }
627 0 : r2->out.result = dcesrv_srvsvc_NETRDFSFIXLOCALVOLUME(dce_call, mem_ctx, r2);
628 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
629 0 : DEBUG(5,("function srvsvc_NETRDFSFIXLOCALVOLUME will reply async\n"));
630 : }
631 0 : break;
632 : }
633 0 : case 52: {
634 0 : struct srvsvc_NETRDFSMANAGERREPORTSITEINFO *r2 = (struct srvsvc_NETRDFSMANAGERREPORTSITEINFO *)r;
635 0 : if (DEBUGLEVEL >= 10) {
636 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSMANAGERREPORTSITEINFO, NDR_IN, r2);
637 : }
638 0 : r2->out.result = dcesrv_srvsvc_NETRDFSMANAGERREPORTSITEINFO(dce_call, mem_ctx, r2);
639 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
640 0 : DEBUG(5,("function srvsvc_NETRDFSMANAGERREPORTSITEINFO will reply async\n"));
641 : }
642 0 : break;
643 : }
644 0 : case 53: {
645 0 : struct srvsvc_NETRSERVERTRANSPORTDELEX *r2 = (struct srvsvc_NETRSERVERTRANSPORTDELEX *)r;
646 0 : if (DEBUGLEVEL >= 10) {
647 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRSERVERTRANSPORTDELEX, NDR_IN, r2);
648 : }
649 0 : r2->out.result = dcesrv_srvsvc_NETRSERVERTRANSPORTDELEX(dce_call, mem_ctx, r2);
650 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
651 0 : DEBUG(5,("function srvsvc_NETRSERVERTRANSPORTDELEX will reply async\n"));
652 : }
653 0 : break;
654 : }
655 :
656 0 : default:
657 0 : dce_call->fault_code = DCERPC_FAULT_OP_RNG_ERROR;
658 0 : break;
659 : }
660 :
661 8887 : if (dce_call->fault_code != 0) {
662 0 : return NT_STATUS_NET_WRITE_FAULT;
663 : }
664 :
665 8887 : return NT_STATUS_OK;
666 : }
667 :
668 8887 : static NTSTATUS srvsvc__op_reply(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, void *r)
669 : {
670 8887 : uint16_t opnum = dce_call->pkt.u.request.opnum;
671 :
672 8887 : switch (opnum) {
673 6 : case 0: {
674 6 : struct srvsvc_NetCharDevEnum *r2 = (struct srvsvc_NetCharDevEnum *)r;
675 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
676 0 : DEBUG(5,("function srvsvc_NetCharDevEnum replied async\n"));
677 : }
678 6 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
679 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevEnum, NDR_OUT | NDR_SET_VALUES, r2);
680 : }
681 6 : if (dce_call->fault_code != 0) {
682 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
683 : }
684 6 : break;
685 : }
686 0 : case 1: {
687 0 : struct srvsvc_NetCharDevGetInfo *r2 = (struct srvsvc_NetCharDevGetInfo *)r;
688 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
689 0 : DEBUG(5,("function srvsvc_NetCharDevGetInfo replied async\n"));
690 : }
691 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
692 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevGetInfo, NDR_OUT | NDR_SET_VALUES, r2);
693 : }
694 0 : if (dce_call->fault_code != 0) {
695 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevGetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
696 : }
697 0 : break;
698 : }
699 0 : case 2: {
700 0 : struct srvsvc_NetCharDevControl *r2 = (struct srvsvc_NetCharDevControl *)r;
701 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
702 0 : DEBUG(5,("function srvsvc_NetCharDevControl replied async\n"));
703 : }
704 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
705 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevControl, NDR_OUT | NDR_SET_VALUES, r2);
706 : }
707 0 : if (dce_call->fault_code != 0) {
708 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevControl\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
709 : }
710 0 : break;
711 : }
712 6 : case 3: {
713 6 : struct srvsvc_NetCharDevQEnum *r2 = (struct srvsvc_NetCharDevQEnum *)r;
714 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
715 0 : DEBUG(5,("function srvsvc_NetCharDevQEnum replied async\n"));
716 : }
717 6 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
718 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQEnum, NDR_OUT | NDR_SET_VALUES, r2);
719 : }
720 6 : if (dce_call->fault_code != 0) {
721 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevQEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
722 : }
723 6 : break;
724 : }
725 0 : case 4: {
726 0 : struct srvsvc_NetCharDevQGetInfo *r2 = (struct srvsvc_NetCharDevQGetInfo *)r;
727 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
728 0 : DEBUG(5,("function srvsvc_NetCharDevQGetInfo replied async\n"));
729 : }
730 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
731 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQGetInfo, NDR_OUT | NDR_SET_VALUES, r2);
732 : }
733 0 : if (dce_call->fault_code != 0) {
734 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevQGetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
735 : }
736 0 : break;
737 : }
738 0 : case 5: {
739 0 : struct srvsvc_NetCharDevQSetInfo *r2 = (struct srvsvc_NetCharDevQSetInfo *)r;
740 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
741 0 : DEBUG(5,("function srvsvc_NetCharDevQSetInfo replied async\n"));
742 : }
743 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
744 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQSetInfo, NDR_OUT | NDR_SET_VALUES, r2);
745 : }
746 0 : if (dce_call->fault_code != 0) {
747 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevQSetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
748 : }
749 0 : break;
750 : }
751 0 : case 6: {
752 0 : struct srvsvc_NetCharDevQPurge *r2 = (struct srvsvc_NetCharDevQPurge *)r;
753 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
754 0 : DEBUG(5,("function srvsvc_NetCharDevQPurge replied async\n"));
755 : }
756 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
757 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQPurge, NDR_OUT | NDR_SET_VALUES, r2);
758 : }
759 0 : if (dce_call->fault_code != 0) {
760 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevQPurge\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
761 : }
762 0 : break;
763 : }
764 0 : case 7: {
765 0 : struct srvsvc_NetCharDevQPurgeSelf *r2 = (struct srvsvc_NetCharDevQPurgeSelf *)r;
766 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
767 0 : DEBUG(5,("function srvsvc_NetCharDevQPurgeSelf replied async\n"));
768 : }
769 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
770 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetCharDevQPurgeSelf, NDR_OUT | NDR_SET_VALUES, r2);
771 : }
772 0 : if (dce_call->fault_code != 0) {
773 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetCharDevQPurgeSelf\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
774 : }
775 0 : break;
776 : }
777 6 : case 8: {
778 6 : struct srvsvc_NetConnEnum *r2 = (struct srvsvc_NetConnEnum *)r;
779 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
780 0 : DEBUG(5,("function srvsvc_NetConnEnum replied async\n"));
781 : }
782 6 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
783 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetConnEnum, NDR_OUT | NDR_SET_VALUES, r2);
784 : }
785 6 : if (dce_call->fault_code != 0) {
786 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetConnEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
787 : }
788 6 : break;
789 : }
790 6 : case 9: {
791 6 : struct srvsvc_NetFileEnum *r2 = (struct srvsvc_NetFileEnum *)r;
792 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
793 0 : DEBUG(5,("function srvsvc_NetFileEnum replied async\n"));
794 : }
795 6 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
796 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetFileEnum, NDR_OUT | NDR_SET_VALUES, r2);
797 : }
798 6 : if (dce_call->fault_code != 0) {
799 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetFileEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
800 : }
801 6 : break;
802 : }
803 0 : case 10: {
804 0 : struct srvsvc_NetFileGetInfo *r2 = (struct srvsvc_NetFileGetInfo *)r;
805 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
806 0 : DEBUG(5,("function srvsvc_NetFileGetInfo replied async\n"));
807 : }
808 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
809 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetFileGetInfo, NDR_OUT | NDR_SET_VALUES, r2);
810 : }
811 0 : if (dce_call->fault_code != 0) {
812 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetFileGetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
813 : }
814 0 : break;
815 : }
816 0 : case 11: {
817 0 : struct srvsvc_NetFileClose *r2 = (struct srvsvc_NetFileClose *)r;
818 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
819 0 : DEBUG(5,("function srvsvc_NetFileClose replied async\n"));
820 : }
821 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
822 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetFileClose, NDR_OUT | NDR_SET_VALUES, r2);
823 : }
824 0 : if (dce_call->fault_code != 0) {
825 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetFileClose\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
826 : }
827 0 : break;
828 : }
829 15 : case 12: {
830 15 : struct srvsvc_NetSessEnum *r2 = (struct srvsvc_NetSessEnum *)r;
831 15 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
832 0 : DEBUG(5,("function srvsvc_NetSessEnum replied async\n"));
833 : }
834 15 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
835 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSessEnum, NDR_OUT | NDR_SET_VALUES, r2);
836 : }
837 15 : if (dce_call->fault_code != 0) {
838 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetSessEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
839 : }
840 15 : break;
841 : }
842 0 : case 13: {
843 0 : struct srvsvc_NetSessDel *r2 = (struct srvsvc_NetSessDel *)r;
844 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
845 0 : DEBUG(5,("function srvsvc_NetSessDel replied async\n"));
846 : }
847 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
848 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSessDel, NDR_OUT | NDR_SET_VALUES, r2);
849 : }
850 0 : if (dce_call->fault_code != 0) {
851 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetSessDel\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
852 : }
853 0 : break;
854 : }
855 0 : case 14: {
856 0 : struct srvsvc_NetShareAdd *r2 = (struct srvsvc_NetShareAdd *)r;
857 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
858 0 : DEBUG(5,("function srvsvc_NetShareAdd replied async\n"));
859 : }
860 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
861 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareAdd, NDR_OUT | NDR_SET_VALUES, r2);
862 : }
863 0 : if (dce_call->fault_code != 0) {
864 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareAdd\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
865 : }
866 0 : break;
867 : }
868 32 : case 15: {
869 32 : struct srvsvc_NetShareEnumAll *r2 = (struct srvsvc_NetShareEnumAll *)r;
870 32 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
871 0 : DEBUG(5,("function srvsvc_NetShareEnumAll replied async\n"));
872 : }
873 32 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
874 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareEnumAll, NDR_OUT | NDR_SET_VALUES, r2);
875 : }
876 32 : if (dce_call->fault_code != 0) {
877 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareEnumAll\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
878 : }
879 32 : break;
880 : }
881 271 : case 16: {
882 271 : struct srvsvc_NetShareGetInfo *r2 = (struct srvsvc_NetShareGetInfo *)r;
883 271 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
884 0 : DEBUG(5,("function srvsvc_NetShareGetInfo replied async\n"));
885 : }
886 271 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
887 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareGetInfo, NDR_OUT | NDR_SET_VALUES, r2);
888 : }
889 271 : if (dce_call->fault_code != 0) {
890 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareGetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
891 : }
892 271 : break;
893 : }
894 0 : case 17: {
895 0 : struct srvsvc_NetShareSetInfo *r2 = (struct srvsvc_NetShareSetInfo *)r;
896 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
897 0 : DEBUG(5,("function srvsvc_NetShareSetInfo replied async\n"));
898 : }
899 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
900 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareSetInfo, NDR_OUT | NDR_SET_VALUES, r2);
901 : }
902 0 : if (dce_call->fault_code != 0) {
903 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareSetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
904 : }
905 0 : break;
906 : }
907 0 : case 18: {
908 0 : struct srvsvc_NetShareDel *r2 = (struct srvsvc_NetShareDel *)r;
909 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
910 0 : DEBUG(5,("function srvsvc_NetShareDel replied async\n"));
911 : }
912 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
913 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDel, NDR_OUT | NDR_SET_VALUES, r2);
914 : }
915 0 : if (dce_call->fault_code != 0) {
916 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareDel\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
917 : }
918 0 : break;
919 : }
920 0 : case 19: {
921 0 : struct srvsvc_NetShareDelSticky *r2 = (struct srvsvc_NetShareDelSticky *)r;
922 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
923 0 : DEBUG(5,("function srvsvc_NetShareDelSticky replied async\n"));
924 : }
925 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
926 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDelSticky, NDR_OUT | NDR_SET_VALUES, r2);
927 : }
928 0 : if (dce_call->fault_code != 0) {
929 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareDelSticky\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
930 : }
931 0 : break;
932 : }
933 42 : case 20: {
934 42 : struct srvsvc_NetShareCheck *r2 = (struct srvsvc_NetShareCheck *)r;
935 42 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
936 0 : DEBUG(5,("function srvsvc_NetShareCheck replied async\n"));
937 : }
938 42 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
939 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareCheck, NDR_OUT | NDR_SET_VALUES, r2);
940 : }
941 42 : if (dce_call->fault_code != 0) {
942 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareCheck\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
943 : }
944 42 : break;
945 : }
946 16 : case 21: {
947 16 : struct srvsvc_NetSrvGetInfo *r2 = (struct srvsvc_NetSrvGetInfo *)r;
948 16 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
949 0 : DEBUG(5,("function srvsvc_NetSrvGetInfo replied async\n"));
950 : }
951 16 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
952 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSrvGetInfo, NDR_OUT | NDR_SET_VALUES, r2);
953 : }
954 16 : if (dce_call->fault_code != 0) {
955 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetSrvGetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
956 : }
957 16 : break;
958 : }
959 0 : case 22: {
960 0 : struct srvsvc_NetSrvSetInfo *r2 = (struct srvsvc_NetSrvSetInfo *)r;
961 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
962 0 : DEBUG(5,("function srvsvc_NetSrvSetInfo replied async\n"));
963 : }
964 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
965 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSrvSetInfo, NDR_OUT | NDR_SET_VALUES, r2);
966 : }
967 0 : if (dce_call->fault_code != 0) {
968 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetSrvSetInfo\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
969 : }
970 0 : break;
971 : }
972 3 : case 23: {
973 3 : struct srvsvc_NetDiskEnum *r2 = (struct srvsvc_NetDiskEnum *)r;
974 3 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
975 0 : DEBUG(5,("function srvsvc_NetDiskEnum replied async\n"));
976 : }
977 3 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
978 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetDiskEnum, NDR_OUT | NDR_SET_VALUES, r2);
979 : }
980 3 : if (dce_call->fault_code != 0) {
981 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetDiskEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
982 : }
983 3 : break;
984 : }
985 0 : case 24: {
986 0 : struct srvsvc_NetServerStatisticsGet *r2 = (struct srvsvc_NetServerStatisticsGet *)r;
987 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
988 0 : DEBUG(5,("function srvsvc_NetServerStatisticsGet replied async\n"));
989 : }
990 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
991 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetServerStatisticsGet, NDR_OUT | NDR_SET_VALUES, r2);
992 : }
993 0 : if (dce_call->fault_code != 0) {
994 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetServerStatisticsGet\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
995 : }
996 0 : break;
997 : }
998 0 : case 25: {
999 0 : struct srvsvc_NetTransportAdd *r2 = (struct srvsvc_NetTransportAdd *)r;
1000 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1001 0 : DEBUG(5,("function srvsvc_NetTransportAdd replied async\n"));
1002 : }
1003 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1004 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetTransportAdd, NDR_OUT | NDR_SET_VALUES, r2);
1005 : }
1006 0 : if (dce_call->fault_code != 0) {
1007 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetTransportAdd\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1008 : }
1009 0 : break;
1010 : }
1011 6 : case 26: {
1012 6 : struct srvsvc_NetTransportEnum *r2 = (struct srvsvc_NetTransportEnum *)r;
1013 6 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1014 0 : DEBUG(5,("function srvsvc_NetTransportEnum replied async\n"));
1015 : }
1016 6 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1017 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetTransportEnum, NDR_OUT | NDR_SET_VALUES, r2);
1018 : }
1019 6 : if (dce_call->fault_code != 0) {
1020 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetTransportEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1021 : }
1022 6 : break;
1023 : }
1024 0 : case 27: {
1025 0 : struct srvsvc_NetTransportDel *r2 = (struct srvsvc_NetTransportDel *)r;
1026 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1027 0 : DEBUG(5,("function srvsvc_NetTransportDel replied async\n"));
1028 : }
1029 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1030 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetTransportDel, NDR_OUT | NDR_SET_VALUES, r2);
1031 : }
1032 0 : if (dce_call->fault_code != 0) {
1033 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetTransportDel\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1034 : }
1035 0 : break;
1036 : }
1037 24 : case 28: {
1038 24 : struct srvsvc_NetRemoteTOD *r2 = (struct srvsvc_NetRemoteTOD *)r;
1039 24 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1040 0 : DEBUG(5,("function srvsvc_NetRemoteTOD replied async\n"));
1041 : }
1042 24 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1043 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetRemoteTOD, NDR_OUT | NDR_SET_VALUES, r2);
1044 : }
1045 24 : if (dce_call->fault_code != 0) {
1046 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetRemoteTOD\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1047 : }
1048 24 : break;
1049 : }
1050 0 : case 29: {
1051 0 : struct srvsvc_NetSetServiceBits *r2 = (struct srvsvc_NetSetServiceBits *)r;
1052 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1053 0 : DEBUG(5,("function srvsvc_NetSetServiceBits replied async\n"));
1054 : }
1055 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1056 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSetServiceBits, NDR_OUT | NDR_SET_VALUES, r2);
1057 : }
1058 0 : if (dce_call->fault_code != 0) {
1059 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetSetServiceBits\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1060 : }
1061 0 : break;
1062 : }
1063 0 : case 30: {
1064 0 : struct srvsvc_NetPathType *r2 = (struct srvsvc_NetPathType *)r;
1065 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1066 0 : DEBUG(5,("function srvsvc_NetPathType replied async\n"));
1067 : }
1068 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1069 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPathType, NDR_OUT | NDR_SET_VALUES, r2);
1070 : }
1071 0 : if (dce_call->fault_code != 0) {
1072 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetPathType\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1073 : }
1074 0 : break;
1075 : }
1076 0 : case 31: {
1077 0 : struct srvsvc_NetPathCanonicalize *r2 = (struct srvsvc_NetPathCanonicalize *)r;
1078 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1079 0 : DEBUG(5,("function srvsvc_NetPathCanonicalize replied async\n"));
1080 : }
1081 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1082 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPathCanonicalize, NDR_OUT | NDR_SET_VALUES, r2);
1083 : }
1084 0 : if (dce_call->fault_code != 0) {
1085 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetPathCanonicalize\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1086 : }
1087 0 : break;
1088 : }
1089 0 : case 32: {
1090 0 : struct srvsvc_NetPathCompare *r2 = (struct srvsvc_NetPathCompare *)r;
1091 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1092 0 : DEBUG(5,("function srvsvc_NetPathCompare replied async\n"));
1093 : }
1094 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1095 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPathCompare, NDR_OUT | NDR_SET_VALUES, r2);
1096 : }
1097 0 : if (dce_call->fault_code != 0) {
1098 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetPathCompare\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1099 : }
1100 0 : break;
1101 : }
1102 8424 : case 33: {
1103 8424 : struct srvsvc_NetNameValidate *r2 = (struct srvsvc_NetNameValidate *)r;
1104 8424 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1105 0 : DEBUG(5,("function srvsvc_NetNameValidate replied async\n"));
1106 : }
1107 8424 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1108 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetNameValidate, NDR_OUT | NDR_SET_VALUES, r2);
1109 : }
1110 8424 : if (dce_call->fault_code != 0) {
1111 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetNameValidate\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1112 : }
1113 8424 : break;
1114 : }
1115 0 : case 34: {
1116 0 : struct srvsvc_NETRPRNAMECANONICALIZE *r2 = (struct srvsvc_NETRPRNAMECANONICALIZE *)r;
1117 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1118 0 : DEBUG(5,("function srvsvc_NETRPRNAMECANONICALIZE replied async\n"));
1119 : }
1120 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1121 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRPRNAMECANONICALIZE, NDR_OUT | NDR_SET_VALUES, r2);
1122 : }
1123 0 : if (dce_call->fault_code != 0) {
1124 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRPRNAMECANONICALIZE\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1125 : }
1126 0 : break;
1127 : }
1128 0 : case 35: {
1129 0 : struct srvsvc_NetPRNameCompare *r2 = (struct srvsvc_NetPRNameCompare *)r;
1130 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1131 0 : DEBUG(5,("function srvsvc_NetPRNameCompare replied async\n"));
1132 : }
1133 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1134 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetPRNameCompare, NDR_OUT | NDR_SET_VALUES, r2);
1135 : }
1136 0 : if (dce_call->fault_code != 0) {
1137 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetPRNameCompare\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1138 : }
1139 0 : break;
1140 : }
1141 30 : case 36: {
1142 30 : struct srvsvc_NetShareEnum *r2 = (struct srvsvc_NetShareEnum *)r;
1143 30 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1144 0 : DEBUG(5,("function srvsvc_NetShareEnum replied async\n"));
1145 : }
1146 30 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1147 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareEnum, NDR_OUT | NDR_SET_VALUES, r2);
1148 : }
1149 30 : if (dce_call->fault_code != 0) {
1150 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareEnum\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1151 : }
1152 30 : break;
1153 : }
1154 0 : case 37: {
1155 0 : struct srvsvc_NetShareDelStart *r2 = (struct srvsvc_NetShareDelStart *)r;
1156 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1157 0 : DEBUG(5,("function srvsvc_NetShareDelStart replied async\n"));
1158 : }
1159 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1160 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDelStart, NDR_OUT | NDR_SET_VALUES, r2);
1161 : }
1162 0 : if (dce_call->fault_code != 0) {
1163 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareDelStart\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1164 : }
1165 0 : break;
1166 : }
1167 0 : case 38: {
1168 0 : struct srvsvc_NetShareDelCommit *r2 = (struct srvsvc_NetShareDelCommit *)r;
1169 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1170 0 : DEBUG(5,("function srvsvc_NetShareDelCommit replied async\n"));
1171 : }
1172 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1173 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetShareDelCommit, NDR_OUT | NDR_SET_VALUES, r2);
1174 : }
1175 0 : if (dce_call->fault_code != 0) {
1176 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetShareDelCommit\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1177 : }
1178 0 : break;
1179 : }
1180 0 : case 39: {
1181 0 : struct srvsvc_NetGetFileSecurity *r2 = (struct srvsvc_NetGetFileSecurity *)r;
1182 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1183 0 : DEBUG(5,("function srvsvc_NetGetFileSecurity replied async\n"));
1184 : }
1185 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1186 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetGetFileSecurity, NDR_OUT | NDR_SET_VALUES, r2);
1187 : }
1188 0 : if (dce_call->fault_code != 0) {
1189 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetGetFileSecurity\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1190 : }
1191 0 : break;
1192 : }
1193 0 : case 40: {
1194 0 : struct srvsvc_NetSetFileSecurity *r2 = (struct srvsvc_NetSetFileSecurity *)r;
1195 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1196 0 : DEBUG(5,("function srvsvc_NetSetFileSecurity replied async\n"));
1197 : }
1198 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1199 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetSetFileSecurity, NDR_OUT | NDR_SET_VALUES, r2);
1200 : }
1201 0 : if (dce_call->fault_code != 0) {
1202 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetSetFileSecurity\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1203 : }
1204 0 : break;
1205 : }
1206 0 : case 41: {
1207 0 : struct srvsvc_NetServerTransportAddEx *r2 = (struct srvsvc_NetServerTransportAddEx *)r;
1208 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1209 0 : DEBUG(5,("function srvsvc_NetServerTransportAddEx replied async\n"));
1210 : }
1211 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1212 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetServerTransportAddEx, NDR_OUT | NDR_SET_VALUES, r2);
1213 : }
1214 0 : if (dce_call->fault_code != 0) {
1215 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetServerTransportAddEx\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1216 : }
1217 0 : break;
1218 : }
1219 0 : case 42: {
1220 0 : struct srvsvc_NetServerSetServiceBitsEx *r2 = (struct srvsvc_NetServerSetServiceBitsEx *)r;
1221 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1222 0 : DEBUG(5,("function srvsvc_NetServerSetServiceBitsEx replied async\n"));
1223 : }
1224 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1225 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NetServerSetServiceBitsEx, NDR_OUT | NDR_SET_VALUES, r2);
1226 : }
1227 0 : if (dce_call->fault_code != 0) {
1228 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NetServerSetServiceBitsEx\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1229 : }
1230 0 : break;
1231 : }
1232 0 : case 43: {
1233 0 : struct srvsvc_NETRDFSGETVERSION *r2 = (struct srvsvc_NETRDFSGETVERSION *)r;
1234 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1235 0 : DEBUG(5,("function srvsvc_NETRDFSGETVERSION replied async\n"));
1236 : }
1237 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1238 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSGETVERSION, NDR_OUT | NDR_SET_VALUES, r2);
1239 : }
1240 0 : if (dce_call->fault_code != 0) {
1241 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSGETVERSION\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1242 : }
1243 0 : break;
1244 : }
1245 0 : case 44: {
1246 0 : struct srvsvc_NETRDFSCREATELOCALPARTITION *r2 = (struct srvsvc_NETRDFSCREATELOCALPARTITION *)r;
1247 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1248 0 : DEBUG(5,("function srvsvc_NETRDFSCREATELOCALPARTITION replied async\n"));
1249 : }
1250 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1251 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSCREATELOCALPARTITION, NDR_OUT | NDR_SET_VALUES, r2);
1252 : }
1253 0 : if (dce_call->fault_code != 0) {
1254 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSCREATELOCALPARTITION\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1255 : }
1256 0 : break;
1257 : }
1258 0 : case 45: {
1259 0 : struct srvsvc_NETRDFSDELETELOCALPARTITION *r2 = (struct srvsvc_NETRDFSDELETELOCALPARTITION *)r;
1260 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1261 0 : DEBUG(5,("function srvsvc_NETRDFSDELETELOCALPARTITION replied async\n"));
1262 : }
1263 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1264 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSDELETELOCALPARTITION, NDR_OUT | NDR_SET_VALUES, r2);
1265 : }
1266 0 : if (dce_call->fault_code != 0) {
1267 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSDELETELOCALPARTITION\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1268 : }
1269 0 : break;
1270 : }
1271 0 : case 46: {
1272 0 : struct srvsvc_NETRDFSSETLOCALVOLUMESTATE *r2 = (struct srvsvc_NETRDFSSETLOCALVOLUMESTATE *)r;
1273 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1274 0 : DEBUG(5,("function srvsvc_NETRDFSSETLOCALVOLUMESTATE replied async\n"));
1275 : }
1276 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1277 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSSETLOCALVOLUMESTATE, NDR_OUT | NDR_SET_VALUES, r2);
1278 : }
1279 0 : if (dce_call->fault_code != 0) {
1280 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSSETLOCALVOLUMESTATE\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1281 : }
1282 0 : break;
1283 : }
1284 0 : case 47: {
1285 0 : struct srvsvc_NETRDFSSETSERVERINFO *r2 = (struct srvsvc_NETRDFSSETSERVERINFO *)r;
1286 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1287 0 : DEBUG(5,("function srvsvc_NETRDFSSETSERVERINFO replied async\n"));
1288 : }
1289 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1290 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSSETSERVERINFO, NDR_OUT | NDR_SET_VALUES, r2);
1291 : }
1292 0 : if (dce_call->fault_code != 0) {
1293 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSSETSERVERINFO\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1294 : }
1295 0 : break;
1296 : }
1297 0 : case 48: {
1298 0 : struct srvsvc_NETRDFSCREATEEXITPOINT *r2 = (struct srvsvc_NETRDFSCREATEEXITPOINT *)r;
1299 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1300 0 : DEBUG(5,("function srvsvc_NETRDFSCREATEEXITPOINT replied async\n"));
1301 : }
1302 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1303 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSCREATEEXITPOINT, NDR_OUT | NDR_SET_VALUES, r2);
1304 : }
1305 0 : if (dce_call->fault_code != 0) {
1306 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSCREATEEXITPOINT\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1307 : }
1308 0 : break;
1309 : }
1310 0 : case 49: {
1311 0 : struct srvsvc_NETRDFSDELETEEXITPOINT *r2 = (struct srvsvc_NETRDFSDELETEEXITPOINT *)r;
1312 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1313 0 : DEBUG(5,("function srvsvc_NETRDFSDELETEEXITPOINT replied async\n"));
1314 : }
1315 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1316 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSDELETEEXITPOINT, NDR_OUT | NDR_SET_VALUES, r2);
1317 : }
1318 0 : if (dce_call->fault_code != 0) {
1319 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSDELETEEXITPOINT\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1320 : }
1321 0 : break;
1322 : }
1323 0 : case 50: {
1324 0 : struct srvsvc_NETRDFSMODIFYPREFIX *r2 = (struct srvsvc_NETRDFSMODIFYPREFIX *)r;
1325 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1326 0 : DEBUG(5,("function srvsvc_NETRDFSMODIFYPREFIX replied async\n"));
1327 : }
1328 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1329 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSMODIFYPREFIX, NDR_OUT | NDR_SET_VALUES, r2);
1330 : }
1331 0 : if (dce_call->fault_code != 0) {
1332 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSMODIFYPREFIX\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1333 : }
1334 0 : break;
1335 : }
1336 0 : case 51: {
1337 0 : struct srvsvc_NETRDFSFIXLOCALVOLUME *r2 = (struct srvsvc_NETRDFSFIXLOCALVOLUME *)r;
1338 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1339 0 : DEBUG(5,("function srvsvc_NETRDFSFIXLOCALVOLUME replied async\n"));
1340 : }
1341 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1342 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSFIXLOCALVOLUME, NDR_OUT | NDR_SET_VALUES, r2);
1343 : }
1344 0 : if (dce_call->fault_code != 0) {
1345 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSFIXLOCALVOLUME\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1346 : }
1347 0 : break;
1348 : }
1349 0 : case 52: {
1350 0 : struct srvsvc_NETRDFSMANAGERREPORTSITEINFO *r2 = (struct srvsvc_NETRDFSMANAGERREPORTSITEINFO *)r;
1351 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1352 0 : DEBUG(5,("function srvsvc_NETRDFSMANAGERREPORTSITEINFO replied async\n"));
1353 : }
1354 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1355 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRDFSMANAGERREPORTSITEINFO, NDR_OUT | NDR_SET_VALUES, r2);
1356 : }
1357 0 : if (dce_call->fault_code != 0) {
1358 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRDFSMANAGERREPORTSITEINFO\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1359 : }
1360 0 : break;
1361 : }
1362 0 : case 53: {
1363 0 : struct srvsvc_NETRSERVERTRANSPORTDELEX *r2 = (struct srvsvc_NETRSERVERTRANSPORTDELEX *)r;
1364 0 : if (dce_call->state_flags & DCESRV_CALL_STATE_FLAG_ASYNC) {
1365 0 : DEBUG(5,("function srvsvc_NETRSERVERTRANSPORTDELEX replied async\n"));
1366 : }
1367 0 : if (DEBUGLEVEL >= 10 && dce_call->fault_code == 0) {
1368 0 : NDR_PRINT_FUNCTION_DEBUG(srvsvc_NETRSERVERTRANSPORTDELEX, NDR_OUT | NDR_SET_VALUES, r2);
1369 : }
1370 0 : if (dce_call->fault_code != 0) {
1371 0 : DEBUG(2,("dcerpc_fault %s in srvsvc_NETRSERVERTRANSPORTDELEX\n", dcerpc_errstr(mem_ctx, dce_call->fault_code)));
1372 : }
1373 0 : break;
1374 : }
1375 :
1376 0 : default:
1377 0 : dce_call->fault_code = DCERPC_FAULT_OP_RNG_ERROR;
1378 0 : break;
1379 : }
1380 :
1381 8887 : if (dce_call->fault_code != 0) {
1382 0 : return NT_STATUS_NET_WRITE_FAULT;
1383 : }
1384 :
1385 8887 : return NT_STATUS_OK;
1386 : }
1387 :
1388 8887 : static NTSTATUS srvsvc__op_ndr_push(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, struct ndr_push *push, const void *r)
1389 : {
1390 0 : enum ndr_err_code ndr_err;
1391 8887 : uint16_t opnum = dce_call->pkt.u.request.opnum;
1392 :
1393 8887 : ndr_err = ndr_table_srvsvc.calls[opnum].ndr_push(push, NDR_OUT, r);
1394 8887 : if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
1395 0 : dce_call->fault_code = DCERPC_FAULT_NDR;
1396 0 : return NT_STATUS_NET_WRITE_FAULT;
1397 : }
1398 :
1399 8887 : return NT_STATUS_OK;
1400 : }
1401 :
1402 : static const struct dcesrv_interface dcesrv_srvsvc_interface = {
1403 : .name = "srvsvc",
1404 : .syntax_id = {{0x4b324fc8,0x1670,0x01d3,{0x12,0x78},{0x5a,0x47,0xbf,0x6e,0xe1,0x88}},3.0},
1405 : .bind = srvsvc__op_bind,
1406 : .unbind = srvsvc__op_unbind,
1407 : .ndr_pull = srvsvc__op_ndr_pull,
1408 : .dispatch = srvsvc__op_dispatch,
1409 : .reply = srvsvc__op_reply,
1410 : .ndr_push = srvsvc__op_ndr_push,
1411 : .local = NULL,
1412 : #ifdef DCESRV_INTERFACE_SRVSVC_FLAGS
1413 : .flags = DCESRV_INTERFACE_SRVSVC_FLAGS
1414 : #else
1415 : .flags = 0
1416 : #endif
1417 : };
1418 :
1419 :
1420 36 : static NTSTATUS srvsvc__op_init_server(struct dcesrv_context *dce_ctx, const struct dcesrv_endpoint_server *ep_server)
1421 : {
1422 0 : int i;
1423 : #ifdef DCESRV_INTERFACE_SRVSVC_NCACN_NP_SECONDARY_ENDPOINT
1424 : const char *ncacn_np_secondary_endpoint =
1425 : DCESRV_INTERFACE_SRVSVC_NCACN_NP_SECONDARY_ENDPOINT;
1426 : #else
1427 36 : const char *ncacn_np_secondary_endpoint = NULL;
1428 : #endif
1429 :
1430 144 : for (i=0;i<ndr_table_srvsvc.endpoints->count;i++) {
1431 0 : NTSTATUS ret;
1432 108 : const char *name = ndr_table_srvsvc.endpoints->names[i];
1433 :
1434 108 : ret = dcesrv_interface_register(dce_ctx,
1435 : name,
1436 : ncacn_np_secondary_endpoint,
1437 : &dcesrv_srvsvc_interface,
1438 : NULL);
1439 108 : if (!NT_STATUS_IS_OK(ret)) {
1440 0 : DEBUG(1,("srvsvc_op_init_server: failed to register endpoint '%s'\n",name));
1441 0 : return ret;
1442 : }
1443 : }
1444 :
1445 36 : return NT_STATUS_OK;
1446 : }
1447 :
1448 0 : static NTSTATUS srvsvc__op_shutdown_server(struct dcesrv_context *dce_ctx, const struct dcesrv_endpoint_server *ep_server)
1449 : {
1450 0 : return NT_STATUS_OK;
1451 : }
1452 :
1453 0 : static bool srvsvc__op_interface_by_uuid(struct dcesrv_interface *iface, const struct GUID *uuid, uint32_t if_version)
1454 : {
1455 0 : if (dcesrv_srvsvc_interface.syntax_id.if_version == if_version &&
1456 0 : GUID_equal(&dcesrv_srvsvc_interface.syntax_id.uuid, uuid)) {
1457 0 : memcpy(iface,&dcesrv_srvsvc_interface, sizeof(*iface));
1458 0 : return true;
1459 : }
1460 :
1461 0 : return false;
1462 : }
1463 :
1464 0 : static bool srvsvc__op_interface_by_name(struct dcesrv_interface *iface, const char *name)
1465 : {
1466 0 : if (strcmp(dcesrv_srvsvc_interface.name, name)==0) {
1467 0 : memcpy(iface, &dcesrv_srvsvc_interface, sizeof(*iface));
1468 0 : return true;
1469 : }
1470 :
1471 0 : return false;
1472 : }
1473 :
1474 66 : NTSTATUS dcerpc_server_srvsvc_init(TALLOC_CTX *ctx)
1475 : {
1476 2 : NTSTATUS ret;
1477 2 : static const struct dcesrv_endpoint_server ep_server = {
1478 : /* fill in our name */
1479 : .name = "srvsvc",
1480 :
1481 : /* Initialization flag */
1482 : .initialized = false,
1483 :
1484 : /* fill in all the operations */
1485 : #ifdef DCESRV_INTERFACE_SRVSVC_INIT_SERVER
1486 : .init_server = DCESRV_INTERFACE_SRVSVC_INIT_SERVER,
1487 : #else
1488 : .init_server = srvsvc__op_init_server,
1489 : #endif
1490 : #ifdef DCESRV_INTERFACE_SRVSVC_SHUTDOWN_SERVER
1491 : .shutdown_server = DCESRV_INTERFACE_SRVSVC_SHUTDOWN_SERVER,
1492 : #else
1493 : .shutdown_server = srvsvc__op_shutdown_server,
1494 : #endif
1495 : .interface_by_uuid = srvsvc__op_interface_by_uuid,
1496 : .interface_by_name = srvsvc__op_interface_by_name
1497 : };
1498 : /* register ourselves with the DCERPC subsystem. */
1499 66 : ret = dcerpc_register_ep_server(&ep_server);
1500 :
1501 66 : if (!NT_STATUS_IS_OK(ret)) {
1502 0 : DEBUG(0,("Failed to register 'srvsvc' endpoint server!\n"));
1503 0 : return ret;
1504 : }
1505 :
1506 66 : return ret;
1507 : }
1508 :
|