s3: add perfcount idl and generated files.
[samba.git] / source3 / librpc / gen_ndr / ndr_perfcount.c
1 /* parser auto-generated by pidl */
2
3 #include "includes.h"
4 #include "librpc/gen_ndr/ndr_perfcount.h"
5
6 static enum ndr_err_code ndr_push_SYSTEMTIME(struct ndr_push *ndr, int ndr_flags, const struct SYSTEMTIME *r)
7 {
8         if (ndr_flags & NDR_SCALARS) {
9                 NDR_CHECK(ndr_push_align(ndr, 2));
10                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->year));
11                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->month));
12                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->dayofweek));
13                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->day));
14                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->hour));
15                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->minute));
16                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->second));
17                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->milliseconds));
18         }
19         if (ndr_flags & NDR_BUFFERS) {
20         }
21         return NDR_ERR_SUCCESS;
22 }
23
24 static enum ndr_err_code ndr_pull_SYSTEMTIME(struct ndr_pull *ndr, int ndr_flags, struct SYSTEMTIME *r)
25 {
26         if (ndr_flags & NDR_SCALARS) {
27                 NDR_CHECK(ndr_pull_align(ndr, 2));
28                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->year));
29                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->month));
30                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->dayofweek));
31                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->day));
32                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->hour));
33                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->minute));
34                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->second));
35                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->milliseconds));
36         }
37         if (ndr_flags & NDR_BUFFERS) {
38         }
39         return NDR_ERR_SUCCESS;
40 }
41
42 _PUBLIC_ void ndr_print_SYSTEMTIME(struct ndr_print *ndr, const char *name, const struct SYSTEMTIME *r)
43 {
44         ndr_print_struct(ndr, name, "SYSTEMTIME");
45         ndr->depth++;
46         ndr_print_uint16(ndr, "year", r->year);
47         ndr_print_uint16(ndr, "month", r->month);
48         ndr_print_uint16(ndr, "dayofweek", r->dayofweek);
49         ndr_print_uint16(ndr, "day", r->day);
50         ndr_print_uint16(ndr, "hour", r->hour);
51         ndr_print_uint16(ndr, "minute", r->minute);
52         ndr_print_uint16(ndr, "second", r->second);
53         ndr_print_uint16(ndr, "milliseconds", r->milliseconds);
54         ndr->depth--;
55 }
56
57 _PUBLIC_ enum ndr_err_code ndr_push_PERF_COUNTER_DEFINITION(struct ndr_push *ndr, int ndr_flags, const struct PERF_COUNTER_DEFINITION *r)
58 {
59         if (ndr_flags & NDR_SCALARS) {
60                 NDR_CHECK(ndr_push_align(ndr, 4));
61                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ByteLength));
62                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CounterNameTitleIndex));
63                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CounterNameTitlePointer));
64                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CounterHelpTitleIndex));
65                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CounterHelpTitlePointer));
66                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->DefaultScale));
67                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->DetailLevel));
68                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CounterType));
69                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CounterSize));
70                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CounterOffset));
71         }
72         if (ndr_flags & NDR_BUFFERS) {
73         }
74         return NDR_ERR_SUCCESS;
75 }
76
77 _PUBLIC_ enum ndr_err_code ndr_pull_PERF_COUNTER_DEFINITION(struct ndr_pull *ndr, int ndr_flags, struct PERF_COUNTER_DEFINITION *r)
78 {
79         if (ndr_flags & NDR_SCALARS) {
80                 NDR_CHECK(ndr_pull_align(ndr, 4));
81                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ByteLength));
82                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CounterNameTitleIndex));
83                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CounterNameTitlePointer));
84                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CounterHelpTitleIndex));
85                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CounterHelpTitlePointer));
86                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DefaultScale));
87                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DetailLevel));
88                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CounterType));
89                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CounterSize));
90                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CounterOffset));
91         }
92         if (ndr_flags & NDR_BUFFERS) {
93         }
94         return NDR_ERR_SUCCESS;
95 }
96
97 _PUBLIC_ void ndr_print_PERF_COUNTER_DEFINITION(struct ndr_print *ndr, const char *name, const struct PERF_COUNTER_DEFINITION *r)
98 {
99         ndr_print_struct(ndr, name, "PERF_COUNTER_DEFINITION");
100         ndr->depth++;
101         ndr_print_uint32(ndr, "ByteLength", r->ByteLength);
102         ndr_print_uint32(ndr, "CounterNameTitleIndex", r->CounterNameTitleIndex);
103         ndr_print_uint32(ndr, "CounterNameTitlePointer", r->CounterNameTitlePointer);
104         ndr_print_uint32(ndr, "CounterHelpTitleIndex", r->CounterHelpTitleIndex);
105         ndr_print_uint32(ndr, "CounterHelpTitlePointer", r->CounterHelpTitlePointer);
106         ndr_print_uint32(ndr, "DefaultScale", r->DefaultScale);
107         ndr_print_uint32(ndr, "DetailLevel", r->DetailLevel);
108         ndr_print_uint32(ndr, "CounterType", r->CounterType);
109         ndr_print_uint32(ndr, "CounterSize", r->CounterSize);
110         ndr_print_uint32(ndr, "CounterOffset", r->CounterOffset);
111         ndr->depth--;
112 }
113
114 _PUBLIC_ enum ndr_err_code ndr_push_PERF_COUNTER_BLOCK(struct ndr_push *ndr, int ndr_flags, const struct PERF_COUNTER_BLOCK *r)
115 {
116         if (ndr_flags & NDR_SCALARS) {
117                 NDR_CHECK(ndr_push_align(ndr, 4));
118                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ByteLength));
119                 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->ByteLength));
120         }
121         if (ndr_flags & NDR_BUFFERS) {
122         }
123         return NDR_ERR_SUCCESS;
124 }
125
126 _PUBLIC_ enum ndr_err_code ndr_pull_PERF_COUNTER_BLOCK(struct ndr_pull *ndr, int ndr_flags, struct PERF_COUNTER_BLOCK *r)
127 {
128         if (ndr_flags & NDR_SCALARS) {
129                 NDR_CHECK(ndr_pull_align(ndr, 4));
130                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ByteLength));
131                 NDR_PULL_ALLOC_N(ndr, r->data, r->ByteLength);
132                 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, r->ByteLength));
133         }
134         if (ndr_flags & NDR_BUFFERS) {
135         }
136         return NDR_ERR_SUCCESS;
137 }
138
139 _PUBLIC_ void ndr_print_PERF_COUNTER_BLOCK(struct ndr_print *ndr, const char *name, const struct PERF_COUNTER_BLOCK *r)
140 {
141         ndr_print_struct(ndr, name, "PERF_COUNTER_BLOCK");
142         ndr->depth++;
143         ndr_print_uint32(ndr, "ByteLength", r->ByteLength);
144         ndr_print_array_uint8(ndr, "data", r->data, r->ByteLength);
145         ndr->depth--;
146 }
147
148 _PUBLIC_ enum ndr_err_code ndr_push_PERF_INSTANCE_DEFINITION(struct ndr_push *ndr, int ndr_flags, const struct PERF_INSTANCE_DEFINITION *r)
149 {
150         if (ndr_flags & NDR_SCALARS) {
151                 NDR_CHECK(ndr_push_align(ndr, 5));
152                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ByteLength));
153                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ParentObjectTitleIndex));
154                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ParentObjectTitlePointer));
155                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->UniqueID));
156                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->NameOffset));
157                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->NameLength));
158                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
159                 NDR_CHECK(ndr_push_PERF_COUNTER_BLOCK(ndr, NDR_SCALARS, &r->counter_data));
160         }
161         if (ndr_flags & NDR_BUFFERS) {
162                 if (r->data) {
163                         NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->data));
164                 }
165         }
166         return NDR_ERR_SUCCESS;
167 }
168
169 _PUBLIC_ enum ndr_err_code ndr_pull_PERF_INSTANCE_DEFINITION(struct ndr_pull *ndr, int ndr_flags, struct PERF_INSTANCE_DEFINITION *r)
170 {
171         uint32_t _ptr_data;
172         TALLOC_CTX *_mem_save_data_0;
173         if (ndr_flags & NDR_SCALARS) {
174                 NDR_CHECK(ndr_pull_align(ndr, 5));
175                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ByteLength));
176                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ParentObjectTitleIndex));
177                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ParentObjectTitlePointer));
178                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->UniqueID));
179                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->NameOffset));
180                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->NameLength));
181                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
182                 if (_ptr_data) {
183                         NDR_PULL_ALLOC(ndr, r->data);
184                 } else {
185                         r->data = NULL;
186                 }
187                 NDR_CHECK(ndr_pull_PERF_COUNTER_BLOCK(ndr, NDR_SCALARS, &r->counter_data));
188         }
189         if (ndr_flags & NDR_BUFFERS) {
190                 if (r->data) {
191                         _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
192                         NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
193                         NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->data));
194                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
195                 }
196         }
197         return NDR_ERR_SUCCESS;
198 }
199
200 _PUBLIC_ void ndr_print_PERF_INSTANCE_DEFINITION(struct ndr_print *ndr, const char *name, const struct PERF_INSTANCE_DEFINITION *r)
201 {
202         ndr_print_struct(ndr, name, "PERF_INSTANCE_DEFINITION");
203         ndr->depth++;
204         ndr_print_uint32(ndr, "ByteLength", r->ByteLength);
205         ndr_print_uint32(ndr, "ParentObjectTitleIndex", r->ParentObjectTitleIndex);
206         ndr_print_uint32(ndr, "ParentObjectTitlePointer", r->ParentObjectTitlePointer);
207         ndr_print_uint32(ndr, "UniqueID", r->UniqueID);
208         ndr_print_uint32(ndr, "NameOffset", r->NameOffset);
209         ndr_print_uint32(ndr, "NameLength", r->NameLength);
210         ndr_print_ptr(ndr, "data", r->data);
211         ndr->depth++;
212         if (r->data) {
213                 ndr_print_uint8(ndr, "data", *r->data);
214         }
215         ndr->depth--;
216         ndr_print_PERF_COUNTER_BLOCK(ndr, "counter_data", &r->counter_data);
217         ndr->depth--;
218 }
219
220 _PUBLIC_ enum ndr_err_code ndr_push_PERF_OBJECT_TYPE(struct ndr_push *ndr, int ndr_flags, const struct PERF_OBJECT_TYPE *r)
221 {
222         uint32_t cntr_counters_0;
223         uint32_t cntr_instances_0;
224         if (ndr_flags & NDR_SCALARS) {
225                 NDR_CHECK(ndr_push_align(ndr, 8));
226                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->TotalByteLength));
227                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->DefinitionLength));
228                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->HeaderLength));
229                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ObjectNameTitleIndex));
230                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ObjectNameTitlePointer));
231                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ObjectHelpTitleIndex));
232                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ObjectHelpTitlePointer));
233                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->DetailLevel));
234                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->NumCounters));
235                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->DefaultCounter));
236                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->NumInstances));
237                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->CodePage));
238                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->PerfTime));
239                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->PerfFreq));
240                 for (cntr_counters_0 = 0; cntr_counters_0 < r->NumCounters; cntr_counters_0++) {
241                         NDR_CHECK(ndr_push_PERF_COUNTER_DEFINITION(ndr, NDR_SCALARS, &r->counters[cntr_counters_0]));
242                 }
243                 for (cntr_instances_0 = 0; cntr_instances_0 < r->NumInstances; cntr_instances_0++) {
244                         NDR_CHECK(ndr_push_PERF_INSTANCE_DEFINITION(ndr, NDR_SCALARS, &r->instances[cntr_instances_0]));
245                 }
246                 NDR_CHECK(ndr_push_PERF_COUNTER_BLOCK(ndr, NDR_SCALARS, &r->counter_data));
247         }
248         if (ndr_flags & NDR_BUFFERS) {
249                 for (cntr_instances_0 = 0; cntr_instances_0 < r->NumInstances; cntr_instances_0++) {
250                         NDR_CHECK(ndr_push_PERF_INSTANCE_DEFINITION(ndr, NDR_BUFFERS, &r->instances[cntr_instances_0]));
251                 }
252         }
253         return NDR_ERR_SUCCESS;
254 }
255
256 _PUBLIC_ enum ndr_err_code ndr_pull_PERF_OBJECT_TYPE(struct ndr_pull *ndr, int ndr_flags, struct PERF_OBJECT_TYPE *r)
257 {
258         uint32_t cntr_counters_0;
259         TALLOC_CTX *_mem_save_counters_0;
260         uint32_t cntr_instances_0;
261         TALLOC_CTX *_mem_save_instances_0;
262         if (ndr_flags & NDR_SCALARS) {
263                 NDR_CHECK(ndr_pull_align(ndr, 8));
264                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->TotalByteLength));
265                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DefinitionLength));
266                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->HeaderLength));
267                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ObjectNameTitleIndex));
268                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ObjectNameTitlePointer));
269                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ObjectHelpTitleIndex));
270                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ObjectHelpTitlePointer));
271                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DetailLevel));
272                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->NumCounters));
273                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DefaultCounter));
274                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->NumInstances));
275                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->CodePage));
276                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->PerfTime));
277                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->PerfFreq));
278                 NDR_PULL_ALLOC_N(ndr, r->counters, r->NumCounters);
279                 _mem_save_counters_0 = NDR_PULL_GET_MEM_CTX(ndr);
280                 NDR_PULL_SET_MEM_CTX(ndr, r->counters, 0);
281                 for (cntr_counters_0 = 0; cntr_counters_0 < r->NumCounters; cntr_counters_0++) {
282                         NDR_CHECK(ndr_pull_PERF_COUNTER_DEFINITION(ndr, NDR_SCALARS, &r->counters[cntr_counters_0]));
283                 }
284                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_counters_0, 0);
285                 NDR_PULL_ALLOC_N(ndr, r->instances, r->NumInstances);
286                 _mem_save_instances_0 = NDR_PULL_GET_MEM_CTX(ndr);
287                 NDR_PULL_SET_MEM_CTX(ndr, r->instances, 0);
288                 for (cntr_instances_0 = 0; cntr_instances_0 < r->NumInstances; cntr_instances_0++) {
289                         NDR_CHECK(ndr_pull_PERF_INSTANCE_DEFINITION(ndr, NDR_SCALARS, &r->instances[cntr_instances_0]));
290                 }
291                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_instances_0, 0);
292                 NDR_CHECK(ndr_pull_PERF_COUNTER_BLOCK(ndr, NDR_SCALARS, &r->counter_data));
293         }
294         if (ndr_flags & NDR_BUFFERS) {
295                 _mem_save_instances_0 = NDR_PULL_GET_MEM_CTX(ndr);
296                 NDR_PULL_SET_MEM_CTX(ndr, r->instances, 0);
297                 for (cntr_instances_0 = 0; cntr_instances_0 < r->NumInstances; cntr_instances_0++) {
298                         NDR_CHECK(ndr_pull_PERF_INSTANCE_DEFINITION(ndr, NDR_BUFFERS, &r->instances[cntr_instances_0]));
299                 }
300                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_instances_0, 0);
301         }
302         return NDR_ERR_SUCCESS;
303 }
304
305 _PUBLIC_ void ndr_print_PERF_OBJECT_TYPE(struct ndr_print *ndr, const char *name, const struct PERF_OBJECT_TYPE *r)
306 {
307         uint32_t cntr_counters_0;
308         uint32_t cntr_instances_0;
309         ndr_print_struct(ndr, name, "PERF_OBJECT_TYPE");
310         ndr->depth++;
311         ndr_print_uint32(ndr, "TotalByteLength", r->TotalByteLength);
312         ndr_print_uint32(ndr, "DefinitionLength", r->DefinitionLength);
313         ndr_print_uint32(ndr, "HeaderLength", r->HeaderLength);
314         ndr_print_uint32(ndr, "ObjectNameTitleIndex", r->ObjectNameTitleIndex);
315         ndr_print_uint32(ndr, "ObjectNameTitlePointer", r->ObjectNameTitlePointer);
316         ndr_print_uint32(ndr, "ObjectHelpTitleIndex", r->ObjectHelpTitleIndex);
317         ndr_print_uint32(ndr, "ObjectHelpTitlePointer", r->ObjectHelpTitlePointer);
318         ndr_print_uint32(ndr, "DetailLevel", r->DetailLevel);
319         ndr_print_uint32(ndr, "NumCounters", r->NumCounters);
320         ndr_print_uint32(ndr, "DefaultCounter", r->DefaultCounter);
321         ndr_print_uint32(ndr, "NumInstances", r->NumInstances);
322         ndr_print_uint32(ndr, "CodePage", r->CodePage);
323         ndr_print_hyper(ndr, "PerfTime", r->PerfTime);
324         ndr_print_hyper(ndr, "PerfFreq", r->PerfFreq);
325         ndr->print(ndr, "%s: ARRAY(%d)", "counters", (int)r->NumCounters);
326         ndr->depth++;
327         for (cntr_counters_0=0;cntr_counters_0<r->NumCounters;cntr_counters_0++) {
328                 char *idx_0=NULL;
329                 if (asprintf(&idx_0, "[%d]", cntr_counters_0) != -1) {
330                         ndr_print_PERF_COUNTER_DEFINITION(ndr, "counters", &r->counters[cntr_counters_0]);
331                         free(idx_0);
332                 }
333         }
334         ndr->depth--;
335         ndr->print(ndr, "%s: ARRAY(%d)", "instances", (int)r->NumInstances);
336         ndr->depth++;
337         for (cntr_instances_0=0;cntr_instances_0<r->NumInstances;cntr_instances_0++) {
338                 char *idx_0=NULL;
339                 if (asprintf(&idx_0, "[%d]", cntr_instances_0) != -1) {
340                         ndr_print_PERF_INSTANCE_DEFINITION(ndr, "instances", &r->instances[cntr_instances_0]);
341                         free(idx_0);
342                 }
343         }
344         ndr->depth--;
345         ndr_print_PERF_COUNTER_BLOCK(ndr, "counter_data", &r->counter_data);
346         ndr->depth--;
347 }
348
349 _PUBLIC_ enum ndr_err_code ndr_push_PERF_DATA_BLOCK(struct ndr_push *ndr, int ndr_flags, const struct PERF_DATA_BLOCK *r)
350 {
351         uint32_t cntr_Signature_0;
352         uint32_t cntr_objects_0;
353         if (ndr_flags & NDR_SCALARS) {
354                 NDR_CHECK(ndr_push_align(ndr, 8));
355                 for (cntr_Signature_0 = 0; cntr_Signature_0 < 4; cntr_Signature_0++) {
356                         NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->Signature[cntr_Signature_0]));
357                 }
358                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->LittleEndian));
359                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->Version));
360                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->Revision));
361                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->TotalByteLength));
362                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->HeaderLength));
363                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->NumObjectTypes));
364                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->DefaultObject));
365                 NDR_CHECK(ndr_push_SYSTEMTIME(ndr, NDR_SCALARS, &r->SystemTime));
366                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->Padding));
367                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->PerfTime));
368                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->PerfFreq));
369                 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->PerfTime100nSec));
370                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->SystemNameLength));
371                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->SystemNameOffset));
372                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
373                 for (cntr_objects_0 = 0; cntr_objects_0 < r->NumObjectTypes; cntr_objects_0++) {
374                         NDR_CHECK(ndr_push_PERF_OBJECT_TYPE(ndr, NDR_SCALARS, &r->objects[cntr_objects_0]));
375                 }
376         }
377         if (ndr_flags & NDR_BUFFERS) {
378                 if (r->data) {
379                         NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->data));
380                 }
381                 for (cntr_objects_0 = 0; cntr_objects_0 < r->NumObjectTypes; cntr_objects_0++) {
382                         NDR_CHECK(ndr_push_PERF_OBJECT_TYPE(ndr, NDR_BUFFERS, &r->objects[cntr_objects_0]));
383                 }
384         }
385         return NDR_ERR_SUCCESS;
386 }
387
388 _PUBLIC_ enum ndr_err_code ndr_pull_PERF_DATA_BLOCK(struct ndr_pull *ndr, int ndr_flags, struct PERF_DATA_BLOCK *r)
389 {
390         uint32_t cntr_Signature_0;
391         uint32_t _ptr_data;
392         TALLOC_CTX *_mem_save_data_0;
393         uint32_t cntr_objects_0;
394         TALLOC_CTX *_mem_save_objects_0;
395         if (ndr_flags & NDR_SCALARS) {
396                 NDR_CHECK(ndr_pull_align(ndr, 8));
397                 for (cntr_Signature_0 = 0; cntr_Signature_0 < 4; cntr_Signature_0++) {
398                         NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->Signature[cntr_Signature_0]));
399                 }
400                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->LittleEndian));
401                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->Version));
402                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->Revision));
403                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->TotalByteLength));
404                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->HeaderLength));
405                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->NumObjectTypes));
406                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DefaultObject));
407                 NDR_CHECK(ndr_pull_SYSTEMTIME(ndr, NDR_SCALARS, &r->SystemTime));
408                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->Padding));
409                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->PerfTime));
410                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->PerfFreq));
411                 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->PerfTime100nSec));
412                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->SystemNameLength));
413                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->SystemNameOffset));
414                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
415                 if (_ptr_data) {
416                         NDR_PULL_ALLOC(ndr, r->data);
417                 } else {
418                         r->data = NULL;
419                 }
420                 NDR_PULL_ALLOC_N(ndr, r->objects, r->NumObjectTypes);
421                 _mem_save_objects_0 = NDR_PULL_GET_MEM_CTX(ndr);
422                 NDR_PULL_SET_MEM_CTX(ndr, r->objects, 0);
423                 for (cntr_objects_0 = 0; cntr_objects_0 < r->NumObjectTypes; cntr_objects_0++) {
424                         NDR_CHECK(ndr_pull_PERF_OBJECT_TYPE(ndr, NDR_SCALARS, &r->objects[cntr_objects_0]));
425                 }
426                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_objects_0, 0);
427         }
428         if (ndr_flags & NDR_BUFFERS) {
429                 if (r->data) {
430                         _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
431                         NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
432                         NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->data));
433                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
434                 }
435                 _mem_save_objects_0 = NDR_PULL_GET_MEM_CTX(ndr);
436                 NDR_PULL_SET_MEM_CTX(ndr, r->objects, 0);
437                 for (cntr_objects_0 = 0; cntr_objects_0 < r->NumObjectTypes; cntr_objects_0++) {
438                         NDR_CHECK(ndr_pull_PERF_OBJECT_TYPE(ndr, NDR_BUFFERS, &r->objects[cntr_objects_0]));
439                 }
440                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_objects_0, 0);
441         }
442         return NDR_ERR_SUCCESS;
443 }
444
445 _PUBLIC_ void ndr_print_PERF_DATA_BLOCK(struct ndr_print *ndr, const char *name, const struct PERF_DATA_BLOCK *r)
446 {
447         uint32_t cntr_Signature_0;
448         uint32_t cntr_objects_0;
449         ndr_print_struct(ndr, name, "PERF_DATA_BLOCK");
450         ndr->depth++;
451         ndr->print(ndr, "%s: ARRAY(%d)", "Signature", (int)4);
452         ndr->depth++;
453         for (cntr_Signature_0=0;cntr_Signature_0<4;cntr_Signature_0++) {
454                 char *idx_0=NULL;
455                 if (asprintf(&idx_0, "[%d]", cntr_Signature_0) != -1) {
456                         ndr_print_uint16(ndr, "Signature", r->Signature[cntr_Signature_0]);
457                         free(idx_0);
458                 }
459         }
460         ndr->depth--;
461         ndr_print_uint32(ndr, "LittleEndian", r->LittleEndian);
462         ndr_print_uint32(ndr, "Version", r->Version);
463         ndr_print_uint32(ndr, "Revision", r->Revision);
464         ndr_print_uint32(ndr, "TotalByteLength", r->TotalByteLength);
465         ndr_print_uint32(ndr, "HeaderLength", r->HeaderLength);
466         ndr_print_uint32(ndr, "NumObjectTypes", r->NumObjectTypes);
467         ndr_print_uint32(ndr, "DefaultObject", r->DefaultObject);
468         ndr_print_SYSTEMTIME(ndr, "SystemTime", &r->SystemTime);
469         ndr_print_uint32(ndr, "Padding", r->Padding);
470         ndr_print_hyper(ndr, "PerfTime", r->PerfTime);
471         ndr_print_hyper(ndr, "PerfFreq", r->PerfFreq);
472         ndr_print_hyper(ndr, "PerfTime100nSec", r->PerfTime100nSec);
473         ndr_print_uint32(ndr, "SystemNameLength", r->SystemNameLength);
474         ndr_print_uint32(ndr, "SystemNameOffset", r->SystemNameOffset);
475         ndr_print_ptr(ndr, "data", r->data);
476         ndr->depth++;
477         if (r->data) {
478                 ndr_print_uint8(ndr, "data", *r->data);
479         }
480         ndr->depth--;
481         ndr->print(ndr, "%s: ARRAY(%d)", "objects", (int)r->NumObjectTypes);
482         ndr->depth++;
483         for (cntr_objects_0=0;cntr_objects_0<r->NumObjectTypes;cntr_objects_0++) {
484                 char *idx_0=NULL;
485                 if (asprintf(&idx_0, "[%d]", cntr_objects_0) != -1) {
486                         ndr_print_PERF_OBJECT_TYPE(ndr, "objects", &r->objects[cntr_objects_0]);
487                         free(idx_0);
488                 }
489         }
490         ndr->depth--;
491         ndr->depth--;
492 }
493