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