Line data Source code
1 : /* parser auto-generated by pidl */
2 :
3 : #include "includes.h"
4 : #include "bin/default/librpc/gen_ndr/ndr_fsrvp.h"
5 :
6 : #include "librpc/gen_ndr/ndr_misc.h"
7 14 : static enum ndr_err_code ndr_push_fssagent_share_mapping_1(struct ndr_push *ndr, ndr_flags_type ndr_flags, const struct fssagent_share_mapping_1 *r)
8 : {
9 14 : NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
10 14 : if (ndr_flags & NDR_SCALARS) {
11 14 : NDR_CHECK(ndr_push_align(ndr, 5));
12 14 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->ShadowCopySetId));
13 14 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->ShadowCopyId));
14 14 : NDR_CHECK(ndr_push_unique_ptr(ndr, r->ShareNameUNC));
15 14 : NDR_CHECK(ndr_push_unique_ptr(ndr, r->ShadowCopyShareName));
16 14 : NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->tstamp));
17 14 : NDR_CHECK(ndr_push_trailer_align(ndr, 5));
18 : }
19 14 : if (ndr_flags & NDR_BUFFERS) {
20 14 : if (r->ShareNameUNC) {
21 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->ShareNameUNC, CH_UTF16)));
22 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
23 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->ShareNameUNC, CH_UTF16)));
24 14 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->ShareNameUNC, ndr_charset_length(r->ShareNameUNC, CH_UTF16), sizeof(uint16_t), CH_UTF16));
25 : }
26 14 : if (r->ShadowCopyShareName) {
27 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->ShadowCopyShareName, CH_UTF16)));
28 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
29 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->ShadowCopyShareName, CH_UTF16)));
30 14 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->ShadowCopyShareName, ndr_charset_length(r->ShadowCopyShareName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
31 : }
32 : }
33 14 : return NDR_ERR_SUCCESS;
34 : }
35 :
36 14 : static enum ndr_err_code ndr_pull_fssagent_share_mapping_1(struct ndr_pull *ndr, ndr_flags_type ndr_flags, struct fssagent_share_mapping_1 *r)
37 : {
38 0 : uint32_t _ptr_ShareNameUNC;
39 14 : uint32_t size_ShareNameUNC_1 = 0;
40 14 : uint32_t length_ShareNameUNC_1 = 0;
41 14 : TALLOC_CTX *_mem_save_ShareNameUNC_0 = NULL;
42 0 : uint32_t _ptr_ShadowCopyShareName;
43 14 : uint32_t size_ShadowCopyShareName_1 = 0;
44 14 : uint32_t length_ShadowCopyShareName_1 = 0;
45 14 : TALLOC_CTX *_mem_save_ShadowCopyShareName_0 = NULL;
46 14 : NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
47 14 : if (ndr_flags & NDR_SCALARS) {
48 14 : NDR_CHECK(ndr_pull_align(ndr, 5));
49 14 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->ShadowCopySetId));
50 14 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->ShadowCopyId));
51 14 : NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ShareNameUNC));
52 14 : if (_ptr_ShareNameUNC) {
53 14 : NDR_PULL_ALLOC(ndr, r->ShareNameUNC);
54 : } else {
55 0 : r->ShareNameUNC = NULL;
56 : }
57 14 : NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ShadowCopyShareName));
58 14 : if (_ptr_ShadowCopyShareName) {
59 14 : NDR_PULL_ALLOC(ndr, r->ShadowCopyShareName);
60 : } else {
61 0 : r->ShadowCopyShareName = NULL;
62 : }
63 14 : NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->tstamp));
64 14 : NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
65 : }
66 14 : if (ndr_flags & NDR_BUFFERS) {
67 14 : if (r->ShareNameUNC) {
68 14 : _mem_save_ShareNameUNC_0 = NDR_PULL_GET_MEM_CTX(ndr);
69 14 : NDR_PULL_SET_MEM_CTX(ndr, r->ShareNameUNC, 0);
70 14 : NDR_CHECK(ndr_pull_array_size(ndr, &r->ShareNameUNC));
71 14 : NDR_CHECK(ndr_pull_array_length(ndr, &r->ShareNameUNC));
72 14 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->ShareNameUNC, &size_ShareNameUNC_1));
73 14 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->ShareNameUNC, &length_ShareNameUNC_1));
74 14 : if (length_ShareNameUNC_1 > size_ShareNameUNC_1) {
75 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_ShareNameUNC_1, length_ShareNameUNC_1);
76 : }
77 14 : NDR_CHECK(ndr_check_string_terminator(ndr, length_ShareNameUNC_1, sizeof(uint16_t)));
78 14 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->ShareNameUNC, length_ShareNameUNC_1, sizeof(uint16_t), CH_UTF16));
79 14 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ShareNameUNC_0, 0);
80 : }
81 14 : if (r->ShadowCopyShareName) {
82 14 : _mem_save_ShadowCopyShareName_0 = NDR_PULL_GET_MEM_CTX(ndr);
83 14 : NDR_PULL_SET_MEM_CTX(ndr, r->ShadowCopyShareName, 0);
84 14 : NDR_CHECK(ndr_pull_array_size(ndr, &r->ShadowCopyShareName));
85 14 : NDR_CHECK(ndr_pull_array_length(ndr, &r->ShadowCopyShareName));
86 14 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->ShadowCopyShareName, &size_ShadowCopyShareName_1));
87 14 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->ShadowCopyShareName, &length_ShadowCopyShareName_1));
88 14 : if (length_ShadowCopyShareName_1 > size_ShadowCopyShareName_1) {
89 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_ShadowCopyShareName_1, length_ShadowCopyShareName_1);
90 : }
91 14 : NDR_CHECK(ndr_check_string_terminator(ndr, length_ShadowCopyShareName_1, sizeof(uint16_t)));
92 14 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->ShadowCopyShareName, length_ShadowCopyShareName_1, sizeof(uint16_t), CH_UTF16));
93 14 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ShadowCopyShareName_0, 0);
94 : }
95 : }
96 14 : return NDR_ERR_SUCCESS;
97 : }
98 :
99 0 : _PUBLIC_ void ndr_print_fssagent_share_mapping_1(struct ndr_print *ndr, const char *name, const struct fssagent_share_mapping_1 *r)
100 : {
101 0 : ndr_print_struct(ndr, name, "fssagent_share_mapping_1");
102 0 : if (r == NULL) { ndr_print_null(ndr); return; }
103 0 : ndr->depth++;
104 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->ShadowCopySetId);
105 0 : ndr_print_GUID(ndr, "ShadowCopyId", &r->ShadowCopyId);
106 0 : ndr_print_ptr(ndr, "ShareNameUNC", r->ShareNameUNC);
107 0 : ndr->depth++;
108 0 : if (r->ShareNameUNC) {
109 0 : ndr_print_string(ndr, "ShareNameUNC", r->ShareNameUNC);
110 : }
111 0 : ndr->depth--;
112 0 : ndr_print_ptr(ndr, "ShadowCopyShareName", r->ShadowCopyShareName);
113 0 : ndr->depth++;
114 0 : if (r->ShadowCopyShareName) {
115 0 : ndr_print_string(ndr, "ShadowCopyShareName", r->ShadowCopyShareName);
116 : }
117 0 : ndr->depth--;
118 0 : ndr_print_NTTIME(ndr, "tstamp", r->tstamp);
119 0 : ndr->depth--;
120 : }
121 :
122 14 : static enum ndr_err_code ndr_push_fssagent_share_mapping(struct ndr_push *ndr, ndr_flags_type ndr_flags, const union fssagent_share_mapping *r)
123 : {
124 0 : uint32_t level;
125 14 : NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
126 14 : if (ndr_flags & NDR_SCALARS) {
127 : /* This token is not used again (except perhaps below in the NDR_BUFFERS case) */
128 14 : NDR_CHECK(ndr_push_steal_switch_value(ndr, r, &level));
129 14 : NDR_CHECK(ndr_push_union_align(ndr, 5));
130 14 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
131 14 : NDR_CHECK(ndr_push_union_align(ndr, 5));
132 14 : switch (level) {
133 14 : case 1: {
134 14 : NDR_CHECK(ndr_push_unique_ptr(ndr, r->ShareMapping1));
135 14 : break; }
136 :
137 0 : default: {
138 0 : break; }
139 :
140 : }
141 : }
142 14 : if (ndr_flags & NDR_BUFFERS) {
143 14 : if (!(ndr_flags & NDR_SCALARS)) {
144 : /* We didn't get it above, and the token is not needed after this. */
145 0 : NDR_CHECK(ndr_push_steal_switch_value(ndr, r, &level));
146 : }
147 14 : switch (level) {
148 14 : case 1:
149 14 : if (r->ShareMapping1) {
150 14 : NDR_CHECK(ndr_push_fssagent_share_mapping_1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ShareMapping1));
151 : }
152 14 : break;
153 :
154 0 : default:
155 0 : break;
156 :
157 : }
158 : }
159 14 : return NDR_ERR_SUCCESS;
160 : }
161 :
162 14 : static enum ndr_err_code ndr_pull_fssagent_share_mapping(struct ndr_pull *ndr, ndr_flags_type ndr_flags, union fssagent_share_mapping *r)
163 : {
164 0 : uint32_t level;
165 0 : uint32_t _level;
166 14 : TALLOC_CTX *_mem_save_ShareMapping1_0 = NULL;
167 0 : uint32_t _ptr_ShareMapping1;
168 14 : NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
169 14 : if (ndr_flags & NDR_SCALARS) {
170 : /* This token is not used again (except perhaps below in the NDR_BUFFERS case) */
171 14 : NDR_CHECK(ndr_pull_steal_switch_value(ndr, r, &level));
172 14 : NDR_CHECK(ndr_pull_union_align(ndr, 5));
173 14 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
174 14 : if (_level != level) {
175 0 : return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %"PRIu32" for r at %s", (uint32_t)_level, __location__);
176 : }
177 14 : NDR_CHECK(ndr_pull_union_align(ndr, 5));
178 14 : switch (level) {
179 14 : case 1: {
180 14 : NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ShareMapping1));
181 14 : if (_ptr_ShareMapping1) {
182 14 : NDR_PULL_ALLOC(ndr, r->ShareMapping1);
183 : } else {
184 0 : r->ShareMapping1 = NULL;
185 : }
186 14 : break; }
187 :
188 0 : default: {
189 0 : break; }
190 :
191 : }
192 : }
193 14 : if (ndr_flags & NDR_BUFFERS) {
194 14 : if (!(ndr_flags & NDR_SCALARS)) {
195 : /* We didn't get it above, and the token is not needed after this. */
196 0 : NDR_CHECK(ndr_pull_steal_switch_value(ndr, r, &level));
197 : }
198 14 : switch (level) {
199 14 : case 1:
200 14 : if (r->ShareMapping1) {
201 14 : _mem_save_ShareMapping1_0 = NDR_PULL_GET_MEM_CTX(ndr);
202 14 : NDR_PULL_SET_MEM_CTX(ndr, r->ShareMapping1, 0);
203 14 : NDR_CHECK(ndr_pull_fssagent_share_mapping_1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ShareMapping1));
204 14 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ShareMapping1_0, 0);
205 : }
206 14 : break;
207 :
208 0 : default:
209 0 : break;
210 :
211 : }
212 : }
213 14 : return NDR_ERR_SUCCESS;
214 : }
215 :
216 0 : _PUBLIC_ void ndr_print_fssagent_share_mapping(struct ndr_print *ndr, const char *name, const union fssagent_share_mapping *r)
217 : {
218 0 : uint32_t level;
219 0 : level = ndr_print_steal_switch_value(ndr, r);
220 0 : ndr_print_union(ndr, name, level, "fssagent_share_mapping");
221 0 : switch (level) {
222 0 : case 1:
223 0 : ndr_print_ptr(ndr, "ShareMapping1", r->ShareMapping1);
224 0 : ndr->depth++;
225 0 : if (r->ShareMapping1) {
226 0 : ndr_print_fssagent_share_mapping_1(ndr, "ShareMapping1", r->ShareMapping1);
227 : }
228 0 : ndr->depth--;
229 0 : break;
230 :
231 0 : default:
232 0 : break;
233 :
234 : }
235 0 : }
236 :
237 56 : static enum ndr_err_code ndr_push_fss_GetSupportedVersion(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_GetSupportedVersion *r)
238 : {
239 56 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
240 56 : if (flags & NDR_IN) {
241 0 : }
242 56 : if (flags & NDR_OUT) {
243 28 : if (r->out.MinVersion == NULL) {
244 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
245 : }
246 28 : if (r->out.MaxVersion == NULL) {
247 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
248 : }
249 28 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.MinVersion));
250 28 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.MaxVersion));
251 28 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
252 : }
253 56 : return NDR_ERR_SUCCESS;
254 : }
255 :
256 56 : static enum ndr_err_code ndr_pull_fss_GetSupportedVersion(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_GetSupportedVersion *r)
257 : {
258 56 : TALLOC_CTX *_mem_save_MinVersion_0 = NULL;
259 56 : TALLOC_CTX *_mem_save_MaxVersion_0 = NULL;
260 56 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
261 56 : if (flags & NDR_IN) {
262 28 : NDR_ZERO_STRUCT(r->out);
263 :
264 28 : NDR_PULL_ALLOC(ndr, r->out.MinVersion);
265 28 : NDR_ZERO_STRUCTP(r->out.MinVersion);
266 28 : NDR_PULL_ALLOC(ndr, r->out.MaxVersion);
267 28 : NDR_ZERO_STRUCTP(r->out.MaxVersion);
268 : }
269 56 : if (flags & NDR_OUT) {
270 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
271 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
272 28 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
273 28 : NDR_PULL_ALLOC(ndr, r->out.MinVersion);
274 : }
275 28 : _mem_save_MinVersion_0 = NDR_PULL_GET_MEM_CTX(ndr);
276 28 : NDR_PULL_SET_MEM_CTX(ndr, r->out.MinVersion, LIBNDR_FLAG_REF_ALLOC);
277 28 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.MinVersion));
278 28 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_MinVersion_0, LIBNDR_FLAG_REF_ALLOC);
279 28 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
280 28 : NDR_PULL_ALLOC(ndr, r->out.MaxVersion);
281 : }
282 28 : _mem_save_MaxVersion_0 = NDR_PULL_GET_MEM_CTX(ndr);
283 28 : NDR_PULL_SET_MEM_CTX(ndr, r->out.MaxVersion, LIBNDR_FLAG_REF_ALLOC);
284 28 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.MaxVersion));
285 28 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_MaxVersion_0, LIBNDR_FLAG_REF_ALLOC);
286 28 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
287 : }
288 56 : return NDR_ERR_SUCCESS;
289 : }
290 :
291 0 : _PUBLIC_ void ndr_print_fss_GetSupportedVersion(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_GetSupportedVersion *r)
292 : {
293 0 : ndr_print_struct(ndr, name, "fss_GetSupportedVersion");
294 0 : if (r == NULL) { ndr_print_null(ndr); return; }
295 0 : ndr->depth++;
296 0 : if (flags & NDR_SET_VALUES) {
297 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
298 : }
299 0 : if (flags & NDR_IN) {
300 0 : ndr_print_struct(ndr, "in", "fss_GetSupportedVersion");
301 0 : ndr->depth++;
302 0 : ndr->depth--;
303 : }
304 0 : if (flags & NDR_OUT) {
305 0 : ndr_print_struct(ndr, "out", "fss_GetSupportedVersion");
306 0 : ndr->depth++;
307 0 : ndr_print_ptr(ndr, "MinVersion", r->out.MinVersion);
308 0 : ndr->depth++;
309 0 : ndr_print_uint32(ndr, "MinVersion", *r->out.MinVersion);
310 0 : ndr->depth--;
311 0 : ndr_print_ptr(ndr, "MaxVersion", r->out.MaxVersion);
312 0 : ndr->depth++;
313 0 : ndr_print_uint32(ndr, "MaxVersion", *r->out.MaxVersion);
314 0 : ndr->depth--;
315 0 : ndr_print_uint32(ndr, "result", r->out.result);
316 0 : ndr->depth--;
317 : }
318 0 : ndr->depth--;
319 : }
320 :
321 56 : static enum ndr_err_code ndr_push_fss_SetContext(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_SetContext *r)
322 : {
323 56 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
324 56 : if (flags & NDR_IN) {
325 28 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Context));
326 : }
327 56 : if (flags & NDR_OUT) {
328 28 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
329 : }
330 56 : return NDR_ERR_SUCCESS;
331 : }
332 :
333 56 : static enum ndr_err_code ndr_pull_fss_SetContext(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_SetContext *r)
334 : {
335 56 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
336 56 : if (flags & NDR_IN) {
337 28 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Context));
338 : }
339 56 : if (flags & NDR_OUT) {
340 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
341 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
342 28 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
343 : }
344 56 : return NDR_ERR_SUCCESS;
345 : }
346 :
347 0 : _PUBLIC_ void ndr_print_fss_SetContext(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_SetContext *r)
348 : {
349 0 : ndr_print_struct(ndr, name, "fss_SetContext");
350 0 : if (r == NULL) { ndr_print_null(ndr); return; }
351 0 : ndr->depth++;
352 0 : if (flags & NDR_SET_VALUES) {
353 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
354 : }
355 0 : if (flags & NDR_IN) {
356 0 : ndr_print_struct(ndr, "in", "fss_SetContext");
357 0 : ndr->depth++;
358 0 : ndr_print_uint32(ndr, "Context", r->in.Context);
359 0 : ndr->depth--;
360 : }
361 0 : if (flags & NDR_OUT) {
362 0 : ndr_print_struct(ndr, "out", "fss_SetContext");
363 0 : ndr->depth++;
364 0 : ndr_print_uint32(ndr, "result", r->out.result);
365 0 : ndr->depth--;
366 : }
367 0 : ndr->depth--;
368 : }
369 :
370 52 : static enum ndr_err_code ndr_push_fss_StartShadowCopySet(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_StartShadowCopySet *r)
371 : {
372 52 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
373 52 : if (flags & NDR_IN) {
374 26 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ClientShadowCopySetId));
375 : }
376 52 : if (flags & NDR_OUT) {
377 26 : if (r->out.pShadowCopySetId == NULL) {
378 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
379 : }
380 26 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->out.pShadowCopySetId));
381 26 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
382 : }
383 52 : return NDR_ERR_SUCCESS;
384 : }
385 :
386 52 : static enum ndr_err_code ndr_pull_fss_StartShadowCopySet(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_StartShadowCopySet *r)
387 : {
388 52 : TALLOC_CTX *_mem_save_pShadowCopySetId_0 = NULL;
389 52 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
390 52 : if (flags & NDR_IN) {
391 26 : NDR_ZERO_STRUCT(r->out);
392 :
393 26 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ClientShadowCopySetId));
394 26 : NDR_PULL_ALLOC(ndr, r->out.pShadowCopySetId);
395 26 : NDR_ZERO_STRUCTP(r->out.pShadowCopySetId);
396 : }
397 52 : if (flags & NDR_OUT) {
398 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
399 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
400 26 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
401 26 : NDR_PULL_ALLOC(ndr, r->out.pShadowCopySetId);
402 : }
403 26 : _mem_save_pShadowCopySetId_0 = NDR_PULL_GET_MEM_CTX(ndr);
404 26 : NDR_PULL_SET_MEM_CTX(ndr, r->out.pShadowCopySetId, LIBNDR_FLAG_REF_ALLOC);
405 26 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->out.pShadowCopySetId));
406 26 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pShadowCopySetId_0, LIBNDR_FLAG_REF_ALLOC);
407 26 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
408 : }
409 52 : return NDR_ERR_SUCCESS;
410 : }
411 :
412 0 : _PUBLIC_ void ndr_print_fss_StartShadowCopySet(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_StartShadowCopySet *r)
413 : {
414 0 : ndr_print_struct(ndr, name, "fss_StartShadowCopySet");
415 0 : if (r == NULL) { ndr_print_null(ndr); return; }
416 0 : ndr->depth++;
417 0 : if (flags & NDR_SET_VALUES) {
418 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
419 : }
420 0 : if (flags & NDR_IN) {
421 0 : ndr_print_struct(ndr, "in", "fss_StartShadowCopySet");
422 0 : ndr->depth++;
423 0 : ndr_print_GUID(ndr, "ClientShadowCopySetId", &r->in.ClientShadowCopySetId);
424 0 : ndr->depth--;
425 : }
426 0 : if (flags & NDR_OUT) {
427 0 : ndr_print_struct(ndr, "out", "fss_StartShadowCopySet");
428 0 : ndr->depth++;
429 0 : ndr_print_ptr(ndr, "pShadowCopySetId", r->out.pShadowCopySetId);
430 0 : ndr->depth++;
431 0 : ndr_print_GUID(ndr, "pShadowCopySetId", r->out.pShadowCopySetId);
432 0 : ndr->depth--;
433 0 : ndr_print_uint32(ndr, "result", r->out.result);
434 0 : ndr->depth--;
435 : }
436 0 : ndr->depth--;
437 : }
438 :
439 88 : static enum ndr_err_code ndr_push_fss_AddToShadowCopySet(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_AddToShadowCopySet *r)
440 : {
441 88 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
442 88 : if (flags & NDR_IN) {
443 44 : if (r->in.ShareName == NULL) {
444 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
445 : }
446 44 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ClientShadowCopyId));
447 44 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
448 44 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
449 44 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
450 44 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
451 44 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.ShareName, ndr_charset_length(r->in.ShareName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
452 : }
453 88 : if (flags & NDR_OUT) {
454 44 : if (r->out.pShadowCopyId == NULL) {
455 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
456 : }
457 44 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->out.pShadowCopyId));
458 44 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
459 : }
460 88 : return NDR_ERR_SUCCESS;
461 : }
462 :
463 88 : static enum ndr_err_code ndr_pull_fss_AddToShadowCopySet(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_AddToShadowCopySet *r)
464 : {
465 88 : uint32_t size_ShareName_1 = 0;
466 88 : uint32_t length_ShareName_1 = 0;
467 88 : TALLOC_CTX *_mem_save_pShadowCopyId_0 = NULL;
468 88 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
469 88 : if (flags & NDR_IN) {
470 44 : NDR_ZERO_STRUCT(r->out);
471 :
472 44 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ClientShadowCopyId));
473 44 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
474 44 : NDR_CHECK(ndr_pull_array_size(ndr, &r->in.ShareName));
475 44 : NDR_CHECK(ndr_pull_array_length(ndr, &r->in.ShareName));
476 44 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->in.ShareName, &size_ShareName_1));
477 44 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->in.ShareName, &length_ShareName_1));
478 44 : if (length_ShareName_1 > size_ShareName_1) {
479 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_ShareName_1, length_ShareName_1);
480 : }
481 44 : NDR_CHECK(ndr_check_string_terminator(ndr, length_ShareName_1, sizeof(uint16_t)));
482 44 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.ShareName, length_ShareName_1, sizeof(uint16_t), CH_UTF16));
483 44 : NDR_PULL_ALLOC(ndr, r->out.pShadowCopyId);
484 44 : NDR_ZERO_STRUCTP(r->out.pShadowCopyId);
485 : }
486 88 : if (flags & NDR_OUT) {
487 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
488 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
489 44 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
490 44 : NDR_PULL_ALLOC(ndr, r->out.pShadowCopyId);
491 : }
492 44 : _mem_save_pShadowCopyId_0 = NDR_PULL_GET_MEM_CTX(ndr);
493 44 : NDR_PULL_SET_MEM_CTX(ndr, r->out.pShadowCopyId, LIBNDR_FLAG_REF_ALLOC);
494 44 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->out.pShadowCopyId));
495 44 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pShadowCopyId_0, LIBNDR_FLAG_REF_ALLOC);
496 44 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
497 : }
498 88 : return NDR_ERR_SUCCESS;
499 : }
500 :
501 0 : _PUBLIC_ void ndr_print_fss_AddToShadowCopySet(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_AddToShadowCopySet *r)
502 : {
503 0 : ndr_print_struct(ndr, name, "fss_AddToShadowCopySet");
504 0 : if (r == NULL) { ndr_print_null(ndr); return; }
505 0 : ndr->depth++;
506 0 : if (flags & NDR_SET_VALUES) {
507 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
508 : }
509 0 : if (flags & NDR_IN) {
510 0 : ndr_print_struct(ndr, "in", "fss_AddToShadowCopySet");
511 0 : ndr->depth++;
512 0 : ndr_print_GUID(ndr, "ClientShadowCopyId", &r->in.ClientShadowCopyId);
513 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
514 0 : ndr_print_ptr(ndr, "ShareName", r->in.ShareName);
515 0 : ndr->depth++;
516 0 : ndr_print_string(ndr, "ShareName", r->in.ShareName);
517 0 : ndr->depth--;
518 0 : ndr->depth--;
519 : }
520 0 : if (flags & NDR_OUT) {
521 0 : ndr_print_struct(ndr, "out", "fss_AddToShadowCopySet");
522 0 : ndr->depth++;
523 0 : ndr_print_ptr(ndr, "pShadowCopyId", r->out.pShadowCopyId);
524 0 : ndr->depth++;
525 0 : ndr_print_GUID(ndr, "pShadowCopyId", r->out.pShadowCopyId);
526 0 : ndr->depth--;
527 0 : ndr_print_uint32(ndr, "result", r->out.result);
528 0 : ndr->depth--;
529 : }
530 0 : ndr->depth--;
531 : }
532 :
533 36 : static enum ndr_err_code ndr_push_fss_CommitShadowCopySet(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_CommitShadowCopySet *r)
534 : {
535 36 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
536 36 : if (flags & NDR_IN) {
537 18 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
538 18 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.TimeOutInMilliseconds));
539 : }
540 36 : if (flags & NDR_OUT) {
541 18 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
542 : }
543 36 : return NDR_ERR_SUCCESS;
544 : }
545 :
546 36 : static enum ndr_err_code ndr_pull_fss_CommitShadowCopySet(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_CommitShadowCopySet *r)
547 : {
548 36 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
549 36 : if (flags & NDR_IN) {
550 18 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
551 18 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.TimeOutInMilliseconds));
552 : }
553 36 : if (flags & NDR_OUT) {
554 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
555 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
556 18 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
557 : }
558 36 : return NDR_ERR_SUCCESS;
559 : }
560 :
561 0 : _PUBLIC_ void ndr_print_fss_CommitShadowCopySet(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_CommitShadowCopySet *r)
562 : {
563 0 : ndr_print_struct(ndr, name, "fss_CommitShadowCopySet");
564 0 : if (r == NULL) { ndr_print_null(ndr); return; }
565 0 : ndr->depth++;
566 0 : if (flags & NDR_SET_VALUES) {
567 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
568 : }
569 0 : if (flags & NDR_IN) {
570 0 : ndr_print_struct(ndr, "in", "fss_CommitShadowCopySet");
571 0 : ndr->depth++;
572 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
573 0 : ndr_print_uint32(ndr, "TimeOutInMilliseconds", r->in.TimeOutInMilliseconds);
574 0 : ndr->depth--;
575 : }
576 0 : if (flags & NDR_OUT) {
577 0 : ndr_print_struct(ndr, "out", "fss_CommitShadowCopySet");
578 0 : ndr->depth++;
579 0 : ndr_print_uint32(ndr, "result", r->out.result);
580 0 : ndr->depth--;
581 : }
582 0 : ndr->depth--;
583 : }
584 :
585 32 : static enum ndr_err_code ndr_push_fss_ExposeShadowCopySet(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_ExposeShadowCopySet *r)
586 : {
587 32 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
588 32 : if (flags & NDR_IN) {
589 16 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
590 16 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.TimeOutInMilliseconds));
591 : }
592 32 : if (flags & NDR_OUT) {
593 16 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
594 : }
595 32 : return NDR_ERR_SUCCESS;
596 : }
597 :
598 32 : static enum ndr_err_code ndr_pull_fss_ExposeShadowCopySet(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_ExposeShadowCopySet *r)
599 : {
600 32 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
601 32 : if (flags & NDR_IN) {
602 16 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
603 16 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.TimeOutInMilliseconds));
604 : }
605 32 : if (flags & NDR_OUT) {
606 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
607 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
608 16 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
609 : }
610 32 : return NDR_ERR_SUCCESS;
611 : }
612 :
613 0 : _PUBLIC_ void ndr_print_fss_ExposeShadowCopySet(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_ExposeShadowCopySet *r)
614 : {
615 0 : ndr_print_struct(ndr, name, "fss_ExposeShadowCopySet");
616 0 : if (r == NULL) { ndr_print_null(ndr); return; }
617 0 : ndr->depth++;
618 0 : if (flags & NDR_SET_VALUES) {
619 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
620 : }
621 0 : if (flags & NDR_IN) {
622 0 : ndr_print_struct(ndr, "in", "fss_ExposeShadowCopySet");
623 0 : ndr->depth++;
624 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
625 0 : ndr_print_uint32(ndr, "TimeOutInMilliseconds", r->in.TimeOutInMilliseconds);
626 0 : ndr->depth--;
627 : }
628 0 : if (flags & NDR_OUT) {
629 0 : ndr_print_struct(ndr, "out", "fss_ExposeShadowCopySet");
630 0 : ndr->depth++;
631 0 : ndr_print_uint32(ndr, "result", r->out.result);
632 0 : ndr->depth--;
633 : }
634 0 : ndr->depth--;
635 : }
636 :
637 0 : static enum ndr_err_code ndr_push_fss_RecoveryCompleteShadowCopySet(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_RecoveryCompleteShadowCopySet *r)
638 : {
639 0 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
640 0 : if (flags & NDR_IN) {
641 0 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
642 : }
643 0 : if (flags & NDR_OUT) {
644 0 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
645 : }
646 0 : return NDR_ERR_SUCCESS;
647 : }
648 :
649 0 : static enum ndr_err_code ndr_pull_fss_RecoveryCompleteShadowCopySet(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_RecoveryCompleteShadowCopySet *r)
650 : {
651 0 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
652 0 : if (flags & NDR_IN) {
653 0 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
654 : }
655 0 : if (flags & NDR_OUT) {
656 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
657 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
658 0 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
659 : }
660 0 : return NDR_ERR_SUCCESS;
661 : }
662 :
663 0 : _PUBLIC_ void ndr_print_fss_RecoveryCompleteShadowCopySet(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_RecoveryCompleteShadowCopySet *r)
664 : {
665 0 : ndr_print_struct(ndr, name, "fss_RecoveryCompleteShadowCopySet");
666 0 : if (r == NULL) { ndr_print_null(ndr); return; }
667 0 : ndr->depth++;
668 0 : if (flags & NDR_SET_VALUES) {
669 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
670 : }
671 0 : if (flags & NDR_IN) {
672 0 : ndr_print_struct(ndr, "in", "fss_RecoveryCompleteShadowCopySet");
673 0 : ndr->depth++;
674 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
675 0 : ndr->depth--;
676 : }
677 0 : if (flags & NDR_OUT) {
678 0 : ndr_print_struct(ndr, "out", "fss_RecoveryCompleteShadowCopySet");
679 0 : ndr->depth++;
680 0 : ndr_print_uint32(ndr, "result", r->out.result);
681 0 : ndr->depth--;
682 : }
683 0 : ndr->depth--;
684 : }
685 :
686 4 : static enum ndr_err_code ndr_push_fss_AbortShadowCopySet(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_AbortShadowCopySet *r)
687 : {
688 4 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
689 4 : if (flags & NDR_IN) {
690 2 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
691 : }
692 4 : if (flags & NDR_OUT) {
693 2 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
694 : }
695 4 : return NDR_ERR_SUCCESS;
696 : }
697 :
698 4 : static enum ndr_err_code ndr_pull_fss_AbortShadowCopySet(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_AbortShadowCopySet *r)
699 : {
700 4 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
701 4 : if (flags & NDR_IN) {
702 2 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
703 : }
704 4 : if (flags & NDR_OUT) {
705 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
706 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
707 2 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
708 : }
709 4 : return NDR_ERR_SUCCESS;
710 : }
711 :
712 0 : _PUBLIC_ void ndr_print_fss_AbortShadowCopySet(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_AbortShadowCopySet *r)
713 : {
714 0 : ndr_print_struct(ndr, name, "fss_AbortShadowCopySet");
715 0 : if (r == NULL) { ndr_print_null(ndr); return; }
716 0 : ndr->depth++;
717 0 : if (flags & NDR_SET_VALUES) {
718 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
719 : }
720 0 : if (flags & NDR_IN) {
721 0 : ndr_print_struct(ndr, "in", "fss_AbortShadowCopySet");
722 0 : ndr->depth++;
723 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
724 0 : ndr->depth--;
725 : }
726 0 : if (flags & NDR_OUT) {
727 0 : ndr_print_struct(ndr, "out", "fss_AbortShadowCopySet");
728 0 : ndr->depth++;
729 0 : ndr_print_uint32(ndr, "result", r->out.result);
730 0 : ndr->depth--;
731 : }
732 0 : ndr->depth--;
733 : }
734 :
735 56 : static enum ndr_err_code ndr_push_fss_IsPathSupported(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_IsPathSupported *r)
736 : {
737 56 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
738 56 : if (flags & NDR_IN) {
739 28 : if (r->in.ShareName == NULL) {
740 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
741 : }
742 28 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
743 28 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
744 28 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
745 28 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.ShareName, ndr_charset_length(r->in.ShareName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
746 : }
747 56 : if (flags & NDR_OUT) {
748 28 : if (r->out.SupportedByThisProvider == NULL) {
749 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
750 : }
751 28 : if (r->out.OwnerMachineName == NULL) {
752 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
753 : }
754 28 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.SupportedByThisProvider));
755 28 : NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.OwnerMachineName));
756 28 : if (*r->out.OwnerMachineName) {
757 28 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(*r->out.OwnerMachineName, CH_UTF16)));
758 28 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
759 28 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(*r->out.OwnerMachineName, CH_UTF16)));
760 28 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, *r->out.OwnerMachineName, ndr_charset_length(*r->out.OwnerMachineName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
761 : }
762 28 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
763 : }
764 56 : return NDR_ERR_SUCCESS;
765 : }
766 :
767 56 : static enum ndr_err_code ndr_pull_fss_IsPathSupported(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_IsPathSupported *r)
768 : {
769 56 : uint32_t size_ShareName_1 = 0;
770 56 : uint32_t length_ShareName_1 = 0;
771 0 : uint32_t _ptr_OwnerMachineName;
772 56 : uint32_t size_OwnerMachineName_2 = 0;
773 56 : uint32_t length_OwnerMachineName_2 = 0;
774 56 : TALLOC_CTX *_mem_save_SupportedByThisProvider_0 = NULL;
775 56 : TALLOC_CTX *_mem_save_OwnerMachineName_0 = NULL;
776 56 : TALLOC_CTX *_mem_save_OwnerMachineName_1 = NULL;
777 56 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
778 56 : if (flags & NDR_IN) {
779 28 : NDR_ZERO_STRUCT(r->out);
780 :
781 28 : NDR_CHECK(ndr_pull_array_size(ndr, &r->in.ShareName));
782 28 : NDR_CHECK(ndr_pull_array_length(ndr, &r->in.ShareName));
783 28 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->in.ShareName, &size_ShareName_1));
784 28 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->in.ShareName, &length_ShareName_1));
785 28 : if (length_ShareName_1 > size_ShareName_1) {
786 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_ShareName_1, length_ShareName_1);
787 : }
788 28 : NDR_CHECK(ndr_check_string_terminator(ndr, length_ShareName_1, sizeof(uint16_t)));
789 28 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.ShareName, length_ShareName_1, sizeof(uint16_t), CH_UTF16));
790 28 : NDR_PULL_ALLOC(ndr, r->out.SupportedByThisProvider);
791 28 : NDR_ZERO_STRUCTP(r->out.SupportedByThisProvider);
792 28 : NDR_PULL_ALLOC(ndr, r->out.OwnerMachineName);
793 28 : NDR_ZERO_STRUCTP(r->out.OwnerMachineName);
794 : }
795 56 : if (flags & NDR_OUT) {
796 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
797 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
798 28 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
799 28 : NDR_PULL_ALLOC(ndr, r->out.SupportedByThisProvider);
800 : }
801 28 : _mem_save_SupportedByThisProvider_0 = NDR_PULL_GET_MEM_CTX(ndr);
802 28 : NDR_PULL_SET_MEM_CTX(ndr, r->out.SupportedByThisProvider, LIBNDR_FLAG_REF_ALLOC);
803 28 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.SupportedByThisProvider));
804 28 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_SupportedByThisProvider_0, LIBNDR_FLAG_REF_ALLOC);
805 28 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
806 28 : NDR_PULL_ALLOC(ndr, r->out.OwnerMachineName);
807 : }
808 28 : _mem_save_OwnerMachineName_0 = NDR_PULL_GET_MEM_CTX(ndr);
809 28 : NDR_PULL_SET_MEM_CTX(ndr, r->out.OwnerMachineName, LIBNDR_FLAG_REF_ALLOC);
810 28 : NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_OwnerMachineName));
811 28 : if (_ptr_OwnerMachineName) {
812 28 : NDR_PULL_ALLOC(ndr, *r->out.OwnerMachineName);
813 : } else {
814 0 : *r->out.OwnerMachineName = NULL;
815 : }
816 28 : if (*r->out.OwnerMachineName) {
817 28 : _mem_save_OwnerMachineName_1 = NDR_PULL_GET_MEM_CTX(ndr);
818 28 : NDR_PULL_SET_MEM_CTX(ndr, *r->out.OwnerMachineName, 0);
819 28 : NDR_CHECK(ndr_pull_array_size(ndr, r->out.OwnerMachineName));
820 28 : NDR_CHECK(ndr_pull_array_length(ndr, r->out.OwnerMachineName));
821 28 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)r->out.OwnerMachineName, &size_OwnerMachineName_2));
822 28 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)r->out.OwnerMachineName, &length_OwnerMachineName_2));
823 28 : if (length_OwnerMachineName_2 > size_OwnerMachineName_2) {
824 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_OwnerMachineName_2, length_OwnerMachineName_2);
825 : }
826 28 : NDR_CHECK(ndr_check_string_terminator(ndr, length_OwnerMachineName_2, sizeof(uint16_t)));
827 28 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, r->out.OwnerMachineName, length_OwnerMachineName_2, sizeof(uint16_t), CH_UTF16));
828 28 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_OwnerMachineName_1, 0);
829 : }
830 28 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_OwnerMachineName_0, LIBNDR_FLAG_REF_ALLOC);
831 28 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
832 : }
833 56 : return NDR_ERR_SUCCESS;
834 : }
835 :
836 0 : _PUBLIC_ void ndr_print_fss_IsPathSupported(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_IsPathSupported *r)
837 : {
838 0 : ndr_print_struct(ndr, name, "fss_IsPathSupported");
839 0 : if (r == NULL) { ndr_print_null(ndr); return; }
840 0 : ndr->depth++;
841 0 : if (flags & NDR_SET_VALUES) {
842 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
843 : }
844 0 : if (flags & NDR_IN) {
845 0 : ndr_print_struct(ndr, "in", "fss_IsPathSupported");
846 0 : ndr->depth++;
847 0 : ndr_print_ptr(ndr, "ShareName", r->in.ShareName);
848 0 : ndr->depth++;
849 0 : ndr_print_string(ndr, "ShareName", r->in.ShareName);
850 0 : ndr->depth--;
851 0 : ndr->depth--;
852 : }
853 0 : if (flags & NDR_OUT) {
854 0 : ndr_print_struct(ndr, "out", "fss_IsPathSupported");
855 0 : ndr->depth++;
856 0 : ndr_print_ptr(ndr, "SupportedByThisProvider", r->out.SupportedByThisProvider);
857 0 : ndr->depth++;
858 0 : ndr_print_uint32(ndr, "SupportedByThisProvider", *r->out.SupportedByThisProvider);
859 0 : ndr->depth--;
860 0 : ndr_print_ptr(ndr, "OwnerMachineName", r->out.OwnerMachineName);
861 0 : ndr->depth++;
862 0 : ndr_print_ptr(ndr, "OwnerMachineName", *r->out.OwnerMachineName);
863 0 : ndr->depth++;
864 0 : if (*r->out.OwnerMachineName) {
865 0 : ndr_print_string(ndr, "OwnerMachineName", *r->out.OwnerMachineName);
866 : }
867 0 : ndr->depth--;
868 0 : ndr->depth--;
869 0 : ndr_print_uint32(ndr, "result", r->out.result);
870 0 : ndr->depth--;
871 : }
872 0 : ndr->depth--;
873 : }
874 :
875 0 : static enum ndr_err_code ndr_push_fss_IsPathShadowCopied(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_IsPathShadowCopied *r)
876 : {
877 0 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
878 0 : if (flags & NDR_IN) {
879 0 : if (r->in.ShareName == NULL) {
880 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
881 : }
882 0 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
883 0 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
884 0 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
885 0 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.ShareName, ndr_charset_length(r->in.ShareName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
886 : }
887 0 : if (flags & NDR_OUT) {
888 0 : if (r->out.ShadowCopyPresent == NULL) {
889 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
890 : }
891 0 : if (r->out.ShadowCopyCompatibility == NULL) {
892 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
893 : }
894 0 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.ShadowCopyPresent));
895 0 : NDR_CHECK(ndr_push_int32(ndr, NDR_SCALARS, *r->out.ShadowCopyCompatibility));
896 0 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
897 : }
898 0 : return NDR_ERR_SUCCESS;
899 : }
900 :
901 0 : static enum ndr_err_code ndr_pull_fss_IsPathShadowCopied(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_IsPathShadowCopied *r)
902 : {
903 0 : uint32_t size_ShareName_1 = 0;
904 0 : uint32_t length_ShareName_1 = 0;
905 0 : TALLOC_CTX *_mem_save_ShadowCopyPresent_0 = NULL;
906 0 : TALLOC_CTX *_mem_save_ShadowCopyCompatibility_0 = NULL;
907 0 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
908 0 : if (flags & NDR_IN) {
909 0 : NDR_ZERO_STRUCT(r->out);
910 :
911 0 : NDR_CHECK(ndr_pull_array_size(ndr, &r->in.ShareName));
912 0 : NDR_CHECK(ndr_pull_array_length(ndr, &r->in.ShareName));
913 0 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->in.ShareName, &size_ShareName_1));
914 0 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->in.ShareName, &length_ShareName_1));
915 0 : if (length_ShareName_1 > size_ShareName_1) {
916 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_ShareName_1, length_ShareName_1);
917 : }
918 0 : NDR_CHECK(ndr_check_string_terminator(ndr, length_ShareName_1, sizeof(uint16_t)));
919 0 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.ShareName, length_ShareName_1, sizeof(uint16_t), CH_UTF16));
920 0 : NDR_PULL_ALLOC(ndr, r->out.ShadowCopyPresent);
921 0 : NDR_ZERO_STRUCTP(r->out.ShadowCopyPresent);
922 0 : NDR_PULL_ALLOC(ndr, r->out.ShadowCopyCompatibility);
923 0 : NDR_ZERO_STRUCTP(r->out.ShadowCopyCompatibility);
924 : }
925 0 : if (flags & NDR_OUT) {
926 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
927 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
928 0 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
929 0 : NDR_PULL_ALLOC(ndr, r->out.ShadowCopyPresent);
930 : }
931 0 : _mem_save_ShadowCopyPresent_0 = NDR_PULL_GET_MEM_CTX(ndr);
932 0 : NDR_PULL_SET_MEM_CTX(ndr, r->out.ShadowCopyPresent, LIBNDR_FLAG_REF_ALLOC);
933 0 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.ShadowCopyPresent));
934 0 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ShadowCopyPresent_0, LIBNDR_FLAG_REF_ALLOC);
935 0 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
936 0 : NDR_PULL_ALLOC(ndr, r->out.ShadowCopyCompatibility);
937 : }
938 0 : _mem_save_ShadowCopyCompatibility_0 = NDR_PULL_GET_MEM_CTX(ndr);
939 0 : NDR_PULL_SET_MEM_CTX(ndr, r->out.ShadowCopyCompatibility, LIBNDR_FLAG_REF_ALLOC);
940 0 : NDR_CHECK(ndr_pull_int32(ndr, NDR_SCALARS, r->out.ShadowCopyCompatibility));
941 0 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ShadowCopyCompatibility_0, LIBNDR_FLAG_REF_ALLOC);
942 0 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
943 : }
944 0 : return NDR_ERR_SUCCESS;
945 : }
946 :
947 0 : _PUBLIC_ void ndr_print_fss_IsPathShadowCopied(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_IsPathShadowCopied *r)
948 : {
949 0 : ndr_print_struct(ndr, name, "fss_IsPathShadowCopied");
950 0 : if (r == NULL) { ndr_print_null(ndr); return; }
951 0 : ndr->depth++;
952 0 : if (flags & NDR_SET_VALUES) {
953 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
954 : }
955 0 : if (flags & NDR_IN) {
956 0 : ndr_print_struct(ndr, "in", "fss_IsPathShadowCopied");
957 0 : ndr->depth++;
958 0 : ndr_print_ptr(ndr, "ShareName", r->in.ShareName);
959 0 : ndr->depth++;
960 0 : ndr_print_string(ndr, "ShareName", r->in.ShareName);
961 0 : ndr->depth--;
962 0 : ndr->depth--;
963 : }
964 0 : if (flags & NDR_OUT) {
965 0 : ndr_print_struct(ndr, "out", "fss_IsPathShadowCopied");
966 0 : ndr->depth++;
967 0 : ndr_print_ptr(ndr, "ShadowCopyPresent", r->out.ShadowCopyPresent);
968 0 : ndr->depth++;
969 0 : ndr_print_uint32(ndr, "ShadowCopyPresent", *r->out.ShadowCopyPresent);
970 0 : ndr->depth--;
971 0 : ndr_print_ptr(ndr, "ShadowCopyCompatibility", r->out.ShadowCopyCompatibility);
972 0 : ndr->depth++;
973 0 : ndr_print_int32(ndr, "ShadowCopyCompatibility", *r->out.ShadowCopyCompatibility);
974 0 : ndr->depth--;
975 0 : ndr_print_uint32(ndr, "result", r->out.result);
976 0 : ndr->depth--;
977 : }
978 0 : ndr->depth--;
979 : }
980 :
981 28 : static enum ndr_err_code ndr_push_fss_GetShareMapping(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_GetShareMapping *r)
982 : {
983 28 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
984 28 : if (flags & NDR_IN) {
985 14 : if (r->in.ShareName == NULL) {
986 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
987 : }
988 14 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopyId));
989 14 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
990 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
991 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
992 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
993 14 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.ShareName, ndr_charset_length(r->in.ShareName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
994 14 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.Level));
995 : }
996 28 : if (flags & NDR_OUT) {
997 14 : if (r->out.ShareMapping == NULL) {
998 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
999 : }
1000 14 : NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.ShareMapping, r->in.Level));
1001 14 : NDR_CHECK(ndr_push_fssagent_share_mapping(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ShareMapping));
1002 14 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1003 : }
1004 28 : return NDR_ERR_SUCCESS;
1005 : }
1006 :
1007 28 : static enum ndr_err_code ndr_pull_fss_GetShareMapping(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_GetShareMapping *r)
1008 : {
1009 28 : uint32_t size_ShareName_1 = 0;
1010 28 : uint32_t length_ShareName_1 = 0;
1011 28 : TALLOC_CTX *_mem_save_ShareMapping_0 = NULL;
1012 28 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
1013 28 : if (flags & NDR_IN) {
1014 14 : NDR_ZERO_STRUCT(r->out);
1015 :
1016 14 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopyId));
1017 14 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
1018 14 : NDR_CHECK(ndr_pull_array_size(ndr, &r->in.ShareName));
1019 14 : NDR_CHECK(ndr_pull_array_length(ndr, &r->in.ShareName));
1020 14 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->in.ShareName, &size_ShareName_1));
1021 14 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->in.ShareName, &length_ShareName_1));
1022 14 : if (length_ShareName_1 > size_ShareName_1) {
1023 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_ShareName_1, length_ShareName_1);
1024 : }
1025 14 : NDR_CHECK(ndr_check_string_terminator(ndr, length_ShareName_1, sizeof(uint16_t)));
1026 14 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.ShareName, length_ShareName_1, sizeof(uint16_t), CH_UTF16));
1027 14 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.Level));
1028 14 : NDR_PULL_ALLOC(ndr, r->out.ShareMapping);
1029 14 : NDR_ZERO_STRUCTP(r->out.ShareMapping);
1030 : }
1031 28 : if (flags & NDR_OUT) {
1032 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
1033 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
1034 14 : if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
1035 14 : NDR_PULL_ALLOC(ndr, r->out.ShareMapping);
1036 : }
1037 14 : _mem_save_ShareMapping_0 = NDR_PULL_GET_MEM_CTX(ndr);
1038 14 : NDR_PULL_SET_MEM_CTX(ndr, r->out.ShareMapping, LIBNDR_FLAG_REF_ALLOC);
1039 14 : NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.ShareMapping, r->in.Level));
1040 14 : NDR_CHECK(ndr_pull_fssagent_share_mapping(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.ShareMapping));
1041 14 : NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ShareMapping_0, LIBNDR_FLAG_REF_ALLOC);
1042 14 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
1043 : }
1044 28 : return NDR_ERR_SUCCESS;
1045 : }
1046 :
1047 0 : _PUBLIC_ void ndr_print_fss_GetShareMapping(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_GetShareMapping *r)
1048 : {
1049 0 : ndr_print_struct(ndr, name, "fss_GetShareMapping");
1050 0 : if (r == NULL) { ndr_print_null(ndr); return; }
1051 0 : ndr->depth++;
1052 0 : if (flags & NDR_SET_VALUES) {
1053 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
1054 : }
1055 0 : if (flags & NDR_IN) {
1056 0 : ndr_print_struct(ndr, "in", "fss_GetShareMapping");
1057 0 : ndr->depth++;
1058 0 : ndr_print_GUID(ndr, "ShadowCopyId", &r->in.ShadowCopyId);
1059 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
1060 0 : ndr_print_ptr(ndr, "ShareName", r->in.ShareName);
1061 0 : ndr->depth++;
1062 0 : ndr_print_string(ndr, "ShareName", r->in.ShareName);
1063 0 : ndr->depth--;
1064 0 : ndr_print_uint32(ndr, "Level", r->in.Level);
1065 0 : ndr->depth--;
1066 : }
1067 0 : if (flags & NDR_OUT) {
1068 0 : ndr_print_struct(ndr, "out", "fss_GetShareMapping");
1069 0 : ndr->depth++;
1070 0 : ndr_print_ptr(ndr, "ShareMapping", r->out.ShareMapping);
1071 0 : ndr->depth++;
1072 0 : ndr_print_set_switch_value(ndr, r->out.ShareMapping, r->in.Level);
1073 0 : ndr_print_fssagent_share_mapping(ndr, "ShareMapping", r->out.ShareMapping);
1074 0 : ndr->depth--;
1075 0 : ndr_print_uint32(ndr, "result", r->out.result);
1076 0 : ndr->depth--;
1077 : }
1078 0 : ndr->depth--;
1079 : }
1080 :
1081 28 : static enum ndr_err_code ndr_push_fss_DeleteShareMapping(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_DeleteShareMapping *r)
1082 : {
1083 28 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
1084 28 : if (flags & NDR_IN) {
1085 14 : if (r->in.ShareName == NULL) {
1086 0 : return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
1087 : }
1088 14 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
1089 14 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopyId));
1090 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
1091 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
1092 14 : NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->in.ShareName, CH_UTF16)));
1093 14 : NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.ShareName, ndr_charset_length(r->in.ShareName, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1094 : }
1095 28 : if (flags & NDR_OUT) {
1096 14 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1097 : }
1098 28 : return NDR_ERR_SUCCESS;
1099 : }
1100 :
1101 28 : static enum ndr_err_code ndr_pull_fss_DeleteShareMapping(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_DeleteShareMapping *r)
1102 : {
1103 28 : uint32_t size_ShareName_1 = 0;
1104 28 : uint32_t length_ShareName_1 = 0;
1105 28 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
1106 28 : if (flags & NDR_IN) {
1107 14 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
1108 14 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopyId));
1109 14 : NDR_CHECK(ndr_pull_array_size(ndr, &r->in.ShareName));
1110 14 : NDR_CHECK(ndr_pull_array_length(ndr, &r->in.ShareName));
1111 14 : NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->in.ShareName, &size_ShareName_1));
1112 14 : NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->in.ShareName, &length_ShareName_1));
1113 14 : if (length_ShareName_1 > size_ShareName_1) {
1114 0 : return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %"PRIu32": should exceed array length %"PRIu32"", size_ShareName_1, length_ShareName_1);
1115 : }
1116 14 : NDR_CHECK(ndr_check_string_terminator(ndr, length_ShareName_1, sizeof(uint16_t)));
1117 14 : NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.ShareName, length_ShareName_1, sizeof(uint16_t), CH_UTF16));
1118 : }
1119 28 : if (flags & NDR_OUT) {
1120 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
1121 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
1122 14 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
1123 : }
1124 28 : return NDR_ERR_SUCCESS;
1125 : }
1126 :
1127 0 : _PUBLIC_ void ndr_print_fss_DeleteShareMapping(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_DeleteShareMapping *r)
1128 : {
1129 0 : ndr_print_struct(ndr, name, "fss_DeleteShareMapping");
1130 0 : if (r == NULL) { ndr_print_null(ndr); return; }
1131 0 : ndr->depth++;
1132 0 : if (flags & NDR_SET_VALUES) {
1133 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
1134 : }
1135 0 : if (flags & NDR_IN) {
1136 0 : ndr_print_struct(ndr, "in", "fss_DeleteShareMapping");
1137 0 : ndr->depth++;
1138 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
1139 0 : ndr_print_GUID(ndr, "ShadowCopyId", &r->in.ShadowCopyId);
1140 0 : ndr_print_ptr(ndr, "ShareName", r->in.ShareName);
1141 0 : ndr->depth++;
1142 0 : ndr_print_string(ndr, "ShareName", r->in.ShareName);
1143 0 : ndr->depth--;
1144 0 : ndr->depth--;
1145 : }
1146 0 : if (flags & NDR_OUT) {
1147 0 : ndr_print_struct(ndr, "out", "fss_DeleteShareMapping");
1148 0 : ndr->depth++;
1149 0 : ndr_print_uint32(ndr, "result", r->out.result);
1150 0 : ndr->depth--;
1151 : }
1152 0 : ndr->depth--;
1153 : }
1154 :
1155 40 : static enum ndr_err_code ndr_push_fss_PrepareShadowCopySet(struct ndr_push *ndr, ndr_flags_type flags, const struct fss_PrepareShadowCopySet *r)
1156 : {
1157 40 : NDR_PUSH_CHECK_FN_FLAGS(ndr, flags);
1158 40 : if (flags & NDR_IN) {
1159 20 : NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
1160 20 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.TimeOutInMilliseconds));
1161 : }
1162 40 : if (flags & NDR_OUT) {
1163 20 : NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->out.result));
1164 : }
1165 40 : return NDR_ERR_SUCCESS;
1166 : }
1167 :
1168 40 : static enum ndr_err_code ndr_pull_fss_PrepareShadowCopySet(struct ndr_pull *ndr, ndr_flags_type flags, struct fss_PrepareShadowCopySet *r)
1169 : {
1170 40 : NDR_PULL_CHECK_FN_FLAGS(ndr, flags);
1171 40 : if (flags & NDR_IN) {
1172 20 : NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.ShadowCopySetId));
1173 20 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.TimeOutInMilliseconds));
1174 : }
1175 40 : if (flags & NDR_OUT) {
1176 : #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
1177 : #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
1178 20 : NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->out.result));
1179 : }
1180 40 : return NDR_ERR_SUCCESS;
1181 : }
1182 :
1183 0 : _PUBLIC_ void ndr_print_fss_PrepareShadowCopySet(struct ndr_print *ndr, const char *name, ndr_flags_type flags, const struct fss_PrepareShadowCopySet *r)
1184 : {
1185 0 : ndr_print_struct(ndr, name, "fss_PrepareShadowCopySet");
1186 0 : if (r == NULL) { ndr_print_null(ndr); return; }
1187 0 : ndr->depth++;
1188 0 : if (flags & NDR_SET_VALUES) {
1189 0 : ndr->flags |= LIBNDR_PRINT_SET_VALUES;
1190 : }
1191 0 : if (flags & NDR_IN) {
1192 0 : ndr_print_struct(ndr, "in", "fss_PrepareShadowCopySet");
1193 0 : ndr->depth++;
1194 0 : ndr_print_GUID(ndr, "ShadowCopySetId", &r->in.ShadowCopySetId);
1195 0 : ndr_print_uint32(ndr, "TimeOutInMilliseconds", r->in.TimeOutInMilliseconds);
1196 0 : ndr->depth--;
1197 : }
1198 0 : if (flags & NDR_OUT) {
1199 0 : ndr_print_struct(ndr, "out", "fss_PrepareShadowCopySet");
1200 0 : ndr->depth++;
1201 0 : ndr_print_uint32(ndr, "result", r->out.result);
1202 0 : ndr->depth--;
1203 : }
1204 0 : ndr->depth--;
1205 : }
1206 :
1207 : #ifndef SKIP_NDR_TABLE_FileServerVssAgent
1208 : static const struct ndr_interface_public_struct FileServerVssAgent_public_structs[] = {
1209 : { .name = NULL }
1210 : };
1211 :
1212 : static const struct ndr_interface_call FileServerVssAgent_calls[] = {
1213 : {
1214 : "fss_GetSupportedVersion",
1215 : sizeof(struct fss_GetSupportedVersion),
1216 : (ndr_push_flags_fn_t) ndr_push_fss_GetSupportedVersion,
1217 : (ndr_pull_flags_fn_t) ndr_pull_fss_GetSupportedVersion,
1218 : (ndr_print_function_t) ndr_print_fss_GetSupportedVersion,
1219 : { 0, NULL },
1220 : { 0, NULL },
1221 : },
1222 : {
1223 : "fss_SetContext",
1224 : sizeof(struct fss_SetContext),
1225 : (ndr_push_flags_fn_t) ndr_push_fss_SetContext,
1226 : (ndr_pull_flags_fn_t) ndr_pull_fss_SetContext,
1227 : (ndr_print_function_t) ndr_print_fss_SetContext,
1228 : { 0, NULL },
1229 : { 0, NULL },
1230 : },
1231 : {
1232 : "fss_StartShadowCopySet",
1233 : sizeof(struct fss_StartShadowCopySet),
1234 : (ndr_push_flags_fn_t) ndr_push_fss_StartShadowCopySet,
1235 : (ndr_pull_flags_fn_t) ndr_pull_fss_StartShadowCopySet,
1236 : (ndr_print_function_t) ndr_print_fss_StartShadowCopySet,
1237 : { 0, NULL },
1238 : { 0, NULL },
1239 : },
1240 : {
1241 : "fss_AddToShadowCopySet",
1242 : sizeof(struct fss_AddToShadowCopySet),
1243 : (ndr_push_flags_fn_t) ndr_push_fss_AddToShadowCopySet,
1244 : (ndr_pull_flags_fn_t) ndr_pull_fss_AddToShadowCopySet,
1245 : (ndr_print_function_t) ndr_print_fss_AddToShadowCopySet,
1246 : { 0, NULL },
1247 : { 0, NULL },
1248 : },
1249 : {
1250 : "fss_CommitShadowCopySet",
1251 : sizeof(struct fss_CommitShadowCopySet),
1252 : (ndr_push_flags_fn_t) ndr_push_fss_CommitShadowCopySet,
1253 : (ndr_pull_flags_fn_t) ndr_pull_fss_CommitShadowCopySet,
1254 : (ndr_print_function_t) ndr_print_fss_CommitShadowCopySet,
1255 : { 0, NULL },
1256 : { 0, NULL },
1257 : },
1258 : {
1259 : "fss_ExposeShadowCopySet",
1260 : sizeof(struct fss_ExposeShadowCopySet),
1261 : (ndr_push_flags_fn_t) ndr_push_fss_ExposeShadowCopySet,
1262 : (ndr_pull_flags_fn_t) ndr_pull_fss_ExposeShadowCopySet,
1263 : (ndr_print_function_t) ndr_print_fss_ExposeShadowCopySet,
1264 : { 0, NULL },
1265 : { 0, NULL },
1266 : },
1267 : {
1268 : "fss_RecoveryCompleteShadowCopySet",
1269 : sizeof(struct fss_RecoveryCompleteShadowCopySet),
1270 : (ndr_push_flags_fn_t) ndr_push_fss_RecoveryCompleteShadowCopySet,
1271 : (ndr_pull_flags_fn_t) ndr_pull_fss_RecoveryCompleteShadowCopySet,
1272 : (ndr_print_function_t) ndr_print_fss_RecoveryCompleteShadowCopySet,
1273 : { 0, NULL },
1274 : { 0, NULL },
1275 : },
1276 : {
1277 : "fss_AbortShadowCopySet",
1278 : sizeof(struct fss_AbortShadowCopySet),
1279 : (ndr_push_flags_fn_t) ndr_push_fss_AbortShadowCopySet,
1280 : (ndr_pull_flags_fn_t) ndr_pull_fss_AbortShadowCopySet,
1281 : (ndr_print_function_t) ndr_print_fss_AbortShadowCopySet,
1282 : { 0, NULL },
1283 : { 0, NULL },
1284 : },
1285 : {
1286 : "fss_IsPathSupported",
1287 : sizeof(struct fss_IsPathSupported),
1288 : (ndr_push_flags_fn_t) ndr_push_fss_IsPathSupported,
1289 : (ndr_pull_flags_fn_t) ndr_pull_fss_IsPathSupported,
1290 : (ndr_print_function_t) ndr_print_fss_IsPathSupported,
1291 : { 0, NULL },
1292 : { 0, NULL },
1293 : },
1294 : {
1295 : "fss_IsPathShadowCopied",
1296 : sizeof(struct fss_IsPathShadowCopied),
1297 : (ndr_push_flags_fn_t) ndr_push_fss_IsPathShadowCopied,
1298 : (ndr_pull_flags_fn_t) ndr_pull_fss_IsPathShadowCopied,
1299 : (ndr_print_function_t) ndr_print_fss_IsPathShadowCopied,
1300 : { 0, NULL },
1301 : { 0, NULL },
1302 : },
1303 : {
1304 : "fss_GetShareMapping",
1305 : sizeof(struct fss_GetShareMapping),
1306 : (ndr_push_flags_fn_t) ndr_push_fss_GetShareMapping,
1307 : (ndr_pull_flags_fn_t) ndr_pull_fss_GetShareMapping,
1308 : (ndr_print_function_t) ndr_print_fss_GetShareMapping,
1309 : { 0, NULL },
1310 : { 0, NULL },
1311 : },
1312 : {
1313 : "fss_DeleteShareMapping",
1314 : sizeof(struct fss_DeleteShareMapping),
1315 : (ndr_push_flags_fn_t) ndr_push_fss_DeleteShareMapping,
1316 : (ndr_pull_flags_fn_t) ndr_pull_fss_DeleteShareMapping,
1317 : (ndr_print_function_t) ndr_print_fss_DeleteShareMapping,
1318 : { 0, NULL },
1319 : { 0, NULL },
1320 : },
1321 : {
1322 : "fss_PrepareShadowCopySet",
1323 : sizeof(struct fss_PrepareShadowCopySet),
1324 : (ndr_push_flags_fn_t) ndr_push_fss_PrepareShadowCopySet,
1325 : (ndr_pull_flags_fn_t) ndr_pull_fss_PrepareShadowCopySet,
1326 : (ndr_print_function_t) ndr_print_fss_PrepareShadowCopySet,
1327 : { 0, NULL },
1328 : { 0, NULL },
1329 : },
1330 : { .name = NULL }
1331 : };
1332 :
1333 : static const char * const FileServerVssAgent_endpoint_strings[] = {
1334 : "ncacn_np:[\\pipe\\FssagentRpc]",
1335 : };
1336 :
1337 : static const struct ndr_interface_string_array FileServerVssAgent_endpoints = {
1338 : .count = 1,
1339 : .names = FileServerVssAgent_endpoint_strings
1340 : };
1341 :
1342 : static const char * const FileServerVssAgent_authservice_strings[] = {
1343 : "host",
1344 : };
1345 :
1346 : static const struct ndr_interface_string_array FileServerVssAgent_authservices = {
1347 : .count = 1,
1348 : .names = FileServerVssAgent_authservice_strings
1349 : };
1350 :
1351 :
1352 : const struct ndr_interface_table ndr_table_FileServerVssAgent = {
1353 : .name = "FileServerVssAgent",
1354 : .syntax_id = {
1355 : {0xa8e0653c,0x2744,0x4389,{0xa6,0x1d},{0x73,0x73,0xdf,0x8b,0x22,0x92}},
1356 : NDR_FILESERVERVSSAGENT_VERSION
1357 : },
1358 : .helpstring = NDR_FILESERVERVSSAGENT_HELPSTRING,
1359 : .num_calls = 13,
1360 : .calls = FileServerVssAgent_calls,
1361 : .num_public_structs = 0,
1362 : .public_structs = FileServerVssAgent_public_structs,
1363 : .endpoints = &FileServerVssAgent_endpoints,
1364 : .authservices = &FileServerVssAgent_authservices
1365 : };
1366 :
1367 : #endif /* SKIP_NDR_TABLE_FileServerVssAgent */
|