0a8833acb50b0fa8b96378e67cc6d908192b5c2d
[kai/samba.git] / source3 / librpc / gen_ndr / winreg.h
1 /* header auto-generated by pidl */
2
3 #include "librpc/gen_ndr/lsa.h"
4 #include "librpc/gen_ndr/initshutdown.h"
5 #include "librpc/gen_ndr/security.h"
6 #ifndef _HEADER_winreg
7 #define _HEADER_winreg
8
9 /* bitmap winreg_AccessMask */
10
11 enum winreg_Type {
12         REG_NONE=0,
13         REG_SZ=1,
14         REG_EXPAND_SZ=2,
15         REG_BINARY=3,
16         REG_DWORD=4,
17         REG_DWORD_BIG_ENDIAN=5,
18         REG_LINK=6,
19         REG_MULTI_SZ=7,
20         REG_RESOURCE_LIST=8,
21         REG_FULL_RESOURCE_DESCRIPTOR=9,
22         REG_RESOURCE_REQUIREMENTS_LIST=10,
23         REG_QWORD=11
24 };
25
26 struct winreg_String {
27         uint16_t name_len;/* [value(strlen_m_term(name)*2)] */
28         uint16_t name_size;/* [value(strlen_m_term(name)*2)] */
29         const char *name;/* [unique,charset(UTF16)] */
30 }/* [public,noejs] */;
31
32 struct KeySecurityData {
33         uint8_t *data;/* [unique,length_is(len),size_is(size)] */
34         uint32_t size;
35         uint32_t len;
36 };
37
38 struct winreg_SecBuf {
39         uint32_t length;
40         struct KeySecurityData sd;
41         uint8_t inherit;
42 };
43
44 enum winreg_CreateAction {
45         REG_ACTION_NONE=0,
46         REG_CREATED_NEW_KEY=1,
47         REG_OPENED_EXISTING_KEY=2
48 };
49
50 struct winreg_StringBuf {
51         uint16_t length;/* [value(strlen_m_term_null(name)*2)] */
52         uint16_t size;
53         const char *name;/* [unique,length_is(length/2),charset(UTF16),size_is(size/2)] */
54 };
55
56 struct winreg_ValNameBuf {
57         uint16_t length;/* [value(strlen_m_term(name)*2)] */
58         uint16_t size;
59         const char *name;/* [unique,length_is(length/2),charset(UTF16),size_is(size/2)] */
60 };
61
62 struct KeySecurityAttribute {
63         uint32_t data_size;
64         struct KeySecurityData sec_data;
65         uint8_t inherit;
66 };
67
68 struct QueryMultipleValue {
69         struct winreg_String *name;/* [unique] */
70         enum winreg_Type type;
71         uint32_t offset;
72         uint32_t length;
73 };
74
75
76 struct winreg_OpenHKCR {
77         struct {
78                 uint16_t *system_name;/* [unique] */
79                 uint32_t access_mask;
80         } in;
81
82         struct {
83                 struct policy_handle *handle;/* [ref] */
84                 WERROR result;
85         } out;
86
87 };
88
89
90 struct winreg_OpenHKCU {
91         struct {
92                 uint16_t *system_name;/* [unique] */
93                 uint32_t access_mask;
94         } in;
95
96         struct {
97                 struct policy_handle *handle;/* [ref] */
98                 WERROR result;
99         } out;
100
101 };
102
103
104 struct winreg_OpenHKLM {
105         struct {
106                 uint16_t *system_name;/* [unique] */
107                 uint32_t access_mask;
108         } in;
109
110         struct {
111                 struct policy_handle *handle;/* [ref] */
112                 WERROR result;
113         } out;
114
115 };
116
117
118 struct winreg_OpenHKPD {
119         struct {
120                 uint16_t *system_name;/* [unique] */
121                 uint32_t access_mask;
122         } in;
123
124         struct {
125                 struct policy_handle *handle;/* [ref] */
126                 WERROR result;
127         } out;
128
129 };
130
131
132 struct winreg_OpenHKU {
133         struct {
134                 uint16_t *system_name;/* [unique] */
135                 uint32_t access_mask;
136         } in;
137
138         struct {
139                 struct policy_handle *handle;/* [ref] */
140                 WERROR result;
141         } out;
142
143 };
144
145
146 struct winreg_CloseKey {
147         struct {
148                 struct policy_handle *handle;/* [ref] */
149         } in;
150
151         struct {
152                 struct policy_handle *handle;/* [ref] */
153                 WERROR result;
154         } out;
155
156 };
157
158
159 struct winreg_CreateKey {
160         struct {
161                 struct policy_handle *handle;/* [ref] */
162                 struct winreg_String name;
163                 struct winreg_String keyclass;
164                 uint32_t options;
165                 uint32_t access_mask;
166                 struct winreg_SecBuf *secdesc;/* [unique] */
167                 enum winreg_CreateAction **action_taken;/* [ref] */
168         } in;
169
170         struct {
171                 struct policy_handle *new_handle;/* [ref] */
172                 enum winreg_CreateAction **action_taken;/* [ref] */
173                 WERROR result;
174         } out;
175
176 };
177
178
179 struct winreg_DeleteKey {
180         struct {
181                 struct policy_handle *handle;/* [ref] */
182                 struct winreg_String key;
183         } in;
184
185         struct {
186                 WERROR result;
187         } out;
188
189 };
190
191
192 struct winreg_DeleteValue {
193         struct {
194                 struct policy_handle *handle;/* [ref] */
195                 struct winreg_String value;
196         } in;
197
198         struct {
199                 WERROR result;
200         } out;
201
202 };
203
204
205 struct winreg_EnumKey {
206         struct {
207                 struct policy_handle *handle;/* [ref] */
208                 uint32_t enum_index;
209                 struct winreg_StringBuf *name;/* [ref] */
210                 struct winreg_StringBuf **keyclass;/* [ref] */
211                 NTTIME **last_changed_time;/* [ref] */
212         } in;
213
214         struct {
215                 struct winreg_StringBuf *name;/* [ref] */
216                 struct winreg_StringBuf **keyclass;/* [ref] */
217                 NTTIME **last_changed_time;/* [ref] */
218                 WERROR result;
219         } out;
220
221 };
222
223
224 struct winreg_EnumValue {
225         struct {
226                 struct policy_handle *handle;/* [ref] */
227                 uint32_t enum_index;
228                 struct winreg_ValNameBuf *name;/* [ref] */
229                 enum winreg_Type *type;/* [unique] */
230                 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
231                 uint32_t *data_size;/* [unique] */
232                 uint32_t *value_length;/* [unique] */
233         } in;
234
235         struct {
236                 struct winreg_ValNameBuf *name;/* [ref] */
237                 enum winreg_Type *type;/* [unique] */
238                 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
239                 uint32_t *data_size;/* [unique] */
240                 uint32_t *value_length;/* [unique] */
241                 WERROR result;
242         } out;
243
244 };
245
246
247 struct winreg_FlushKey {
248         struct {
249                 struct policy_handle *handle;/* [ref] */
250         } in;
251
252         struct {
253                 WERROR result;
254         } out;
255
256 };
257
258
259 struct winreg_GetKeySecurity {
260         struct {
261                 struct policy_handle *handle;/* [ref] */
262                 uint32_t sec_info;
263                 struct KeySecurityData *sd;/* [ref] */
264         } in;
265
266         struct {
267                 struct KeySecurityData *sd;/* [ref] */
268                 WERROR result;
269         } out;
270
271 };
272
273
274 struct winreg_LoadKey {
275         struct {
276                 struct policy_handle *handle;/* [ref] */
277                 struct winreg_String *keyname;/* [unique] */
278                 struct winreg_String *filename;/* [unique] */
279         } in;
280
281         struct {
282                 WERROR result;
283         } out;
284
285 };
286
287
288 struct winreg_NotifyChangeKeyValue {
289         struct {
290                 struct policy_handle *handle;/* [ref] */
291                 uint8_t watch_subtree;
292                 uint32_t notify_filter;
293                 uint32_t unknown;
294                 struct winreg_String string1;
295                 struct winreg_String string2;
296                 uint32_t unknown2;
297         } in;
298
299         struct {
300                 WERROR result;
301         } out;
302
303 };
304
305
306 struct winreg_OpenKey {
307         struct {
308                 struct policy_handle *parent_handle;/* [ref] */
309                 struct winreg_String keyname;
310                 uint32_t unknown;
311                 uint32_t access_mask;
312         } in;
313
314         struct {
315                 struct policy_handle *handle;/* [ref] */
316                 WERROR result;
317         } out;
318
319 };
320
321
322 struct winreg_QueryInfoKey {
323         struct {
324                 struct policy_handle *handle;/* [ref] */
325                 struct winreg_String *classname;/* [ref] */
326         } in;
327
328         struct {
329                 struct winreg_String *classname;/* [ref] */
330                 uint32_t *num_subkeys;/* [ref] */
331                 uint32_t *max_subkeylen;/* [ref] */
332                 uint32_t *max_classlen;/* [ref] */
333                 uint32_t *num_values;/* [ref] */
334                 uint32_t *max_valnamelen;/* [ref] */
335                 uint32_t *max_valbufsize;/* [ref] */
336                 uint32_t *secdescsize;/* [ref] */
337                 NTTIME *last_changed_time;/* [ref] */
338                 WERROR result;
339         } out;
340
341 };
342
343
344 struct winreg_QueryValue {
345         struct {
346                 struct policy_handle *handle;/* [ref] */
347                 struct winreg_String value_name;
348                 enum winreg_Type *type;/* [unique] */
349                 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
350                 uint32_t *data_size;/* [unique] */
351                 uint32_t *value_length;/* [unique] */
352         } in;
353
354         struct {
355                 enum winreg_Type *type;/* [unique] */
356                 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
357                 uint32_t *data_size;/* [unique] */
358                 uint32_t *value_length;/* [unique] */
359                 WERROR result;
360         } out;
361
362 };
363
364
365 struct winreg_ReplaceKey {
366         struct {
367                 WERROR result;
368         } out;
369
370 };
371
372
373 struct winreg_RestoreKey {
374         struct {
375                 struct policy_handle *handle;/* [ref] */
376                 struct winreg_String *filename;/* [ref] */
377                 uint32_t flags;
378         } in;
379
380         struct {
381                 WERROR result;
382         } out;
383
384 };
385
386
387 struct winreg_SaveKey {
388         struct {
389                 struct policy_handle *handle;/* [ref] */
390                 struct winreg_String *filename;/* [ref] */
391                 struct KeySecurityAttribute *sec_attrib;/* [unique] */
392         } in;
393
394         struct {
395                 WERROR result;
396         } out;
397
398 };
399
400
401 struct winreg_SetKeySecurity {
402         struct {
403                 struct policy_handle *handle;/* [ref] */
404                 uint32_t access_mask;
405                 struct KeySecurityData *sd;/* [ref] */
406         } in;
407
408         struct {
409                 struct KeySecurityData *sd;/* [ref] */
410                 WERROR result;
411         } out;
412
413 };
414
415
416 struct winreg_SetValue {
417         struct {
418                 struct policy_handle *handle;/* [ref] */
419                 struct winreg_String name;
420                 enum winreg_Type type;
421                 uint8_t *data;/* [ref,size_is(size)] */
422                 uint32_t size;
423         } in;
424
425         struct {
426                 WERROR result;
427         } out;
428
429 };
430
431
432 struct winreg_UnLoadKey {
433         struct {
434                 WERROR result;
435         } out;
436
437 };
438
439
440 struct winreg_InitiateSystemShutdown {
441         struct {
442                 uint16_t *hostname;/* [unique] */
443                 struct initshutdown_String *message;/* [unique] */
444                 uint32_t timeout;
445                 uint8_t force_apps;
446                 uint8_t reboot;
447         } in;
448
449         struct {
450                 WERROR result;
451         } out;
452
453 };
454
455
456 struct winreg_AbortSystemShutdown {
457         struct {
458                 uint16_t *server;/* [unique] */
459         } in;
460
461         struct {
462                 WERROR result;
463         } out;
464
465 };
466
467
468 struct winreg_GetVersion {
469         struct {
470                 struct policy_handle *handle;/* [ref] */
471         } in;
472
473         struct {
474                 uint32_t *version;/* [ref] */
475                 WERROR result;
476         } out;
477
478 };
479
480
481 struct winreg_OpenHKCC {
482         struct {
483                 uint16_t *system_name;/* [unique] */
484                 uint32_t access_mask;
485         } in;
486
487         struct {
488                 struct policy_handle *handle;/* [ref] */
489                 WERROR result;
490         } out;
491
492 };
493
494
495 struct winreg_OpenHKDD {
496         struct {
497                 uint16_t *system_name;/* [unique] */
498                 uint32_t access_mask;
499         } in;
500
501         struct {
502                 struct policy_handle *handle;/* [ref] */
503                 WERROR result;
504         } out;
505
506 };
507
508
509 struct winreg_QueryMultipleValues {
510         struct {
511                 struct policy_handle *key_handle;/* [ref] */
512                 struct QueryMultipleValue *values;/* [ref,length_is(num_values),size_is(num_values)] */
513                 uint32_t num_values;
514                 uint8_t *buffer;/* [unique,length_is(*buffer_size),size_is(*buffer_size)] */
515                 uint32_t *buffer_size;/* [ref] */
516         } in;
517
518         struct {
519                 struct QueryMultipleValue *values;/* [ref,length_is(num_values),size_is(num_values)] */
520                 uint8_t *buffer;/* [unique,length_is(*buffer_size),size_is(*buffer_size)] */
521                 uint32_t *buffer_size;/* [ref] */
522                 WERROR result;
523         } out;
524
525 };
526
527
528 struct winreg_InitiateSystemShutdownEx {
529         struct {
530                 uint16_t *hostname;/* [unique] */
531                 struct initshutdown_String *message;/* [unique] */
532                 uint32_t timeout;
533                 uint8_t force_apps;
534                 uint8_t reboot;
535                 uint32_t reason;
536         } in;
537
538         struct {
539                 WERROR result;
540         } out;
541
542 };
543
544
545 struct winreg_SaveKeyEx {
546         struct {
547                 WERROR result;
548         } out;
549
550 };
551
552
553 struct winreg_OpenHKPT {
554         struct {
555                 uint16_t *system_name;/* [unique] */
556                 uint32_t access_mask;
557         } in;
558
559         struct {
560                 struct policy_handle *handle;/* [ref] */
561                 WERROR result;
562         } out;
563
564 };
565
566
567 struct winreg_OpenHKPN {
568         struct {
569                 uint16_t *system_name;/* [unique] */
570                 uint32_t access_mask;
571         } in;
572
573         struct {
574                 struct policy_handle *handle;/* [ref] */
575                 WERROR result;
576         } out;
577
578 };
579
580
581 struct winreg_QueryMultipleValues2 {
582         struct {
583                 WERROR result;
584         } out;
585
586 };
587
588 #endif /* _HEADER_winreg */