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