/* header auto-generated by pidl */ #ifndef _HEADER_winreg #define _HEADER_winreg #include "librpc/gen_ndr/lsa.h" #include "librpc/gen_ndr/initshutdown.h" #include "librpc/gen_ndr/security.h" /* bitmap winreg_AccessMask */ enum winreg_Type { REG_NONE=0, REG_SZ=1, REG_EXPAND_SZ=2, REG_BINARY=3, REG_DWORD=4, REG_DWORD_BIG_ENDIAN=5, REG_LINK=6, REG_MULTI_SZ=7, REG_RESOURCE_LIST=8, REG_FULL_RESOURCE_DESCRIPTOR=9, REG_RESOURCE_REQUIREMENTS_LIST=10, REG_QWORD=11 }; struct winreg_String { uint16_t name_len;/* [keepref,value(strlen_m_term(name)*2)] */ uint16_t name_size;/* [keepref,value(strlen_m_term(name)*2)] */ const char *name;/* [unique,keepref,charset(UTF16)] */ }/* [public,noejs] */; struct KeySecurityData { uint8_t *data;/* [unique,keepref,length_is(len),size_is(size)] */ uint32_t size;/* [keepref] */ uint32_t len;/* [keepref] */ }; struct winreg_SecBuf { uint32_t length;/* [keepref] */ struct KeySecurityData sd;/* [keepref] */ uint8_t inherit;/* [keepref] */ }; enum winreg_CreateAction { REG_ACTION_NONE=0, REG_CREATED_NEW_KEY=1, REG_OPENED_EXISTING_KEY=2 }; struct winreg_StringBuf { uint16_t length;/* [keepref,value(strlen_m_term(name)*2)] */ uint16_t size;/* [keepref] */ const char *name;/* [unique,keepref,length_is(length/2),charset(UTF16),size_is(size/2)] */ }; struct QueryMultipleValue { struct winreg_String *name;/* [unique,keepref] */ enum winreg_Type type;/* [keepref] */ uint32_t offset;/* [keepref] */ uint32_t length;/* [keepref] */ }; struct winreg_OpenHKCR { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_OpenHKCU { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_OpenHKLM { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_OpenHKPD { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_OpenHKU { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_CloseKey { struct { struct policy_handle *handle;/* [keepref,ref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_CreateKey { struct { struct policy_handle *handle;/* [keepref,ref] */ struct winreg_String name;/* [keepref] */ struct winreg_String keyclass;/* [keepref] */ uint32_t options;/* [keepref] */ uint32_t access_mask;/* [keepref] */ struct winreg_SecBuf *secdesc;/* [unique,keepref] */ enum winreg_CreateAction *action_taken;/* [unique,keepref] */ } in; struct { struct policy_handle *new_handle;/* [keepref,ref] */ enum winreg_CreateAction *action_taken;/* [unique,keepref] */ WERROR result; } out; }; struct winreg_DeleteKey { struct { struct policy_handle *handle;/* [keepref,ref] */ struct winreg_String key;/* [keepref] */ } in; struct { WERROR result; } out; }; struct winreg_DeleteValue { struct { struct policy_handle *handle;/* [keepref,ref] */ struct winreg_String value;/* [keepref] */ } in; struct { WERROR result; } out; }; struct winreg_EnumKey { struct { struct policy_handle *handle;/* [keepref,ref] */ uint32_t enum_index;/* [keepref] */ struct winreg_StringBuf *name;/* [keepref,ref] */ struct winreg_StringBuf *keyclass;/* [unique,keepref] */ NTTIME *last_changed_time;/* [unique,keepref] */ } in; struct { struct winreg_StringBuf *name;/* [keepref,ref] */ struct winreg_StringBuf *keyclass;/* [unique,keepref] */ NTTIME *last_changed_time;/* [unique,keepref] */ WERROR result; } out; }; struct winreg_EnumValue { struct { struct policy_handle *handle;/* [keepref,ref] */ uint32_t enum_index;/* [keepref] */ struct winreg_StringBuf *name;/* [keepref,ref] */ enum winreg_Type *type;/* [unique,keepref] */ uint8_t *value;/* [unique,keepref,length_is(*length),size_is(*size)] */ uint32_t *size;/* [unique,keepref] */ uint32_t *length;/* [unique,keepref] */ } in; struct { struct winreg_StringBuf *name;/* [keepref,ref] */ enum winreg_Type *type;/* [unique,keepref] */ uint8_t *value;/* [unique,keepref,length_is(*length),size_is(*size)] */ uint32_t *size;/* [unique,keepref] */ uint32_t *length;/* [unique,keepref] */ WERROR result; } out; }; struct winreg_FlushKey { struct { struct policy_handle *handle;/* [keepref,ref] */ } in; struct { WERROR result; } out; }; struct winreg_GetKeySecurity { struct { struct policy_handle *handle;/* [keepref,ref] */ uint32_t sec_info;/* [keepref] */ struct KeySecurityData *sd;/* [keepref,ref] */ } in; struct { struct KeySecurityData *sd;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_LoadKey { struct { struct policy_handle *handle;/* [keepref,ref] */ struct winreg_String *keyname;/* [unique,keepref] */ struct winreg_String *filename;/* [unique,keepref] */ } in; struct { WERROR result; } out; }; struct winreg_NotifyChangeKeyValue { struct { struct policy_handle *handle;/* [keepref,ref] */ uint8_t watch_subtree;/* [keepref] */ uint32_t notify_filter;/* [keepref] */ uint32_t unknown;/* [keepref] */ struct winreg_String string1;/* [keepref] */ struct winreg_String string2;/* [keepref] */ uint32_t unknown2;/* [keepref] */ } in; struct { WERROR result; } out; }; struct winreg_OpenKey { struct { struct policy_handle *parent_handle;/* [keepref,ref] */ struct winreg_String keyname;/* [keepref] */ uint32_t unknown;/* [keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_QueryInfoKey { struct { struct policy_handle *handle;/* [keepref,ref] */ struct winreg_String class_in;/* [keepref] */ } in; struct { struct winreg_String *class_out;/* [unique,keepref] */ uint32_t *num_subkeys;/* [keepref,ref] */ uint32_t *max_subkeylen;/* [keepref,ref] */ uint32_t *max_subkeysize;/* [keepref,ref] */ uint32_t *num_values;/* [keepref,ref] */ uint32_t *max_valnamelen;/* [keepref,ref] */ uint32_t *max_valbufsize;/* [keepref,ref] */ uint32_t *secdescsize;/* [keepref,ref] */ NTTIME *last_changed_time;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_QueryValue { struct { struct policy_handle *handle;/* [keepref,ref] */ struct winreg_String value_name;/* [keepref] */ enum winreg_Type *type;/* [unique,keepref] */ uint8_t *data;/* [unique,keepref,length_is(*length),size_is(*size)] */ uint32_t *size;/* [unique,keepref] */ uint32_t *length;/* [unique,keepref] */ } in; struct { enum winreg_Type *type;/* [unique,keepref] */ uint8_t *data;/* [unique,keepref,length_is(*length),size_is(*size)] */ uint32_t *size;/* [unique,keepref] */ uint32_t *length;/* [unique,keepref] */ WERROR result; } out; }; struct winreg_ReplaceKey { struct { WERROR result; } out; }; struct winreg_RestoreKey { struct { WERROR result; } out; }; struct winreg_SaveKey { struct { WERROR result; } out; }; struct winreg_SetKeySecurity { struct { struct policy_handle *handle;/* [keepref,ref] */ uint32_t access_mask;/* [keepref] */ struct KeySecurityData *sd;/* [keepref,ref] */ } in; struct { struct KeySecurityData *sd;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_SetValue { struct { struct policy_handle *handle;/* [keepref,ref] */ struct winreg_String name;/* [keepref] */ enum winreg_Type type;/* [keepref] */ uint8_t *data;/* [keepref,ref,size_is(size)] */ uint32_t size;/* [keepref] */ } in; struct { WERROR result; } out; }; struct winreg_UnLoadKey { struct { WERROR result; } out; }; struct winreg_InitiateSystemShutdown { struct { uint16_t *hostname;/* [unique,keepref] */ struct initshutdown_String *message;/* [unique,keepref] */ uint32_t timeout;/* [keepref] */ uint8_t force_apps;/* [keepref] */ uint8_t reboot;/* [keepref] */ } in; struct { WERROR result; } out; }; struct winreg_AbortSystemShutdown { struct { uint16_t *server;/* [unique,keepref] */ } in; struct { WERROR result; } out; }; struct winreg_GetVersion { struct { struct policy_handle *handle;/* [keepref,ref] */ } in; struct { uint32_t *version;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_OpenHKCC { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_OpenHKDD { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_QueryMultipleValues { struct { struct policy_handle *key_handle;/* [keepref,ref] */ struct QueryMultipleValue *values;/* [keepref,ref,length_is(num_values),size_is(num_values)] */ uint32_t num_values;/* [keepref] */ uint8_t *buffer;/* [unique,keepref,length_is(*buffer_size),size_is(*buffer_size)] */ uint32_t *buffer_size;/* [keepref,ref] */ } in; struct { struct QueryMultipleValue *values;/* [keepref,ref,length_is(num_values),size_is(num_values)] */ uint8_t *buffer;/* [unique,keepref,length_is(*buffer_size),size_is(*buffer_size)] */ uint32_t *buffer_size;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_InitiateSystemShutdownEx { struct { uint16_t *hostname;/* [unique,keepref] */ struct initshutdown_String *message;/* [unique,keepref] */ uint32_t timeout;/* [keepref] */ uint8_t force_apps;/* [keepref] */ uint8_t reboot;/* [keepref] */ uint32_t reason;/* [keepref] */ } in; struct { WERROR result; } out; }; struct winreg_SaveKeyEx { struct { WERROR result; } out; }; struct winreg_OpenHKPT { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_OpenHKPN { struct { uint16_t *system_name;/* [unique,keepref] */ uint32_t access_mask;/* [keepref] */ } in; struct { struct policy_handle *handle;/* [keepref,ref] */ WERROR result; } out; }; struct winreg_QueryMultipleValues2 { struct { WERROR result; } out; }; #endif /* _HEADER_winreg */