1 /* header auto-generated by pidl */
3 #include "librpc/gen_ndr/lsa.h"
4 #include "librpc/gen_ndr/initshutdown.h"
5 #include "librpc/gen_ndr/security.h"
9 /* bitmap winreg_AccessMask */
17 REG_DWORD_BIG_ENDIAN=5,
21 REG_FULL_RESOURCE_DESCRIPTOR=9,
22 REG_RESOURCE_REQUIREMENTS_LIST=10,
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] */;
32 struct KeySecurityData {
33 uint8_t *data;/* [unique,length_is(len),size_is(size)] */
38 struct winreg_SecBuf {
40 struct KeySecurityData sd;
44 enum winreg_CreateAction {
46 REG_CREATED_NEW_KEY=1,
47 REG_OPENED_EXISTING_KEY=2
50 struct winreg_StringBuf {
51 uint16_t length;/* [value(strlen_m_term(name)*2)] */
53 const char *name;/* [unique,length_is(length/2),charset(UTF16),size_is(size/2)] */
56 struct KeySecurityAttribute {
58 struct KeySecurityData sec_data;
62 struct QueryMultipleValue {
63 struct winreg_String *name;/* [unique] */
64 enum winreg_Type type;
70 struct winreg_OpenHKCR {
72 uint16_t *system_name;/* [unique] */
77 struct policy_handle *handle;/* [ref] */
84 struct winreg_OpenHKCU {
86 uint16_t *system_name;/* [unique] */
91 struct policy_handle *handle;/* [ref] */
98 struct winreg_OpenHKLM {
100 uint16_t *system_name;/* [unique] */
101 uint32_t access_mask;
105 struct policy_handle *handle;/* [ref] */
112 struct winreg_OpenHKPD {
114 uint16_t *system_name;/* [unique] */
115 uint32_t access_mask;
119 struct policy_handle *handle;/* [ref] */
126 struct winreg_OpenHKU {
128 uint16_t *system_name;/* [unique] */
129 uint32_t access_mask;
133 struct policy_handle *handle;/* [ref] */
140 struct winreg_CloseKey {
142 struct policy_handle *handle;/* [ref] */
146 struct policy_handle *handle;/* [ref] */
153 struct winreg_CreateKey {
155 struct policy_handle *handle;/* [ref] */
156 struct winreg_String name;
157 struct winreg_String keyclass;
159 uint32_t access_mask;
160 struct winreg_SecBuf *secdesc;/* [unique] */
161 enum winreg_CreateAction *action_taken;/* [unique] */
165 struct policy_handle *new_handle;/* [ref] */
166 enum winreg_CreateAction *action_taken;/* [unique] */
173 struct winreg_DeleteKey {
175 struct policy_handle *handle;/* [ref] */
176 struct winreg_String key;
186 struct winreg_DeleteValue {
188 struct policy_handle *handle;/* [ref] */
189 struct winreg_String value;
199 struct winreg_EnumKey {
201 struct policy_handle *handle;/* [ref] */
203 struct winreg_StringBuf *name;/* [ref] */
204 struct winreg_StringBuf *keyclass;/* [unique] */
205 NTTIME *last_changed_time;/* [unique] */
209 struct winreg_StringBuf *name;/* [ref] */
210 struct winreg_StringBuf *keyclass;/* [unique] */
211 NTTIME *last_changed_time;/* [unique] */
218 struct winreg_EnumValue {
220 struct policy_handle *handle;/* [ref] */
222 struct winreg_StringBuf *name;/* [ref] */
223 enum winreg_Type *type;/* [unique] */
224 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
225 uint32_t *data_size;/* [unique] */
226 uint32_t *value_length;/* [unique] */
230 struct winreg_StringBuf *name;/* [ref] */
231 enum winreg_Type *type;/* [unique] */
232 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
233 uint32_t *data_size;/* [unique] */
234 uint32_t *value_length;/* [unique] */
241 struct winreg_FlushKey {
243 struct policy_handle *handle;/* [ref] */
253 struct winreg_GetKeySecurity {
255 struct policy_handle *handle;/* [ref] */
257 struct KeySecurityData *sd;/* [ref] */
261 struct KeySecurityData *sd;/* [ref] */
268 struct winreg_LoadKey {
270 struct policy_handle *handle;/* [ref] */
271 struct winreg_String *keyname;/* [unique] */
272 struct winreg_String *filename;/* [unique] */
282 struct winreg_NotifyChangeKeyValue {
284 struct policy_handle *handle;/* [ref] */
285 uint8_t watch_subtree;
286 uint32_t notify_filter;
288 struct winreg_String string1;
289 struct winreg_String string2;
300 struct winreg_OpenKey {
302 struct policy_handle *parent_handle;/* [ref] */
303 struct winreg_String keyname;
305 uint32_t access_mask;
309 struct policy_handle *handle;/* [ref] */
316 struct winreg_QueryInfoKey {
318 struct policy_handle *handle;/* [ref] */
319 struct winreg_String *classname;/* [ref] */
323 struct winreg_String *classname;/* [ref] */
324 uint32_t *num_subkeys;/* [ref] */
325 uint32_t *max_subkeylen;/* [ref] */
326 uint32_t *max_classlen;/* [ref] */
327 uint32_t *num_values;/* [ref] */
328 uint32_t *max_valnamelen;/* [ref] */
329 uint32_t *max_valbufsize;/* [ref] */
330 uint32_t *secdescsize;/* [ref] */
331 NTTIME *last_changed_time;/* [ref] */
338 struct winreg_QueryValue {
340 struct policy_handle *handle;/* [ref] */
341 struct winreg_String value_name;
342 enum winreg_Type *type;/* [unique] */
343 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
344 uint32_t *data_size;/* [unique] */
345 uint32_t *value_length;/* [unique] */
349 enum winreg_Type *type;/* [unique] */
350 uint8_t *data;/* [unique,length_is(*value_length),size_is(*data_size)] */
351 uint32_t *data_size;/* [unique] */
352 uint32_t *value_length;/* [unique] */
359 struct winreg_ReplaceKey {
367 struct winreg_RestoreKey {
369 struct policy_handle *handle;/* [ref] */
370 struct winreg_String *filename;/* [ref] */
381 struct winreg_SaveKey {
383 struct policy_handle *handle;/* [ref] */
384 struct winreg_String *filename;/* [ref] */
385 struct KeySecurityAttribute *sec_attrib;/* [unique] */
395 struct winreg_SetKeySecurity {
397 struct policy_handle *handle;/* [ref] */
398 uint32_t access_mask;
399 struct KeySecurityData *sd;/* [ref] */
403 struct KeySecurityData *sd;/* [ref] */
410 struct winreg_SetValue {
412 struct policy_handle *handle;/* [ref] */
413 struct winreg_String name;
414 enum winreg_Type type;
415 uint8_t *data;/* [ref,size_is(size)] */
426 struct winreg_UnLoadKey {
434 struct winreg_InitiateSystemShutdown {
436 uint16_t *hostname;/* [unique] */
437 struct initshutdown_String *message;/* [unique] */
450 struct winreg_AbortSystemShutdown {
452 uint16_t *server;/* [unique] */
462 struct winreg_GetVersion {
464 struct policy_handle *handle;/* [ref] */
468 uint32_t *version;/* [ref] */
475 struct winreg_OpenHKCC {
477 uint16_t *system_name;/* [unique] */
478 uint32_t access_mask;
482 struct policy_handle *handle;/* [ref] */
489 struct winreg_OpenHKDD {
491 uint16_t *system_name;/* [unique] */
492 uint32_t access_mask;
496 struct policy_handle *handle;/* [ref] */
503 struct winreg_QueryMultipleValues {
505 struct policy_handle *key_handle;/* [ref] */
506 struct QueryMultipleValue *values;/* [ref,length_is(num_values),size_is(num_values)] */
508 uint8_t *buffer;/* [unique,length_is(*buffer_size),size_is(*buffer_size)] */
509 uint32_t *buffer_size;/* [ref] */
513 struct QueryMultipleValue *values;/* [ref,length_is(num_values),size_is(num_values)] */
514 uint8_t *buffer;/* [unique,length_is(*buffer_size),size_is(*buffer_size)] */
515 uint32_t *buffer_size;/* [ref] */
522 struct winreg_InitiateSystemShutdownEx {
524 uint16_t *hostname;/* [unique] */
525 struct initshutdown_String *message;/* [unique] */
539 struct winreg_SaveKeyEx {
547 struct winreg_OpenHKPT {
549 uint16_t *system_name;/* [unique] */
550 uint32_t access_mask;
554 struct policy_handle *handle;/* [ref] */
561 struct winreg_OpenHKPN {
563 uint16_t *system_name;/* [unique] */
564 uint32_t access_mask;
568 struct policy_handle *handle;/* [ref] */
575 struct winreg_QueryMultipleValues2 {
582 #endif /* _HEADER_winreg */