r25068: Older samba3 DCs will return DCERPC_FAULT_OP_RNG_ERROR for every opcode on the
[Samba.git] / source / librpc / gen_ndr / winreg.h
blob37a472814af6680cceea0a5fb0f80ca5806be3ad
1 /* header auto-generated by pidl */
3 #include <stdint.h>
5 #include "librpc/gen_ndr/lsa.h"
6 #include "librpc/gen_ndr/initshutdown.h"
7 #include "librpc/gen_ndr/security.h"
8 #ifndef _HEADER_winreg
9 #define _HEADER_winreg
11 /* bitmap winreg_AccessMask */
12 #define KEY_QUERY_VALUE ( 0x00001 )
13 #define KEY_SET_VALUE ( 0x00002 )
14 #define KEY_CREATE_SUB_KEY ( 0x00004 )
15 #define KEY_ENUMERATE_SUB_KEYS ( 0x00008 )
16 #define KEY_NOTIFY ( 0x00010 )
17 #define KEY_CREATE_LINK ( 0x00020 )
18 #define KEY_WOW64_64KEY ( 0x00100 )
19 #define KEY_WOW64_32KEY ( 0x00200 )
23 #ifndef USE_UINT_ENUMS
24 enum winreg_Type {
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
38 #else
39 enum winreg_Type { __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
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,noejs] */;
61 struct KeySecurityData {
62 uint8_t *data;/* [unique,length_is(len),size_is(size)] */
63 uint32_t size;
64 uint32_t len;
67 struct winreg_SecBuf {
68 uint32_t length;
69 struct KeySecurityData sd;
70 uint8_t inherit;
73 #ifndef USE_UINT_ENUMS
74 enum winreg_CreateAction {
75 REG_ACTION_NONE=0,
76 REG_CREATED_NEW_KEY=1,
77 REG_OPENED_EXISTING_KEY=2
79 #else
80 enum winreg_CreateAction { __donnot_use_enum_winreg_CreateAction=0x7FFFFFFF}
81 #define REG_ACTION_NONE ( 0 )
82 #define REG_CREATED_NEW_KEY ( 1 )
83 #define REG_OPENED_EXISTING_KEY ( 2 )
84 #endif
87 struct winreg_StringBuf {
88 uint16_t length;/* [value(strlen_m_term_null(name)*2)] */
89 uint16_t size;
90 const char *name;/* [unique,length_is(length/2),charset(UTF16),size_is(size/2)] */
93 struct winreg_ValNameBuf {
94 uint16_t length;/* [value(strlen_m_term(name)*2)] */
95 uint16_t size;
96 const char *name;/* [unique,length_is(length/2),charset(UTF16),size_is(size/2)] */
99 struct KeySecurityAttribute {
100 uint32_t data_size;
101 struct KeySecurityData sec_data;
102 uint8_t inherit;
105 struct QueryMultipleValue {
106 struct winreg_String *name;/* [unique] */
107 enum winreg_Type type;
108 uint32_t offset;
109 uint32_t length;
113 struct winreg_OpenHKCR {
114 struct {
115 uint16_t *system_name;/* [unique] */
116 uint32_t access_mask;
117 } in;
119 struct {
120 struct policy_handle *handle;/* [ref] */
121 WERROR result;
122 } out;
127 struct winreg_OpenHKCU {
128 struct {
129 uint16_t *system_name;/* [unique] */
130 uint32_t access_mask;
131 } in;
133 struct {
134 struct policy_handle *handle;/* [ref] */
135 WERROR result;
136 } out;
141 struct winreg_OpenHKLM {
142 struct {
143 uint16_t *system_name;/* [unique] */
144 uint32_t access_mask;
145 } in;
147 struct {
148 struct policy_handle *handle;/* [ref] */
149 WERROR result;
150 } out;
155 struct winreg_OpenHKPD {
156 struct {
157 uint16_t *system_name;/* [unique] */
158 uint32_t access_mask;
159 } in;
161 struct {
162 struct policy_handle *handle;/* [ref] */
163 WERROR result;
164 } out;
169 struct winreg_OpenHKU {
170 struct {
171 uint16_t *system_name;/* [unique] */
172 uint32_t access_mask;
173 } in;
175 struct {
176 struct policy_handle *handle;/* [ref] */
177 WERROR result;
178 } out;
183 struct winreg_CloseKey {
184 struct {
185 struct policy_handle *handle;/* [ref] */
186 } in;
188 struct {
189 struct policy_handle *handle;/* [ref] */
190 WERROR result;
191 } out;
196 struct winreg_CreateKey {
197 struct {
198 struct policy_handle *handle;/* [ref] */
199 struct winreg_String name;
200 struct winreg_String keyclass;
201 uint32_t options;
202 uint32_t access_mask;
203 struct winreg_SecBuf *secdesc;/* [unique] */
204 enum winreg_CreateAction *action_taken;/* [unique] */
205 } in;
207 struct {
208 struct policy_handle *new_handle;/* [ref] */
209 enum winreg_CreateAction *action_taken;/* [unique] */
210 WERROR result;
211 } out;
216 struct winreg_DeleteKey {
217 struct {
218 struct policy_handle *handle;/* [ref] */
219 struct winreg_String key;
220 } in;
222 struct {
223 WERROR result;
224 } out;
229 struct winreg_DeleteValue {
230 struct {
231 struct policy_handle *handle;/* [ref] */
232 struct winreg_String value;
233 } in;
235 struct {
236 WERROR result;
237 } out;
242 struct winreg_EnumKey {
243 struct {
244 struct policy_handle *handle;/* [ref] */
245 uint32_t enum_index;
246 struct winreg_StringBuf *name;/* [ref] */
247 struct winreg_StringBuf *keyclass;/* [unique] */
248 NTTIME *last_changed_time;/* [unique] */
249 } in;
251 struct {
252 struct winreg_StringBuf *name;/* [ref] */
253 struct winreg_StringBuf *keyclass;/* [unique] */
254 NTTIME *last_changed_time;/* [unique] */
255 WERROR result;
256 } out;
261 struct winreg_EnumValue {
262 struct {
263 struct policy_handle *handle;/* [ref] */
264 uint32_t enum_index;
265 struct winreg_ValNameBuf *name;/* [ref] */
266 enum winreg_Type *type;/* [unique] */
267 uint8_t *value;/* [unique,length_is(*length),size_is(*size)] */
268 uint32_t *size;/* [unique] */
269 uint32_t *length;/* [unique] */
270 } in;
272 struct {
273 struct winreg_ValNameBuf *name;/* [ref] */
274 enum winreg_Type *type;/* [unique] */
275 uint8_t *value;/* [unique,length_is(*length),size_is(*size)] */
276 uint32_t *size;/* [unique] */
277 uint32_t *length;/* [unique] */
278 WERROR result;
279 } out;
284 struct winreg_FlushKey {
285 struct {
286 struct policy_handle *handle;/* [ref] */
287 } in;
289 struct {
290 WERROR result;
291 } out;
296 struct winreg_GetKeySecurity {
297 struct {
298 struct policy_handle *handle;/* [ref] */
299 uint32_t sec_info;
300 struct KeySecurityData *sd;/* [ref] */
301 } in;
303 struct {
304 struct KeySecurityData *sd;/* [ref] */
305 WERROR result;
306 } out;
311 struct winreg_LoadKey {
312 struct {
313 struct policy_handle *handle;/* [ref] */
314 struct winreg_String *keyname;/* [unique] */
315 struct winreg_String *filename;/* [unique] */
316 } in;
318 struct {
319 WERROR result;
320 } out;
325 struct winreg_NotifyChangeKeyValue {
326 struct {
327 struct policy_handle *handle;/* [ref] */
328 uint8_t watch_subtree;
329 uint32_t notify_filter;
330 uint32_t unknown;
331 struct winreg_String string1;
332 struct winreg_String string2;
333 uint32_t unknown2;
334 } in;
336 struct {
337 WERROR result;
338 } out;
343 struct winreg_OpenKey {
344 struct {
345 struct policy_handle *parent_handle;/* [ref] */
346 struct winreg_String keyname;
347 uint32_t unknown;
348 uint32_t access_mask;
349 } in;
351 struct {
352 struct policy_handle *handle;/* [ref] */
353 WERROR result;
354 } out;
359 struct winreg_QueryInfoKey {
360 struct {
361 struct policy_handle *handle;/* [ref] */
362 struct winreg_String *classname;/* [ref] */
363 } in;
365 struct {
366 uint32_t *num_subkeys;/* [ref] */
367 uint32_t *max_subkeylen;/* [ref] */
368 uint32_t *max_classlen;/* [ref] */
369 uint32_t *num_values;/* [ref] */
370 uint32_t *max_valnamelen;/* [ref] */
371 uint32_t *max_valbufsize;/* [ref] */
372 uint32_t *secdescsize;/* [ref] */
373 NTTIME *last_changed_time;/* [ref] */
374 struct winreg_String *classname;/* [ref] */
375 WERROR result;
376 } out;
381 struct winreg_QueryValue {
382 struct {
383 struct policy_handle *handle;/* [ref] */
384 struct winreg_String value_name;
385 enum winreg_Type *type;/* [unique] */
386 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
387 uint32_t *data_size;/* [unique] */
388 uint32_t *value_length;/* [unique] */
389 } in;
391 struct {
392 enum winreg_Type *type;/* [unique] */
393 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
394 uint32_t *data_size;/* [unique] */
395 uint32_t *value_length;/* [unique] */
396 WERROR result;
397 } out;
402 struct winreg_ReplaceKey {
403 struct {
404 WERROR result;
405 } out;
410 struct winreg_RestoreKey {
411 struct {
412 struct policy_handle *handle;/* [ref] */
413 struct winreg_String *filename;/* [ref] */
414 uint32_t flags;
415 } in;
417 struct {
418 WERROR result;
419 } out;
424 struct winreg_SaveKey {
425 struct {
426 struct policy_handle *handle;/* [ref] */
427 struct winreg_String *filename;/* [ref] */
428 struct KeySecurityAttribute *sec_attrib;/* [unique] */
429 } in;
431 struct {
432 WERROR result;
433 } out;
438 struct winreg_SetKeySecurity {
439 struct {
440 struct policy_handle *handle;/* [ref] */
441 uint32_t access_mask;
442 struct KeySecurityData *sd;/* [ref] */
443 } in;
445 struct {
446 WERROR result;
447 } out;
452 struct winreg_SetValue {
453 struct {
454 struct policy_handle *handle;/* [ref] */
455 struct winreg_String name;
456 enum winreg_Type type;
457 uint8_t *data;/* [ref,size_is(size)] */
458 uint32_t size;
459 } in;
461 struct {
462 WERROR result;
463 } out;
468 struct winreg_UnLoadKey {
469 struct {
470 WERROR result;
471 } out;
476 struct winreg_InitiateSystemShutdown {
477 struct {
478 uint16_t *hostname;/* [unique] */
479 struct initshutdown_String *message;/* [unique] */
480 uint32_t timeout;
481 uint8_t force_apps;
482 uint8_t reboot;
483 } in;
485 struct {
486 WERROR result;
487 } out;
492 struct winreg_AbortSystemShutdown {
493 struct {
494 uint16_t *server;/* [unique] */
495 } in;
497 struct {
498 WERROR result;
499 } out;
504 struct winreg_GetVersion {
505 struct {
506 struct policy_handle *handle;/* [ref] */
507 } in;
509 struct {
510 uint32_t *version;/* [ref] */
511 WERROR result;
512 } out;
517 struct winreg_OpenHKCC {
518 struct {
519 uint16_t *system_name;/* [unique] */
520 uint32_t access_mask;
521 } in;
523 struct {
524 struct policy_handle *handle;/* [ref] */
525 WERROR result;
526 } out;
531 struct winreg_OpenHKDD {
532 struct {
533 uint16_t *system_name;/* [unique] */
534 uint32_t access_mask;
535 } in;
537 struct {
538 struct policy_handle *handle;/* [ref] */
539 WERROR result;
540 } out;
545 struct winreg_QueryMultipleValues {
546 struct {
547 struct policy_handle *key_handle;/* [ref] */
548 uint32_t num_values;
549 struct QueryMultipleValue *values;/* [ref,length_is(num_values),size_is(num_values)] */
550 uint8_t *buffer;/* [unique,length_is(*buffer_size),size_is(*buffer_size)] */
551 uint32_t *buffer_size;/* [ref] */
552 } in;
554 struct {
555 struct QueryMultipleValue *values;/* [ref,length_is(num_values),size_is(num_values)] */
556 uint8_t *buffer;/* [unique,length_is(*buffer_size),size_is(*buffer_size)] */
557 uint32_t *buffer_size;/* [ref] */
558 WERROR result;
559 } out;
564 struct winreg_InitiateSystemShutdownEx {
565 struct {
566 uint16_t *hostname;/* [unique] */
567 struct initshutdown_String *message;/* [unique] */
568 uint32_t timeout;
569 uint8_t force_apps;
570 uint8_t reboot;
571 uint32_t reason;
572 } in;
574 struct {
575 WERROR result;
576 } out;
581 struct winreg_SaveKeyEx {
582 struct {
583 WERROR result;
584 } out;
589 struct winreg_OpenHKPT {
590 struct {
591 uint16_t *system_name;/* [unique] */
592 uint32_t access_mask;
593 } in;
595 struct {
596 struct policy_handle *handle;/* [ref] */
597 WERROR result;
598 } out;
603 struct winreg_OpenHKPN {
604 struct {
605 uint16_t *system_name;/* [unique] */
606 uint32_t access_mask;
607 } in;
609 struct {
610 struct policy_handle *handle;/* [ref] */
611 WERROR result;
612 } out;
617 struct winreg_QueryMultipleValues2 {
618 struct {
619 WERROR result;
620 } out;
624 #endif /* _HEADER_winreg */