2 This file was automatically generated by Pidl
3 from winreg.idl and winreg.cnf.
5 Pidl is a perl based IDL compiler for DCE/RPC idl files.
6 It is maintained by the Samba team, not the Wireshark team.
7 Instructions on how to download and install Pidl can be
8 found at https://wiki.wireshark.org/Pidl
14 #include <wsutil/array.h>
15 #include <epan/packet.h>
18 #include "packet-dcerpc.h"
19 #include "packet-dcerpc-nt.h"
20 #include "packet-windows-common.h"
21 #include "packet-dcerpc-winreg.h"
22 void proto_register_dcerpc_winreg(void);
23 void proto_reg_handoff_dcerpc_winreg(void);
25 /* Ett declarations */
26 static int ett_dcerpc_winreg
;
27 static int ett_winreg_security_secinfo
;
28 static int ett_winreg_winreg_AccessMask
;
29 static int ett_winreg_winreg_String
;
30 static int ett_winreg_KeySecurityData
;
31 static int ett_winreg_winreg_SecBuf
;
32 static int ett_winreg_winreg_KeyOptions
;
33 static int ett_winreg_winreg_StringBuf
;
34 static int ett_winreg_winreg_ValNameBuf
;
35 static int ett_winreg_winreg_NotifyChangeType
;
36 static int ett_winreg_winreg_RestoreKeyFlags
;
37 static int ett_winreg_KeySecurityAttribute
;
38 static int ett_winreg_QueryMultipleValue
;
41 /* Header field declarations */
42 static int hf_winreg_KeySecurityAttribute_data_size
;
43 static int hf_winreg_KeySecurityAttribute_inherit
;
44 static int hf_winreg_KeySecurityAttribute_sec_data
;
45 static int hf_winreg_KeySecurityData_data
;
46 static int hf_winreg_KeySecurityData_len
;
47 static int hf_winreg_KeySecurityData_size
;
48 static int hf_winreg_QueryMultipleValue_ve_type
;
49 static int hf_winreg_QueryMultipleValue_ve_valuelen
;
50 static int hf_winreg_QueryMultipleValue_ve_valuename
;
51 static int hf_winreg_QueryMultipleValue_ve_valueptr
;
52 static int hf_winreg_access_mask
;
53 static int hf_winreg_handle
;
54 static int hf_winreg_opnum
;
55 static int hf_winreg_sd
;
56 static int hf_winreg_sd_actual_size
;
57 static int hf_winreg_sd_max_size
;
58 static int hf_winreg_sd_offset
;
59 static int hf_winreg_system_name
;
60 static int hf_winreg_werror
;
61 static int hf_winreg_winreg_AbortSystemShutdown_server
;
62 static int hf_winreg_winreg_AccessMask_KEY_CREATE_LINK
;
63 static int hf_winreg_winreg_AccessMask_KEY_CREATE_SUB_KEY
;
64 static int hf_winreg_winreg_AccessMask_KEY_ENUMERATE_SUB_KEYS
;
65 static int hf_winreg_winreg_AccessMask_KEY_NOTIFY
;
66 static int hf_winreg_winreg_AccessMask_KEY_QUERY_VALUE
;
67 static int hf_winreg_winreg_AccessMask_KEY_SET_VALUE
;
68 static int hf_winreg_winreg_AccessMask_KEY_WOW64_32KEY
;
69 static int hf_winreg_winreg_AccessMask_KEY_WOW64_64KEY
;
70 static int hf_winreg_winreg_CreateKey_action_taken
;
71 static int hf_winreg_winreg_CreateKey_keyclass
;
72 static int hf_winreg_winreg_CreateKey_name
;
73 static int hf_winreg_winreg_CreateKey_new_handle
;
74 static int hf_winreg_winreg_CreateKey_options
;
75 static int hf_winreg_winreg_CreateKey_secdesc
;
76 static int hf_winreg_winreg_DeleteKeyEx_access_mask
;
77 static int hf_winreg_winreg_DeleteKeyEx_handle
;
78 static int hf_winreg_winreg_DeleteKeyEx_key
;
79 static int hf_winreg_winreg_DeleteKeyEx_reserved
;
80 static int hf_winreg_winreg_DeleteKey_key
;
81 static int hf_winreg_winreg_DeleteValue_value
;
82 static int hf_winreg_winreg_EnumKey_enum_index
;
83 static int hf_winreg_winreg_EnumKey_keyclass
;
84 static int hf_winreg_winreg_EnumKey_last_changed_time
;
85 static int hf_winreg_winreg_EnumKey_name
;
86 static int hf_winreg_winreg_EnumValue_enum_index
;
87 static int hf_winreg_winreg_EnumValue_length
;
88 static int hf_winreg_winreg_EnumValue_name
;
89 static int hf_winreg_winreg_EnumValue_size
;
90 static int hf_winreg_winreg_EnumValue_type
;
91 static int hf_winreg_winreg_EnumValue_value
;
92 static int hf_winreg_winreg_GetKeySecurity_sec_info
;
93 static int hf_winreg_winreg_GetVersion_version
;
94 static int hf_winreg_winreg_InitiateSystemShutdownEx_do_reboot
;
95 static int hf_winreg_winreg_InitiateSystemShutdownEx_force_apps
;
96 static int hf_winreg_winreg_InitiateSystemShutdownEx_hostname
;
97 static int hf_winreg_winreg_InitiateSystemShutdownEx_message
;
98 static int hf_winreg_winreg_InitiateSystemShutdownEx_reason
;
99 static int hf_winreg_winreg_InitiateSystemShutdownEx_timeout
;
100 static int hf_winreg_winreg_InitiateSystemShutdown_do_reboot
;
101 static int hf_winreg_winreg_InitiateSystemShutdown_force_apps
;
102 static int hf_winreg_winreg_InitiateSystemShutdown_hostname
;
103 static int hf_winreg_winreg_InitiateSystemShutdown_message
;
104 static int hf_winreg_winreg_InitiateSystemShutdown_timeout
;
105 static int hf_winreg_winreg_KeyOptions_REG_OPTION_BACKUP_RESTORE
;
106 static int hf_winreg_winreg_KeyOptions_REG_OPTION_CREATE_LINK
;
107 static int hf_winreg_winreg_KeyOptions_REG_OPTION_OPEN_LINK
;
108 static int hf_winreg_winreg_KeyOptions_REG_OPTION_VOLATILE
;
109 static int hf_winreg_winreg_LoadKey_filename
;
110 static int hf_winreg_winreg_LoadKey_keyname
;
111 static int hf_winreg_winreg_NotifyChangeKeyValue_notify_filter
;
112 static int hf_winreg_winreg_NotifyChangeKeyValue_string1
;
113 static int hf_winreg_winreg_NotifyChangeKeyValue_string2
;
114 static int hf_winreg_winreg_NotifyChangeKeyValue_unknown
;
115 static int hf_winreg_winreg_NotifyChangeKeyValue_unknown2
;
116 static int hf_winreg_winreg_NotifyChangeKeyValue_watch_subtree
;
117 static int hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_ATTRIBUTES
;
118 static int hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_LAST_SET
;
119 static int hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_NAME
;
120 static int hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_SECURITY
;
121 static int hf_winreg_winreg_OpenHKCU_access_mask
;
122 static int hf_winreg_winreg_OpenHKPD_access_mask
;
123 static int hf_winreg_winreg_OpenKey_access_mask
;
124 static int hf_winreg_winreg_OpenKey_keyname
;
125 static int hf_winreg_winreg_OpenKey_options
;
126 static int hf_winreg_winreg_OpenKey_parent_handle
;
127 static int hf_winreg_winreg_QueryInfoKey_classname
;
128 static int hf_winreg_winreg_QueryInfoKey_last_changed_time
;
129 static int hf_winreg_winreg_QueryInfoKey_max_classlen
;
130 static int hf_winreg_winreg_QueryInfoKey_max_subkeylen
;
131 static int hf_winreg_winreg_QueryInfoKey_max_valbufsize
;
132 static int hf_winreg_winreg_QueryInfoKey_max_valnamelen
;
133 static int hf_winreg_winreg_QueryInfoKey_num_subkeys
;
134 static int hf_winreg_winreg_QueryInfoKey_num_values
;
135 static int hf_winreg_winreg_QueryInfoKey_secdescsize
;
136 static int hf_winreg_winreg_QueryMultipleValues2_buffer
;
137 static int hf_winreg_winreg_QueryMultipleValues2_key_handle
;
138 static int hf_winreg_winreg_QueryMultipleValues2_needed
;
139 static int hf_winreg_winreg_QueryMultipleValues2_num_values
;
140 static int hf_winreg_winreg_QueryMultipleValues2_offered
;
141 static int hf_winreg_winreg_QueryMultipleValues2_values_in
;
142 static int hf_winreg_winreg_QueryMultipleValues2_values_out
;
143 static int hf_winreg_winreg_QueryMultipleValues_buffer
;
144 static int hf_winreg_winreg_QueryMultipleValues_buffer_size
;
145 static int hf_winreg_winreg_QueryMultipleValues_key_handle
;
146 static int hf_winreg_winreg_QueryMultipleValues_num_values
;
147 static int hf_winreg_winreg_QueryMultipleValues_values_in
;
148 static int hf_winreg_winreg_QueryMultipleValues_values_out
;
149 static int hf_winreg_winreg_QueryValue_data
;
150 static int hf_winreg_winreg_QueryValue_data_length
;
151 static int hf_winreg_winreg_QueryValue_data_size
;
152 static int hf_winreg_winreg_QueryValue_type
;
153 static int hf_winreg_winreg_QueryValue_value_name
;
154 static int hf_winreg_winreg_ReplaceKey_handle
;
155 static int hf_winreg_winreg_ReplaceKey_new_file
;
156 static int hf_winreg_winreg_ReplaceKey_old_file
;
157 static int hf_winreg_winreg_ReplaceKey_subkey
;
158 static int hf_winreg_winreg_RestoreKeyFlags_REG_FORCE_RESTORE
;
159 static int hf_winreg_winreg_RestoreKeyFlags_REG_NO_LAZY_FLUSH
;
160 static int hf_winreg_winreg_RestoreKeyFlags_REG_REFRESH_HIVE
;
161 static int hf_winreg_winreg_RestoreKeyFlags_REG_WHOLE_HIVE_VOLATILE
;
162 static int hf_winreg_winreg_RestoreKey_filename
;
163 static int hf_winreg_winreg_RestoreKey_flags
;
164 static int hf_winreg_winreg_RestoreKey_handle
;
165 static int hf_winreg_winreg_SaveKeyEx_filename
;
166 static int hf_winreg_winreg_SaveKeyEx_flags
;
167 static int hf_winreg_winreg_SaveKeyEx_handle
;
168 static int hf_winreg_winreg_SaveKeyEx_sec_attrib
;
169 static int hf_winreg_winreg_SaveKey_filename
;
170 static int hf_winreg_winreg_SaveKey_handle
;
171 static int hf_winreg_winreg_SaveKey_sec_attrib
;
172 static int hf_winreg_winreg_SecBuf_inherit
;
173 static int hf_winreg_winreg_SecBuf_length
;
174 static int hf_winreg_winreg_SecBuf_sd
;
175 static int hf_winreg_winreg_SetKeySecurity_sec_info
;
176 static int hf_winreg_winreg_SetValue_data
;
177 static int hf_winreg_winreg_SetValue_name
;
178 static int hf_winreg_winreg_SetValue_size
;
179 static int hf_winreg_winreg_SetValue_type
;
180 static int hf_winreg_winreg_StringBuf_length
;
181 static int hf_winreg_winreg_StringBuf_name
;
182 static int hf_winreg_winreg_StringBuf_size
;
183 static int hf_winreg_winreg_String_name
;
184 static int hf_winreg_winreg_String_name_len
;
185 static int hf_winreg_winreg_String_name_size
;
186 static int hf_winreg_winreg_UnLoadKey_handle
;
187 static int hf_winreg_winreg_UnLoadKey_subkey
;
188 static int hf_winreg_winreg_ValNameBuf_length
;
189 static int hf_winreg_winreg_ValNameBuf_name
;
190 static int hf_winreg_winreg_ValNameBuf_size
;
192 static int proto_dcerpc_winreg
;
193 /* Version information */
196 static e_guid_t uuid_dcerpc_winreg
= {
197 0x338cd001, 0x2244, 0x31f1,
198 { 0xaa, 0xaa, 0x90, 0x00, 0x38, 0x00, 0x10, 0x03 }
200 static uint16_t ver_dcerpc_winreg
= 1;
202 static const true_false_string winreg_AccessMask_KEY_QUERY_VALUE_tfs
= {
203 "KEY_QUERY_VALUE is SET",
204 "KEY_QUERY_VALUE is NOT SET",
206 static const true_false_string winreg_AccessMask_KEY_SET_VALUE_tfs
= {
207 "KEY_SET_VALUE is SET",
208 "KEY_SET_VALUE is NOT SET",
210 static const true_false_string winreg_AccessMask_KEY_CREATE_SUB_KEY_tfs
= {
211 "KEY_CREATE_SUB_KEY is SET",
212 "KEY_CREATE_SUB_KEY is NOT SET",
214 static const true_false_string winreg_AccessMask_KEY_ENUMERATE_SUB_KEYS_tfs
= {
215 "KEY_ENUMERATE_SUB_KEYS is SET",
216 "KEY_ENUMERATE_SUB_KEYS is NOT SET",
218 static const true_false_string winreg_AccessMask_KEY_NOTIFY_tfs
= {
220 "KEY_NOTIFY is NOT SET",
222 static const true_false_string winreg_AccessMask_KEY_CREATE_LINK_tfs
= {
223 "KEY_CREATE_LINK is SET",
224 "KEY_CREATE_LINK is NOT SET",
226 static const true_false_string winreg_AccessMask_KEY_WOW64_64KEY_tfs
= {
227 "KEY_WOW64_64KEY is SET",
228 "KEY_WOW64_64KEY is NOT SET",
230 static const true_false_string winreg_AccessMask_KEY_WOW64_32KEY_tfs
= {
231 "KEY_WOW64_32KEY is SET",
232 "KEY_WOW64_32KEY is NOT SET",
234 static int winreg_dissect_element_String_name_len(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
235 static int winreg_dissect_element_String_name_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
236 static int winreg_dissect_element_String_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
237 static int winreg_dissect_element_String_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
238 static int winreg_dissect_element_KeySecurityData_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
239 static int winreg_dissect_element_KeySecurityData_data_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
240 static int winreg_dissect_element_KeySecurityData_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
241 static int winreg_dissect_element_KeySecurityData_len(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
242 static int winreg_dissect_element_SecBuf_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
243 static int winreg_dissect_element_SecBuf_sd(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
244 static int winreg_dissect_element_SecBuf_inherit(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
245 static const true_false_string winreg_KeyOptions_REG_OPTION_VOLATILE_tfs
= {
246 "REG_OPTION_VOLATILE is SET",
247 "REG_OPTION_VOLATILE is NOT SET",
249 static const true_false_string winreg_KeyOptions_REG_OPTION_CREATE_LINK_tfs
= {
250 "REG_OPTION_CREATE_LINK is SET",
251 "REG_OPTION_CREATE_LINK is NOT SET",
253 static const true_false_string winreg_KeyOptions_REG_OPTION_BACKUP_RESTORE_tfs
= {
254 "REG_OPTION_BACKUP_RESTORE is SET",
255 "REG_OPTION_BACKUP_RESTORE is NOT SET",
257 static const true_false_string winreg_KeyOptions_REG_OPTION_OPEN_LINK_tfs
= {
258 "REG_OPTION_OPEN_LINK is SET",
259 "REG_OPTION_OPEN_LINK is NOT SET",
261 const value_string winreg_winreg_CreateAction_vals
[] = {
262 { REG_ACTION_NONE
, "REG_ACTION_NONE" },
263 { REG_CREATED_NEW_KEY
, "REG_CREATED_NEW_KEY" },
264 { REG_OPENED_EXISTING_KEY
, "REG_OPENED_EXISTING_KEY" },
267 static int winreg_dissect_element_StringBuf_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
268 static int winreg_dissect_element_StringBuf_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
269 static int winreg_dissect_element_StringBuf_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
270 static int winreg_dissect_element_StringBuf_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
271 static int winreg_dissect_element_StringBuf_name__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
272 static int winreg_dissect_element_ValNameBuf_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
273 static int winreg_dissect_element_ValNameBuf_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
274 static int winreg_dissect_element_ValNameBuf_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
275 static int winreg_dissect_element_ValNameBuf_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
276 static int winreg_dissect_element_ValNameBuf_name__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
277 static const true_false_string winreg_NotifyChangeType_REG_NOTIFY_CHANGE_NAME_tfs
= {
278 "REG_NOTIFY_CHANGE_NAME is SET",
279 "REG_NOTIFY_CHANGE_NAME is NOT SET",
281 static const true_false_string winreg_NotifyChangeType_REG_NOTIFY_CHANGE_ATTRIBUTES_tfs
= {
282 "REG_NOTIFY_CHANGE_ATTRIBUTES is SET",
283 "REG_NOTIFY_CHANGE_ATTRIBUTES is NOT SET",
285 static const true_false_string winreg_NotifyChangeType_REG_NOTIFY_CHANGE_LAST_SET_tfs
= {
286 "REG_NOTIFY_CHANGE_LAST_SET is SET",
287 "REG_NOTIFY_CHANGE_LAST_SET is NOT SET",
289 static const true_false_string winreg_NotifyChangeType_REG_NOTIFY_CHANGE_SECURITY_tfs
= {
290 "REG_NOTIFY_CHANGE_SECURITY is SET",
291 "REG_NOTIFY_CHANGE_SECURITY is NOT SET",
293 static const true_false_string winreg_RestoreKeyFlags_REG_WHOLE_HIVE_VOLATILE_tfs
= {
294 "REG_WHOLE_HIVE_VOLATILE is SET",
295 "REG_WHOLE_HIVE_VOLATILE is NOT SET",
297 static const true_false_string winreg_RestoreKeyFlags_REG_REFRESH_HIVE_tfs
= {
298 "REG_REFRESH_HIVE is SET",
299 "REG_REFRESH_HIVE is NOT SET",
301 static const true_false_string winreg_RestoreKeyFlags_REG_NO_LAZY_FLUSH_tfs
= {
302 "REG_NO_LAZY_FLUSH is SET",
303 "REG_NO_LAZY_FLUSH is NOT SET",
305 static const true_false_string winreg_RestoreKeyFlags_REG_FORCE_RESTORE_tfs
= {
306 "REG_FORCE_RESTORE is SET",
307 "REG_FORCE_RESTORE is NOT SET",
309 static int winreg_dissect_element_KeySecurityAttribute_data_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
310 static int winreg_dissect_element_KeySecurityAttribute_sec_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
311 static int winreg_dissect_element_KeySecurityAttribute_inherit(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
312 static int winreg_dissect_element_QueryMultipleValue_ve_valuename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
313 static int winreg_dissect_element_QueryMultipleValue_ve_valuename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
314 static int winreg_dissect_element_QueryMultipleValue_ve_valuelen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
315 static int winreg_dissect_element_QueryMultipleValue_ve_valueptr(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
316 static int winreg_dissect_element_QueryMultipleValue_ve_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
317 static int winreg_dissect_element_OpenHKCR_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
318 static int winreg_dissect_element_OpenHKCR_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
319 static int winreg_dissect_element_OpenHKCR_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
320 static int winreg_dissect_element_OpenHKCR_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
321 static int winreg_dissect_element_OpenHKCR_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
322 static int winreg_dissect_element_OpenHKCU_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
323 static int winreg_dissect_element_OpenHKCU_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
324 static int winreg_dissect_element_OpenHKCU_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
325 static int winreg_dissect_element_OpenHKCU_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
326 static int winreg_dissect_element_OpenHKCU_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
327 static int winreg_dissect_element_OpenHKLM_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
328 static int winreg_dissect_element_OpenHKLM_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
329 static int winreg_dissect_element_OpenHKLM_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
330 static int winreg_dissect_element_OpenHKLM_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
331 static int winreg_dissect_element_OpenHKLM_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
332 static int winreg_dissect_element_OpenHKPD_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
333 static int winreg_dissect_element_OpenHKPD_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
334 static int winreg_dissect_element_OpenHKPD_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
335 static int winreg_dissect_element_OpenHKPD_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
336 static int winreg_dissect_element_OpenHKPD_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
337 static int winreg_dissect_element_OpenHKU_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
338 static int winreg_dissect_element_OpenHKU_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
339 static int winreg_dissect_element_OpenHKU_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
340 static int winreg_dissect_element_OpenHKU_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
341 static int winreg_dissect_element_OpenHKU_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
342 static int winreg_dissect_element_CloseKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
343 static int winreg_dissect_element_CloseKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
344 static int winreg_dissect_element_CreateKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
345 static int winreg_dissect_element_CreateKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
346 static int winreg_dissect_element_CreateKey_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
347 static int winreg_dissect_element_CreateKey_keyclass(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
348 static int winreg_dissect_element_CreateKey_options(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
349 static int winreg_dissect_element_CreateKey_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
350 static int winreg_dissect_element_CreateKey_secdesc(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
351 static int winreg_dissect_element_CreateKey_secdesc_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
352 static int winreg_dissect_element_CreateKey_new_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
353 static int winreg_dissect_element_CreateKey_new_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
354 static int winreg_dissect_element_CreateKey_action_taken(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
355 static int winreg_dissect_element_CreateKey_action_taken_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
356 static int winreg_dissect_element_DeleteKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
357 static int winreg_dissect_element_DeleteKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
358 static int winreg_dissect_element_DeleteKey_key(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
359 static int winreg_dissect_element_DeleteValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
360 static int winreg_dissect_element_DeleteValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
361 static int winreg_dissect_element_DeleteValue_value(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
362 static int winreg_dissect_element_EnumKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
363 static int winreg_dissect_element_EnumKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
364 static int winreg_dissect_element_EnumKey_enum_index(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
365 static int winreg_dissect_element_EnumKey_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
366 static int winreg_dissect_element_EnumKey_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
367 static int winreg_dissect_element_EnumKey_keyclass(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
368 static int winreg_dissect_element_EnumKey_keyclass_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
369 static int winreg_dissect_element_EnumKey_last_changed_time(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
370 static int winreg_dissect_element_EnumKey_last_changed_time_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
371 static int winreg_dissect_element_EnumValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
372 static int winreg_dissect_element_EnumValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
373 static int winreg_dissect_element_EnumValue_enum_index(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
374 static int winreg_dissect_element_EnumValue_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
375 static int winreg_dissect_element_EnumValue_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
376 static int winreg_dissect_element_EnumValue_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
377 static int winreg_dissect_element_EnumValue_type_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
378 static int winreg_dissect_element_EnumValue_value(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
379 static int winreg_dissect_element_EnumValue_value_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
380 static int winreg_dissect_element_EnumValue_value__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
381 static int winreg_dissect_element_EnumValue_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
382 static int winreg_dissect_element_EnumValue_size_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
383 static int winreg_dissect_element_EnumValue_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
384 static int winreg_dissect_element_EnumValue_length_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
385 static int winreg_dissect_element_FlushKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
386 static int winreg_dissect_element_FlushKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
387 static int winreg_dissect_element_GetKeySecurity_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
388 static int winreg_dissect_element_GetKeySecurity_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
389 static int winreg_dissect_element_GetKeySecurity_sec_info(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
390 static int winreg_dissect_element_GetKeySecurity_sd(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
391 static int winreg_dissect_element_GetKeySecurity_sd_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
392 static int winreg_dissect_element_LoadKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
393 static int winreg_dissect_element_LoadKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
394 static int winreg_dissect_element_LoadKey_keyname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
395 static int winreg_dissect_element_LoadKey_keyname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
396 static int winreg_dissect_element_LoadKey_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
397 static int winreg_dissect_element_LoadKey_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
398 static int winreg_dissect_element_NotifyChangeKeyValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
399 static int winreg_dissect_element_NotifyChangeKeyValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
400 static int winreg_dissect_element_NotifyChangeKeyValue_watch_subtree(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
401 static int winreg_dissect_element_NotifyChangeKeyValue_notify_filter(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
402 static int winreg_dissect_element_NotifyChangeKeyValue_unknown(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
403 static int winreg_dissect_element_NotifyChangeKeyValue_string1(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
404 static int winreg_dissect_element_NotifyChangeKeyValue_string2(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
405 static int winreg_dissect_element_NotifyChangeKeyValue_unknown2(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
406 static int winreg_dissect_element_OpenKey_parent_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
407 static int winreg_dissect_element_OpenKey_parent_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
408 static int winreg_dissect_element_OpenKey_keyname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
409 static int winreg_dissect_element_OpenKey_options(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
410 static int winreg_dissect_element_OpenKey_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
411 static int winreg_dissect_element_OpenKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
412 static int winreg_dissect_element_OpenKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
413 static int winreg_dissect_element_QueryInfoKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
414 static int winreg_dissect_element_QueryInfoKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
415 static int winreg_dissect_element_QueryInfoKey_classname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
416 static int winreg_dissect_element_QueryInfoKey_classname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
417 static int winreg_dissect_element_QueryInfoKey_num_subkeys(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
418 static int winreg_dissect_element_QueryInfoKey_num_subkeys_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
419 static int winreg_dissect_element_QueryInfoKey_max_subkeylen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
420 static int winreg_dissect_element_QueryInfoKey_max_subkeylen_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
421 static int winreg_dissect_element_QueryInfoKey_max_classlen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
422 static int winreg_dissect_element_QueryInfoKey_max_classlen_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
423 static int winreg_dissect_element_QueryInfoKey_num_values(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
424 static int winreg_dissect_element_QueryInfoKey_num_values_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
425 static int winreg_dissect_element_QueryInfoKey_max_valnamelen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
426 static int winreg_dissect_element_QueryInfoKey_max_valnamelen_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
427 static int winreg_dissect_element_QueryInfoKey_max_valbufsize(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
428 static int winreg_dissect_element_QueryInfoKey_max_valbufsize_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
429 static int winreg_dissect_element_QueryInfoKey_secdescsize(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
430 static int winreg_dissect_element_QueryInfoKey_secdescsize_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
431 static int winreg_dissect_element_QueryInfoKey_last_changed_time(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
432 static int winreg_dissect_element_QueryInfoKey_last_changed_time_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
433 static int winreg_dissect_element_QueryValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
434 static int winreg_dissect_element_QueryValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
435 static int winreg_dissect_element_QueryValue_value_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
436 static int winreg_dissect_element_QueryValue_value_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
437 static int winreg_dissect_element_QueryValue_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
438 static int winreg_dissect_element_QueryValue_type_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
439 static int winreg_dissect_element_QueryValue_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
440 static int winreg_dissect_element_QueryValue_data_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
441 static int winreg_dissect_element_QueryValue_data__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
442 static int winreg_dissect_element_QueryValue_data_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
443 static int winreg_dissect_element_QueryValue_data_size_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
444 static int winreg_dissect_element_QueryValue_data_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
445 static int winreg_dissect_element_QueryValue_data_length_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
446 static int winreg_dissect_element_ReplaceKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
447 static int winreg_dissect_element_ReplaceKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
448 static int winreg_dissect_element_ReplaceKey_subkey(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
449 static int winreg_dissect_element_ReplaceKey_subkey_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
450 static int winreg_dissect_element_ReplaceKey_new_file(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
451 static int winreg_dissect_element_ReplaceKey_new_file_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
452 static int winreg_dissect_element_ReplaceKey_old_file(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
453 static int winreg_dissect_element_ReplaceKey_old_file_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
454 static int winreg_dissect_element_RestoreKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
455 static int winreg_dissect_element_RestoreKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
456 static int winreg_dissect_element_RestoreKey_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
457 static int winreg_dissect_element_RestoreKey_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
458 static int winreg_dissect_element_RestoreKey_flags(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
459 static int winreg_dissect_element_SaveKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
460 static int winreg_dissect_element_SaveKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
461 static int winreg_dissect_element_SaveKey_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
462 static int winreg_dissect_element_SaveKey_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
463 static int winreg_dissect_element_SaveKey_sec_attrib(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
464 static int winreg_dissect_element_SaveKey_sec_attrib_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
465 static int winreg_dissect_element_SetKeySecurity_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
466 static int winreg_dissect_element_SetKeySecurity_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
467 static int winreg_dissect_element_SetKeySecurity_sec_info(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
468 static int winreg_dissect_element_SetKeySecurity_sd(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
469 static int winreg_dissect_element_SetKeySecurity_sd_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
470 static int winreg_dissect_element_SetValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
471 static int winreg_dissect_element_SetValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
472 static int winreg_dissect_element_SetValue_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
473 static int winreg_dissect_element_SetValue_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
474 static int winreg_dissect_element_SetValue_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
475 static int winreg_dissect_element_SetValue_data_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
476 static int winreg_dissect_element_SetValue_data__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
477 static int winreg_dissect_element_SetValue_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
478 static int winreg_dissect_element_UnLoadKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
479 static int winreg_dissect_element_UnLoadKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
480 static int winreg_dissect_element_UnLoadKey_subkey(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
481 static int winreg_dissect_element_UnLoadKey_subkey_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
482 static int winreg_dissect_element_InitiateSystemShutdown_hostname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
483 static int winreg_dissect_element_InitiateSystemShutdown_hostname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
484 static int winreg_dissect_element_InitiateSystemShutdown_message(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
485 static int winreg_dissect_element_InitiateSystemShutdown_message_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
486 static int winreg_dissect_element_InitiateSystemShutdown_timeout(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
487 static int winreg_dissect_element_InitiateSystemShutdown_force_apps(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
488 static int winreg_dissect_element_InitiateSystemShutdown_do_reboot(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
489 static int winreg_dissect_element_AbortSystemShutdown_server(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
490 static int winreg_dissect_element_AbortSystemShutdown_server_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
491 static int winreg_dissect_element_GetVersion_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
492 static int winreg_dissect_element_GetVersion_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
493 static int winreg_dissect_element_GetVersion_version(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
494 static int winreg_dissect_element_GetVersion_version_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
495 static int winreg_dissect_element_OpenHKCC_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
496 static int winreg_dissect_element_OpenHKCC_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
497 static int winreg_dissect_element_OpenHKCC_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
498 static int winreg_dissect_element_OpenHKCC_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
499 static int winreg_dissect_element_OpenHKCC_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
500 static int winreg_dissect_element_OpenHKDD_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
501 static int winreg_dissect_element_OpenHKDD_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
502 static int winreg_dissect_element_OpenHKDD_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
503 static int winreg_dissect_element_OpenHKDD_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
504 static int winreg_dissect_element_OpenHKDD_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
505 static int winreg_dissect_element_QueryMultipleValues_key_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
506 static int winreg_dissect_element_QueryMultipleValues_key_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
507 static int winreg_dissect_element_QueryMultipleValues_values_in(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
508 static int winreg_dissect_element_QueryMultipleValues_values_in_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
509 static int winreg_dissect_element_QueryMultipleValues_values_in__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
510 static int winreg_dissect_element_QueryMultipleValues_values_out(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
511 static int winreg_dissect_element_QueryMultipleValues_values_out_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
512 static int winreg_dissect_element_QueryMultipleValues_values_out__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
513 static int winreg_dissect_element_QueryMultipleValues_num_values(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
514 static int winreg_dissect_element_QueryMultipleValues_buffer(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
515 static int winreg_dissect_element_QueryMultipleValues_buffer_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
516 static int winreg_dissect_element_QueryMultipleValues_buffer__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
517 static int winreg_dissect_element_QueryMultipleValues_buffer_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
518 static int winreg_dissect_element_QueryMultipleValues_buffer_size_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
519 static int winreg_dissect_element_InitiateSystemShutdownEx_hostname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
520 static int winreg_dissect_element_InitiateSystemShutdownEx_hostname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
521 static int winreg_dissect_element_InitiateSystemShutdownEx_message(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
522 static int winreg_dissect_element_InitiateSystemShutdownEx_message_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
523 static int winreg_dissect_element_InitiateSystemShutdownEx_timeout(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
524 static int winreg_dissect_element_InitiateSystemShutdownEx_force_apps(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
525 static int winreg_dissect_element_InitiateSystemShutdownEx_do_reboot(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
526 static int winreg_dissect_element_InitiateSystemShutdownEx_reason(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
527 static int winreg_dissect_element_SaveKeyEx_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
528 static int winreg_dissect_element_SaveKeyEx_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
529 static int winreg_dissect_element_SaveKeyEx_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
530 static int winreg_dissect_element_SaveKeyEx_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
531 static int winreg_dissect_element_SaveKeyEx_sec_attrib(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
532 static int winreg_dissect_element_SaveKeyEx_sec_attrib_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
533 static int winreg_dissect_element_SaveKeyEx_flags(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
534 static int winreg_dissect_element_OpenHKPT_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
535 static int winreg_dissect_element_OpenHKPT_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
536 static int winreg_dissect_element_OpenHKPT_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
537 static int winreg_dissect_element_OpenHKPT_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
538 static int winreg_dissect_element_OpenHKPT_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
539 static int winreg_dissect_element_OpenHKPN_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
540 static int winreg_dissect_element_OpenHKPN_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
541 static int winreg_dissect_element_OpenHKPN_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
542 static int winreg_dissect_element_OpenHKPN_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
543 static int winreg_dissect_element_OpenHKPN_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
544 static int winreg_dissect_element_QueryMultipleValues2_key_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
545 static int winreg_dissect_element_QueryMultipleValues2_key_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
546 static int winreg_dissect_element_QueryMultipleValues2_values_in(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
547 static int winreg_dissect_element_QueryMultipleValues2_values_in_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
548 static int winreg_dissect_element_QueryMultipleValues2_values_in__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
549 static int winreg_dissect_element_QueryMultipleValues2_values_out(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
550 static int winreg_dissect_element_QueryMultipleValues2_values_out_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
551 static int winreg_dissect_element_QueryMultipleValues2_values_out__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
552 static int winreg_dissect_element_QueryMultipleValues2_num_values(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
553 static int winreg_dissect_element_QueryMultipleValues2_buffer(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
554 static int winreg_dissect_element_QueryMultipleValues2_buffer_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
555 static int winreg_dissect_element_QueryMultipleValues2_buffer__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
556 static int winreg_dissect_element_QueryMultipleValues2_offered(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
557 static int winreg_dissect_element_QueryMultipleValues2_offered_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
558 static int winreg_dissect_element_QueryMultipleValues2_needed(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
559 static int winreg_dissect_element_QueryMultipleValues2_needed_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
560 static int winreg_dissect_element_DeleteKeyEx_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
561 static int winreg_dissect_element_DeleteKeyEx_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
562 static int winreg_dissect_element_DeleteKeyEx_key(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
563 static int winreg_dissect_element_DeleteKeyEx_key_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
564 static int winreg_dissect_element_DeleteKeyEx_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
565 static int winreg_dissect_element_DeleteKeyEx_reserved(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
);
566 #include "packet-dcerpc-lsa.h"
568 winreg_specific_rights(tvbuff_t
*tvb
, int offset
, proto_tree
*tree
, uint32_t access
)
570 static int* const access_flags
[] = {
571 &hf_winreg_winreg_AccessMask_KEY_WOW64_32KEY
,
572 &hf_winreg_winreg_AccessMask_KEY_WOW64_64KEY
,
573 &hf_winreg_winreg_AccessMask_KEY_CREATE_LINK
,
574 &hf_winreg_winreg_AccessMask_KEY_NOTIFY
,
575 &hf_winreg_winreg_AccessMask_KEY_ENUMERATE_SUB_KEYS
,
576 &hf_winreg_winreg_AccessMask_KEY_CREATE_SUB_KEY
,
577 &hf_winreg_winreg_AccessMask_KEY_SET_VALUE
,
578 &hf_winreg_winreg_AccessMask_KEY_QUERY_VALUE
,
581 proto_tree_add_bitmask_list_value(tree
, tvb
, offset
, 4, access_flags
, access
);
583 static struct access_mask_info winreg_access_mask_info
= {
584 "WINREG", /* Name of specific rights */
585 winreg_specific_rights
, /* Dissection function */
586 NULL
, /* Generic mapping table */
587 NULL
/* Standard mapping table */
590 winreg_dissect_element_KeySecurityData_data_(tvbuff_t
*tvb
, int offset
, packet_info
*pinfo
, proto_tree
*tree
, dcerpc_info
* di
, uint8_t *drep
)
593 if(di
->conformant_run
){
594 /*just a run to handle conformant arrays, nothing to dissect */
597 /* this is a varying and conformant array */
598 offset
= dissect_ndr_uint32 (tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_sd_max_size
, NULL
);
599 offset
= dissect_ndr_uint32 (tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_sd_offset
, NULL
);
600 offset
= dissect_ndr_uint32 (tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_sd_actual_size
, &len
);
601 dissect_nt_sec_desc(tvb
, offset
, pinfo
, tree
, drep
, true, len
,
602 &winreg_access_mask_info
);
607 winreg_dissect_bitmap_AccessMask(tvbuff_t
*tvb
, int offset
, packet_info
*pinfo
, proto_tree
*tree
, dcerpc_info
* di
, uint8_t *drep
, int hf_index _U_
, uint32_t param _U_
)
609 offset
= dissect_nt_access_mask(
610 tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
,
611 &winreg_access_mask_info
, NULL
);
615 * typedef [public,noejs] struct {
616 * [value(strlen_m_term(name)*2)] uint16 name_len;
617 * [value(strlen_m_term(name)*2)] uint16 name_size;
618 * [string,charset(UTF16)] uint16 *name;
622 cnf_dissect_winreg_String(tvbuff_t
*tvb
, int offset
, packet_info
*pinfo
, proto_tree
*parent_tree
, dcerpc_info
* di
, uint8_t *drep
, uint32_t param
, int hfindex
)
624 proto_item
*item
= NULL
;
625 proto_tree
*tree
= NULL
;
627 header_field_info
*hf_info
;
630 hf_info
=proto_registrar_get_nth(hfindex
);
632 tree
= proto_tree_add_subtree_format(parent_tree
, tvb
, offset
, 0, ett_winreg_winreg_String
, &item
, "%s: ", hf_info
->name
);
635 offset
= winreg_dissect_element_String_name_len(tvb
, offset
, pinfo
, tree
, di
, drep
);
636 offset
= winreg_dissect_element_String_name_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
637 offset
= dissect_ndr_pointer_cb(
638 tvb
, offset
, pinfo
, tree
, di
, drep
,
639 dissect_ndr_wchar_cvstring
, NDR_POINTER_UNIQUE
,
640 hf_info
->name
, hfindex
, cb_wstr_postprocess
,
641 GINT_TO_POINTER(param
));
642 proto_item_set_len(item
, offset
-old_offset
);
651 winreg_dissect_bitmap_security_secinfo(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
656 proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, 4, DREP_ENC_INTEGER(drep
));
658 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, parent_tree
, di
, drep
, -1, &flags
);
665 /* IDL: KEY_QUERY_VALUE = 0x00000001 , */
666 /* IDL: KEY_SET_VALUE = 0x00000002 , */
667 /* IDL: KEY_CREATE_SUB_KEY = 0x00000004 , */
668 /* IDL: KEY_ENUMERATE_SUB_KEYS = 0x00000008 , */
669 /* IDL: KEY_NOTIFY = 0x00000010 , */
670 /* IDL: KEY_CREATE_LINK = 0x00000020 , */
671 /* IDL: KEY_WOW64_64KEY = 0x00000100 , */
672 /* IDL: KEY_WOW64_32KEY = 0x00000200 , */
677 /* IDL: [value(strlen_m_term(name)*2)] uint16 name_len; */
678 /* IDL: [value(strlen_m_term(name)*2)] uint16 name_size; */
679 /* IDL: [charset(UTF16)] [unique(1)] uint16 *name; */
683 winreg_dissect_element_String_name_len(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
685 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_String_name_len
, 0);
691 winreg_dissect_element_String_name_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
693 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_String_name_size
, 0);
699 winreg_dissect_element_String_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
701 offset
= dissect_ndr_embedded_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_String_name_
, NDR_POINTER_UNIQUE
, "Pointer to Name (uint16)",hf_winreg_winreg_String_name
);
707 winreg_dissect_element_String_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
711 offset
= dissect_ndr_cvstring(tvb
, offset
, pinfo
, tree
, di
, drep
, sizeof(uint16_t), hf_winreg_winreg_String_name
, false, &data
);
712 proto_item_append_text(tree
, ": %s", data
);
718 winreg_dissect_struct_String(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
720 proto_item
*item
= NULL
;
721 proto_tree
*tree
= NULL
;
729 item
= proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, -1, ENC_NA
);
730 tree
= proto_item_add_subtree(item
, ett_winreg_winreg_String
);
733 offset
= winreg_dissect_element_String_name_len(tvb
, offset
, pinfo
, tree
, di
, drep
);
735 offset
= winreg_dissect_element_String_name_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
737 offset
= winreg_dissect_element_String_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
740 proto_item_set_len(item
, offset
-old_offset
);
743 if (di
->call_data
->flags
& DCERPC_IS_NDR64
) {
752 /* IDL: [length_is(len)] [size_is(size)] [unique(1)] uint8 *data; */
753 /* IDL: uint32 size; */
754 /* IDL: uint32 len; */
758 winreg_dissect_element_KeySecurityData_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
760 offset
= dissect_ndr_embedded_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_KeySecurityData_data_
, NDR_POINTER_UNIQUE
, "Pointer to Data (uint8)",hf_winreg_KeySecurityData_data
);
766 winreg_dissect_element_KeySecurityData_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
768 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_KeySecurityData_size
, 0);
774 winreg_dissect_element_KeySecurityData_len(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
776 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_KeySecurityData_len
, 0);
782 winreg_dissect_struct_KeySecurityData(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
784 proto_item
*item
= NULL
;
785 proto_tree
*tree
= NULL
;
793 item
= proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, -1, ENC_NA
);
794 tree
= proto_item_add_subtree(item
, ett_winreg_KeySecurityData
);
797 offset
= winreg_dissect_element_KeySecurityData_data(tvb
, offset
, pinfo
, tree
, di
, drep
);
799 offset
= winreg_dissect_element_KeySecurityData_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
801 offset
= winreg_dissect_element_KeySecurityData_len(tvb
, offset
, pinfo
, tree
, di
, drep
);
804 proto_item_set_len(item
, offset
-old_offset
);
807 if (di
->call_data
->flags
& DCERPC_IS_NDR64
) {
816 /* IDL: uint32 length; */
817 /* IDL: KeySecurityData sd; */
818 /* IDL: uint8 inherit; */
822 winreg_dissect_element_SecBuf_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
824 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SecBuf_length
, 0);
830 winreg_dissect_element_SecBuf_sd(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
832 offset
= winreg_dissect_struct_KeySecurityData(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_SecBuf_sd
,0);
838 winreg_dissect_element_SecBuf_inherit(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
840 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SecBuf_inherit
, 0);
846 winreg_dissect_struct_SecBuf(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
848 proto_item
*item
= NULL
;
849 proto_tree
*tree
= NULL
;
857 item
= proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, -1, ENC_NA
);
858 tree
= proto_item_add_subtree(item
, ett_winreg_winreg_SecBuf
);
861 offset
= winreg_dissect_element_SecBuf_length(tvb
, offset
, pinfo
, tree
, di
, drep
);
863 offset
= winreg_dissect_element_SecBuf_sd(tvb
, offset
, pinfo
, tree
, di
, drep
);
865 offset
= winreg_dissect_element_SecBuf_inherit(tvb
, offset
, pinfo
, tree
, di
, drep
);
868 proto_item_set_len(item
, offset
-old_offset
);
871 if (di
->call_data
->flags
& DCERPC_IS_NDR64
) {
880 /* IDL: REG_OPTION_VOLATILE = 0x00000001 , */
881 /* IDL: REG_OPTION_CREATE_LINK = 0x00000002 , */
882 /* IDL: REG_OPTION_BACKUP_RESTORE = 0x00000004 , */
883 /* IDL: REG_OPTION_OPEN_LINK = 0x00000008 , */
887 winreg_dissect_bitmap_KeyOptions(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
890 static int * const winreg_winreg_KeyOptions_fields
[] = {
891 &hf_winreg_winreg_KeyOptions_REG_OPTION_VOLATILE
,
892 &hf_winreg_winreg_KeyOptions_REG_OPTION_CREATE_LINK
,
893 &hf_winreg_winreg_KeyOptions_REG_OPTION_BACKUP_RESTORE
,
894 &hf_winreg_winreg_KeyOptions_REG_OPTION_OPEN_LINK
,
900 item
= proto_tree_add_bitmask_with_flags(parent_tree
, tvb
, offset
, hf_index
,
901 ett_winreg_winreg_KeyOptions
, winreg_winreg_KeyOptions_fields
, DREP_ENC_INTEGER(drep
), BMT_NO_FALSE
);
903 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, parent_tree
, di
, drep
, -1, &flags
);
906 proto_item_append_text(item
, ": (No values set)");
908 if (flags
& (~0x0000000f)) {
909 flags
&= (~0x0000000f);
910 proto_item_append_text(item
, "Unknown bitmap value 0x%x", flags
);
918 /* IDL: REG_ACTION_NONE=0, */
919 /* IDL: REG_CREATED_NEW_KEY=1, */
920 /* IDL: REG_OPENED_EXISTING_KEY=2, */
924 winreg_dissect_enum_CreateAction(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t *param _U_
)
926 uint32_t parameter
=0;
930 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_index
, ¶meter
);
939 /* IDL: [value(strlen_m_term_null(name)*2)] uint16 length; */
940 /* IDL: uint16 size; */
941 /* IDL: [charset(UTF16)] [length_is(length/2)] [size_is(size/2)] [unique(1)] uint16 *name; */
945 winreg_dissect_element_StringBuf_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
947 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_StringBuf_length
, 0);
953 winreg_dissect_element_StringBuf_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
955 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_StringBuf_size
, 0);
961 winreg_dissect_element_StringBuf_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
963 offset
= dissect_ndr_embedded_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_StringBuf_name_
, NDR_POINTER_UNIQUE
, "Pointer to Name (uint16)",hf_winreg_winreg_StringBuf_name
);
969 winreg_dissect_element_StringBuf_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
971 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_StringBuf_name__
);
977 winreg_dissect_element_StringBuf_name__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
979 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_StringBuf_name
, 0);
985 winreg_dissect_struct_StringBuf(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
987 proto_item
*item
= NULL
;
988 proto_tree
*tree
= NULL
;
996 item
= proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, -1, ENC_NA
);
997 tree
= proto_item_add_subtree(item
, ett_winreg_winreg_StringBuf
);
1000 offset
= winreg_dissect_element_StringBuf_length(tvb
, offset
, pinfo
, tree
, di
, drep
);
1002 offset
= winreg_dissect_element_StringBuf_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
1004 offset
= winreg_dissect_element_StringBuf_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1007 proto_item_set_len(item
, offset
-old_offset
);
1010 if (di
->call_data
->flags
& DCERPC_IS_NDR64
) {
1019 /* IDL: [value(strlen_m_term(name)*2)] uint16 length; */
1020 /* IDL: uint16 size; */
1021 /* IDL: [charset(UTF16)] [length_is(length/2)] [size_is(size/2)] [unique(1)] uint16 *name; */
1025 winreg_dissect_element_ValNameBuf_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1027 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_ValNameBuf_length
, 0);
1033 winreg_dissect_element_ValNameBuf_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1035 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_ValNameBuf_size
, 0);
1041 winreg_dissect_element_ValNameBuf_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1043 offset
= dissect_ndr_embedded_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_ValNameBuf_name_
, NDR_POINTER_UNIQUE
, "Pointer to Name (uint16)",hf_winreg_winreg_ValNameBuf_name
);
1049 winreg_dissect_element_ValNameBuf_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1051 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_ValNameBuf_name__
);
1057 winreg_dissect_element_ValNameBuf_name__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1059 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_ValNameBuf_name
, 0);
1065 winreg_dissect_struct_ValNameBuf(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
1067 proto_item
*item
= NULL
;
1068 proto_tree
*tree
= NULL
;
1073 old_offset
= offset
;
1076 item
= proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, -1, ENC_NA
);
1077 tree
= proto_item_add_subtree(item
, ett_winreg_winreg_ValNameBuf
);
1080 offset
= winreg_dissect_element_ValNameBuf_length(tvb
, offset
, pinfo
, tree
, di
, drep
);
1082 offset
= winreg_dissect_element_ValNameBuf_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
1084 offset
= winreg_dissect_element_ValNameBuf_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1087 proto_item_set_len(item
, offset
-old_offset
);
1090 if (di
->call_data
->flags
& DCERPC_IS_NDR64
) {
1099 /* IDL: REG_NOTIFY_CHANGE_NAME = 0x00000001 , */
1100 /* IDL: REG_NOTIFY_CHANGE_ATTRIBUTES = 0x00000002 , */
1101 /* IDL: REG_NOTIFY_CHANGE_LAST_SET = 0x00000004 , */
1102 /* IDL: REG_NOTIFY_CHANGE_SECURITY = 0x00000008 , */
1106 winreg_dissect_bitmap_NotifyChangeType(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
1109 static int * const winreg_winreg_NotifyChangeType_fields
[] = {
1110 &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_NAME
,
1111 &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_ATTRIBUTES
,
1112 &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_LAST_SET
,
1113 &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_SECURITY
,
1119 item
= proto_tree_add_bitmask_with_flags(parent_tree
, tvb
, offset
, hf_index
,
1120 ett_winreg_winreg_NotifyChangeType
, winreg_winreg_NotifyChangeType_fields
, DREP_ENC_INTEGER(drep
), BMT_NO_FALSE
);
1122 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, parent_tree
, di
, drep
, -1, &flags
);
1125 proto_item_append_text(item
, ": (No values set)");
1127 if (flags
& (~0x0000000f)) {
1128 flags
&= (~0x0000000f);
1129 proto_item_append_text(item
, "Unknown bitmap value 0x%x", flags
);
1137 /* IDL: REG_WHOLE_HIVE_VOLATILE = 0x00000001 , */
1138 /* IDL: REG_REFRESH_HIVE = 0x00000002 , */
1139 /* IDL: REG_NO_LAZY_FLUSH = 0x00000004 , */
1140 /* IDL: REG_FORCE_RESTORE = 0x00000008 , */
1144 winreg_dissect_bitmap_RestoreKeyFlags(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
1147 static int * const winreg_winreg_RestoreKeyFlags_fields
[] = {
1148 &hf_winreg_winreg_RestoreKeyFlags_REG_WHOLE_HIVE_VOLATILE
,
1149 &hf_winreg_winreg_RestoreKeyFlags_REG_REFRESH_HIVE
,
1150 &hf_winreg_winreg_RestoreKeyFlags_REG_NO_LAZY_FLUSH
,
1151 &hf_winreg_winreg_RestoreKeyFlags_REG_FORCE_RESTORE
,
1157 item
= proto_tree_add_bitmask_with_flags(parent_tree
, tvb
, offset
, hf_index
,
1158 ett_winreg_winreg_RestoreKeyFlags
, winreg_winreg_RestoreKeyFlags_fields
, DREP_ENC_INTEGER(drep
), BMT_NO_FALSE
);
1160 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, parent_tree
, di
, drep
, -1, &flags
);
1163 proto_item_append_text(item
, ": (No values set)");
1165 if (flags
& (~0x0000000f)) {
1166 flags
&= (~0x0000000f);
1167 proto_item_append_text(item
, "Unknown bitmap value 0x%x", flags
);
1175 /* IDL: uint32 data_size; */
1176 /* IDL: KeySecurityData sec_data; */
1177 /* IDL: uint8 inherit; */
1181 winreg_dissect_element_KeySecurityAttribute_data_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1183 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_KeySecurityAttribute_data_size
, 0);
1189 winreg_dissect_element_KeySecurityAttribute_sec_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1191 offset
= winreg_dissect_struct_KeySecurityData(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_KeySecurityAttribute_sec_data
,0);
1197 winreg_dissect_element_KeySecurityAttribute_inherit(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1199 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_KeySecurityAttribute_inherit
, 0);
1205 winreg_dissect_struct_KeySecurityAttribute(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
1207 proto_item
*item
= NULL
;
1208 proto_tree
*tree
= NULL
;
1213 old_offset
= offset
;
1216 item
= proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, -1, ENC_NA
);
1217 tree
= proto_item_add_subtree(item
, ett_winreg_KeySecurityAttribute
);
1220 offset
= winreg_dissect_element_KeySecurityAttribute_data_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
1222 offset
= winreg_dissect_element_KeySecurityAttribute_sec_data(tvb
, offset
, pinfo
, tree
, di
, drep
);
1224 offset
= winreg_dissect_element_KeySecurityAttribute_inherit(tvb
, offset
, pinfo
, tree
, di
, drep
);
1227 proto_item_set_len(item
, offset
-old_offset
);
1230 if (di
->call_data
->flags
& DCERPC_IS_NDR64
) {
1239 /* IDL: [unique(1)] winreg_ValNameBuf *ve_valuename; */
1240 /* IDL: uint32 ve_valuelen; */
1241 /* IDL: uint32 ve_valueptr; */
1242 /* IDL: winreg_Type ve_type; */
1246 winreg_dissect_element_QueryMultipleValue_ve_valuename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1248 offset
= dissect_ndr_embedded_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValue_ve_valuename_
, NDR_POINTER_UNIQUE
, "Pointer to Ve Valuename (winreg_ValNameBuf)",hf_winreg_QueryMultipleValue_ve_valuename
);
1254 winreg_dissect_element_QueryMultipleValue_ve_valuename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1256 offset
= winreg_dissect_struct_ValNameBuf(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_QueryMultipleValue_ve_valuename
,0);
1262 winreg_dissect_element_QueryMultipleValue_ve_valuelen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1264 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_QueryMultipleValue_ve_valuelen
, 0);
1270 winreg_dissect_element_QueryMultipleValue_ve_valueptr(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1272 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_QueryMultipleValue_ve_valueptr
, 0);
1278 winreg_dissect_element_QueryMultipleValue_ve_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1280 offset
=misc_dissect_enum_winreg_Type(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_QueryMultipleValue_ve_type
, 0);
1286 winreg_dissect_struct_QueryMultipleValue(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*parent_tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
, int hf_index _U_
, uint32_t param _U_
)
1288 proto_item
*item
= NULL
;
1289 proto_tree
*tree
= NULL
;
1294 old_offset
= offset
;
1297 item
= proto_tree_add_item(parent_tree
, hf_index
, tvb
, offset
, -1, ENC_NA
);
1298 tree
= proto_item_add_subtree(item
, ett_winreg_QueryMultipleValue
);
1301 offset
= winreg_dissect_element_QueryMultipleValue_ve_valuename(tvb
, offset
, pinfo
, tree
, di
, drep
);
1303 offset
= winreg_dissect_element_QueryMultipleValue_ve_valuelen(tvb
, offset
, pinfo
, tree
, di
, drep
);
1305 offset
= winreg_dissect_element_QueryMultipleValue_ve_valueptr(tvb
, offset
, pinfo
, tree
, di
, drep
);
1307 offset
= winreg_dissect_element_QueryMultipleValue_ve_type(tvb
, offset
, pinfo
, tree
, di
, drep
);
1310 proto_item_set_len(item
, offset
-old_offset
);
1313 if (di
->call_data
->flags
& DCERPC_IS_NDR64
) {
1321 winreg_dissect_element_OpenHKCR_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1323 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKCR_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
1329 winreg_dissect_element_OpenHKCR_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1331 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
1337 winreg_dissect_element_OpenHKCR_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1339 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
1345 winreg_dissect_element_OpenHKCR_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1347 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKCR_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1353 winreg_dissect_element_OpenHKCR_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1355 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
1360 /* IDL: WERROR winreg_OpenHKCR( */
1361 /* IDL: [in] [unique(1)] uint16 *system_name, */
1362 /* IDL: [in] winreg_AccessMask access_mask, */
1363 /* IDL: [out] [ref] policy_handle *handle */
1367 winreg_dissect_OpenHKCR_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1371 di
->dcerpc_procedure_name
="OpenHKCR";
1372 offset
= winreg_dissect_element_OpenHKCR_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1373 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1375 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1378 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1384 winreg_dissect_OpenHKCR_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1386 di
->dcerpc_procedure_name
="OpenHKCR";
1387 offset
= winreg_dissect_element_OpenHKCR_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1388 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1389 offset
= winreg_dissect_element_OpenHKCR_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
1390 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1395 winreg_dissect_element_OpenHKCU_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1397 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKCU_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
1403 winreg_dissect_element_OpenHKCU_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1405 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
1411 winreg_dissect_element_OpenHKCU_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1413 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_OpenHKCU_access_mask
, 0);
1419 winreg_dissect_element_OpenHKCU_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1421 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKCU_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1427 winreg_dissect_element_OpenHKCU_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1429 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
1434 /* IDL: WERROR winreg_OpenHKCU( */
1435 /* IDL: [in] [unique(1)] uint16 *system_name, */
1436 /* IDL: [in] winreg_AccessMask access_mask, */
1437 /* IDL: [out] [ref] policy_handle *handle */
1441 winreg_dissect_OpenHKCU_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1445 di
->dcerpc_procedure_name
="OpenHKCU";
1446 offset
= winreg_dissect_element_OpenHKCU_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1447 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1449 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1452 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1458 winreg_dissect_OpenHKCU_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1460 di
->dcerpc_procedure_name
="OpenHKCU";
1461 offset
= winreg_dissect_element_OpenHKCU_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1462 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1463 offset
= winreg_dissect_element_OpenHKCU_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
1464 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1469 winreg_dissect_element_OpenHKLM_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1471 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKLM_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
1477 winreg_dissect_element_OpenHKLM_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1479 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
1485 winreg_dissect_element_OpenHKLM_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1487 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
1493 winreg_dissect_element_OpenHKLM_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1495 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKLM_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1501 winreg_dissect_element_OpenHKLM_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1503 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
1508 /* IDL: WERROR winreg_OpenHKLM( */
1509 /* IDL: [in] [unique(1)] uint16 *system_name, */
1510 /* IDL: [in] winreg_AccessMask access_mask, */
1511 /* IDL: [out] [ref] policy_handle *handle */
1515 winreg_dissect_OpenHKLM_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1519 di
->dcerpc_procedure_name
="OpenHKLM";
1520 offset
= winreg_dissect_element_OpenHKLM_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1521 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1523 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1526 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1532 winreg_dissect_OpenHKLM_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1534 di
->dcerpc_procedure_name
="OpenHKLM";
1535 offset
= winreg_dissect_element_OpenHKLM_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1536 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1537 offset
= winreg_dissect_element_OpenHKLM_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
1538 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1543 winreg_dissect_element_OpenHKPD_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1545 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKPD_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
1551 winreg_dissect_element_OpenHKPD_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1553 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
1559 winreg_dissect_element_OpenHKPD_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1561 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_OpenHKPD_access_mask
, 0);
1567 winreg_dissect_element_OpenHKPD_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1569 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKPD_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1575 winreg_dissect_element_OpenHKPD_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1577 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
1582 /* IDL: WERROR winreg_OpenHKPD( */
1583 /* IDL: [in] [unique(1)] uint16 *system_name, */
1584 /* IDL: [in] winreg_AccessMask access_mask, */
1585 /* IDL: [out] [ref] policy_handle *handle */
1589 winreg_dissect_OpenHKPD_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1593 di
->dcerpc_procedure_name
="OpenHKPD";
1594 offset
= winreg_dissect_element_OpenHKPD_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1595 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1597 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1600 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1606 winreg_dissect_OpenHKPD_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1608 di
->dcerpc_procedure_name
="OpenHKPD";
1609 offset
= winreg_dissect_element_OpenHKPD_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1610 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1611 offset
= winreg_dissect_element_OpenHKPD_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
1612 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1617 winreg_dissect_element_OpenHKU_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1619 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKU_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
1625 winreg_dissect_element_OpenHKU_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1627 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
1633 winreg_dissect_element_OpenHKU_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1635 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
1641 winreg_dissect_element_OpenHKU_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1643 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKU_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1649 winreg_dissect_element_OpenHKU_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1651 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
1656 /* IDL: WERROR winreg_OpenHKU( */
1657 /* IDL: [in] [unique(1)] uint16 *system_name, */
1658 /* IDL: [in] winreg_AccessMask access_mask, */
1659 /* IDL: [out] [ref] policy_handle *handle */
1663 winreg_dissect_OpenHKU_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1667 di
->dcerpc_procedure_name
="OpenHKU";
1668 offset
= winreg_dissect_element_OpenHKU_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1669 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1671 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1674 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1680 winreg_dissect_OpenHKU_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1682 di
->dcerpc_procedure_name
="OpenHKU";
1683 offset
= winreg_dissect_element_OpenHKU_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1684 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1685 offset
= winreg_dissect_element_OpenHKU_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
1686 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1691 winreg_dissect_element_CloseKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1693 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_CloseKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1699 winreg_dissect_element_CloseKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1701 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_CLOSE
);
1706 /* IDL: WERROR winreg_CloseKey( */
1707 /* IDL: [in] [out] [ref] policy_handle *handle */
1711 winreg_dissect_CloseKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1715 di
->dcerpc_procedure_name
="CloseKey";
1716 offset
= winreg_dissect_element_CloseKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1717 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1719 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1722 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1728 winreg_dissect_CloseKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1730 di
->dcerpc_procedure_name
="CloseKey";
1731 offset
= winreg_dissect_element_CloseKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1732 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1737 winreg_dissect_element_CreateKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1739 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_CreateKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1745 winreg_dissect_element_CreateKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1747 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
1753 winreg_dissect_element_CreateKey_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1755 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 2|PIDL_SET_COL_INFO
, hf_winreg_winreg_CreateKey_name
);
1761 winreg_dissect_element_CreateKey_keyclass(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1763 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_CreateKey_keyclass
);
1769 winreg_dissect_element_CreateKey_options(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1771 offset
= winreg_dissect_bitmap_KeyOptions(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_CreateKey_options
, 0);
1777 winreg_dissect_element_CreateKey_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1779 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
1785 winreg_dissect_element_CreateKey_secdesc(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1787 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_CreateKey_secdesc_
, NDR_POINTER_UNIQUE
, "Pointer to Secdesc (winreg_SecBuf)",hf_winreg_winreg_CreateKey_secdesc
);
1793 winreg_dissect_element_CreateKey_secdesc_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1795 offset
= winreg_dissect_struct_SecBuf(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_CreateKey_secdesc
,0);
1801 winreg_dissect_element_CreateKey_new_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1803 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_CreateKey_new_handle_
, NDR_POINTER_REF
, "Pointer to New Handle (policy_handle)",hf_winreg_winreg_CreateKey_new_handle
);
1809 winreg_dissect_element_CreateKey_new_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1811 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_CreateKey_new_handle
, PIDL_POLHND_OPEN
);
1817 winreg_dissect_element_CreateKey_action_taken(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1819 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_CreateKey_action_taken_
, NDR_POINTER_UNIQUE
, "Pointer to Action Taken (winreg_CreateAction)",hf_winreg_winreg_CreateKey_action_taken
);
1825 winreg_dissect_element_CreateKey_action_taken_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1827 offset
= winreg_dissect_enum_CreateAction(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_CreateKey_action_taken
, 0);
1832 /* IDL: WERROR winreg_CreateKey( */
1833 /* IDL: [in] [ref] policy_handle *handle, */
1834 /* IDL: [in] winreg_String name, */
1835 /* IDL: [in] winreg_String keyclass, */
1836 /* IDL: [in] winreg_KeyOptions options, */
1837 /* IDL: [in] winreg_AccessMask access_mask, */
1838 /* IDL: [in] [unique(1)] winreg_SecBuf *secdesc, */
1839 /* IDL: [out] [ref] policy_handle *new_handle, */
1840 /* IDL: [in] [out] [unique(1)] winreg_CreateAction *action_taken */
1844 winreg_dissect_CreateKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1848 di
->dcerpc_procedure_name
="CreateKey";
1849 offset
= winreg_dissect_element_CreateKey_new_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1850 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1852 offset
= winreg_dissect_element_CreateKey_action_taken(tvb
, offset
, pinfo
, tree
, di
, drep
);
1853 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1855 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1858 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1864 winreg_dissect_CreateKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1866 di
->dcerpc_procedure_name
="CreateKey";
1867 offset
= winreg_dissect_element_CreateKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1868 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1869 offset
= winreg_dissect_element_CreateKey_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
1870 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1871 offset
= winreg_dissect_element_CreateKey_keyclass(tvb
, offset
, pinfo
, tree
, di
, drep
);
1872 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1873 offset
= winreg_dissect_element_CreateKey_options(tvb
, offset
, pinfo
, tree
, di
, drep
);
1874 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1875 offset
= winreg_dissect_element_CreateKey_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
1876 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1877 offset
= winreg_dissect_element_CreateKey_secdesc(tvb
, offset
, pinfo
, tree
, di
, drep
);
1878 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1879 offset
= winreg_dissect_element_CreateKey_action_taken(tvb
, offset
, pinfo
, tree
, di
, drep
);
1880 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1885 winreg_dissect_element_DeleteKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1887 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_DeleteKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1893 winreg_dissect_element_DeleteKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1895 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
1901 winreg_dissect_element_DeleteKey_key(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1903 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 2|PIDL_SET_COL_INFO
, hf_winreg_winreg_DeleteKey_key
);
1908 /* IDL: WERROR winreg_DeleteKey( */
1909 /* IDL: [in] [ref] policy_handle *handle, */
1910 /* IDL: [in] winreg_String key */
1914 winreg_dissect_DeleteKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1918 di
->dcerpc_procedure_name
="DeleteKey";
1919 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1922 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1928 winreg_dissect_DeleteKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1930 di
->dcerpc_procedure_name
="DeleteKey";
1931 offset
= winreg_dissect_element_DeleteKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1932 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1933 offset
= winreg_dissect_element_DeleteKey_key(tvb
, offset
, pinfo
, tree
, di
, drep
);
1934 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1939 winreg_dissect_element_DeleteValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1941 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_DeleteValue_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
1947 winreg_dissect_element_DeleteValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1949 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
1955 winreg_dissect_element_DeleteValue_value(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1957 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_DeleteValue_value
);
1962 /* IDL: WERROR winreg_DeleteValue( */
1963 /* IDL: [in] [ref] policy_handle *handle, */
1964 /* IDL: [in] winreg_String value */
1968 winreg_dissect_DeleteValue_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1972 di
->dcerpc_procedure_name
="DeleteValue";
1973 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
1976 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
1982 winreg_dissect_DeleteValue_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1984 di
->dcerpc_procedure_name
="DeleteValue";
1985 offset
= winreg_dissect_element_DeleteValue_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
1986 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1987 offset
= winreg_dissect_element_DeleteValue_value(tvb
, offset
, pinfo
, tree
, di
, drep
);
1988 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
1993 winreg_dissect_element_EnumKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
1995 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2001 winreg_dissect_element_EnumKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2003 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2009 winreg_dissect_element_EnumKey_enum_index(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2011 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_EnumKey_enum_index
, 0);
2017 winreg_dissect_element_EnumKey_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2019 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumKey_name_
, NDR_POINTER_REF
, "Pointer to Name (winreg_StringBuf)",hf_winreg_winreg_EnumKey_name
);
2025 winreg_dissect_element_EnumKey_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2027 offset
= winreg_dissect_struct_StringBuf(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_EnumKey_name
,0);
2033 winreg_dissect_element_EnumKey_keyclass(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2035 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumKey_keyclass_
, NDR_POINTER_UNIQUE
, "Pointer to Keyclass (winreg_StringBuf)",hf_winreg_winreg_EnumKey_keyclass
);
2041 winreg_dissect_element_EnumKey_keyclass_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2043 offset
= winreg_dissect_struct_StringBuf(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_EnumKey_keyclass
,0);
2049 winreg_dissect_element_EnumKey_last_changed_time(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2051 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumKey_last_changed_time_
, NDR_POINTER_UNIQUE
, "Pointer to Last Changed Time (NTTIME)",hf_winreg_winreg_EnumKey_last_changed_time
);
2057 winreg_dissect_element_EnumKey_last_changed_time_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2059 offset
= dissect_ndr_nt_NTTIME(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_EnumKey_last_changed_time
);
2064 /* IDL: WERROR winreg_EnumKey( */
2065 /* IDL: [in] [ref] policy_handle *handle, */
2066 /* IDL: [in] uint32 enum_index, */
2067 /* IDL: [in] [out] [ref] winreg_StringBuf *name, */
2068 /* IDL: [in] [out] [unique(1)] winreg_StringBuf *keyclass, */
2069 /* IDL: [in] [out] [unique(1)] NTTIME *last_changed_time */
2073 winreg_dissect_EnumKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2077 di
->dcerpc_procedure_name
="EnumKey";
2078 offset
= winreg_dissect_element_EnumKey_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
2079 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2081 offset
= winreg_dissect_element_EnumKey_keyclass(tvb
, offset
, pinfo
, tree
, di
, drep
);
2082 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2084 offset
= winreg_dissect_element_EnumKey_last_changed_time(tvb
, offset
, pinfo
, tree
, di
, drep
);
2085 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2087 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2090 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2096 winreg_dissect_EnumKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2098 di
->dcerpc_procedure_name
="EnumKey";
2099 offset
= winreg_dissect_element_EnumKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2100 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2101 offset
= winreg_dissect_element_EnumKey_enum_index(tvb
, offset
, pinfo
, tree
, di
, drep
);
2102 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2103 offset
= winreg_dissect_element_EnumKey_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
2104 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2105 offset
= winreg_dissect_element_EnumKey_keyclass(tvb
, offset
, pinfo
, tree
, di
, drep
);
2106 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2107 offset
= winreg_dissect_element_EnumKey_last_changed_time(tvb
, offset
, pinfo
, tree
, di
, drep
);
2108 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2113 winreg_dissect_element_EnumValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2115 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumValue_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2121 winreg_dissect_element_EnumValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2123 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2129 winreg_dissect_element_EnumValue_enum_index(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2131 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_EnumValue_enum_index
, 0);
2137 winreg_dissect_element_EnumValue_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2139 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumValue_name_
, NDR_POINTER_REF
, "Pointer to Name (winreg_ValNameBuf)",hf_winreg_winreg_EnumValue_name
);
2145 winreg_dissect_element_EnumValue_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2147 offset
= winreg_dissect_struct_ValNameBuf(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_EnumValue_name
,0);
2153 winreg_dissect_element_EnumValue_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2155 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumValue_type_
, NDR_POINTER_UNIQUE
, "Pointer to Type (winreg_Type)",hf_winreg_winreg_EnumValue_type
);
2161 winreg_dissect_element_EnumValue_type_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2163 offset
=misc_dissect_enum_winreg_Type(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_EnumValue_type
, 0);
2169 winreg_dissect_element_EnumValue_value(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2171 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumValue_value_
, NDR_POINTER_UNIQUE
, "Pointer to Value (uint8)",hf_winreg_winreg_EnumValue_value
);
2177 winreg_dissect_element_EnumValue_value_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2179 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumValue_value__
);
2185 winreg_dissect_element_EnumValue_value__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2187 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_EnumValue_value
, 0);
2193 winreg_dissect_element_EnumValue_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2195 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumValue_size_
, NDR_POINTER_UNIQUE
, "Pointer to Size (uint32)",hf_winreg_winreg_EnumValue_size
);
2201 winreg_dissect_element_EnumValue_size_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2203 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_EnumValue_size
, 0);
2209 winreg_dissect_element_EnumValue_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2211 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_EnumValue_length_
, NDR_POINTER_UNIQUE
, "Pointer to Length (uint32)",hf_winreg_winreg_EnumValue_length
);
2217 winreg_dissect_element_EnumValue_length_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2219 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_EnumValue_length
, 0);
2224 /* IDL: WERROR winreg_EnumValue( */
2225 /* IDL: [in] [ref] policy_handle *handle, */
2226 /* IDL: [in] uint32 enum_index, */
2227 /* IDL: [in] [out] [ref] winreg_ValNameBuf *name, */
2228 /* IDL: [in] [out] [unique(1)] winreg_Type *type, */
2229 /* IDL: [in] [length_is(length?*length:0)] [out] [range(0,0x4000000)] [size_is(size?*size:0)] [unique(1)] uint8 *value, */
2230 /* IDL: [in] [out] [unique(1)] uint32 *size, */
2231 /* IDL: [in] [out] [unique(1)] uint32 *length */
2235 winreg_dissect_EnumValue_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2239 di
->dcerpc_procedure_name
="EnumValue";
2240 offset
= winreg_dissect_element_EnumValue_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
2241 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2243 offset
= winreg_dissect_element_EnumValue_type(tvb
, offset
, pinfo
, tree
, di
, drep
);
2244 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2246 offset
= winreg_dissect_element_EnumValue_value(tvb
, offset
, pinfo
, tree
, di
, drep
);
2247 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2249 offset
= winreg_dissect_element_EnumValue_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
2250 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2252 offset
= winreg_dissect_element_EnumValue_length(tvb
, offset
, pinfo
, tree
, di
, drep
);
2253 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2255 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2258 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2264 winreg_dissect_EnumValue_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2266 di
->dcerpc_procedure_name
="EnumValue";
2267 offset
= winreg_dissect_element_EnumValue_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2268 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2269 offset
= winreg_dissect_element_EnumValue_enum_index(tvb
, offset
, pinfo
, tree
, di
, drep
);
2270 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2271 offset
= winreg_dissect_element_EnumValue_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
2272 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2273 offset
= winreg_dissect_element_EnumValue_type(tvb
, offset
, pinfo
, tree
, di
, drep
);
2274 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2275 offset
= winreg_dissect_element_EnumValue_value(tvb
, offset
, pinfo
, tree
, di
, drep
);
2276 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2277 offset
= winreg_dissect_element_EnumValue_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
2278 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2279 offset
= winreg_dissect_element_EnumValue_length(tvb
, offset
, pinfo
, tree
, di
, drep
);
2280 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2285 winreg_dissect_element_FlushKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2287 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_FlushKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2293 winreg_dissect_element_FlushKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2295 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2300 /* IDL: WERROR winreg_FlushKey( */
2301 /* IDL: [in] [ref] policy_handle *handle */
2305 winreg_dissect_FlushKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2309 di
->dcerpc_procedure_name
="FlushKey";
2310 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2313 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2319 winreg_dissect_FlushKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2321 di
->dcerpc_procedure_name
="FlushKey";
2322 offset
= winreg_dissect_element_FlushKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2323 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2328 winreg_dissect_element_GetKeySecurity_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2330 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_GetKeySecurity_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2336 winreg_dissect_element_GetKeySecurity_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2338 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2344 winreg_dissect_element_GetKeySecurity_sec_info(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2346 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_GetKeySecurity_sec_info
, NULL
);
2352 winreg_dissect_element_GetKeySecurity_sd(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2354 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_GetKeySecurity_sd_
, NDR_POINTER_REF
, "Pointer to Sd (KeySecurityData)",hf_winreg_sd
);
2360 winreg_dissect_element_GetKeySecurity_sd_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2362 offset
= winreg_dissect_struct_KeySecurityData(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_sd
,0);
2367 /* IDL: WERROR winreg_GetKeySecurity( */
2368 /* IDL: [in] [ref] policy_handle *handle, */
2369 /* IDL: [in] security_secinfo sec_info, */
2370 /* IDL: [in] [out] [ref] KeySecurityData *sd */
2374 winreg_dissect_GetKeySecurity_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2378 di
->dcerpc_procedure_name
="GetKeySecurity";
2379 offset
= winreg_dissect_element_GetKeySecurity_sd(tvb
, offset
, pinfo
, tree
, di
, drep
);
2380 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2382 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2385 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2391 winreg_dissect_GetKeySecurity_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2393 di
->dcerpc_procedure_name
="GetKeySecurity";
2394 offset
= winreg_dissect_element_GetKeySecurity_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2395 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2396 offset
= winreg_dissect_element_GetKeySecurity_sec_info(tvb
, offset
, pinfo
, tree
, di
, drep
);
2397 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2398 offset
= winreg_dissect_element_GetKeySecurity_sd(tvb
, offset
, pinfo
, tree
, di
, drep
);
2399 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2404 winreg_dissect_element_LoadKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2406 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_LoadKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2412 winreg_dissect_element_LoadKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2414 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2420 winreg_dissect_element_LoadKey_keyname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2422 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_LoadKey_keyname_
, NDR_POINTER_UNIQUE
, "Pointer to Keyname (winreg_String)",hf_winreg_winreg_LoadKey_keyname
);
2428 winreg_dissect_element_LoadKey_keyname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2430 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_LoadKey_keyname
);
2436 winreg_dissect_element_LoadKey_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2438 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_LoadKey_filename_
, NDR_POINTER_UNIQUE
, "Pointer to Filename (winreg_String)",hf_winreg_winreg_LoadKey_filename
);
2444 winreg_dissect_element_LoadKey_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2446 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_LoadKey_filename
);
2451 /* IDL: WERROR winreg_LoadKey( */
2452 /* IDL: [in] [ref] policy_handle *handle, */
2453 /* IDL: [in] [unique(1)] winreg_String *keyname, */
2454 /* IDL: [in] [unique(1)] winreg_String *filename */
2458 winreg_dissect_LoadKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2462 di
->dcerpc_procedure_name
="LoadKey";
2463 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2466 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2472 winreg_dissect_LoadKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2474 di
->dcerpc_procedure_name
="LoadKey";
2475 offset
= winreg_dissect_element_LoadKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2476 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2477 offset
= winreg_dissect_element_LoadKey_keyname(tvb
, offset
, pinfo
, tree
, di
, drep
);
2478 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2479 offset
= winreg_dissect_element_LoadKey_filename(tvb
, offset
, pinfo
, tree
, di
, drep
);
2480 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2485 winreg_dissect_element_NotifyChangeKeyValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2487 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_NotifyChangeKeyValue_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2493 winreg_dissect_element_NotifyChangeKeyValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2495 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2501 winreg_dissect_element_NotifyChangeKeyValue_watch_subtree(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2503 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_NotifyChangeKeyValue_watch_subtree
, 0);
2509 winreg_dissect_element_NotifyChangeKeyValue_notify_filter(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2511 offset
= winreg_dissect_bitmap_NotifyChangeType(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_NotifyChangeKeyValue_notify_filter
, 0);
2517 winreg_dissect_element_NotifyChangeKeyValue_unknown(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2519 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_NotifyChangeKeyValue_unknown
, 0);
2525 winreg_dissect_element_NotifyChangeKeyValue_string1(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2527 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_NotifyChangeKeyValue_string1
);
2533 winreg_dissect_element_NotifyChangeKeyValue_string2(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2535 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_NotifyChangeKeyValue_string2
);
2541 winreg_dissect_element_NotifyChangeKeyValue_unknown2(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2543 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_NotifyChangeKeyValue_unknown2
, 0);
2548 /* IDL: WERROR winreg_NotifyChangeKeyValue( */
2549 /* IDL: [in] [ref] policy_handle *handle, */
2550 /* IDL: [in] uint8 watch_subtree, */
2551 /* IDL: [in] winreg_NotifyChangeType notify_filter, */
2552 /* IDL: [in] uint32 unknown, */
2553 /* IDL: [in] winreg_String string1, */
2554 /* IDL: [in] winreg_String string2, */
2555 /* IDL: [in] uint32 unknown2 */
2559 winreg_dissect_NotifyChangeKeyValue_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2563 di
->dcerpc_procedure_name
="NotifyChangeKeyValue";
2564 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2567 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2573 winreg_dissect_NotifyChangeKeyValue_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2575 di
->dcerpc_procedure_name
="NotifyChangeKeyValue";
2576 offset
= winreg_dissect_element_NotifyChangeKeyValue_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2577 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2578 offset
= winreg_dissect_element_NotifyChangeKeyValue_watch_subtree(tvb
, offset
, pinfo
, tree
, di
, drep
);
2579 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2580 offset
= winreg_dissect_element_NotifyChangeKeyValue_notify_filter(tvb
, offset
, pinfo
, tree
, di
, drep
);
2581 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2582 offset
= winreg_dissect_element_NotifyChangeKeyValue_unknown(tvb
, offset
, pinfo
, tree
, di
, drep
);
2583 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2584 offset
= winreg_dissect_element_NotifyChangeKeyValue_string1(tvb
, offset
, pinfo
, tree
, di
, drep
);
2585 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2586 offset
= winreg_dissect_element_NotifyChangeKeyValue_string2(tvb
, offset
, pinfo
, tree
, di
, drep
);
2587 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2588 offset
= winreg_dissect_element_NotifyChangeKeyValue_unknown2(tvb
, offset
, pinfo
, tree
, di
, drep
);
2589 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2594 winreg_dissect_element_OpenKey_parent_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2596 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenKey_parent_handle_
, NDR_POINTER_REF
, "Pointer to Parent Handle (policy_handle)",hf_winreg_winreg_OpenKey_parent_handle
);
2602 winreg_dissect_element_OpenKey_parent_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2604 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_OpenKey_parent_handle
, 0);
2610 winreg_dissect_element_OpenKey_keyname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2612 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 2|PIDL_SET_COL_INFO
|PIDL_STR_SAVE
, hf_winreg_winreg_OpenKey_keyname
);
2618 winreg_dissect_element_OpenKey_options(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2620 offset
= winreg_dissect_bitmap_KeyOptions(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_OpenKey_options
, 0);
2626 winreg_dissect_element_OpenKey_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2628 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_OpenKey_access_mask
, 0);
2634 winreg_dissect_element_OpenKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2636 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2642 winreg_dissect_element_OpenKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2644 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
2649 /* IDL: WERROR winreg_OpenKey( */
2650 /* IDL: [in] [ref] policy_handle *parent_handle, */
2651 /* IDL: [in] winreg_String keyname, */
2652 /* IDL: [in] winreg_KeyOptions options, */
2653 /* IDL: [in] winreg_AccessMask access_mask, */
2654 /* IDL: [out] [ref] policy_handle *handle */
2658 winreg_dissect_OpenKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2662 di
->dcerpc_procedure_name
="OpenKey";
2663 offset
= winreg_dissect_element_OpenKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2664 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2666 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2669 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2675 winreg_dissect_OpenKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2677 di
->dcerpc_procedure_name
="OpenKey";
2678 offset
= winreg_dissect_element_OpenKey_parent_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2679 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2680 offset
= winreg_dissect_element_OpenKey_keyname(tvb
, offset
, pinfo
, tree
, di
, drep
);
2681 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2682 offset
= winreg_dissect_element_OpenKey_options(tvb
, offset
, pinfo
, tree
, di
, drep
);
2683 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2684 offset
= winreg_dissect_element_OpenKey_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
2685 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2690 winreg_dissect_element_QueryInfoKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2692 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2698 winreg_dissect_element_QueryInfoKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2700 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2706 winreg_dissect_element_QueryInfoKey_classname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2708 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_classname_
, NDR_POINTER_REF
, "Pointer to Classname (winreg_String)",hf_winreg_winreg_QueryInfoKey_classname
);
2714 winreg_dissect_element_QueryInfoKey_classname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2716 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_QueryInfoKey_classname
);
2722 winreg_dissect_element_QueryInfoKey_num_subkeys(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2724 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_num_subkeys_
, NDR_POINTER_REF
, "Pointer to Num Subkeys (uint32)",hf_winreg_winreg_QueryInfoKey_num_subkeys
);
2730 winreg_dissect_element_QueryInfoKey_num_subkeys_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2732 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_num_subkeys
, 0);
2738 winreg_dissect_element_QueryInfoKey_max_subkeylen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2740 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_max_subkeylen_
, NDR_POINTER_REF
, "Pointer to Max Subkeylen (uint32)",hf_winreg_winreg_QueryInfoKey_max_subkeylen
);
2746 winreg_dissect_element_QueryInfoKey_max_subkeylen_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2748 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_max_subkeylen
, 0);
2754 winreg_dissect_element_QueryInfoKey_max_classlen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2756 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_max_classlen_
, NDR_POINTER_REF
, "Pointer to Max Classlen (uint32)",hf_winreg_winreg_QueryInfoKey_max_classlen
);
2762 winreg_dissect_element_QueryInfoKey_max_classlen_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2764 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_max_classlen
, 0);
2770 winreg_dissect_element_QueryInfoKey_num_values(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2772 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_num_values_
, NDR_POINTER_REF
, "Pointer to Num Values (uint32)",hf_winreg_winreg_QueryInfoKey_num_values
);
2778 winreg_dissect_element_QueryInfoKey_num_values_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2780 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_num_values
, 0);
2786 winreg_dissect_element_QueryInfoKey_max_valnamelen(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2788 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_max_valnamelen_
, NDR_POINTER_REF
, "Pointer to Max Valnamelen (uint32)",hf_winreg_winreg_QueryInfoKey_max_valnamelen
);
2794 winreg_dissect_element_QueryInfoKey_max_valnamelen_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2796 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_max_valnamelen
, 0);
2802 winreg_dissect_element_QueryInfoKey_max_valbufsize(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2804 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_max_valbufsize_
, NDR_POINTER_REF
, "Pointer to Max Valbufsize (uint32)",hf_winreg_winreg_QueryInfoKey_max_valbufsize
);
2810 winreg_dissect_element_QueryInfoKey_max_valbufsize_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2812 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_max_valbufsize
, 0);
2818 winreg_dissect_element_QueryInfoKey_secdescsize(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2820 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_secdescsize_
, NDR_POINTER_REF
, "Pointer to Secdescsize (uint32)",hf_winreg_winreg_QueryInfoKey_secdescsize
);
2826 winreg_dissect_element_QueryInfoKey_secdescsize_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2828 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_secdescsize
, 0);
2834 winreg_dissect_element_QueryInfoKey_last_changed_time(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2836 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryInfoKey_last_changed_time_
, NDR_POINTER_REF
, "Pointer to Last Changed Time (NTTIME)",hf_winreg_winreg_QueryInfoKey_last_changed_time
);
2842 winreg_dissect_element_QueryInfoKey_last_changed_time_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2844 offset
= dissect_ndr_nt_NTTIME(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryInfoKey_last_changed_time
);
2849 /* IDL: WERROR winreg_QueryInfoKey( */
2850 /* IDL: [in] [ref] policy_handle *handle, */
2851 /* IDL: [in] [out] [ref] winreg_String *classname, */
2852 /* IDL: [out] [ref] uint32 *num_subkeys, */
2853 /* IDL: [out] [ref] uint32 *max_subkeylen, */
2854 /* IDL: [out] [ref] uint32 *max_classlen, */
2855 /* IDL: [out] [ref] uint32 *num_values, */
2856 /* IDL: [out] [ref] uint32 *max_valnamelen, */
2857 /* IDL: [out] [ref] uint32 *max_valbufsize, */
2858 /* IDL: [out] [ref] uint32 *secdescsize, */
2859 /* IDL: [out] [ref] NTTIME *last_changed_time */
2863 winreg_dissect_QueryInfoKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2867 di
->dcerpc_procedure_name
="QueryInfoKey";
2868 offset
= winreg_dissect_element_QueryInfoKey_classname(tvb
, offset
, pinfo
, tree
, di
, drep
);
2869 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2871 offset
= winreg_dissect_element_QueryInfoKey_num_subkeys(tvb
, offset
, pinfo
, tree
, di
, drep
);
2872 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2874 offset
= winreg_dissect_element_QueryInfoKey_max_subkeylen(tvb
, offset
, pinfo
, tree
, di
, drep
);
2875 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2877 offset
= winreg_dissect_element_QueryInfoKey_max_classlen(tvb
, offset
, pinfo
, tree
, di
, drep
);
2878 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2880 offset
= winreg_dissect_element_QueryInfoKey_num_values(tvb
, offset
, pinfo
, tree
, di
, drep
);
2881 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2883 offset
= winreg_dissect_element_QueryInfoKey_max_valnamelen(tvb
, offset
, pinfo
, tree
, di
, drep
);
2884 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2886 offset
= winreg_dissect_element_QueryInfoKey_max_valbufsize(tvb
, offset
, pinfo
, tree
, di
, drep
);
2887 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2889 offset
= winreg_dissect_element_QueryInfoKey_secdescsize(tvb
, offset
, pinfo
, tree
, di
, drep
);
2890 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2892 offset
= winreg_dissect_element_QueryInfoKey_last_changed_time(tvb
, offset
, pinfo
, tree
, di
, drep
);
2893 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2895 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
2898 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
2904 winreg_dissect_QueryInfoKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2906 di
->dcerpc_procedure_name
="QueryInfoKey";
2907 offset
= winreg_dissect_element_QueryInfoKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
2908 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2909 offset
= winreg_dissect_element_QueryInfoKey_classname(tvb
, offset
, pinfo
, tree
, di
, drep
);
2910 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
2915 winreg_dissect_element_QueryValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2917 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryValue_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
2923 winreg_dissect_element_QueryValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2925 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
2931 winreg_dissect_element_QueryValue_value_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2933 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryValue_value_name_
, NDR_POINTER_REF
, "Pointer to Value Name (winreg_String)",hf_winreg_winreg_QueryValue_value_name
);
2939 winreg_dissect_element_QueryValue_value_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2941 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_QueryValue_value_name
);
2947 winreg_dissect_element_QueryValue_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2949 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryValue_type_
, NDR_POINTER_UNIQUE
, "Pointer to Type (winreg_Type)",hf_winreg_winreg_QueryValue_type
);
2955 winreg_dissect_element_QueryValue_type_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2957 offset
=misc_dissect_enum_winreg_Type(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryValue_type
, 0);
2963 winreg_dissect_element_QueryValue_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2965 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryValue_data_
, NDR_POINTER_UNIQUE
, "Pointer to Data (uint8)",hf_winreg_winreg_QueryValue_data
);
2971 winreg_dissect_element_QueryValue_data_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2973 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryValue_data__
);
2979 winreg_dissect_element_QueryValue_data__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2981 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryValue_data
, 0);
2987 winreg_dissect_element_QueryValue_data_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2989 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryValue_data_size_
, NDR_POINTER_UNIQUE
, "Pointer to Data Size (uint32)",hf_winreg_winreg_QueryValue_data_size
);
2995 winreg_dissect_element_QueryValue_data_size_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
2997 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryValue_data_size
, 0);
3003 winreg_dissect_element_QueryValue_data_length(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3005 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryValue_data_length_
, NDR_POINTER_UNIQUE
, "Pointer to Data Length (uint32)",hf_winreg_winreg_QueryValue_data_length
);
3011 winreg_dissect_element_QueryValue_data_length_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3013 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryValue_data_length
, 0);
3018 /* IDL: WERROR winreg_QueryValue( */
3019 /* IDL: [in] [ref] policy_handle *handle, */
3020 /* IDL: [in] [ref] winreg_String *value_name, */
3021 /* IDL: [in] [out] [unique(1)] winreg_Type *type, */
3022 /* IDL: [in] [length_is(data_length?*data_length:0)] [out] [range(0,0x4000000)] [size_is(data_size?*data_size:0)] [unique(1)] uint8 *data, */
3023 /* IDL: [in] [out] [unique(1)] uint32 *data_size, */
3024 /* IDL: [in] [out] [unique(1)] uint32 *data_length */
3028 winreg_dissect_QueryValue_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3032 di
->dcerpc_procedure_name
="QueryValue";
3033 offset
= winreg_dissect_element_QueryValue_type(tvb
, offset
, pinfo
, tree
, di
, drep
);
3034 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3036 offset
= winreg_dissect_element_QueryValue_data(tvb
, offset
, pinfo
, tree
, di
, drep
);
3037 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3039 offset
= winreg_dissect_element_QueryValue_data_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
3040 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3042 offset
= winreg_dissect_element_QueryValue_data_length(tvb
, offset
, pinfo
, tree
, di
, drep
);
3043 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3045 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3048 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3054 winreg_dissect_QueryValue_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3056 di
->dcerpc_procedure_name
="QueryValue";
3057 offset
= winreg_dissect_element_QueryValue_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3058 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3059 offset
= winreg_dissect_element_QueryValue_value_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
3060 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3061 offset
= winreg_dissect_element_QueryValue_type(tvb
, offset
, pinfo
, tree
, di
, drep
);
3062 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3063 offset
= winreg_dissect_element_QueryValue_data(tvb
, offset
, pinfo
, tree
, di
, drep
);
3064 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3065 offset
= winreg_dissect_element_QueryValue_data_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
3066 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3067 offset
= winreg_dissect_element_QueryValue_data_length(tvb
, offset
, pinfo
, tree
, di
, drep
);
3068 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3073 winreg_dissect_element_ReplaceKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3075 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_ReplaceKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_winreg_ReplaceKey_handle
);
3081 winreg_dissect_element_ReplaceKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3083 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_ReplaceKey_handle
, 0);
3089 winreg_dissect_element_ReplaceKey_subkey(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3091 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_ReplaceKey_subkey_
, NDR_POINTER_REF
, "Pointer to Subkey (winreg_String)",hf_winreg_winreg_ReplaceKey_subkey
);
3097 winreg_dissect_element_ReplaceKey_subkey_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3099 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_ReplaceKey_subkey
);
3105 winreg_dissect_element_ReplaceKey_new_file(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3107 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_ReplaceKey_new_file_
, NDR_POINTER_REF
, "Pointer to New File (winreg_String)",hf_winreg_winreg_ReplaceKey_new_file
);
3113 winreg_dissect_element_ReplaceKey_new_file_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3115 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_ReplaceKey_new_file
);
3121 winreg_dissect_element_ReplaceKey_old_file(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3123 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_ReplaceKey_old_file_
, NDR_POINTER_REF
, "Pointer to Old File (winreg_String)",hf_winreg_winreg_ReplaceKey_old_file
);
3129 winreg_dissect_element_ReplaceKey_old_file_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3131 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_ReplaceKey_old_file
);
3136 /* IDL: WERROR winreg_ReplaceKey( */
3137 /* IDL: [in] [ref] policy_handle *handle, */
3138 /* IDL: [in] [ref] winreg_String *subkey, */
3139 /* IDL: [in] [ref] winreg_String *new_file, */
3140 /* IDL: [in] [ref] winreg_String *old_file */
3144 winreg_dissect_ReplaceKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3148 di
->dcerpc_procedure_name
="ReplaceKey";
3149 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3152 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3158 winreg_dissect_ReplaceKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3160 di
->dcerpc_procedure_name
="ReplaceKey";
3161 offset
= winreg_dissect_element_ReplaceKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3162 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3163 offset
= winreg_dissect_element_ReplaceKey_subkey(tvb
, offset
, pinfo
, tree
, di
, drep
);
3164 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3165 offset
= winreg_dissect_element_ReplaceKey_new_file(tvb
, offset
, pinfo
, tree
, di
, drep
);
3166 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3167 offset
= winreg_dissect_element_ReplaceKey_old_file(tvb
, offset
, pinfo
, tree
, di
, drep
);
3168 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3173 winreg_dissect_element_RestoreKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3175 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_RestoreKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_winreg_RestoreKey_handle
);
3181 winreg_dissect_element_RestoreKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3183 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_RestoreKey_handle
, 0);
3189 winreg_dissect_element_RestoreKey_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3191 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_RestoreKey_filename_
, NDR_POINTER_REF
, "Pointer to Filename (winreg_String)",hf_winreg_winreg_RestoreKey_filename
);
3197 winreg_dissect_element_RestoreKey_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3199 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_RestoreKey_filename
);
3205 winreg_dissect_element_RestoreKey_flags(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3207 offset
= winreg_dissect_bitmap_RestoreKeyFlags(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_RestoreKey_flags
, 0);
3212 /* IDL: WERROR winreg_RestoreKey( */
3213 /* IDL: [in] [ref] policy_handle *handle, */
3214 /* IDL: [in] [ref] winreg_String *filename, */
3215 /* IDL: [in] winreg_RestoreKeyFlags flags */
3219 winreg_dissect_RestoreKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3223 di
->dcerpc_procedure_name
="RestoreKey";
3224 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3227 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3233 winreg_dissect_RestoreKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3235 di
->dcerpc_procedure_name
="RestoreKey";
3236 offset
= winreg_dissect_element_RestoreKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3237 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3238 offset
= winreg_dissect_element_RestoreKey_filename(tvb
, offset
, pinfo
, tree
, di
, drep
);
3239 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3240 offset
= winreg_dissect_element_RestoreKey_flags(tvb
, offset
, pinfo
, tree
, di
, drep
);
3241 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3246 winreg_dissect_element_SaveKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3248 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SaveKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_winreg_SaveKey_handle
);
3254 winreg_dissect_element_SaveKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3256 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SaveKey_handle
, 0);
3262 winreg_dissect_element_SaveKey_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3264 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SaveKey_filename_
, NDR_POINTER_REF
, "Pointer to Filename (winreg_String)",hf_winreg_winreg_SaveKey_filename
);
3270 winreg_dissect_element_SaveKey_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3272 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_SaveKey_filename
);
3278 winreg_dissect_element_SaveKey_sec_attrib(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3280 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SaveKey_sec_attrib_
, NDR_POINTER_UNIQUE
, "Pointer to Sec Attrib (KeySecurityAttribute)",hf_winreg_winreg_SaveKey_sec_attrib
);
3286 winreg_dissect_element_SaveKey_sec_attrib_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3288 offset
= winreg_dissect_struct_KeySecurityAttribute(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_SaveKey_sec_attrib
,0);
3293 /* IDL: WERROR winreg_SaveKey( */
3294 /* IDL: [in] [ref] policy_handle *handle, */
3295 /* IDL: [in] [ref] winreg_String *filename, */
3296 /* IDL: [in] [unique(1)] KeySecurityAttribute *sec_attrib */
3300 winreg_dissect_SaveKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3304 di
->dcerpc_procedure_name
="SaveKey";
3305 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3308 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3314 winreg_dissect_SaveKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3316 di
->dcerpc_procedure_name
="SaveKey";
3317 offset
= winreg_dissect_element_SaveKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3318 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3319 offset
= winreg_dissect_element_SaveKey_filename(tvb
, offset
, pinfo
, tree
, di
, drep
);
3320 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3321 offset
= winreg_dissect_element_SaveKey_sec_attrib(tvb
, offset
, pinfo
, tree
, di
, drep
);
3322 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3327 winreg_dissect_element_SetKeySecurity_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3329 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SetKeySecurity_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
3335 winreg_dissect_element_SetKeySecurity_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3337 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
3343 winreg_dissect_element_SetKeySecurity_sec_info(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3345 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_GetKeySecurity_sec_info
, NULL
);
3351 winreg_dissect_element_SetKeySecurity_sd(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3353 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SetKeySecurity_sd_
, NDR_POINTER_REF
, "Pointer to Sd (KeySecurityData)",hf_winreg_sd
);
3359 winreg_dissect_element_SetKeySecurity_sd_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3361 offset
= winreg_dissect_struct_KeySecurityData(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_sd
,0);
3366 /* IDL: WERROR winreg_SetKeySecurity( */
3367 /* IDL: [in] [ref] policy_handle *handle, */
3368 /* IDL: [in] security_secinfo sec_info, */
3369 /* IDL: [in] [ref] KeySecurityData *sd */
3373 winreg_dissect_SetKeySecurity_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3377 di
->dcerpc_procedure_name
="SetKeySecurity";
3378 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3381 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3387 winreg_dissect_SetKeySecurity_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3389 di
->dcerpc_procedure_name
="SetKeySecurity";
3390 offset
= winreg_dissect_element_SetKeySecurity_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3391 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3392 offset
= winreg_dissect_element_SetKeySecurity_sec_info(tvb
, offset
, pinfo
, tree
, di
, drep
);
3393 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3394 offset
= winreg_dissect_element_SetKeySecurity_sd(tvb
, offset
, pinfo
, tree
, di
, drep
);
3395 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3400 winreg_dissect_element_SetValue_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3402 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SetValue_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
3408 winreg_dissect_element_SetValue_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3410 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
3416 winreg_dissect_element_SetValue_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3418 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 2|PIDL_SET_COL_INFO
, hf_winreg_winreg_SetValue_name
);
3424 winreg_dissect_element_SetValue_type(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3426 offset
=misc_dissect_enum_winreg_Type(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SetValue_type
, 0);
3432 winreg_dissect_element_SetValue_data(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3434 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SetValue_data_
, NDR_POINTER_REF
, "Pointer to Data (uint8)",hf_winreg_winreg_SetValue_data
);
3440 winreg_dissect_element_SetValue_data_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3442 offset
= dissect_ndr_ucarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SetValue_data__
);
3448 winreg_dissect_element_SetValue_data__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3450 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SetValue_data
, 0);
3456 winreg_dissect_element_SetValue_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3458 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SetValue_size
, 0);
3463 /* IDL: WERROR winreg_SetValue( */
3464 /* IDL: [in] [ref] policy_handle *handle, */
3465 /* IDL: [in] winreg_String name, */
3466 /* IDL: [in] winreg_Type type, */
3467 /* IDL: [in] [ref] [size_is(size)] uint8 *data, */
3468 /* IDL: [in] uint32 size */
3472 winreg_dissect_SetValue_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3476 di
->dcerpc_procedure_name
="SetValue";
3477 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3480 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3486 winreg_dissect_SetValue_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3488 di
->dcerpc_procedure_name
="SetValue";
3489 offset
= winreg_dissect_element_SetValue_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3490 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3491 offset
= winreg_dissect_element_SetValue_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
3492 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3493 offset
= winreg_dissect_element_SetValue_type(tvb
, offset
, pinfo
, tree
, di
, drep
);
3494 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3495 offset
= winreg_dissect_element_SetValue_data(tvb
, offset
, pinfo
, tree
, di
, drep
);
3496 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3497 offset
= winreg_dissect_element_SetValue_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
3498 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3503 winreg_dissect_element_UnLoadKey_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3505 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_UnLoadKey_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_winreg_UnLoadKey_handle
);
3511 winreg_dissect_element_UnLoadKey_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3513 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_UnLoadKey_handle
, 0);
3519 winreg_dissect_element_UnLoadKey_subkey(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3521 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_UnLoadKey_subkey_
, NDR_POINTER_REF
, "Pointer to Subkey (winreg_String)",hf_winreg_winreg_UnLoadKey_subkey
);
3527 winreg_dissect_element_UnLoadKey_subkey_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3529 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_UnLoadKey_subkey
);
3534 /* IDL: WERROR winreg_UnLoadKey( */
3535 /* IDL: [in] [ref] policy_handle *handle, */
3536 /* IDL: [in] [ref] winreg_String *subkey */
3540 winreg_dissect_UnLoadKey_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3544 di
->dcerpc_procedure_name
="UnLoadKey";
3545 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3548 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3554 winreg_dissect_UnLoadKey_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3556 di
->dcerpc_procedure_name
="UnLoadKey";
3557 offset
= winreg_dissect_element_UnLoadKey_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3558 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3559 offset
= winreg_dissect_element_UnLoadKey_subkey(tvb
, offset
, pinfo
, tree
, di
, drep
);
3560 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3565 winreg_dissect_element_InitiateSystemShutdown_hostname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3567 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_InitiateSystemShutdown_hostname_
, NDR_POINTER_UNIQUE
, "Pointer to Hostname (uint16)",hf_winreg_winreg_InitiateSystemShutdown_hostname
);
3573 winreg_dissect_element_InitiateSystemShutdown_hostname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3575 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdown_hostname
, 0);
3581 winreg_dissect_element_InitiateSystemShutdown_message(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3583 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_InitiateSystemShutdown_message_
, NDR_POINTER_UNIQUE
, "Pointer to Message (lsa_StringLarge)",hf_winreg_winreg_InitiateSystemShutdown_message
);
3589 winreg_dissect_element_InitiateSystemShutdown_message_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3591 offset
=lsarpc_dissect_struct_lsa_StringLarge(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdown_message
, 0);
3597 winreg_dissect_element_InitiateSystemShutdown_timeout(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3599 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdown_timeout
, 0);
3605 winreg_dissect_element_InitiateSystemShutdown_force_apps(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3607 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdown_force_apps
, 0);
3613 winreg_dissect_element_InitiateSystemShutdown_do_reboot(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3615 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdown_do_reboot
, 0);
3620 /* IDL: WERROR winreg_InitiateSystemShutdown( */
3621 /* IDL: [in] [unique(1)] uint16 *hostname, */
3622 /* IDL: [in] [unique(1)] lsa_StringLarge *message, */
3623 /* IDL: [in] uint32 timeout, */
3624 /* IDL: [in] uint8 force_apps, */
3625 /* IDL: [in] uint8 do_reboot */
3629 winreg_dissect_InitiateSystemShutdown_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3633 di
->dcerpc_procedure_name
="InitiateSystemShutdown";
3634 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3637 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3643 winreg_dissect_InitiateSystemShutdown_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3645 di
->dcerpc_procedure_name
="InitiateSystemShutdown";
3646 offset
= winreg_dissect_element_InitiateSystemShutdown_hostname(tvb
, offset
, pinfo
, tree
, di
, drep
);
3647 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3648 offset
= winreg_dissect_element_InitiateSystemShutdown_message(tvb
, offset
, pinfo
, tree
, di
, drep
);
3649 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3650 offset
= winreg_dissect_element_InitiateSystemShutdown_timeout(tvb
, offset
, pinfo
, tree
, di
, drep
);
3651 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3652 offset
= winreg_dissect_element_InitiateSystemShutdown_force_apps(tvb
, offset
, pinfo
, tree
, di
, drep
);
3653 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3654 offset
= winreg_dissect_element_InitiateSystemShutdown_do_reboot(tvb
, offset
, pinfo
, tree
, di
, drep
);
3655 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3660 winreg_dissect_element_AbortSystemShutdown_server(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3662 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_AbortSystemShutdown_server_
, NDR_POINTER_UNIQUE
, "Pointer to Server (uint16)",hf_winreg_winreg_AbortSystemShutdown_server
);
3668 winreg_dissect_element_AbortSystemShutdown_server_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3670 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_AbortSystemShutdown_server
, 0);
3675 /* IDL: WERROR winreg_AbortSystemShutdown( */
3676 /* IDL: [in] [unique(1)] uint16 *server */
3680 winreg_dissect_AbortSystemShutdown_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3684 di
->dcerpc_procedure_name
="AbortSystemShutdown";
3685 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3688 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3694 winreg_dissect_AbortSystemShutdown_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3696 di
->dcerpc_procedure_name
="AbortSystemShutdown";
3697 offset
= winreg_dissect_element_AbortSystemShutdown_server(tvb
, offset
, pinfo
, tree
, di
, drep
);
3698 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3703 winreg_dissect_element_GetVersion_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3705 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_GetVersion_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
3711 winreg_dissect_element_GetVersion_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3713 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, 0);
3719 winreg_dissect_element_GetVersion_version(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3721 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_GetVersion_version_
, NDR_POINTER_REF
, "Pointer to Version (uint32)",hf_winreg_winreg_GetVersion_version
);
3727 winreg_dissect_element_GetVersion_version_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3729 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_GetVersion_version
, 0);
3734 /* IDL: WERROR winreg_GetVersion( */
3735 /* IDL: [in] [ref] policy_handle *handle, */
3736 /* IDL: [out] [ref] uint32 *version */
3740 winreg_dissect_GetVersion_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3744 di
->dcerpc_procedure_name
="GetVersion";
3745 offset
= winreg_dissect_element_GetVersion_version(tvb
, offset
, pinfo
, tree
, di
, drep
);
3746 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3748 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3751 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3757 winreg_dissect_GetVersion_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3759 di
->dcerpc_procedure_name
="GetVersion";
3760 offset
= winreg_dissect_element_GetVersion_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3761 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3766 winreg_dissect_element_OpenHKCC_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3768 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKCC_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
3774 winreg_dissect_element_OpenHKCC_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3776 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
3782 winreg_dissect_element_OpenHKCC_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3784 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
3790 winreg_dissect_element_OpenHKCC_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3792 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKCC_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
3798 winreg_dissect_element_OpenHKCC_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3800 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
3805 /* IDL: WERROR winreg_OpenHKCC( */
3806 /* IDL: [in] [unique(1)] uint16 *system_name, */
3807 /* IDL: [in] winreg_AccessMask access_mask, */
3808 /* IDL: [out] [ref] policy_handle *handle */
3812 winreg_dissect_OpenHKCC_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3816 di
->dcerpc_procedure_name
="OpenHKCC";
3817 offset
= winreg_dissect_element_OpenHKCC_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3818 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3820 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3823 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3829 winreg_dissect_OpenHKCC_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3831 di
->dcerpc_procedure_name
="OpenHKCC";
3832 offset
= winreg_dissect_element_OpenHKCC_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
3833 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3834 offset
= winreg_dissect_element_OpenHKCC_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
3835 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3840 winreg_dissect_element_OpenHKDD_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3842 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKDD_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
3848 winreg_dissect_element_OpenHKDD_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3850 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
3856 winreg_dissect_element_OpenHKDD_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3858 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
3864 winreg_dissect_element_OpenHKDD_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3866 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKDD_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
3872 winreg_dissect_element_OpenHKDD_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3874 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
3879 /* IDL: WERROR winreg_OpenHKDD( */
3880 /* IDL: [in] [unique(1)] uint16 *system_name, */
3881 /* IDL: [in] winreg_AccessMask access_mask, */
3882 /* IDL: [out] [ref] policy_handle *handle */
3886 winreg_dissect_OpenHKDD_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3890 di
->dcerpc_procedure_name
="OpenHKDD";
3891 offset
= winreg_dissect_element_OpenHKDD_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
3892 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3894 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
3897 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
3903 winreg_dissect_OpenHKDD_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3905 di
->dcerpc_procedure_name
="OpenHKDD";
3906 offset
= winreg_dissect_element_OpenHKDD_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
3907 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3908 offset
= winreg_dissect_element_OpenHKDD_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
3909 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
3914 winreg_dissect_element_QueryMultipleValues_key_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3916 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_key_handle_
, NDR_POINTER_REF
, "Pointer to Key Handle (policy_handle)",hf_winreg_winreg_QueryMultipleValues_key_handle
);
3922 winreg_dissect_element_QueryMultipleValues_key_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3924 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues_key_handle
, 0);
3930 winreg_dissect_element_QueryMultipleValues_values_in(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3932 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_values_in_
, NDR_POINTER_REF
, "Pointer to Values In (QueryMultipleValue)",hf_winreg_winreg_QueryMultipleValues_values_in
);
3938 winreg_dissect_element_QueryMultipleValues_values_in_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3940 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_values_in__
);
3946 winreg_dissect_element_QueryMultipleValues_values_in__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3948 offset
= winreg_dissect_struct_QueryMultipleValue(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_QueryMultipleValues_values_in
,0);
3954 winreg_dissect_element_QueryMultipleValues_values_out(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3956 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_values_out_
, NDR_POINTER_REF
, "Pointer to Values Out (QueryMultipleValue)",hf_winreg_winreg_QueryMultipleValues_values_out
);
3962 winreg_dissect_element_QueryMultipleValues_values_out_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3964 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_values_out__
);
3970 winreg_dissect_element_QueryMultipleValues_values_out__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3972 offset
= winreg_dissect_struct_QueryMultipleValue(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_QueryMultipleValues_values_out
,0);
3978 winreg_dissect_element_QueryMultipleValues_num_values(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3980 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues_num_values
, 0);
3986 winreg_dissect_element_QueryMultipleValues_buffer(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3988 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_buffer_
, NDR_POINTER_UNIQUE
, "Pointer to Buffer (uint8)",hf_winreg_winreg_QueryMultipleValues_buffer
);
3994 winreg_dissect_element_QueryMultipleValues_buffer_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
3996 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_buffer__
);
4002 winreg_dissect_element_QueryMultipleValues_buffer__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4004 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues_buffer
, 0);
4010 winreg_dissect_element_QueryMultipleValues_buffer_size(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4012 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues_buffer_size_
, NDR_POINTER_REF
, "Pointer to Buffer Size (uint32)",hf_winreg_winreg_QueryMultipleValues_buffer_size
);
4018 winreg_dissect_element_QueryMultipleValues_buffer_size_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4020 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues_buffer_size
, 0);
4025 /* IDL: WERROR winreg_QueryMultipleValues( */
4026 /* IDL: [in] [ref] policy_handle *key_handle, */
4027 /* IDL: [in] [length_is(num_values)] [ref] [size_is(num_values)] QueryMultipleValue *values_in, */
4028 /* IDL: [length_is(num_values)] [out] [ref] [size_is(num_values)] QueryMultipleValue *values_out, */
4029 /* IDL: [in] uint32 num_values, */
4030 /* IDL: [in] [length_is(*buffer_size)] [out] [size_is(*buffer_size)] [unique(1)] uint8 *buffer, */
4031 /* IDL: [in] [out] [ref] uint32 *buffer_size */
4035 winreg_dissect_QueryMultipleValues_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4039 di
->dcerpc_procedure_name
="QueryMultipleValues";
4040 offset
= winreg_dissect_element_QueryMultipleValues_values_out(tvb
, offset
, pinfo
, tree
, di
, drep
);
4041 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4043 offset
= winreg_dissect_element_QueryMultipleValues_buffer(tvb
, offset
, pinfo
, tree
, di
, drep
);
4044 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4046 offset
= winreg_dissect_element_QueryMultipleValues_buffer_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
4047 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4049 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
4052 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
4058 winreg_dissect_QueryMultipleValues_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4060 di
->dcerpc_procedure_name
="QueryMultipleValues";
4061 offset
= winreg_dissect_element_QueryMultipleValues_key_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
4062 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4063 offset
= winreg_dissect_element_QueryMultipleValues_values_in(tvb
, offset
, pinfo
, tree
, di
, drep
);
4064 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4065 offset
= winreg_dissect_element_QueryMultipleValues_num_values(tvb
, offset
, pinfo
, tree
, di
, drep
);
4066 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4067 offset
= winreg_dissect_element_QueryMultipleValues_buffer(tvb
, offset
, pinfo
, tree
, di
, drep
);
4068 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4069 offset
= winreg_dissect_element_QueryMultipleValues_buffer_size(tvb
, offset
, pinfo
, tree
, di
, drep
);
4070 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4075 winreg_dissect_element_InitiateSystemShutdownEx_hostname(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4077 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_InitiateSystemShutdownEx_hostname_
, NDR_POINTER_UNIQUE
, "Pointer to Hostname (uint16)",hf_winreg_winreg_InitiateSystemShutdownEx_hostname
);
4083 winreg_dissect_element_InitiateSystemShutdownEx_hostname_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4085 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdownEx_hostname
, 0);
4091 winreg_dissect_element_InitiateSystemShutdownEx_message(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4093 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_InitiateSystemShutdownEx_message_
, NDR_POINTER_UNIQUE
, "Pointer to Message (lsa_StringLarge)",hf_winreg_winreg_InitiateSystemShutdownEx_message
);
4099 winreg_dissect_element_InitiateSystemShutdownEx_message_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4101 offset
=lsarpc_dissect_struct_lsa_StringLarge(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdownEx_message
, 0);
4107 winreg_dissect_element_InitiateSystemShutdownEx_timeout(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4109 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdownEx_timeout
, 0);
4115 winreg_dissect_element_InitiateSystemShutdownEx_force_apps(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4117 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdownEx_force_apps
, 0);
4123 winreg_dissect_element_InitiateSystemShutdownEx_do_reboot(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4125 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdownEx_do_reboot
, 0);
4131 winreg_dissect_element_InitiateSystemShutdownEx_reason(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4133 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_InitiateSystemShutdownEx_reason
, 0);
4138 /* IDL: WERROR winreg_InitiateSystemShutdownEx( */
4139 /* IDL: [in] [unique(1)] uint16 *hostname, */
4140 /* IDL: [in] [unique(1)] lsa_StringLarge *message, */
4141 /* IDL: [in] uint32 timeout, */
4142 /* IDL: [in] uint8 force_apps, */
4143 /* IDL: [in] uint8 do_reboot, */
4144 /* IDL: [in] uint32 reason */
4148 winreg_dissect_InitiateSystemShutdownEx_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4152 di
->dcerpc_procedure_name
="InitiateSystemShutdownEx";
4153 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
4156 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
4162 winreg_dissect_InitiateSystemShutdownEx_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4164 di
->dcerpc_procedure_name
="InitiateSystemShutdownEx";
4165 offset
= winreg_dissect_element_InitiateSystemShutdownEx_hostname(tvb
, offset
, pinfo
, tree
, di
, drep
);
4166 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4167 offset
= winreg_dissect_element_InitiateSystemShutdownEx_message(tvb
, offset
, pinfo
, tree
, di
, drep
);
4168 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4169 offset
= winreg_dissect_element_InitiateSystemShutdownEx_timeout(tvb
, offset
, pinfo
, tree
, di
, drep
);
4170 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4171 offset
= winreg_dissect_element_InitiateSystemShutdownEx_force_apps(tvb
, offset
, pinfo
, tree
, di
, drep
);
4172 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4173 offset
= winreg_dissect_element_InitiateSystemShutdownEx_do_reboot(tvb
, offset
, pinfo
, tree
, di
, drep
);
4174 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4175 offset
= winreg_dissect_element_InitiateSystemShutdownEx_reason(tvb
, offset
, pinfo
, tree
, di
, drep
);
4176 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4181 winreg_dissect_element_SaveKeyEx_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4183 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SaveKeyEx_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_winreg_SaveKeyEx_handle
);
4189 winreg_dissect_element_SaveKeyEx_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4191 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SaveKeyEx_handle
, 0);
4197 winreg_dissect_element_SaveKeyEx_filename(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4199 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SaveKeyEx_filename_
, NDR_POINTER_REF
, "Pointer to Filename (winreg_String)",hf_winreg_winreg_SaveKeyEx_filename
);
4205 winreg_dissect_element_SaveKeyEx_filename_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4207 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_SaveKeyEx_filename
);
4213 winreg_dissect_element_SaveKeyEx_sec_attrib(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4215 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_SaveKeyEx_sec_attrib_
, NDR_POINTER_UNIQUE
, "Pointer to Sec Attrib (KeySecurityAttribute)",hf_winreg_winreg_SaveKeyEx_sec_attrib
);
4221 winreg_dissect_element_SaveKeyEx_sec_attrib_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4223 offset
= winreg_dissect_struct_KeySecurityAttribute(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_SaveKeyEx_sec_attrib
,0);
4229 winreg_dissect_element_SaveKeyEx_flags(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4231 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_SaveKeyEx_flags
, 0);
4236 /* IDL: WERROR winreg_SaveKeyEx( */
4237 /* IDL: [in] [ref] policy_handle *handle, */
4238 /* IDL: [in] [ref] winreg_String *filename, */
4239 /* IDL: [in] [unique(1)] KeySecurityAttribute *sec_attrib, */
4240 /* IDL: [in] uint32 flags */
4244 winreg_dissect_SaveKeyEx_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4248 di
->dcerpc_procedure_name
="SaveKeyEx";
4249 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
4252 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
4258 winreg_dissect_SaveKeyEx_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4260 di
->dcerpc_procedure_name
="SaveKeyEx";
4261 offset
= winreg_dissect_element_SaveKeyEx_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
4262 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4263 offset
= winreg_dissect_element_SaveKeyEx_filename(tvb
, offset
, pinfo
, tree
, di
, drep
);
4264 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4265 offset
= winreg_dissect_element_SaveKeyEx_sec_attrib(tvb
, offset
, pinfo
, tree
, di
, drep
);
4266 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4267 offset
= winreg_dissect_element_SaveKeyEx_flags(tvb
, offset
, pinfo
, tree
, di
, drep
);
4268 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4273 winreg_dissect_element_OpenHKPT_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4275 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKPT_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
4281 winreg_dissect_element_OpenHKPT_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4283 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
4289 winreg_dissect_element_OpenHKPT_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4291 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
4297 winreg_dissect_element_OpenHKPT_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4299 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKPT_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
4305 winreg_dissect_element_OpenHKPT_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4307 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
4312 /* IDL: WERROR winreg_OpenHKPT( */
4313 /* IDL: [in] [unique(1)] uint16 *system_name, */
4314 /* IDL: [in] winreg_AccessMask access_mask, */
4315 /* IDL: [out] [ref] policy_handle *handle */
4319 winreg_dissect_OpenHKPT_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4323 di
->dcerpc_procedure_name
="OpenHKPT";
4324 offset
= winreg_dissect_element_OpenHKPT_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
4325 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4327 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
4330 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
4336 winreg_dissect_OpenHKPT_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4338 di
->dcerpc_procedure_name
="OpenHKPT";
4339 offset
= winreg_dissect_element_OpenHKPT_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
4340 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4341 offset
= winreg_dissect_element_OpenHKPT_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
4342 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4347 winreg_dissect_element_OpenHKPN_system_name(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4349 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKPN_system_name_
, NDR_POINTER_UNIQUE
, "Pointer to System Name (uint16)",hf_winreg_system_name
);
4355 winreg_dissect_element_OpenHKPN_system_name_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4357 offset
= PIDL_dissect_uint16(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_system_name
, 0);
4363 winreg_dissect_element_OpenHKPN_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4365 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_access_mask
, 0);
4371 winreg_dissect_element_OpenHKPN_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4373 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_OpenHKPN_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_handle
);
4379 winreg_dissect_element_OpenHKPN_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4381 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_handle
, PIDL_POLHND_OPEN
);
4386 /* IDL: WERROR winreg_OpenHKPN( */
4387 /* IDL: [in] [unique(1)] uint16 *system_name, */
4388 /* IDL: [in] winreg_AccessMask access_mask, */
4389 /* IDL: [out] [ref] policy_handle *handle */
4393 winreg_dissect_OpenHKPN_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4397 di
->dcerpc_procedure_name
="OpenHKPN";
4398 offset
= winreg_dissect_element_OpenHKPN_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
4399 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4401 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
4404 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
4410 winreg_dissect_OpenHKPN_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4412 di
->dcerpc_procedure_name
="OpenHKPN";
4413 offset
= winreg_dissect_element_OpenHKPN_system_name(tvb
, offset
, pinfo
, tree
, di
, drep
);
4414 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4415 offset
= winreg_dissect_element_OpenHKPN_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
4416 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4421 winreg_dissect_element_QueryMultipleValues2_key_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4423 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_key_handle_
, NDR_POINTER_REF
, "Pointer to Key Handle (policy_handle)",hf_winreg_winreg_QueryMultipleValues2_key_handle
);
4429 winreg_dissect_element_QueryMultipleValues2_key_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4431 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues2_key_handle
, 0);
4437 winreg_dissect_element_QueryMultipleValues2_values_in(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4439 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_values_in_
, NDR_POINTER_REF
, "Pointer to Values In (QueryMultipleValue)",hf_winreg_winreg_QueryMultipleValues2_values_in
);
4445 winreg_dissect_element_QueryMultipleValues2_values_in_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4447 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_values_in__
);
4453 winreg_dissect_element_QueryMultipleValues2_values_in__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4455 offset
= winreg_dissect_struct_QueryMultipleValue(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_QueryMultipleValues2_values_in
,0);
4461 winreg_dissect_element_QueryMultipleValues2_values_out(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4463 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_values_out_
, NDR_POINTER_REF
, "Pointer to Values Out (QueryMultipleValue)",hf_winreg_winreg_QueryMultipleValues2_values_out
);
4469 winreg_dissect_element_QueryMultipleValues2_values_out_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4471 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_values_out__
);
4477 winreg_dissect_element_QueryMultipleValues2_values_out__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4479 offset
= winreg_dissect_struct_QueryMultipleValue(tvb
,offset
,pinfo
,tree
,di
,drep
,hf_winreg_winreg_QueryMultipleValues2_values_out
,0);
4485 winreg_dissect_element_QueryMultipleValues2_num_values(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4487 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues2_num_values
, 0);
4493 winreg_dissect_element_QueryMultipleValues2_buffer(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4495 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_buffer_
, NDR_POINTER_UNIQUE
, "Pointer to Buffer (uint8)",hf_winreg_winreg_QueryMultipleValues2_buffer
);
4501 winreg_dissect_element_QueryMultipleValues2_buffer_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4503 offset
= dissect_ndr_ucvarray(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_buffer__
);
4509 winreg_dissect_element_QueryMultipleValues2_buffer__(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4511 offset
= PIDL_dissect_uint8(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues2_buffer
, 0);
4517 winreg_dissect_element_QueryMultipleValues2_offered(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4519 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_offered_
, NDR_POINTER_REF
, "Pointer to Offered (uint32)",hf_winreg_winreg_QueryMultipleValues2_offered
);
4525 winreg_dissect_element_QueryMultipleValues2_offered_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4527 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues2_offered
, 0);
4533 winreg_dissect_element_QueryMultipleValues2_needed(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4535 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_QueryMultipleValues2_needed_
, NDR_POINTER_REF
, "Pointer to Needed (uint32)",hf_winreg_winreg_QueryMultipleValues2_needed
);
4541 winreg_dissect_element_QueryMultipleValues2_needed_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4543 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_QueryMultipleValues2_needed
, 0);
4548 /* IDL: WERROR winreg_QueryMultipleValues2( */
4549 /* IDL: [in] [ref] policy_handle *key_handle, */
4550 /* IDL: [in] [length_is(num_values)] [ref] [size_is(num_values)] QueryMultipleValue *values_in, */
4551 /* IDL: [length_is(num_values)] [out] [ref] [size_is(num_values)] QueryMultipleValue *values_out, */
4552 /* IDL: [in] uint32 num_values, */
4553 /* IDL: [in] [length_is(*offered)] [out] [size_is(*offered)] [unique(1)] uint8 *buffer, */
4554 /* IDL: [in] [ref] uint32 *offered, */
4555 /* IDL: [out] [ref] uint32 *needed */
4559 winreg_dissect_QueryMultipleValues2_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4563 di
->dcerpc_procedure_name
="QueryMultipleValues2";
4564 offset
= winreg_dissect_element_QueryMultipleValues2_values_out(tvb
, offset
, pinfo
, tree
, di
, drep
);
4565 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4567 offset
= winreg_dissect_element_QueryMultipleValues2_buffer(tvb
, offset
, pinfo
, tree
, di
, drep
);
4568 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4570 offset
= winreg_dissect_element_QueryMultipleValues2_needed(tvb
, offset
, pinfo
, tree
, di
, drep
);
4571 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4573 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
4576 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
4582 winreg_dissect_QueryMultipleValues2_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4584 di
->dcerpc_procedure_name
="QueryMultipleValues2";
4585 offset
= winreg_dissect_element_QueryMultipleValues2_key_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
4586 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4587 offset
= winreg_dissect_element_QueryMultipleValues2_values_in(tvb
, offset
, pinfo
, tree
, di
, drep
);
4588 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4589 offset
= winreg_dissect_element_QueryMultipleValues2_num_values(tvb
, offset
, pinfo
, tree
, di
, drep
);
4590 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4591 offset
= winreg_dissect_element_QueryMultipleValues2_buffer(tvb
, offset
, pinfo
, tree
, di
, drep
);
4592 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4593 offset
= winreg_dissect_element_QueryMultipleValues2_offered(tvb
, offset
, pinfo
, tree
, di
, drep
);
4594 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4599 winreg_dissect_element_DeleteKeyEx_handle(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4601 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_DeleteKeyEx_handle_
, NDR_POINTER_REF
, "Pointer to Handle (policy_handle)",hf_winreg_winreg_DeleteKeyEx_handle
);
4607 winreg_dissect_element_DeleteKeyEx_handle_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4609 offset
= PIDL_dissect_policy_hnd(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_DeleteKeyEx_handle
, 0);
4615 winreg_dissect_element_DeleteKeyEx_key(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4617 offset
= dissect_ndr_toplevel_pointer(tvb
, offset
, pinfo
, tree
, di
, drep
, winreg_dissect_element_DeleteKeyEx_key_
, NDR_POINTER_REF
, "Pointer to Key (winreg_String)",hf_winreg_winreg_DeleteKeyEx_key
);
4623 winreg_dissect_element_DeleteKeyEx_key_(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4625 offset
=cnf_dissect_winreg_String(tvb
, offset
, pinfo
, tree
, di
, drep
, 0, hf_winreg_winreg_DeleteKeyEx_key
);
4631 winreg_dissect_element_DeleteKeyEx_access_mask(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4633 offset
= winreg_dissect_bitmap_AccessMask(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_DeleteKeyEx_access_mask
, 0);
4639 winreg_dissect_element_DeleteKeyEx_reserved(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4641 offset
= PIDL_dissect_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_winreg_DeleteKeyEx_reserved
, 0);
4646 /* IDL: WERROR winreg_DeleteKeyEx( */
4647 /* IDL: [in] [ref] policy_handle *handle, */
4648 /* IDL: [in] [ref] winreg_String *key, */
4649 /* IDL: [in] winreg_AccessMask access_mask, */
4650 /* IDL: [in] uint32 reserved */
4654 winreg_dissect_DeleteKeyEx_response(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4658 di
->dcerpc_procedure_name
="DeleteKeyEx";
4659 offset
= dissect_ndr_uint32(tvb
, offset
, pinfo
, tree
, di
, drep
, hf_winreg_werror
, &status
);
4662 col_append_fstr(pinfo
->cinfo
, COL_INFO
, ", Error: %s", val_to_str_ext(status
, &WERR_errors_ext
, "Unknown DOS error 0x%08x"));
4668 winreg_dissect_DeleteKeyEx_request(tvbuff_t
*tvb _U_
, int offset _U_
, packet_info
*pinfo _U_
, proto_tree
*tree _U_
, dcerpc_info
* di _U_
, uint8_t *drep _U_
)
4670 di
->dcerpc_procedure_name
="DeleteKeyEx";
4671 offset
= winreg_dissect_element_DeleteKeyEx_handle(tvb
, offset
, pinfo
, tree
, di
, drep
);
4672 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4673 offset
= winreg_dissect_element_DeleteKeyEx_key(tvb
, offset
, pinfo
, tree
, di
, drep
);
4674 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4675 offset
= winreg_dissect_element_DeleteKeyEx_access_mask(tvb
, offset
, pinfo
, tree
, di
, drep
);
4676 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4677 offset
= winreg_dissect_element_DeleteKeyEx_reserved(tvb
, offset
, pinfo
, tree
, di
, drep
);
4678 offset
= dissect_deferred_pointers(pinfo
, tvb
, offset
, di
, drep
);
4683 static const dcerpc_sub_dissector winreg_dissectors
[] = {
4685 winreg_dissect_OpenHKCR_request
, winreg_dissect_OpenHKCR_response
},
4687 winreg_dissect_OpenHKCU_request
, winreg_dissect_OpenHKCU_response
},
4689 winreg_dissect_OpenHKLM_request
, winreg_dissect_OpenHKLM_response
},
4691 winreg_dissect_OpenHKPD_request
, winreg_dissect_OpenHKPD_response
},
4693 winreg_dissect_OpenHKU_request
, winreg_dissect_OpenHKU_response
},
4695 winreg_dissect_CloseKey_request
, winreg_dissect_CloseKey_response
},
4697 winreg_dissect_CreateKey_request
, winreg_dissect_CreateKey_response
},
4699 winreg_dissect_DeleteKey_request
, winreg_dissect_DeleteKey_response
},
4701 winreg_dissect_DeleteValue_request
, winreg_dissect_DeleteValue_response
},
4703 winreg_dissect_EnumKey_request
, winreg_dissect_EnumKey_response
},
4705 winreg_dissect_EnumValue_request
, winreg_dissect_EnumValue_response
},
4707 winreg_dissect_FlushKey_request
, winreg_dissect_FlushKey_response
},
4708 { 12, "GetKeySecurity",
4709 winreg_dissect_GetKeySecurity_request
, winreg_dissect_GetKeySecurity_response
},
4711 winreg_dissect_LoadKey_request
, winreg_dissect_LoadKey_response
},
4712 { 14, "NotifyChangeKeyValue",
4713 winreg_dissect_NotifyChangeKeyValue_request
, winreg_dissect_NotifyChangeKeyValue_response
},
4715 winreg_dissect_OpenKey_request
, winreg_dissect_OpenKey_response
},
4716 { 16, "QueryInfoKey",
4717 winreg_dissect_QueryInfoKey_request
, winreg_dissect_QueryInfoKey_response
},
4719 winreg_dissect_QueryValue_request
, winreg_dissect_QueryValue_response
},
4721 winreg_dissect_ReplaceKey_request
, winreg_dissect_ReplaceKey_response
},
4723 winreg_dissect_RestoreKey_request
, winreg_dissect_RestoreKey_response
},
4725 winreg_dissect_SaveKey_request
, winreg_dissect_SaveKey_response
},
4726 { 21, "SetKeySecurity",
4727 winreg_dissect_SetKeySecurity_request
, winreg_dissect_SetKeySecurity_response
},
4729 winreg_dissect_SetValue_request
, winreg_dissect_SetValue_response
},
4731 winreg_dissect_UnLoadKey_request
, winreg_dissect_UnLoadKey_response
},
4732 { 24, "InitiateSystemShutdown",
4733 winreg_dissect_InitiateSystemShutdown_request
, winreg_dissect_InitiateSystemShutdown_response
},
4734 { 25, "AbortSystemShutdown",
4735 winreg_dissect_AbortSystemShutdown_request
, winreg_dissect_AbortSystemShutdown_response
},
4737 winreg_dissect_GetVersion_request
, winreg_dissect_GetVersion_response
},
4739 winreg_dissect_OpenHKCC_request
, winreg_dissect_OpenHKCC_response
},
4741 winreg_dissect_OpenHKDD_request
, winreg_dissect_OpenHKDD_response
},
4742 { 29, "QueryMultipleValues",
4743 winreg_dissect_QueryMultipleValues_request
, winreg_dissect_QueryMultipleValues_response
},
4744 { 30, "InitiateSystemShutdownEx",
4745 winreg_dissect_InitiateSystemShutdownEx_request
, winreg_dissect_InitiateSystemShutdownEx_response
},
4747 winreg_dissect_SaveKeyEx_request
, winreg_dissect_SaveKeyEx_response
},
4749 winreg_dissect_OpenHKPT_request
, winreg_dissect_OpenHKPT_response
},
4751 winreg_dissect_OpenHKPN_request
, winreg_dissect_OpenHKPN_response
},
4752 { 34, "QueryMultipleValues2",
4753 winreg_dissect_QueryMultipleValues2_request
, winreg_dissect_QueryMultipleValues2_response
},
4754 { 35, "DeleteKeyEx",
4755 winreg_dissect_DeleteKeyEx_request
, winreg_dissect_DeleteKeyEx_response
},
4756 { 0, NULL
, NULL
, NULL
}
4759 void proto_register_dcerpc_winreg(void)
4761 static hf_register_info hf
[] = {
4762 { &hf_winreg_KeySecurityAttribute_data_size
,
4763 { "Data Size", "winreg.KeySecurityAttribute.data_size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4764 { &hf_winreg_KeySecurityAttribute_inherit
,
4765 { "Inherit", "winreg.KeySecurityAttribute.inherit", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4766 { &hf_winreg_KeySecurityAttribute_sec_data
,
4767 { "Sec Data", "winreg.KeySecurityAttribute.sec_data", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4768 { &hf_winreg_KeySecurityData_data
,
4769 { "Data", "winreg.KeySecurityData.data", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4770 { &hf_winreg_KeySecurityData_len
,
4771 { "Len", "winreg.KeySecurityData.len", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4772 { &hf_winreg_KeySecurityData_size
,
4773 { "Size", "winreg.KeySecurityData.size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4774 { &hf_winreg_QueryMultipleValue_ve_type
,
4775 { "Ve Type", "winreg.QueryMultipleValue.ve_type", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4776 { &hf_winreg_QueryMultipleValue_ve_valuelen
,
4777 { "Ve Valuelen", "winreg.QueryMultipleValue.ve_valuelen", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4778 { &hf_winreg_QueryMultipleValue_ve_valuename
,
4779 { "Ve Valuename", "winreg.QueryMultipleValue.ve_valuename", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4780 { &hf_winreg_QueryMultipleValue_ve_valueptr
,
4781 { "Ve Valueptr", "winreg.QueryMultipleValue.ve_valueptr", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4782 { &hf_winreg_access_mask
,
4783 { "Access Mask", "winreg.access_mask", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4784 { &hf_winreg_handle
,
4785 { "Handle", "winreg.handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4787 { "Operation", "winreg.opnum", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4789 { "KeySecurityData", "winreg.sd", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4790 { &hf_winreg_sd_actual_size
,
4791 { "Actual Size", "winreg.sd.actual_size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4792 { &hf_winreg_sd_max_size
,
4793 { "Max Size", "winreg.sd.max_size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4794 { &hf_winreg_sd_offset
,
4795 { "Offset", "winreg.sd.offset", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4796 { &hf_winreg_system_name
,
4797 { "System Name", "winreg.system_name", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4798 { &hf_winreg_werror
,
4799 { "Windows Error", "winreg.werror", FT_UINT32
, BASE_HEX
|BASE_EXT_STRING
, &WERR_errors_ext
, 0, NULL
, HFILL
}},
4800 { &hf_winreg_winreg_AbortSystemShutdown_server
,
4801 { "Server", "winreg.winreg_AbortSystemShutdown.server", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4802 { &hf_winreg_winreg_AccessMask_KEY_CREATE_LINK
,
4803 { "KEY CREATE LINK", "winreg.winreg_AccessMask.KEY_CREATE_LINK", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_CREATE_LINK_tfs
), ( 0x00000020 ), NULL
, HFILL
}},
4804 { &hf_winreg_winreg_AccessMask_KEY_CREATE_SUB_KEY
,
4805 { "KEY CREATE SUB KEY", "winreg.winreg_AccessMask.KEY_CREATE_SUB_KEY", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_CREATE_SUB_KEY_tfs
), ( 0x00000004 ), NULL
, HFILL
}},
4806 { &hf_winreg_winreg_AccessMask_KEY_ENUMERATE_SUB_KEYS
,
4807 { "KEY ENUMERATE SUB KEYS", "winreg.winreg_AccessMask.KEY_ENUMERATE_SUB_KEYS", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_ENUMERATE_SUB_KEYS_tfs
), ( 0x00000008 ), NULL
, HFILL
}},
4808 { &hf_winreg_winreg_AccessMask_KEY_NOTIFY
,
4809 { "KEY NOTIFY", "winreg.winreg_AccessMask.KEY_NOTIFY", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_NOTIFY_tfs
), ( 0x00000010 ), NULL
, HFILL
}},
4810 { &hf_winreg_winreg_AccessMask_KEY_QUERY_VALUE
,
4811 { "KEY QUERY VALUE", "winreg.winreg_AccessMask.KEY_QUERY_VALUE", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_QUERY_VALUE_tfs
), ( 0x00000001 ), NULL
, HFILL
}},
4812 { &hf_winreg_winreg_AccessMask_KEY_SET_VALUE
,
4813 { "KEY SET VALUE", "winreg.winreg_AccessMask.KEY_SET_VALUE", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_SET_VALUE_tfs
), ( 0x00000002 ), NULL
, HFILL
}},
4814 { &hf_winreg_winreg_AccessMask_KEY_WOW64_32KEY
,
4815 { "KEY WOW64 32KEY", "winreg.winreg_AccessMask.KEY_WOW64_32KEY", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_WOW64_32KEY_tfs
), ( 0x00000200 ), NULL
, HFILL
}},
4816 { &hf_winreg_winreg_AccessMask_KEY_WOW64_64KEY
,
4817 { "KEY WOW64 64KEY", "winreg.winreg_AccessMask.KEY_WOW64_64KEY", FT_BOOLEAN
, 32, TFS(&winreg_AccessMask_KEY_WOW64_64KEY_tfs
), ( 0x00000100 ), NULL
, HFILL
}},
4818 { &hf_winreg_winreg_CreateKey_action_taken
,
4819 { "Action Taken", "winreg.winreg_CreateKey.action_taken", FT_UINT32
, BASE_DEC
, VALS(winreg_winreg_CreateAction_vals
), 0, NULL
, HFILL
}},
4820 { &hf_winreg_winreg_CreateKey_keyclass
,
4821 { "Keyclass", "winreg.winreg_CreateKey.keyclass", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4822 { &hf_winreg_winreg_CreateKey_name
,
4823 { "Name", "winreg.winreg_CreateKey.name", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4824 { &hf_winreg_winreg_CreateKey_new_handle
,
4825 { "New Handle", "winreg.winreg_CreateKey.new_handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4826 { &hf_winreg_winreg_CreateKey_options
,
4827 { "Options", "winreg.winreg_CreateKey.options", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4828 { &hf_winreg_winreg_CreateKey_secdesc
,
4829 { "Secdesc", "winreg.winreg_CreateKey.secdesc", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4830 { &hf_winreg_winreg_DeleteKeyEx_access_mask
,
4831 { "Access Mask", "winreg.winreg_DeleteKeyEx.access_mask", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4832 { &hf_winreg_winreg_DeleteKeyEx_handle
,
4833 { "Handle", "winreg.winreg_DeleteKeyEx.handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4834 { &hf_winreg_winreg_DeleteKeyEx_key
,
4835 { "Key", "winreg.winreg_DeleteKeyEx.key", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4836 { &hf_winreg_winreg_DeleteKeyEx_reserved
,
4837 { "Reserved", "winreg.winreg_DeleteKeyEx.reserved", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4838 { &hf_winreg_winreg_DeleteKey_key
,
4839 { "Key", "winreg.winreg_DeleteKey.key", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4840 { &hf_winreg_winreg_DeleteValue_value
,
4841 { "Value", "winreg.winreg_DeleteValue.value", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4842 { &hf_winreg_winreg_EnumKey_enum_index
,
4843 { "Enum Index", "winreg.winreg_EnumKey.enum_index", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4844 { &hf_winreg_winreg_EnumKey_keyclass
,
4845 { "Keyclass", "winreg.winreg_EnumKey.keyclass", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4846 { &hf_winreg_winreg_EnumKey_last_changed_time
,
4847 { "Last Changed Time", "winreg.winreg_EnumKey.last_changed_time", FT_ABSOLUTE_TIME
, ABSOLUTE_TIME_LOCAL
, NULL
, 0, NULL
, HFILL
}},
4848 { &hf_winreg_winreg_EnumKey_name
,
4849 { "Name", "winreg.winreg_EnumKey.name", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4850 { &hf_winreg_winreg_EnumValue_enum_index
,
4851 { "Enum Index", "winreg.winreg_EnumValue.enum_index", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4852 { &hf_winreg_winreg_EnumValue_length
,
4853 { "Length", "winreg.winreg_EnumValue.length", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4854 { &hf_winreg_winreg_EnumValue_name
,
4855 { "Name", "winreg.winreg_EnumValue.name", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4856 { &hf_winreg_winreg_EnumValue_size
,
4857 { "Size", "winreg.winreg_EnumValue.size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4858 { &hf_winreg_winreg_EnumValue_type
,
4859 { "Type", "winreg.winreg_EnumValue.type", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4860 { &hf_winreg_winreg_EnumValue_value
,
4861 { "Value", "winreg.winreg_EnumValue.value", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4862 { &hf_winreg_winreg_GetKeySecurity_sec_info
,
4863 { "Sec Info", "winreg.winreg_GetKeySecurity.sec_info", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4864 { &hf_winreg_winreg_GetVersion_version
,
4865 { "Version", "winreg.winreg_GetVersion.version", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4866 { &hf_winreg_winreg_InitiateSystemShutdownEx_do_reboot
,
4867 { "Do Reboot", "winreg.winreg_InitiateSystemShutdownEx.do_reboot", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4868 { &hf_winreg_winreg_InitiateSystemShutdownEx_force_apps
,
4869 { "Force Apps", "winreg.winreg_InitiateSystemShutdownEx.force_apps", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4870 { &hf_winreg_winreg_InitiateSystemShutdownEx_hostname
,
4871 { "Hostname", "winreg.winreg_InitiateSystemShutdownEx.hostname", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4872 { &hf_winreg_winreg_InitiateSystemShutdownEx_message
,
4873 { "Message", "winreg.winreg_InitiateSystemShutdownEx.message", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4874 { &hf_winreg_winreg_InitiateSystemShutdownEx_reason
,
4875 { "Reason", "winreg.winreg_InitiateSystemShutdownEx.reason", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4876 { &hf_winreg_winreg_InitiateSystemShutdownEx_timeout
,
4877 { "Timeout", "winreg.winreg_InitiateSystemShutdownEx.timeout", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4878 { &hf_winreg_winreg_InitiateSystemShutdown_do_reboot
,
4879 { "Do Reboot", "winreg.winreg_InitiateSystemShutdown.do_reboot", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4880 { &hf_winreg_winreg_InitiateSystemShutdown_force_apps
,
4881 { "Force Apps", "winreg.winreg_InitiateSystemShutdown.force_apps", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4882 { &hf_winreg_winreg_InitiateSystemShutdown_hostname
,
4883 { "Hostname", "winreg.winreg_InitiateSystemShutdown.hostname", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4884 { &hf_winreg_winreg_InitiateSystemShutdown_message
,
4885 { "Message", "winreg.winreg_InitiateSystemShutdown.message", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4886 { &hf_winreg_winreg_InitiateSystemShutdown_timeout
,
4887 { "Timeout", "winreg.winreg_InitiateSystemShutdown.timeout", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4888 { &hf_winreg_winreg_KeyOptions_REG_OPTION_BACKUP_RESTORE
,
4889 { "REG OPTION BACKUP RESTORE", "winreg.winreg_KeyOptions.REG_OPTION_BACKUP_RESTORE", FT_BOOLEAN
, 32, TFS(&winreg_KeyOptions_REG_OPTION_BACKUP_RESTORE_tfs
), ( 0x00000004 ), NULL
, HFILL
}},
4890 { &hf_winreg_winreg_KeyOptions_REG_OPTION_CREATE_LINK
,
4891 { "REG OPTION CREATE LINK", "winreg.winreg_KeyOptions.REG_OPTION_CREATE_LINK", FT_BOOLEAN
, 32, TFS(&winreg_KeyOptions_REG_OPTION_CREATE_LINK_tfs
), ( 0x00000002 ), NULL
, HFILL
}},
4892 { &hf_winreg_winreg_KeyOptions_REG_OPTION_OPEN_LINK
,
4893 { "REG OPTION OPEN LINK", "winreg.winreg_KeyOptions.REG_OPTION_OPEN_LINK", FT_BOOLEAN
, 32, TFS(&winreg_KeyOptions_REG_OPTION_OPEN_LINK_tfs
), ( 0x00000008 ), NULL
, HFILL
}},
4894 { &hf_winreg_winreg_KeyOptions_REG_OPTION_VOLATILE
,
4895 { "REG OPTION VOLATILE", "winreg.winreg_KeyOptions.REG_OPTION_VOLATILE", FT_BOOLEAN
, 32, TFS(&winreg_KeyOptions_REG_OPTION_VOLATILE_tfs
), ( 0x00000001 ), NULL
, HFILL
}},
4896 { &hf_winreg_winreg_LoadKey_filename
,
4897 { "Filename", "winreg.winreg_LoadKey.filename", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4898 { &hf_winreg_winreg_LoadKey_keyname
,
4899 { "Keyname", "winreg.winreg_LoadKey.keyname", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4900 { &hf_winreg_winreg_NotifyChangeKeyValue_notify_filter
,
4901 { "Notify Filter", "winreg.winreg_NotifyChangeKeyValue.notify_filter", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4902 { &hf_winreg_winreg_NotifyChangeKeyValue_string1
,
4903 { "String1", "winreg.winreg_NotifyChangeKeyValue.string1", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4904 { &hf_winreg_winreg_NotifyChangeKeyValue_string2
,
4905 { "String2", "winreg.winreg_NotifyChangeKeyValue.string2", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4906 { &hf_winreg_winreg_NotifyChangeKeyValue_unknown
,
4907 { "Unknown", "winreg.winreg_NotifyChangeKeyValue.unknown", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4908 { &hf_winreg_winreg_NotifyChangeKeyValue_unknown2
,
4909 { "Unknown2", "winreg.winreg_NotifyChangeKeyValue.unknown2", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4910 { &hf_winreg_winreg_NotifyChangeKeyValue_watch_subtree
,
4911 { "Watch Subtree", "winreg.winreg_NotifyChangeKeyValue.watch_subtree", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4912 { &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_ATTRIBUTES
,
4913 { "REG NOTIFY CHANGE ATTRIBUTES", "winreg.winreg_NotifyChangeType.REG_NOTIFY_CHANGE_ATTRIBUTES", FT_BOOLEAN
, 32, TFS(&winreg_NotifyChangeType_REG_NOTIFY_CHANGE_ATTRIBUTES_tfs
), ( 0x00000002 ), NULL
, HFILL
}},
4914 { &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_LAST_SET
,
4915 { "REG NOTIFY CHANGE LAST SET", "winreg.winreg_NotifyChangeType.REG_NOTIFY_CHANGE_LAST_SET", FT_BOOLEAN
, 32, TFS(&winreg_NotifyChangeType_REG_NOTIFY_CHANGE_LAST_SET_tfs
), ( 0x00000004 ), NULL
, HFILL
}},
4916 { &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_NAME
,
4917 { "REG NOTIFY CHANGE NAME", "winreg.winreg_NotifyChangeType.REG_NOTIFY_CHANGE_NAME", FT_BOOLEAN
, 32, TFS(&winreg_NotifyChangeType_REG_NOTIFY_CHANGE_NAME_tfs
), ( 0x00000001 ), NULL
, HFILL
}},
4918 { &hf_winreg_winreg_NotifyChangeType_REG_NOTIFY_CHANGE_SECURITY
,
4919 { "REG NOTIFY CHANGE SECURITY", "winreg.winreg_NotifyChangeType.REG_NOTIFY_CHANGE_SECURITY", FT_BOOLEAN
, 32, TFS(&winreg_NotifyChangeType_REG_NOTIFY_CHANGE_SECURITY_tfs
), ( 0x00000008 ), NULL
, HFILL
}},
4920 { &hf_winreg_winreg_OpenHKCU_access_mask
,
4921 { "Access Mask", "winreg.winreg_OpenHKCU.access_mask", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4922 { &hf_winreg_winreg_OpenHKPD_access_mask
,
4923 { "Access Mask", "winreg.winreg_OpenHKPD.access_mask", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4924 { &hf_winreg_winreg_OpenKey_access_mask
,
4925 { "Access Mask", "winreg.winreg_OpenKey.access_mask", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4926 { &hf_winreg_winreg_OpenKey_keyname
,
4927 { "Keyname", "winreg.winreg_OpenKey.keyname", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4928 { &hf_winreg_winreg_OpenKey_options
,
4929 { "Options", "winreg.winreg_OpenKey.options", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
4930 { &hf_winreg_winreg_OpenKey_parent_handle
,
4931 { "Parent Handle", "winreg.winreg_OpenKey.parent_handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4932 { &hf_winreg_winreg_QueryInfoKey_classname
,
4933 { "Classname", "winreg.winreg_QueryInfoKey.classname", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4934 { &hf_winreg_winreg_QueryInfoKey_last_changed_time
,
4935 { "Last Changed Time", "winreg.winreg_QueryInfoKey.last_changed_time", FT_ABSOLUTE_TIME
, ABSOLUTE_TIME_LOCAL
, NULL
, 0, NULL
, HFILL
}},
4936 { &hf_winreg_winreg_QueryInfoKey_max_classlen
,
4937 { "Max Classlen", "winreg.winreg_QueryInfoKey.max_classlen", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4938 { &hf_winreg_winreg_QueryInfoKey_max_subkeylen
,
4939 { "Max Subkeylen", "winreg.winreg_QueryInfoKey.max_subkeylen", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4940 { &hf_winreg_winreg_QueryInfoKey_max_valbufsize
,
4941 { "Max Valbufsize", "winreg.winreg_QueryInfoKey.max_valbufsize", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4942 { &hf_winreg_winreg_QueryInfoKey_max_valnamelen
,
4943 { "Max Valnamelen", "winreg.winreg_QueryInfoKey.max_valnamelen", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4944 { &hf_winreg_winreg_QueryInfoKey_num_subkeys
,
4945 { "Num Subkeys", "winreg.winreg_QueryInfoKey.num_subkeys", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4946 { &hf_winreg_winreg_QueryInfoKey_num_values
,
4947 { "Num Values", "winreg.winreg_QueryInfoKey.num_values", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4948 { &hf_winreg_winreg_QueryInfoKey_secdescsize
,
4949 { "Secdescsize", "winreg.winreg_QueryInfoKey.secdescsize", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4950 { &hf_winreg_winreg_QueryMultipleValues2_buffer
,
4951 { "Buffer", "winreg.winreg_QueryMultipleValues2.buffer", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4952 { &hf_winreg_winreg_QueryMultipleValues2_key_handle
,
4953 { "Key Handle", "winreg.winreg_QueryMultipleValues2.key_handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4954 { &hf_winreg_winreg_QueryMultipleValues2_needed
,
4955 { "Needed", "winreg.winreg_QueryMultipleValues2.needed", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4956 { &hf_winreg_winreg_QueryMultipleValues2_num_values
,
4957 { "Num Values", "winreg.winreg_QueryMultipleValues2.num_values", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4958 { &hf_winreg_winreg_QueryMultipleValues2_offered
,
4959 { "Offered", "winreg.winreg_QueryMultipleValues2.offered", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4960 { &hf_winreg_winreg_QueryMultipleValues2_values_in
,
4961 { "Values In", "winreg.winreg_QueryMultipleValues2.values_in", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4962 { &hf_winreg_winreg_QueryMultipleValues2_values_out
,
4963 { "Values Out", "winreg.winreg_QueryMultipleValues2.values_out", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4964 { &hf_winreg_winreg_QueryMultipleValues_buffer
,
4965 { "Buffer", "winreg.winreg_QueryMultipleValues.buffer", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4966 { &hf_winreg_winreg_QueryMultipleValues_buffer_size
,
4967 { "Buffer Size", "winreg.winreg_QueryMultipleValues.buffer_size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4968 { &hf_winreg_winreg_QueryMultipleValues_key_handle
,
4969 { "Key Handle", "winreg.winreg_QueryMultipleValues.key_handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4970 { &hf_winreg_winreg_QueryMultipleValues_num_values
,
4971 { "Num Values", "winreg.winreg_QueryMultipleValues.num_values", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4972 { &hf_winreg_winreg_QueryMultipleValues_values_in
,
4973 { "Values In", "winreg.winreg_QueryMultipleValues.values_in", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4974 { &hf_winreg_winreg_QueryMultipleValues_values_out
,
4975 { "Values Out", "winreg.winreg_QueryMultipleValues.values_out", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4976 { &hf_winreg_winreg_QueryValue_data
,
4977 { "Data", "winreg.winreg_QueryValue.data", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4978 { &hf_winreg_winreg_QueryValue_data_length
,
4979 { "Data Length", "winreg.winreg_QueryValue.data_length", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4980 { &hf_winreg_winreg_QueryValue_data_size
,
4981 { "Data Size", "winreg.winreg_QueryValue.data_size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
4982 { &hf_winreg_winreg_QueryValue_type
,
4983 { "Type", "winreg.winreg_QueryValue.type", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4984 { &hf_winreg_winreg_QueryValue_value_name
,
4985 { "Value Name", "winreg.winreg_QueryValue.value_name", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4986 { &hf_winreg_winreg_ReplaceKey_handle
,
4987 { "Handle", "winreg.winreg_ReplaceKey.handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4988 { &hf_winreg_winreg_ReplaceKey_new_file
,
4989 { "New File", "winreg.winreg_ReplaceKey.new_file", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4990 { &hf_winreg_winreg_ReplaceKey_old_file
,
4991 { "Old File", "winreg.winreg_ReplaceKey.old_file", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4992 { &hf_winreg_winreg_ReplaceKey_subkey
,
4993 { "Subkey", "winreg.winreg_ReplaceKey.subkey", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
4994 { &hf_winreg_winreg_RestoreKeyFlags_REG_FORCE_RESTORE
,
4995 { "REG FORCE RESTORE", "winreg.winreg_RestoreKeyFlags.REG_FORCE_RESTORE", FT_BOOLEAN
, 32, TFS(&winreg_RestoreKeyFlags_REG_FORCE_RESTORE_tfs
), ( 0x00000008 ), NULL
, HFILL
}},
4996 { &hf_winreg_winreg_RestoreKeyFlags_REG_NO_LAZY_FLUSH
,
4997 { "REG NO LAZY FLUSH", "winreg.winreg_RestoreKeyFlags.REG_NO_LAZY_FLUSH", FT_BOOLEAN
, 32, TFS(&winreg_RestoreKeyFlags_REG_NO_LAZY_FLUSH_tfs
), ( 0x00000004 ), NULL
, HFILL
}},
4998 { &hf_winreg_winreg_RestoreKeyFlags_REG_REFRESH_HIVE
,
4999 { "REG REFRESH HIVE", "winreg.winreg_RestoreKeyFlags.REG_REFRESH_HIVE", FT_BOOLEAN
, 32, TFS(&winreg_RestoreKeyFlags_REG_REFRESH_HIVE_tfs
), ( 0x00000002 ), NULL
, HFILL
}},
5000 { &hf_winreg_winreg_RestoreKeyFlags_REG_WHOLE_HIVE_VOLATILE
,
5001 { "REG WHOLE HIVE VOLATILE", "winreg.winreg_RestoreKeyFlags.REG_WHOLE_HIVE_VOLATILE", FT_BOOLEAN
, 32, TFS(&winreg_RestoreKeyFlags_REG_WHOLE_HIVE_VOLATILE_tfs
), ( 0x00000001 ), NULL
, HFILL
}},
5002 { &hf_winreg_winreg_RestoreKey_filename
,
5003 { "Filename", "winreg.winreg_RestoreKey.filename", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5004 { &hf_winreg_winreg_RestoreKey_flags
,
5005 { "Flags", "winreg.winreg_RestoreKey.flags", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
5006 { &hf_winreg_winreg_RestoreKey_handle
,
5007 { "Handle", "winreg.winreg_RestoreKey.handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5008 { &hf_winreg_winreg_SaveKeyEx_filename
,
5009 { "Filename", "winreg.winreg_SaveKeyEx.filename", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5010 { &hf_winreg_winreg_SaveKeyEx_flags
,
5011 { "Flags", "winreg.winreg_SaveKeyEx.flags", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5012 { &hf_winreg_winreg_SaveKeyEx_handle
,
5013 { "Handle", "winreg.winreg_SaveKeyEx.handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5014 { &hf_winreg_winreg_SaveKeyEx_sec_attrib
,
5015 { "Sec Attrib", "winreg.winreg_SaveKeyEx.sec_attrib", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5016 { &hf_winreg_winreg_SaveKey_filename
,
5017 { "Filename", "winreg.winreg_SaveKey.filename", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5018 { &hf_winreg_winreg_SaveKey_handle
,
5019 { "Handle", "winreg.winreg_SaveKey.handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5020 { &hf_winreg_winreg_SaveKey_sec_attrib
,
5021 { "Sec Attrib", "winreg.winreg_SaveKey.sec_attrib", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5022 { &hf_winreg_winreg_SecBuf_inherit
,
5023 { "Inherit", "winreg.winreg_SecBuf.inherit", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5024 { &hf_winreg_winreg_SecBuf_length
,
5025 { "Length", "winreg.winreg_SecBuf.length", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5026 { &hf_winreg_winreg_SecBuf_sd
,
5027 { "Sd", "winreg.winreg_SecBuf.sd", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5028 { &hf_winreg_winreg_SetKeySecurity_sec_info
,
5029 { "Sec Info", "winreg.winreg_SetKeySecurity.sec_info", FT_UINT32
, BASE_HEX
, NULL
, 0, NULL
, HFILL
}},
5030 { &hf_winreg_winreg_SetValue_data
,
5031 { "Data", "winreg.winreg_SetValue.data", FT_UINT8
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5032 { &hf_winreg_winreg_SetValue_name
,
5033 { "Name", "winreg.winreg_SetValue.name", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5034 { &hf_winreg_winreg_SetValue_size
,
5035 { "Size", "winreg.winreg_SetValue.size", FT_UINT32
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5036 { &hf_winreg_winreg_SetValue_type
,
5037 { "Type", "winreg.winreg_SetValue.type", FT_NONE
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5038 { &hf_winreg_winreg_StringBuf_length
,
5039 { "Length", "winreg.winreg_StringBuf.length", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5040 { &hf_winreg_winreg_StringBuf_name
,
5041 { "Name", "winreg.winreg_StringBuf.name", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5042 { &hf_winreg_winreg_StringBuf_size
,
5043 { "Size", "winreg.winreg_StringBuf.size", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5044 { &hf_winreg_winreg_String_name
,
5045 { "Name", "winreg.winreg_String.name", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5046 { &hf_winreg_winreg_String_name_len
,
5047 { "Name Len", "winreg.winreg_String.name_len", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5048 { &hf_winreg_winreg_String_name_size
,
5049 { "Name Size", "winreg.winreg_String.name_size", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5050 { &hf_winreg_winreg_UnLoadKey_handle
,
5051 { "Handle", "winreg.winreg_UnLoadKey.handle", FT_BYTES
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5052 { &hf_winreg_winreg_UnLoadKey_subkey
,
5053 { "Subkey", "winreg.winreg_UnLoadKey.subkey", FT_STRING
, BASE_NONE
, NULL
, 0, NULL
, HFILL
}},
5054 { &hf_winreg_winreg_ValNameBuf_length
,
5055 { "Length", "winreg.winreg_ValNameBuf.length", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5056 { &hf_winreg_winreg_ValNameBuf_name
,
5057 { "Name", "winreg.winreg_ValNameBuf.name", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5058 { &hf_winreg_winreg_ValNameBuf_size
,
5059 { "Size", "winreg.winreg_ValNameBuf.size", FT_UINT16
, BASE_DEC
, NULL
, 0, NULL
, HFILL
}},
5063 static int *ett
[] = {
5065 &ett_winreg_security_secinfo
,
5066 &ett_winreg_winreg_AccessMask
,
5067 &ett_winreg_winreg_String
,
5068 &ett_winreg_KeySecurityData
,
5069 &ett_winreg_winreg_SecBuf
,
5070 &ett_winreg_winreg_KeyOptions
,
5071 &ett_winreg_winreg_StringBuf
,
5072 &ett_winreg_winreg_ValNameBuf
,
5073 &ett_winreg_winreg_NotifyChangeType
,
5074 &ett_winreg_winreg_RestoreKeyFlags
,
5075 &ett_winreg_KeySecurityAttribute
,
5076 &ett_winreg_QueryMultipleValue
,
5079 proto_dcerpc_winreg
= proto_register_protocol("Remote Registry Service", "WINREG", "winreg");
5080 proto_register_field_array(proto_dcerpc_winreg
, hf
, array_length (hf
));
5081 proto_register_subtree_array(ett
, array_length(ett
));
5084 void proto_reg_handoff_dcerpc_winreg(void)
5086 dcerpc_init_uuid(proto_dcerpc_winreg
, ett_dcerpc_winreg
,
5087 &uuid_dcerpc_winreg
, ver_dcerpc_winreg
,
5088 winreg_dissectors
, hf_winreg_opnum
);