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_null(name)*2)] */
53 const char *name;/* [unique,length_is(length/2),charset(UTF16),size_is(size/2)] */
56 struct winreg_ValNameBuf {
57 uint16_t length;/* [value(strlen_m_term(name)*2)] */
59 const char *name;/* [unique,length_is(length/2),charset(UTF16),size_is(size/2)] */
62 struct KeySecurityAttribute {
64 struct KeySecurityData sec_data;
68 struct QueryMultipleValue {
69 struct winreg_String *name;/* [unique] */
70 enum winreg_Type type;
76 struct winreg_OpenHKCR {
78 uint16_t *system_name;/* [unique] */
83 struct policy_handle *handle;/* [ref] */
90 struct winreg_OpenHKCU {
92 uint16_t *system_name;/* [unique] */
97 struct policy_handle *handle;/* [ref] */
104 struct winreg_OpenHKLM {
106 uint16_t *system_name;/* [unique] */
107 uint32_t access_mask;
111 struct policy_handle *handle;/* [ref] */
118 struct winreg_OpenHKPD {
120 uint16_t *system_name;/* [unique] */
121 uint32_t access_mask;
125 struct policy_handle *handle;/* [ref] */
132 struct winreg_OpenHKU {
134 uint16_t *system_name;/* [unique] */
135 uint32_t access_mask;
139 struct policy_handle *handle;/* [ref] */
146 struct winreg_CloseKey {
148 struct policy_handle *handle;/* [ref] */
152 struct policy_handle *handle;/* [ref] */
159 struct winreg_CreateKey {
161 struct policy_handle *handle;/* [ref] */
162 struct winreg_String name;
163 struct winreg_String keyclass;
165 uint32_t access_mask;
166 struct winreg_SecBuf *secdesc;/* [unique] */
167 enum winreg_CreateAction **action_taken;/* [ref] */
171 struct policy_handle *new_handle;/* [ref] */
172 enum winreg_CreateAction **action_taken;/* [ref] */
179 struct winreg_DeleteKey {
181 struct policy_handle *handle;/* [ref] */
182 struct winreg_String key;
192 struct winreg_DeleteValue {
194 struct policy_handle *handle;/* [ref] */
195 struct winreg_String value;
205 struct winreg_EnumKey {
207 struct policy_handle *handle;/* [ref] */
209 struct winreg_StringBuf *name;/* [ref] */
210 struct winreg_StringBuf **keyclass;/* [ref] */
211 NTTIME **last_changed_time;/* [ref] */
215 struct winreg_StringBuf *name;/* [ref] */
216 struct winreg_StringBuf **keyclass;/* [ref] */
217 NTTIME **last_changed_time;/* [ref] */
224 struct winreg_EnumValue {
226 struct policy_handle *handle;/* [ref] */
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] */
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] */
247 struct winreg_FlushKey {
249 struct policy_handle *handle;/* [ref] */
259 struct winreg_GetKeySecurity {
261 struct policy_handle *handle;/* [ref] */
263 struct KeySecurityData *sd;/* [ref] */
267 struct KeySecurityData *sd;/* [ref] */
274 struct winreg_LoadKey {
276 struct policy_handle *handle;/* [ref] */
277 struct winreg_String *keyname;/* [unique] */
278 struct winreg_String *filename;/* [unique] */
288 struct winreg_NotifyChangeKeyValue {
290 struct policy_handle *handle;/* [ref] */
291 uint8_t watch_subtree;
292 uint32_t notify_filter;
294 struct winreg_String string1;
295 struct winreg_String string2;
306 struct winreg_OpenKey {
308 struct policy_handle *parent_handle;/* [ref] */
309 struct winreg_String keyname;
311 uint32_t access_mask;
315 struct policy_handle *handle;/* [ref] */
322 struct winreg_QueryInfoKey {
324 struct policy_handle *handle;/* [ref] */
325 struct winreg_String *classname;/* [ref] */
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] */
344 struct winreg_QueryValue {
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] */
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] */
365 struct winreg_ReplaceKey {
373 struct winreg_RestoreKey {
375 struct policy_handle *handle;/* [ref] */
376 struct winreg_String *filename;/* [ref] */
387 struct winreg_SaveKey {
389 struct policy_handle *handle;/* [ref] */
390 struct winreg_String *filename;/* [ref] */
391 struct KeySecurityAttribute *sec_attrib;/* [unique] */
401 struct winreg_SetKeySecurity {
403 struct policy_handle *handle;/* [ref] */
404 uint32_t access_mask;
405 struct KeySecurityData *sd;/* [ref] */
409 struct KeySecurityData *sd;/* [ref] */
416 struct winreg_SetValue {
418 struct policy_handle *handle;/* [ref] */
419 struct winreg_String name;
420 enum winreg_Type type;
421 uint8_t *data;/* [ref,size_is(size)] */
432 struct winreg_UnLoadKey {
440 struct winreg_InitiateSystemShutdown {
442 uint16_t *hostname;/* [unique] */
443 struct initshutdown_String *message;/* [unique] */
456 struct winreg_AbortSystemShutdown {
458 uint16_t *server;/* [unique] */
468 struct winreg_GetVersion {
470 struct policy_handle *handle;/* [ref] */
474 uint32_t *version;/* [ref] */
481 struct winreg_OpenHKCC {
483 uint16_t *system_name;/* [unique] */
484 uint32_t access_mask;
488 struct policy_handle *handle;/* [ref] */
495 struct winreg_OpenHKDD {
497 uint16_t *system_name;/* [unique] */
498 uint32_t access_mask;
502 struct policy_handle *handle;/* [ref] */
509 struct winreg_QueryMultipleValues {
511 struct policy_handle *key_handle;/* [ref] */
512 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] */
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] */
528 struct winreg_InitiateSystemShutdownEx {
530 uint16_t *hostname;/* [unique] */
531 struct initshutdown_String *message;/* [unique] */
545 struct winreg_SaveKeyEx {
553 struct winreg_OpenHKPT {
555 uint16_t *system_name;/* [unique] */
556 uint32_t access_mask;
560 struct policy_handle *handle;/* [ref] */
567 struct winreg_OpenHKPN {
569 uint16_t *system_name;/* [unique] */
570 uint32_t access_mask;
574 struct policy_handle *handle;/* [ref] */
581 struct winreg_QueryMultipleValues2 {
588 #endif /* _HEADER_winreg */