git add -f bin/default/librpc/gen_ndr/packet-dcerpc-*
[metze/samba/wip.git] / bin / default / librpc / gen_ndr / packet-dcerpc-lsa.c
1 /* DO NOT EDIT
2         This filter was automatically generated
3         from /home/metze/devel/samba/4.0/master4-franky/librpc/idl/lsa.idl and /home/metze/devel/samba/4.0/master4-franky/librpc/idl/lsa.cnf.
4         
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 http://wiki.wireshark.org/Pidl
9
10         $Id$
11 */
12
13
14 #include "config.h"
15 #ifdef _MSC_VER
16 #pragma warning(disable:4005)
17 #pragma warning(disable:4013)
18 #pragma warning(disable:4018)
19 #pragma warning(disable:4101)
20 #endif
21
22 #include <glib.h>
23 #include <string.h>
24 #include <epan/packet.h>
25
26 #include "packet-dcerpc.h"
27 #include "packet-dcerpc-nt.h"
28 #include "packet-windows-common.h"
29 #include "packet-dcerpc-lsa.h"
30
31 /* Ett declarations */
32 static gint ett_dcerpc_lsarpc = -1;
33 static gint ett_lsarpc_security_secinfo = -1;
34 static gint ett_lsarpc_kerb_EncTypes = -1;
35 static gint ett_lsarpc_lsa_String = -1;
36 static gint ett_lsarpc_lsa_StringLarge = -1;
37 static gint ett_lsarpc_lsa_Strings = -1;
38 static gint ett_lsarpc_lsa_AsciiString = -1;
39 static gint ett_lsarpc_lsa_AsciiStringLarge = -1;
40 static gint ett_lsarpc_lsa_BinaryString = -1;
41 static gint ett_lsarpc_lsa_LUID = -1;
42 static gint ett_lsarpc_lsa_PrivEntry = -1;
43 static gint ett_lsarpc_lsa_PrivArray = -1;
44 static gint ett_lsarpc_lsa_QosInfo = -1;
45 static gint ett_lsarpc_lsa_ObjectAttribute = -1;
46 static gint ett_lsarpc_lsa_PolicyAccessMask = -1;
47 static gint ett_lsarpc_lsa_AccountAccessMask = -1;
48 static gint ett_lsarpc_lsa_SecretAccessMask = -1;
49 static gint ett_lsarpc_lsa_TrustedAccessMask = -1;
50 static gint ett_lsarpc_lsa_AuditLogInfo = -1;
51 static gint ett_lsarpc_lsa_AuditEventsInfo = -1;
52 static gint ett_lsarpc_lsa_DomainInfo = -1;
53 static gint ett_lsarpc_lsa_PDAccountInfo = -1;
54 static gint ett_lsarpc_lsa_ServerRole = -1;
55 static gint ett_lsarpc_lsa_ReplicaSourceInfo = -1;
56 static gint ett_lsarpc_lsa_DefaultQuotaInfo = -1;
57 static gint ett_lsarpc_lsa_ModificationInfo = -1;
58 static gint ett_lsarpc_lsa_AuditFullSetInfo = -1;
59 static gint ett_lsarpc_lsa_AuditFullQueryInfo = -1;
60 static gint ett_lsarpc_lsa_DnsDomainInfo = -1;
61 static gint ett_lsarpc_lsa_PolicyInformation = -1;
62 static gint ett_lsarpc_lsa_SidPtr = -1;
63 static gint ett_lsarpc_lsa_SidArray = -1;
64 static gint ett_lsarpc_lsa_DomainList = -1;
65 static gint ett_lsarpc_lsa_TranslatedSid = -1;
66 static gint ett_lsarpc_lsa_TransSidArray = -1;
67 static gint ett_lsarpc_lsa_RefDomainList = -1;
68 static gint ett_lsarpc_lsa_TranslatedName = -1;
69 static gint ett_lsarpc_lsa_TransNameArray = -1;
70 static gint ett_lsarpc_lsa_LUIDAttribute = -1;
71 static gint ett_lsarpc_lsa_PrivilegeSet = -1;
72 static gint ett_lsarpc_lsa_DATA_BUF = -1;
73 static gint ett_lsarpc_lsa_DATA_BUF2 = -1;
74 static gint ett_lsarpc_lsa_TrustDirection = -1;
75 static gint ett_lsarpc_lsa_TrustAttributes = -1;
76 static gint ett_lsarpc_lsa_TrustDomainInfoName = -1;
77 static gint ett_lsarpc_lsa_TrustDomainInfoControllers = -1;
78 static gint ett_lsarpc_lsa_TrustDomainInfoPosixOffset = -1;
79 static gint ett_lsarpc_lsa_TrustDomainInfoPassword = -1;
80 static gint ett_lsarpc_lsa_TrustDomainInfoBasic = -1;
81 static gint ett_lsarpc_lsa_TrustDomainInfoInfoEx = -1;
82 static gint ett_lsarpc_lsa_TrustDomainInfoBuffer = -1;
83 static gint ett_lsarpc_lsa_TrustDomainInfoAuthInfo = -1;
84 static gint ett_lsarpc_lsa_TrustDomainInfoFullInfo = -1;
85 static gint ett_lsarpc_lsa_TrustDomainInfoAuthInfoInternal = -1;
86 static gint ett_lsarpc_lsa_TrustDomainInfoFullInfoInternal = -1;
87 static gint ett_lsarpc_lsa_TrustDomainInfoInfoEx2Internal = -1;
88 static gint ett_lsarpc_lsa_TrustDomainInfoFullInfo2Internal = -1;
89 static gint ett_lsarpc_lsa_TrustDomainInfoSupportedEncTypes = -1;
90 static gint ett_lsarpc_lsa_TrustedDomainInfo = -1;
91 static gint ett_lsarpc_lsa_DATA_BUF_PTR = -1;
92 static gint ett_lsarpc_lsa_RightAttribute = -1;
93 static gint ett_lsarpc_lsa_RightSet = -1;
94 static gint ett_lsarpc_lsa_DomainListEx = -1;
95 static gint ett_lsarpc_lsa_krbAuthenticationOptions = -1;
96 static gint ett_lsarpc_lsa_DomainInfoKerberos = -1;
97 static gint ett_lsarpc_lsa_DomainInfoEfs = -1;
98 static gint ett_lsarpc_lsa_DomainInformationPolicy = -1;
99 static gint ett_lsarpc_lsa_TranslatedName2 = -1;
100 static gint ett_lsarpc_lsa_TransNameArray2 = -1;
101 static gint ett_lsarpc_lsa_TranslatedSid2 = -1;
102 static gint ett_lsarpc_lsa_TransSidArray2 = -1;
103 static gint ett_lsarpc_lsa_TranslatedSid3 = -1;
104 static gint ett_lsarpc_lsa_TransSidArray3 = -1;
105 static gint ett_lsarpc_lsa_ForestTrustBinaryData = -1;
106 static gint ett_lsarpc_lsa_ForestTrustDomainInfo = -1;
107 static gint ett_lsarpc_lsa_ForestTrustData = -1;
108 static gint ett_lsarpc_lsa_ForestTrustRecord = -1;
109 static gint ett_lsarpc_lsa_ForestTrustInformation = -1;
110 static gint ett_lsarpc_lsa_ForestTrustCollisionTDOFlags = -1;
111 static gint ett_lsarpc_lsa_ForestTrustCollisionXrefFlags = -1;
112 static gint ett_lsarpc_lsa_ForestTrustCollisionFlags = -1;
113 static gint ett_lsarpc_lsa_ForestTrustCollisionRecord = -1;
114 static gint ett_lsarpc_lsa_ForestTrustCollisionInfo = -1;
115
116
117 /* Header field declarations */
118 static gint hf_lsarpc_lsa_TrustedDomainInfo_enc_types = -1;
119 static gint hf_lsarpc_lsa_SetSystemAccessAccount_handle = -1;
120 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE = -1;
121 static gint hf_lsarpc_lsa_AsciiStringLarge_size = -1;
122 static gint hf_lsarpc_lsa_LookupPrivName_luid = -1;
123 static gint hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_count = -1;
124 static gint hf_lsarpc_lsa_lsaRSetForestTrustInformation_trusted_domain_name = -1;
125 static gint hf_lsarpc_lsa_CreateTrustedDomainEx2_auth_info_internal = -1;
126 static gint hf_lsarpc_lsa_Delete_handle = -1;
127 static gint hf_lsarpc_lsa_PolicyInformation_account_domain = -1;
128 static gint hf_lsarpc_lsa_DomainInfoKerberos_clock_skew = -1;
129 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL = -1;
130 static gint hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_ADMIN = -1;
131 static gint hf_lsarpc_lsa_ForestTrustData_domain_info = -1;
132 static gint hf_lsarpc_lsa_AddPrivilegesToAccount_handle = -1;
133 static gint hf_lsarpc_lsa_ObjectAttribute_sec_qos = -1;
134 static gint hf_lsarpc_lsa_LookupNames3_handle = -1;
135 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_level = -1;
136 static gint hf_lsarpc_lsa_OpenTrustedDomain_sid = -1;
137 static gint hf_lsarpc_lsa_EnumAccounts_handle = -1;
138 static gint hf_lsarpc_lsa_CreateAccount_sid = -1;
139 static gint hf_lsarpc_lsa_ReplicaSourceInfo_account = -1;
140 static gint hf_lsarpc_lsa_QueryDomainInformationPolicy_handle = -1;
141 static gint hf_lsarpc_lsa_CreateTrustedDomain_info = -1;
142 static gint hf_lsarpc_lsa_TrustDomainInfoControllers_netbios_names = -1;
143 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS = -1;
144 static gint hf_lsarpc_lsa_PrivilegeSet_set = -1;
145 static gint hf_lsarpc_lsa_QuerySecret_new_val = -1;
146 static gint hf_lsarpc_lsa_TranslatedSid2_unknown = -1;
147 static gint hf_lsarpc_lsa_LookupSids2_handle = -1;
148 static gint hf_lsarpc_lsa_DomainListEx_domains = -1;
149 static gint hf_lsarpc_lsa_lsaRSetForestTrustInformation_check_only = -1;
150 static gint hf_lsarpc_lsa_LookupNames3_num_names = -1;
151 static gint hf_lsarpc_lsa_EnumTrustedDomainsEx_max_size = -1;
152 static gint hf_lsarpc_lsa_LookupPrivName_handle = -1;
153 static gint hf_lsarpc_lsa_ForestTrustCollisionFlags_flags = -1;
154 static gint hf_lsarpc_lsa_OpenAccount_handle = -1;
155 static gint hf_lsarpc_lsa_OpenSecret_access_mask = -1;
156 static gint hf_lsarpc_lsa_QuerySecurity_sdbuf = -1;
157 static gint hf_lsarpc_lsa_SetTrustedDomainInfoByName_trusted_domain = -1;
158 static gint hf_lsarpc_lsa_CreateTrustedDomain_trustdom_handle = -1;
159 static gint hf_lsarpc_lsa_EnumPrivs_handle = -1;
160 static gint hf_lsarpc_lsa_LUID_high = -1;
161 static gint hf_lsarpc_lsa_QueryInfoPolicy_handle = -1;
162 static gint hf_lsarpc_lsa_PolicyInformation_audit_events = -1;
163 static gint hf_lsarpc_lsa_TrustedDomainInfo_auth_info = -1;
164 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_PRIVILEGE = -1;
165 static gint hf_lsarpc_lsa_DomainInfoKerberos_service_tkt_lifetime = -1;
166 static gint hf_lsarpc_lsa_CreateSecret_access_mask = -1;
167 static gint hf_lsarpc_lsa_GetUserName_authority_name = -1;
168 static gint hf_lsarpc_lsa_SetTrustedDomainInfo_dom_sid = -1;
169 static gint hf_lsarpc_lsa_AuditFullSetInfo_shutdown_on_full = -1;
170 static gint hf_lsarpc_lsa_DeleteTrustedDomain_dom_sid = -1;
171 static gint hf_lsarpc_lsa_LookupNames4_names = -1;
172 static gint hf_lsarpc_lsa_ForestTrustRecord_forest_trust_data = -1;
173 static gint hf_lsarpc_lsa_TrustDirection_LSA_TRUST_DIRECTION_OUTBOUND = -1;
174 static gint hf_lsarpc_lsa_PolicyInformation_role = -1;
175 static gint hf_lsarpc_lsa_PolicyInformation_audit_log = -1;
176 static gint hf_lsarpc_lsa_LookupNames2_client_revision = -1;
177 static gint hf_lsarpc_lsa_PolicyInformation_dns = -1;
178 static gint hf_lsarpc_lsa_lsaRSetForestTrustInformation_handle = -1;
179 static gint hf_lsarpc_lsa_lsaRQueryForestTrustInformation_trusted_domain_name = -1;
180 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoByName_trusted_domain = -1;
181 static gint hf_lsarpc_lsa_OpenPolicy2_handle = -1;
182 static gint hf_lsarpc_lsa_EnumAccountsWithUserRight_handle = -1;
183 static gint hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_count = -1;
184 static gint hf_lsarpc_lsa_PolicyInformation_mod = -1;
185 static gint hf_lsarpc_lsa_LookupSids3_client_revision = -1;
186 static gint hf_lsarpc_lsa_RemoveAccountRights_rights = -1;
187 static gint hf_lsarpc_lsa_SetSecret_sec_handle = -1;
188 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_SECRET = -1;
189 static gint hf_lsarpc_lsa_OpenTrustedDomainByName_access_mask = -1;
190 static gint hf_lsarpc_lsa_RightAttribute_name = -1;
191 static gint hf_lsarpc_lsa_TrustDomainInfoPassword_old_password = -1;
192 static gint hf_lsarpc_lsa_DomainInfoKerberos_user_tkt_renewaltime = -1;
193 static gint hf_lsarpc_lsa_LUID_low = -1;
194 static gint hf_lsarpc_lsa_LookupNames3_names = -1;
195 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_dom_sid = -1;
196 static gint hf_lsarpc_lsa_SetSecObj_sdbuf = -1;
197 static gint hf_lsarpc_lsa_RemoveAccountRights_remove_all = -1;
198 static gint hf_lsarpc_lsa_LookupSids_names = -1;
199 static gint hf_lsarpc_lsa_OpenTrustedDomain_access_mask = -1;
200 static gint hf_lsarpc_lsa_RetrievePrivateData_handle = -1;
201 static gint hf_lsarpc_lsa_RefDomainList_max_size = -1;
202 static gint hf_lsarpc_lsa_TransSidArray_sids = -1;
203 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_attributes = -1;
204 static gint hf_lsarpc_lsa_CreateSecret_sec_handle = -1;
205 static gint hf_lsarpc_lsa_SetSecret_old_val = -1;
206 static gint hf_lsarpc_lsa_SetSecObj_sec_info = -1;
207 static gint hf_lsarpc_lsa_TrustDomainInfoBuffer_last_update_time = -1;
208 static gint hf_lsarpc_lsa_LookupSids2_client_revision = -1;
209 static gint hf_lsarpc_lsa_DnsDomainInfo_dns_forest = -1;
210 static gint hf_lsarpc_lsa_QueryDomainInformationPolicy_info = -1;
211 static gint hf_lsarpc_lsa_ForestTrustDomainInfo_netbios_domain_name = -1;
212 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_direction = -1;
213 static gint hf_lsarpc_lsa_LookupNames3_sids = -1;
214 static gint hf_lsarpc_lsa_ObjectAttribute_sec_desc = -1;
215 static gint hf_lsarpc_lsa_AuditLogInfo_retention_time = -1;
216 static gint hf_lsarpc_lsa_DnsDomainInfo_name = -1;
217 static gint hf_lsarpc_lsa_TranslatedSid2_sid_index = -1;
218 static gint hf_lsarpc_lsa_QuerySecret_old_mtime = -1;
219 static gint hf_lsarpc_lsa_OpenTrustedDomain_handle = -1;
220 static gint hf_lsarpc_lsa_TransNameArray_names = -1;
221 static gint hf_lsarpc_lsa_RefDomainList_count = -1;
222 static gint hf_lsarpc_lsa_QueryInfoPolicy2_info = -1;
223 static gint hf_lsarpc_lsa_GetSystemAccessAccount_access_mask = -1;
224 static gint hf_lsarpc_lsa_DomainInformationPolicy_kerberos_info = -1;
225 static gint hf_lsarpc_lsa_QueryInfoPolicy_info = -1;
226 static gint hf_lsarpc_lsa_CreateAccount_acct_handle = -1;
227 static gint hf_lsarpc_lsa_AuditLogInfo_maximum_log_size = -1;
228 static gint hf_lsarpc_lsa_AuditLogInfo_shutdown_in_progress = -1;
229 static gint hf_lsarpc_lsa_OpenSecret_handle = -1;
230 static gint hf_lsarpc_lsa_TrustDomainInfoName_netbios_name = -1;
231 static gint hf_lsarpc_lsa_SetInformationTrustedDomain_info = -1;
232 static gint hf_lsarpc_lsa_LookupNames_handle = -1;
233 static gint hf_lsarpc_lsa_EnumTrustDom_max_size = -1;
234 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE = -1;
235 static gint hf_lsarpc_lsa_TrustDomainInfoPassword_password = -1;
236 static gint hf_lsarpc_lsa_ObjectAttribute_object_name = -1;
237 static gint hf_lsarpc_lsa_lsaRSetForestTrustInformation_highest_record_type = -1;
238 static gint hf_lsarpc_lsa_EnumTrustDom_resume_handle = -1;
239 static gint hf_lsarpc_lsa_QosInfo_impersonation_level = -1;
240 static gint hf_lsarpc_lsa_QueryInfoPolicy2_level = -1;
241 static gint hf_lsarpc_lsa_TranslatedSid3_sid = -1;
242 static gint hf_lsarpc_lsa_TrustDomainInfoBasic_netbios_name = -1;
243 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_AUDIT_LOG_ADMIN = -1;
244 static gint hf_lsarpc_lsa_ForestTrustInformation_entries = -1;
245 static gint hf_lsarpc_lsa_ForestTrustData_top_level_name_ex = -1;
246 static gint hf_lsarpc_lsa_DefaultQuotaInfo_non_paged_pool = -1;
247 static gint hf_lsarpc_lsa_ForestTrustBinaryData_length = -1;
248 static gint hf_lsarpc_lsa_DefaultQuotaInfo_unknown = -1;
249 static gint hf_lsarpc_lsa_QosInfo_len = -1;
250 static gint hf_lsarpc_lsa_LookupNames3_level = -1;
251 static gint hf_lsarpc_lsa_LookupPrivDisplayName_disp_name = -1;
252 static gint hf_lsarpc_lsa_LookupNames_level = -1;
253 static gint hf_lsarpc_lsa_LookupNames4_count = -1;
254 static gint hf_lsarpc_lsa_LookupNames_names = -1;
255 static gint hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_POSIX = -1;
256 static gint hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_PRIVILEGES = -1;
257 static gint hf_lsarpc_lsa_PrivEntry_luid = -1;
258 static gint hf_lsarpc_lsa_EnumAccounts_resume_handle = -1;
259 static gint hf_lsarpc_lsa_LookupSids3_level = -1;
260 static gint hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_CONFLICT = -1;
261 static gint hf_lsarpc_lsa_DATA_BUF_data = -1;
262 static gint hf_lsarpc_lsa_OpenTrustedDomainByName_name = -1;
263 static gint hf_lsarpc_lsa_DomainListEx_count = -1;
264 static gint hf_lsarpc_lsa_DeleteObject_handle = -1;
265 static gint hf_lsarpc_lsa_DefaultQuotaInfo_pagefile = -1;
266 static gint hf_lsarpc_lsa_DefaultQuotaInfo_min_wss = -1;
267 static gint hf_lsarpc_lsa_ForestTrustData_top_level_name = -1;
268 static gint hf_lsarpc_lsa_TranslatedName2_sid_type = -1;
269 static gint hf_lsarpc_lsa_LookupPrivDisplayName_returned_language_id = -1;
270 static gint hf_lsarpc_lsa_SetSystemAccessAccount_access_mask = -1;
271 static gint hf_lsarpc_lsa_OpenTrustedDomain_trustdom_handle = -1;
272 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfo_info_ex = -1;
273 static gint hf_lsarpc_lsa_ForestTrustRecord_type = -1;
274 static gint hf_lsarpc_lsa_DATA_BUF2_data = -1;
275 static gint hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_AUTH = -1;
276 static gint hf_lsarpc_lsa_RemoveAccountRights_handle = -1;
277 static gint hf_lsarpc_lsa_TrustedDomainInfo_full_info_internal = -1;
278 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION = -1;
279 static gint hf_lsarpc_lsa_LookupNames3_count = -1;
280 static gint hf_lsarpc_lsa_LookupNames3_client_revision = -1;
281 static gint hf_lsarpc_lsa_lsaRSetForestTrustInformation_forest_trust_info = -1;
282 static gint hf_lsarpc_lsa_EnumTrustedDomainsEx_resume_handle = -1;
283 static gint hf_lsarpc_lsa_TransNameArray2_count = -1;
284 static gint hf_lsarpc_lsa_DomainInfo_sid = -1;
285 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoByName_level = -1;
286 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx_sid = -1;
287 static gint hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info = -1;
288 static gint hf_lsarpc_lsa_LookupNames3_domains = -1;
289 static gint hf_lsarpc_lsa_CreateTrustedDomainEx2_access_mask = -1;
290 static gint hf_lsarpc_lsa_SetTrustedDomainInfo_info = -1;
291 static gint hf_lsarpc_lsa_SetSecret_new_val = -1;
292 static gint hf_lsarpc_lsa_String_string = -1;
293 static gint hf_lsarpc_lsa_PrivArray_count = -1;
294 static gint hf_lsarpc_lsa_QueryTrustedDomainInfo_level = -1;
295 static gint hf_lsarpc_lsa_DATA_BUF_size = -1;
296 static gint hf_lsarpc_lsa_QueryDomainInformationPolicy_level = -1;
297 static gint hf_lsarpc_lsa_StorePrivateData_val = -1;
298 static gint hf_lsarpc_lsa_ForestTrustCollisionRecord_index = -1;
299 static gint hf_lsarpc_lsa_StringLarge_string = -1;
300 static gint hf_lsarpc_lsa_DomainInfo_name = -1;
301 static gint hf_lsarpc_lsa_AsciiString_size = -1;
302 static gint hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_ADMIN = -1;
303 static gint hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_NEW = -1;
304 static gint hf_lsarpc_lsa_LookupNames2_sids = -1;
305 static gint hf_lsarpc_lsa_SetDomainInformationPolicy_level = -1;
306 static gint hf_lsarpc_lsa_krbAuthenticationOptions_LSA_POLICY_KERBEROS_VALIDATE_CLIENT = -1;
307 static gint hf_lsarpc_lsa_SetInfoPolicy2_info = -1;
308 static gint hf_lsarpc_lsa_TrustDirection_LSA_TRUST_DIRECTION_INBOUND = -1;
309 static gint hf_lsarpc_lsa_AsciiStringLarge_string = -1;
310 static gint hf_lsarpc_lsa_LookupSids2_level = -1;
311 static gint hf_lsarpc_lsa_OpenSecret_sec_handle = -1;
312 static gint hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info = -1;
313 static gint hf_lsarpc_lsa_DomainInformationPolicy_efs_info = -1;
314 static gint hf_lsarpc_lsa_EnumAccounts_sids = -1;
315 static gint hf_lsarpc_lsa_ReplicaSourceInfo_source = -1;
316 static gint hf_lsarpc_lsa_QuerySecurity_sec_info = -1;
317 static gint hf_lsarpc_lsa_ForestTrustCollisionRecord_name = -1;
318 static gint hf_lsarpc_lsa_TrustedDomainInfo_info_ex2_internal = -1;
319 static gint hf_lsarpc_lsa_LookupSids2_domains = -1;
320 static gint hf_lsarpc_lsa_EnumTrustedDomainsEx_domains = -1;
321 static gint hf_lsarpc_lsa_EnumAccounts_num_entries = -1;
322 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfo_posix_offset = -1;
323 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_type = -1;
324 static gint hf_lsarpc_lsa_DnsDomainInfo_sid = -1;
325 static gint hf_lsarpc_lsa_LookupNames_num_names = -1;
326 static gint hf_lsarpc_lsa_ForestTrustDomainInfo_domain_sid = -1;
327 static gint hf_lsarpc_lsa_LookupSids_handle = -1;
328 static gint hf_lsarpc_lsa_AsciiString_string = -1;
329 static gint hf_lsarpc_lsa_TrustedDomainInfo_info_ex = -1;
330 static gint hf_lsarpc_lsa_CreateTrustedDomainEx2_trustdom_handle = -1;
331 static gint hf_lsarpc_lsa_RemovePrivilegesFromAccount_handle = -1;
332 static gint hf_lsarpc_lsa_CreateAccount_handle = -1;
333 static gint hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_DOMAIN_NAME = -1;
334 static gint hf_lsarpc_lsa_TrustedDomainInfo_name = -1;
335 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_length = -1;
336 static gint hf_lsarpc_lsa_EnumAccountRights_rights = -1;
337 static gint hf_lsarpc_lsa_SetSecObj_handle = -1;
338 static gint hf_lsarpc_lsa_LookupPrivDisplayName_name = -1;
339 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_GET_PRIVATE_INFORMATION = -1;
340 static gint hf_lsarpc_lsa_OpenPolicy2_access_mask = -1;
341 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_auth_info = -1;
342 static gint hf_lsarpc_lsa_SetInfoPolicy2_handle = -1;
343 static gint hf_lsarpc_lsa_LookupNames2_num_names = -1;
344 static gint hf_lsarpc_lsa_SetInfoPolicy2_level = -1;
345 static gint hf_lsarpc_lsa_EnumPrivsAccount_privs = -1;
346 static gint hf_lsarpc_lsa_TrustedDomainInfo_controllers = -1;
347 static gint hf_lsarpc_lsa_OpenAccount_access_mask = -1;
348 static gint hf_lsarpc_lsa_EnumPrivs_privs = -1;
349 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_TRUST_ADMIN = -1;
350 static gint hf_lsarpc_lsa_AuditLogInfo_percent_full = -1;
351 static gint hf_lsarpc_lsa_PolicyInformation_quota = -1;
352 static gint hf_lsarpc_lsa_RemovePrivilegesFromAccount_privs = -1;
353 static gint hf_lsarpc_lsa_TrustDomainInfoBuffer_AuthType = -1;
354 static gint hf_lsarpc_lsa_TranslatedName_sid_type = -1;
355 static gint hf_lsarpc_lsa_LookupSids2_names = -1;
356 static gint hf_lsarpc_lsa_EnumPrivsAccount_handle = -1;
357 static gint hf_lsarpc_lsa_SidArray_sids = -1;
358 static gint hf_lsarpc_lsa_RemoveAccountRights_sid = -1;
359 static gint hf_lsarpc_lsa_QueryTrustedDomainInfo_info = -1;
360 static gint hf_lsarpc_lsa_String_length = -1;
361 static gint hf_lsarpc_opnum = -1;
362 static gint hf_lsarpc_lsa_CreateTrustedDomainEx_info = -1;
363 static gint hf_lsarpc_lsa_PrivilegeSet_count = -1;
364 static gint hf_lsarpc_lsa_SetTrustedDomainInfoByName_level = -1;
365 static gint hf_lsarpc_lsa_lsaRSetForestTrustInformation_collision_info = -1;
366 static gint hf_lsarpc_lsa_LookupPrivDisplayName_language_id = -1;
367 static gint hf_lsarpc_lsa_TransSidArray3_sids = -1;
368 static gint hf_lsarpc_status = -1;
369 static gint hf_lsarpc_lsa_LookupNames_count = -1;
370 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_info = -1;
371 static gint hf_lsarpc_lsa_SetTrustedDomainInfo_handle = -1;
372 static gint hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info = -1;
373 static gint hf_lsarpc_lsa_LookupPrivValue_name = -1;
374 static gint hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_CONTROLLERS = -1;
375 static gint hf_lsarpc_lsa_ForestTrustBinaryData_data = -1;
376 static gint hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS = -1;
377 static gint hf_lsarpc_lsa_TranslatedSid_sid_index = -1;
378 static gint hf_lsarpc_lsa_AsciiStringLarge_length = -1;
379 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_ACCOUNT = -1;
380 static gint hf_lsarpc_lsa_TrustDomainInfoAuthInfoInternal_auth_blob = -1;
381 static gint hf_lsarpc_lsa_OpenTrustedDomainByName_trustdom_handle = -1;
382 static gint hf_lsarpc_lsa_TransNameArray2_names = -1;
383 static gint hf_lsarpc_lsa_EnumTrustDom_handle = -1;
384 static gint hf_lsarpc_lsa_ForestTrustCollisionInfo_count = -1;
385 static gint hf_lsarpc_lsa_CreateAccount_access_mask = -1;
386 static gint hf_lsarpc_lsa_OpenPolicy2_attr = -1;
387 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx_netbios_name = -1;
388 static gint hf_lsarpc_lsa_OpenPolicy_system_name = -1;
389 static gint hf_lsarpc_lsa_ForestTrustRecord_flags = -1;
390 static gint hf_lsarpc_lsa_LookupSids2_sids = -1;
391 static gint hf_lsarpc_lsa_CreateTrustedDomainEx_auth_info = -1;
392 static gint hf_lsarpc_lsa_TranslatedName_sid_index = -1;
393 static gint hf_lsarpc_lsa_TrustedDomainInfo_password = -1;
394 static gint hf_lsarpc_lsa_ModificationInfo_db_create_time = -1;
395 static gint hf_lsarpc_lsa_RetrievePrivateData_name = -1;
396 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_NOTIFICATION = -1;
397 static gint hf_lsarpc_lsa_PolicyInformation_domain = -1;
398 static gint hf_lsarpc_lsa_DATA_BUF2_size = -1;
399 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoByName_handle = -1;
400 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_AUDIT_REQUIREMENTS = -1;
401 static gint hf_lsarpc_lsa_LookupNames4_domains = -1;
402 static gint hf_lsarpc_lsa_TranslatedSid_sid_type = -1;
403 static gint hf_lsarpc_lsa_LookupNames2_count = -1;
404 static gint hf_lsarpc_lsa_LookupSids2_lookup_options = -1;
405 static gint hf_lsarpc_lsa_ForestTrustDomainInfo_dns_domain_name = -1;
406 static gint hf_lsarpc_lsa_AuditLogInfo_next_audit_record = -1;
407 static gint hf_lsarpc_lsa_PrivArray_privs = -1;
408 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_posix_offset = -1;
409 static gint hf_lsarpc_lsa_TransSidArray2_sids = -1;
410 static gint hf_lsarpc_lsa_TransSidArray3_count = -1;
411 static gint hf_lsarpc_lsa_lsaRQueryForestTrustInformation_handle = -1;
412 static gint hf_lsarpc_lsa_CreateTrustedDomainEx_policy_handle = -1;
413 static gint hf_lsarpc_lsa_PolicyInformation_l_account_domain = -1;
414 static gint hf_lsarpc_lsa_StorePrivateData_handle = -1;
415 static gint hf_lsarpc_lsa_DomainList_count = -1;
416 static gint hf_lsarpc_lsa_QuerySecret_sec_handle = -1;
417 static gint hf_lsarpc_lsa_AuditFullQueryInfo_shutdown_on_full = -1;
418 static gint hf_lsarpc_lsa_GetUserName_system_name = -1;
419 static gint hf_lsarpc_lsa_SidArray_num_sids = -1;
420 static gint hf_lsarpc_lsa_CreateTrustedDomainEx_trustdom_handle = -1;
421 static gint hf_lsarpc_lsa_LookupNames4_level = -1;
422 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_handle = -1;
423 static gint hf_lsarpc_lsa_RightSet_names = -1;
424 static gint hf_lsarpc_lsa_LookupNames_domains = -1;
425 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION = -1;
426 static gint hf_lsarpc_lsa_LookupNames_sids = -1;
427 static gint hf_lsarpc_lsa_EnumAccountsWithUserRight_name = -1;
428 static gint hf_lsarpc_lsa_LookupPrivName_name = -1;
429 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_LOCAL_INFORMATION = -1;
430 static gint hf_lsarpc_lsa_LookupNames4_sids = -1;
431 static gint hf_lsarpc_lsa_SetInformationTrustedDomain_level = -1;
432 static gint hf_lsarpc_lsa_RefDomainList_domains = -1;
433 static gint hf_lsarpc_lsa_SetDomainInformationPolicy_info = -1;
434 static gint hf_lsarpc_lsa_SetDomainInformationPolicy_handle = -1;
435 static gint hf_lsarpc_lsa_PolicyInformation_replica = -1;
436 static gint hf_lsarpc_lsa_TransSidArray_count = -1;
437 static gint hf_lsarpc_lsa_SetTrustedDomainInfo_level = -1;
438 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfo_auth_info = -1;
439 static gint hf_lsarpc_lsa_StorePrivateData_name = -1;
440 static gint hf_lsarpc_lsa_EnumAccountRights_handle = -1;
441 static gint hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_AUTH = -1;
442 static gint hf_lsarpc_lsa_AuditLogInfo_time_to_shutdown = -1;
443 static gint hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_VIEW = -1;
444 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx_domain_name = -1;
445 static gint hf_lsarpc_lsa_LookupSids2_count = -1;
446 static gint hf_lsarpc_lsa_TrustedDomainInfo_info_basic = -1;
447 static gint hf_lsarpc_lsa_TrustDomainInfoPosixOffset_posix_offset = -1;
448 static gint hf_lsarpc_lsa_TrustedDomainInfo_full_info2_internal = -1;
449 static gint hf_lsarpc_lsa_CreateTrustedDomainEx2_policy_handle = -1;
450 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_WITHIN_FOREST = -1;
451 static gint hf_lsarpc_lsa_OpenSecret_name = -1;
452 static gint hf_lsarpc_lsa_CreateTrustedDomainEx2_info = -1;
453 static gint hf_lsarpc_lsa_GetUserName_account_name = -1;
454 static gint hf_lsarpc_lsa_LUIDAttribute_attribute = -1;
455 static gint hf_lsarpc_lsa_OpenPolicy_access_mask = -1;
456 static gint hf_lsarpc_lsa_DATA_BUF_PTR_buf = -1;
457 static gint hf_lsarpc_lsa_LookupSids3_sids = -1;
458 static gint hf_lsarpc_lsa_String_size = -1;
459 static gint hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info = -1;
460 static gint hf_lsarpc_lsa_TrustedDomainInfo_posix_offset = -1;
461 static gint hf_lsarpc_lsa_LookupSids3_lookup_options = -1;
462 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_info_ex = -1;
463 static gint hf_lsarpc_lsa_OpenAccount_sid = -1;
464 static gint hf_lsarpc_lsa_ForestTrustCollisionRecord_type = -1;
465 static gint hf_lsarpc_lsa_SetTrustedDomainInfoByName_handle = -1;
466 static gint hf_lsarpc_lsa_DnsDomainInfo_domain_guid = -1;
467 static gint hf_lsarpc_lsa_ForestTrustRecord_time = -1;
468 static gint hf_lsarpc_lsa_LUIDAttribute_luid = -1;
469 static gint hf_lsarpc_lsa_DomainInfoKerberos_user_tkt_lifetime = -1;
470 static gint hf_lsarpc_lsa_AddAccountRights_rights = -1;
471 static gint hf_lsarpc_lsa_TrustDomainInfoSupportedEncTypes_enc_types = -1;
472 static gint hf_lsarpc_lsa_PrivilegeSet_unknown = -1;
473 static gint hf_lsarpc_lsa_ObjectAttribute_root_dir = -1;
474 static gint hf_lsarpc_lsa_LookupSids3_names = -1;
475 static gint hf_lsarpc_lsa_CreateSecret_handle = -1;
476 static gint hf_lsarpc_lsa_SetInformationTrustedDomain_trustdom_handle = -1;
477 static gint hf_lsarpc_lsa_StringLarge_length = -1;
478 static gint hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_QUOTAS = -1;
479 static gint hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_CONFLICT = -1;
480 static gint hf_lsarpc_lsa_BinaryString_length = -1;
481 static gint hf_lsarpc_lsa_LookupNames2_lookup_options = -1;
482 static gint hf_lsarpc_lsa_LookupNames2_names = -1;
483 static gint hf_lsarpc_lsa_OpenAccount_acct_handle = -1;
484 static gint hf_lsarpc_lsa_ForestTrustCollisionInfo_entries = -1;
485 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SERVER_ADMIN = -1;
486 static gint hf_lsarpc_lsa_QuerySecret_old_val = -1;
487 static gint hf_lsarpc_lsa_DeleteTrustedDomain_handle = -1;
488 static gint hf_lsarpc_lsa_LookupPrivDisplayName_handle = -1;
489 static gint hf_lsarpc_lsa_LookupNames2_domains = -1;
490 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN = -1;
491 static gint hf_lsarpc_lsa_LookupNames4_lookup_options = -1;
492 static gint hf_lsarpc_lsa_EnumPrivs_resume_handle = -1;
493 static gint hf_lsarpc_lsa_TrustDomainInfoControllers_entries = -1;
494 static gint hf_lsarpc_lsa_LookupNames2_handle = -1;
495 static gint hf_lsarpc_lsa_LookupPrivDisplayName_language_id_sys = -1;
496 static gint hf_lsarpc_lsa_SetTrustedDomainInfoByName_info = -1;
497 static gint hf_lsarpc_lsa_AddPrivilegesToAccount_privs = -1;
498 static gint hf_lsarpc_lsa_Close_handle = -1;
499 static gint hf_lsarpc_lsa_TranslatedName2_name = -1;
500 static gint hf_lsarpc_lsa_AddAccountRights_sid = -1;
501 static gint hf_lsarpc_lsa_LookupPrivValue_luid = -1;
502 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_LOOKUP_NAMES = -1;
503 static gint hf_lsarpc_lsa_TranslatedName2_unknown = -1;
504 static gint hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data = -1;
505 static gint hf_lsarpc_lsa_CreateTrustedDomain_access_mask = -1;
506 static gint hf_lsarpc_lsa_DomainInfoKerberos_reserved = -1;
507 static gint hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_CONTROLLERS = -1;
508 static gint hf_lsarpc_lsa_DomainList_domains = -1;
509 static gint hf_lsarpc_lsa_CreateSecret_name = -1;
510 static gint hf_lsarpc_lsa_AuditEventsInfo_auditing_mode = -1;
511 static gint hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_POSIX = -1;
512 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_info = -1;
513 static gint hf_lsarpc_lsa_EnumAccountsWithUserRight_sids = -1;
514 static gint hf_lsarpc_lsa_SetInfoPolicy_info = -1;
515 static gint hf_lsarpc_lsa_SidPtr_sid = -1;
516 static gint hf_lsarpc_lsa_QueryTrustedDomainInfoByName_info = -1;
517 static gint hf_lsarpc_lsa_DomainInfoKerberos_authentication_options = -1;
518 static gint hf_lsarpc_lsa_LookupNames4_client_revision = -1;
519 static gint hf_lsarpc_lsa_QuerySecurity_handle = -1;
520 static gint hf_lsarpc_lsa_PDAccountInfo_name = -1;
521 static gint hf_lsarpc_lsa_ForestTrustInformation_count = -1;
522 static gint hf_lsarpc_lsa_TranslatedSid3_flags = -1;
523 static gint hf_lsarpc_lsa_lsaRQueryForestTrustInformation_unknown = -1;
524 static gint hf_lsarpc_lsa_LookupSids3_domains = -1;
525 static gint hf_lsarpc_lsa_Strings_count = -1;
526 static gint hf_lsarpc_lsa_QueryInfoPolicy2_handle = -1;
527 static gint hf_lsarpc_lsa_QueryTrustedDomainInfo_trustdom_handle = -1;
528 static gint hf_lsarpc_lsa_TrustDomainInfoBuffer_data = -1;
529 static gint hf_lsarpc_lsa_LookupNames3_lookup_options = -1;
530 static gint hf_lsarpc_lsa_StringLarge_size = -1;
531 static gint hf_lsarpc_lsa_ObjectAttribute_attributes = -1;
532 static gint hf_lsarpc_lsa_TrustedDomainInfo_auth_info_internal = -1;
533 static gint hf_lsarpc_lsa_QosInfo_effective_only = -1;
534 static gint hf_lsarpc_lsa_OpenPolicy_attr = -1;
535 static gint hf_lsarpc_lsa_ObjectAttribute_len = -1;
536 static gint hf_lsarpc_lsa_TrustDomainInfoBasic_sid = -1;
537 static gint hf_lsarpc_lsa_PrivEntry_name = -1;
538 static gint hf_lsarpc_lsa_ServerRole_role = -1;
539 static gint hf_lsarpc_lsa_BinaryString_array = -1;
540 static gint hf_lsarpc_lsa_TranslatedSid3_sid_type = -1;
541 static gint hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_CONFLICT = -1;
542 static gint hf_lsarpc_lsa_LookupNames4_num_names = -1;
543 static gint hf_lsarpc_lsa_GetSystemAccessAccount_handle = -1;
544 static gint hf_lsarpc_lsa_EnumPrivs_max_count = -1;
545 static gint hf_lsarpc_lsa_LookupNames2_level = -1;
546 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_info_ex = -1;
547 static gint hf_lsarpc_lsa_DATA_BUF_length = -1;
548 static gint hf_lsarpc_lsa_Strings_names = -1;
549 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_posix_offset = -1;
550 static gint hf_lsarpc_lsa_PolicyInformation_auditfullset = -1;
551 static gint hf_lsarpc_lsa_OpenPolicy_handle = -1;
552 static gint hf_lsarpc_lsa_ForestTrustData_data = -1;
553 static gint hf_lsarpc_lsa_ForestTrustCollisionRecord_flags = -1;
554 static gint hf_lsarpc_lsa_LookupSids_count = -1;
555 static gint hf_lsarpc_lsa_DnsDomainInfo_dns_domain = -1;
556 static gint hf_lsarpc_lsa_QueryInfoPolicy_level = -1;
557 static gint hf_lsarpc_lsa_TranslatedName_name = -1;
558 static gint hf_lsarpc_lsa_LookupSids_domains = -1;
559 static gint hf_lsarpc_lsa_TranslatedSid_rid = -1;
560 static gint hf_lsarpc_lsa_DomainInfoEfs_efs_blob = -1;
561 static gint hf_lsarpc_lsa_RemovePrivilegesFromAccount_remove_all = -1;
562 static gint hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_QUERY_VALUE = -1;
563 static gint hf_lsarpc_lsa_AddAccountRights_handle = -1;
564 static gint hf_lsarpc_lsa_DomainInfoEfs_blob_size = -1;
565 static gint hf_lsarpc_lsa_OpenPolicy2_system_name = -1;
566 static gint hf_lsarpc_lsa_lsaRQueryForestTrustInformation_forest_trust_info = -1;
567 static gint hf_lsarpc_lsa_CreateTrustedDomain_policy_handle = -1;
568 static gint hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_auth_info = -1;
569 static gint hf_lsarpc_lsa_DefaultQuotaInfo_max_wss = -1;
570 static gint hf_lsarpc_lsa_DefaultQuotaInfo_paged_pool = -1;
571 static gint hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY = -1;
572 static gint hf_lsarpc_lsa_LookupSids_level = -1;
573 static gint hf_lsarpc_lsa_AuditFullQueryInfo_log_is_full = -1;
574 static gint hf_lsarpc_lsa_RightSet_count = -1;
575 static gint hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_ADMIN = -1;
576 static gint hf_lsarpc_lsa_AuditEventsInfo_settings = -1;
577 static gint hf_lsarpc_lsa_TranslatedSid2_rid = -1;
578 static gint hf_lsarpc_lsa_TranslatedSid2_sid_type = -1;
579 static gint hf_lsarpc_lsa_OpenTrustedDomainByName_handle = -1;
580 static gint hf_lsarpc_lsa_EnumTrustedDomainsEx_handle = -1;
581 static gint hf_lsarpc_lsa_AsciiString_length = -1;
582 static gint hf_lsarpc_lsa_EnumAccountRights_sid = -1;
583 static gint hf_lsarpc_lsa_LookupSids_sids = -1;
584 static gint hf_lsarpc_lsa_CloseTrustedDomainEx_handle = -1;
585 static gint hf_lsarpc_lsa_QosInfo_context_mode = -1;
586 static gint hf_lsarpc_lsa_BinaryString_size = -1;
587 static gint hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_AUDIT_INFORMATION = -1;
588 static gint hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_SET_VALUE = -1;
589 static gint hf_lsarpc_lsa_EnumTrustDom_domains = -1;
590 static gint hf_lsarpc_lsa_TransNameArray_count = -1;
591 static gint hf_lsarpc_lsa_RetrievePrivateData_val = -1;
592 static gint hf_lsarpc_lsa_PolicyInformation_pd = -1;
593 static gint hf_lsarpc_lsa_TranslatedName2_sid_index = -1;
594 static gint hf_lsarpc_lsa_PolicyInformation_auditfullquery = -1;
595 static gint hf_lsarpc_lsa_ModificationInfo_modified_id = -1;
596 static gint hf_lsarpc_lsa_QuerySecret_new_mtime = -1;
597 static gint hf_lsarpc_lsa_LookupPrivValue_handle = -1;
598 static gint hf_lsarpc_lsa_TransSidArray2_count = -1;
599 static gint hf_lsarpc_lsa_AuditEventsInfo_count = -1;
600 static gint hf_lsarpc_lsa_SetInfoPolicy_level = -1;
601 static gint hf_lsarpc_lsa_TrustedDomainInfo_full_info = -1;
602 static gint hf_lsarpc_lsa_CreateTrustedDomainEx_access_mask = -1;
603 static gint hf_lsarpc_lsa_LookupSids3_count = -1;
604 static gint hf_lsarpc_lsa_SetInfoPolicy_handle = -1;
605 static gint hf_lsarpc_lsa_TranslatedSid3_sid_index = -1;
606
607 static gint proto_dcerpc_lsarpc = -1;
608 /* Version information */
609
610
611 static e_uuid_t uuid_dcerpc_lsarpc = {
612         0x12345778, 0x1234, 0xabcd,
613         { 0xef, 0x00, 0x01, 0x23, 0x45, 0x67, 0x89, 0xab }
614 };
615 static guint16 ver_dcerpc_lsarpc = 0;
616
617 static int lsarpc_dissect_element_lsa_String_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
618 static int lsarpc_dissect_element_lsa_String_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
619 static int lsarpc_dissect_element_lsa_String_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
620 static int lsarpc_dissect_element_lsa_String_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
621 static int lsarpc_dissect_element_lsa_String_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
622 static int lsarpc_dissect_element_lsa_StringLarge_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
623 static int lsarpc_dissect_element_lsa_StringLarge_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
624 static int lsarpc_dissect_element_lsa_StringLarge_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
625 static int lsarpc_dissect_element_lsa_StringLarge_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
626 static int lsarpc_dissect_element_lsa_StringLarge_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
627 static int lsarpc_dissect_element_lsa_Strings_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
628 static int lsarpc_dissect_element_lsa_Strings_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
629 static int lsarpc_dissect_element_lsa_Strings_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
630 static int lsarpc_dissect_element_lsa_Strings_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
631 static int lsarpc_dissect_element_lsa_AsciiString_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
632 static int lsarpc_dissect_element_lsa_AsciiString_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
633 static int lsarpc_dissect_element_lsa_AsciiString_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
634 static int lsarpc_dissect_element_lsa_AsciiString_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
635 static int lsarpc_dissect_element_lsa_AsciiString_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
636 static int lsarpc_dissect_element_lsa_AsciiStringLarge_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
637 static int lsarpc_dissect_element_lsa_AsciiStringLarge_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
638 static int lsarpc_dissect_element_lsa_AsciiStringLarge_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
639 static int lsarpc_dissect_element_lsa_AsciiStringLarge_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
640 static int lsarpc_dissect_element_lsa_AsciiStringLarge_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
641 static int lsarpc_dissect_element_lsa_BinaryString_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
642 static int lsarpc_dissect_element_lsa_BinaryString_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
643 static int lsarpc_dissect_element_lsa_BinaryString_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
644 static int lsarpc_dissect_element_lsa_BinaryString_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
645 static int lsarpc_dissect_element_lsa_BinaryString_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
646 static int lsarpc_dissect_element_lsa_LUID_low(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
647 static int lsarpc_dissect_element_lsa_LUID_high(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
648 static int lsarpc_dissect_element_lsa_PrivEntry_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
649 static int lsarpc_dissect_element_lsa_PrivEntry_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
650 static int lsarpc_dissect_element_lsa_PrivArray_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
651 static int lsarpc_dissect_element_lsa_PrivArray_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
652 static int lsarpc_dissect_element_lsa_PrivArray_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
653 static int lsarpc_dissect_element_lsa_PrivArray_privs__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
654 static int lsarpc_dissect_element_lsa_QosInfo_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
655 static int lsarpc_dissect_element_lsa_QosInfo_impersonation_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
656 static int lsarpc_dissect_element_lsa_QosInfo_context_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
657 static int lsarpc_dissect_element_lsa_QosInfo_effective_only(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
658 static int lsarpc_dissect_element_lsa_ObjectAttribute_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
659 static int lsarpc_dissect_element_lsa_ObjectAttribute_root_dir(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
660 static int lsarpc_dissect_element_lsa_ObjectAttribute_root_dir_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
661 static int lsarpc_dissect_element_lsa_ObjectAttribute_object_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
662 static int lsarpc_dissect_element_lsa_ObjectAttribute_object_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
663 static int lsarpc_dissect_element_lsa_ObjectAttribute_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
664 static int lsarpc_dissect_element_lsa_ObjectAttribute_sec_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
665 static int lsarpc_dissect_element_lsa_ObjectAttribute_sec_desc_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
666 static int lsarpc_dissect_element_lsa_ObjectAttribute_sec_qos(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
667 static int lsarpc_dissect_element_lsa_ObjectAttribute_sec_qos_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
668 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_VIEW_LOCAL_INFORMATION_tfs = {
669    "LSA_POLICY_VIEW_LOCAL_INFORMATION is SET",
670    "LSA_POLICY_VIEW_LOCAL_INFORMATION is NOT SET",
671 };
672 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_VIEW_AUDIT_INFORMATION_tfs = {
673    "LSA_POLICY_VIEW_AUDIT_INFORMATION is SET",
674    "LSA_POLICY_VIEW_AUDIT_INFORMATION is NOT SET",
675 };
676 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_GET_PRIVATE_INFORMATION_tfs = {
677    "LSA_POLICY_GET_PRIVATE_INFORMATION is SET",
678    "LSA_POLICY_GET_PRIVATE_INFORMATION is NOT SET",
679 };
680 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_TRUST_ADMIN_tfs = {
681    "LSA_POLICY_TRUST_ADMIN is SET",
682    "LSA_POLICY_TRUST_ADMIN is NOT SET",
683 };
684 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_CREATE_ACCOUNT_tfs = {
685    "LSA_POLICY_CREATE_ACCOUNT is SET",
686    "LSA_POLICY_CREATE_ACCOUNT is NOT SET",
687 };
688 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_CREATE_SECRET_tfs = {
689    "LSA_POLICY_CREATE_SECRET is SET",
690    "LSA_POLICY_CREATE_SECRET is NOT SET",
691 };
692 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_CREATE_PRIVILEGE_tfs = {
693    "LSA_POLICY_CREATE_PRIVILEGE is SET",
694    "LSA_POLICY_CREATE_PRIVILEGE is NOT SET",
695 };
696 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS_tfs = {
697    "LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS is SET",
698    "LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS is NOT SET",
699 };
700 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_SET_AUDIT_REQUIREMENTS_tfs = {
701    "LSA_POLICY_SET_AUDIT_REQUIREMENTS is SET",
702    "LSA_POLICY_SET_AUDIT_REQUIREMENTS is NOT SET",
703 };
704 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_AUDIT_LOG_ADMIN_tfs = {
705    "LSA_POLICY_AUDIT_LOG_ADMIN is SET",
706    "LSA_POLICY_AUDIT_LOG_ADMIN is NOT SET",
707 };
708 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_SERVER_ADMIN_tfs = {
709    "LSA_POLICY_SERVER_ADMIN is SET",
710    "LSA_POLICY_SERVER_ADMIN is NOT SET",
711 };
712 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_LOOKUP_NAMES_tfs = {
713    "LSA_POLICY_LOOKUP_NAMES is SET",
714    "LSA_POLICY_LOOKUP_NAMES is NOT SET",
715 };
716 static const true_false_string lsa_PolicyAccessMask_LSA_POLICY_NOTIFICATION_tfs = {
717    "LSA_POLICY_NOTIFICATION is SET",
718    "LSA_POLICY_NOTIFICATION is NOT SET",
719 };
720 static const true_false_string lsa_AccountAccessMask_LSA_ACCOUNT_VIEW_tfs = {
721    "LSA_ACCOUNT_VIEW is SET",
722    "LSA_ACCOUNT_VIEW is NOT SET",
723 };
724 static const true_false_string lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_PRIVILEGES_tfs = {
725    "LSA_ACCOUNT_ADJUST_PRIVILEGES is SET",
726    "LSA_ACCOUNT_ADJUST_PRIVILEGES is NOT SET",
727 };
728 static const true_false_string lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_QUOTAS_tfs = {
729    "LSA_ACCOUNT_ADJUST_QUOTAS is SET",
730    "LSA_ACCOUNT_ADJUST_QUOTAS is NOT SET",
731 };
732 static const true_false_string lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS_tfs = {
733    "LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS is SET",
734    "LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS is NOT SET",
735 };
736 static const true_false_string lsa_SecretAccessMask_LSA_SECRET_SET_VALUE_tfs = {
737    "LSA_SECRET_SET_VALUE is SET",
738    "LSA_SECRET_SET_VALUE is NOT SET",
739 };
740 static const true_false_string lsa_SecretAccessMask_LSA_SECRET_QUERY_VALUE_tfs = {
741    "LSA_SECRET_QUERY_VALUE is SET",
742    "LSA_SECRET_QUERY_VALUE is NOT SET",
743 };
744 static const true_false_string lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_DOMAIN_NAME_tfs = {
745    "LSA_TRUSTED_QUERY_DOMAIN_NAME is SET",
746    "LSA_TRUSTED_QUERY_DOMAIN_NAME is NOT SET",
747 };
748 static const true_false_string lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_CONTROLLERS_tfs = {
749    "LSA_TRUSTED_QUERY_CONTROLLERS is SET",
750    "LSA_TRUSTED_QUERY_CONTROLLERS is NOT SET",
751 };
752 static const true_false_string lsa_TrustedAccessMask_LSA_TRUSTED_SET_CONTROLLERS_tfs = {
753    "LSA_TRUSTED_SET_CONTROLLERS is SET",
754    "LSA_TRUSTED_SET_CONTROLLERS is NOT SET",
755 };
756 static const true_false_string lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_POSIX_tfs = {
757    "LSA_TRUSTED_QUERY_POSIX is SET",
758    "LSA_TRUSTED_QUERY_POSIX is NOT SET",
759 };
760 static const true_false_string lsa_TrustedAccessMask_LSA_TRUSTED_SET_POSIX_tfs = {
761    "LSA_TRUSTED_SET_POSIX is SET",
762    "LSA_TRUSTED_SET_POSIX is NOT SET",
763 };
764 static const true_false_string lsa_TrustedAccessMask_LSA_TRUSTED_SET_AUTH_tfs = {
765    "LSA_TRUSTED_SET_AUTH is SET",
766    "LSA_TRUSTED_SET_AUTH is NOT SET",
767 };
768 static const true_false_string lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_AUTH_tfs = {
769    "LSA_TRUSTED_QUERY_AUTH is SET",
770    "LSA_TRUSTED_QUERY_AUTH is NOT SET",
771 };
772 static int lsarpc_dissect_element_lsa_AuditLogInfo_percent_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
773 static int lsarpc_dissect_element_lsa_AuditLogInfo_maximum_log_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
774 static int lsarpc_dissect_element_lsa_AuditLogInfo_retention_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
775 static int lsarpc_dissect_element_lsa_AuditLogInfo_shutdown_in_progress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
776 static int lsarpc_dissect_element_lsa_AuditLogInfo_time_to_shutdown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
777 static int lsarpc_dissect_element_lsa_AuditLogInfo_next_audit_record(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
778 const value_string lsarpc_lsa_PolicyAuditPolicy_vals[] = {
779         { LSA_AUDIT_POLICY_NONE, "LSA_AUDIT_POLICY_NONE" },
780         { LSA_AUDIT_POLICY_SUCCESS, "LSA_AUDIT_POLICY_SUCCESS" },
781         { LSA_AUDIT_POLICY_FAILURE, "LSA_AUDIT_POLICY_FAILURE" },
782         { LSA_AUDIT_POLICY_ALL, "LSA_AUDIT_POLICY_ALL" },
783         { LSA_AUDIT_POLICY_CLEAR, "LSA_AUDIT_POLICY_CLEAR" },
784 { 0, NULL }
785 };
786 const value_string lsarpc_lsa_PolicyAuditEventType_vals[] = {
787         { LSA_AUDIT_CATEGORY_SYSTEM, "LSA_AUDIT_CATEGORY_SYSTEM" },
788         { LSA_AUDIT_CATEGORY_LOGON, "LSA_AUDIT_CATEGORY_LOGON" },
789         { LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS, "LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS" },
790         { LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS, "LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS" },
791         { LSA_AUDIT_CATEGORY_PROCCESS_TRACKING, "LSA_AUDIT_CATEGORY_PROCCESS_TRACKING" },
792         { LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES, "LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES" },
793         { LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT, "LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT" },
794         { LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS, "LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS" },
795         { LSA_AUDIT_CATEGORY_ACCOUNT_LOGON, "LSA_AUDIT_CATEGORY_ACCOUNT_LOGON" },
796 { 0, NULL }
797 };
798 static int lsarpc_dissect_element_lsa_AuditEventsInfo_auditing_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
799 static int lsarpc_dissect_element_lsa_AuditEventsInfo_settings(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
800 static int lsarpc_dissect_element_lsa_AuditEventsInfo_settings_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
801 static int lsarpc_dissect_element_lsa_AuditEventsInfo_settings__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
802 static int lsarpc_dissect_element_lsa_AuditEventsInfo_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
803 static int lsarpc_dissect_element_lsa_DomainInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
804 static int lsarpc_dissect_element_lsa_DomainInfo_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
805 static int lsarpc_dissect_element_lsa_DomainInfo_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
806 static int lsarpc_dissect_element_lsa_PDAccountInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
807 const value_string lsarpc_lsa_Role_vals[] = {
808         { LSA_ROLE_BACKUP, "LSA_ROLE_BACKUP" },
809         { LSA_ROLE_PRIMARY, "LSA_ROLE_PRIMARY" },
810 { 0, NULL }
811 };
812 static int lsarpc_dissect_element_lsa_ServerRole_role(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
813 static int lsarpc_dissect_element_lsa_ReplicaSourceInfo_source(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
814 static int lsarpc_dissect_element_lsa_ReplicaSourceInfo_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
815 static int lsarpc_dissect_element_lsa_DefaultQuotaInfo_paged_pool(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
816 static int lsarpc_dissect_element_lsa_DefaultQuotaInfo_non_paged_pool(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
817 static int lsarpc_dissect_element_lsa_DefaultQuotaInfo_min_wss(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
818 static int lsarpc_dissect_element_lsa_DefaultQuotaInfo_max_wss(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
819 static int lsarpc_dissect_element_lsa_DefaultQuotaInfo_pagefile(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
820 static int lsarpc_dissect_element_lsa_DefaultQuotaInfo_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
821 static int lsarpc_dissect_element_lsa_ModificationInfo_modified_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
822 static int lsarpc_dissect_element_lsa_ModificationInfo_db_create_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
823 static int lsarpc_dissect_element_lsa_AuditFullSetInfo_shutdown_on_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
824 static int lsarpc_dissect_element_lsa_AuditFullQueryInfo_shutdown_on_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
825 static int lsarpc_dissect_element_lsa_AuditFullQueryInfo_log_is_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
826 static int lsarpc_dissect_element_lsa_DnsDomainInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
827 static int lsarpc_dissect_element_lsa_DnsDomainInfo_dns_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
828 static int lsarpc_dissect_element_lsa_DnsDomainInfo_dns_forest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
829 static int lsarpc_dissect_element_lsa_DnsDomainInfo_domain_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
830 static int lsarpc_dissect_element_lsa_DnsDomainInfo_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
831 static int lsarpc_dissect_element_lsa_DnsDomainInfo_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
832 const value_string lsarpc_lsa_PolicyInfo_vals[] = {
833         { LSA_POLICY_INFO_AUDIT_LOG, "LSA_POLICY_INFO_AUDIT_LOG" },
834         { LSA_POLICY_INFO_AUDIT_EVENTS, "LSA_POLICY_INFO_AUDIT_EVENTS" },
835         { LSA_POLICY_INFO_DOMAIN, "LSA_POLICY_INFO_DOMAIN" },
836         { LSA_POLICY_INFO_PD, "LSA_POLICY_INFO_PD" },
837         { LSA_POLICY_INFO_ACCOUNT_DOMAIN, "LSA_POLICY_INFO_ACCOUNT_DOMAIN" },
838         { LSA_POLICY_INFO_ROLE, "LSA_POLICY_INFO_ROLE" },
839         { LSA_POLICY_INFO_REPLICA, "LSA_POLICY_INFO_REPLICA" },
840         { LSA_POLICY_INFO_QUOTA, "LSA_POLICY_INFO_QUOTA" },
841         { LSA_POLICY_INFO_MOD, "LSA_POLICY_INFO_MOD" },
842         { LSA_POLICY_INFO_AUDIT_FULL_SET, "LSA_POLICY_INFO_AUDIT_FULL_SET" },
843         { LSA_POLICY_INFO_AUDIT_FULL_QUERY, "LSA_POLICY_INFO_AUDIT_FULL_QUERY" },
844         { LSA_POLICY_INFO_DNS, "LSA_POLICY_INFO_DNS" },
845         { LSA_POLICY_INFO_DNS_INT, "LSA_POLICY_INFO_DNS_INT" },
846         { LSA_POLICY_INFO_L_ACCOUNT_DOMAIN, "LSA_POLICY_INFO_L_ACCOUNT_DOMAIN" },
847 { 0, NULL }
848 };
849 static int lsarpc_dissect_element_lsa_PolicyInformation_audit_log(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
850 static int lsarpc_dissect_element_lsa_PolicyInformation_audit_events(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
851 static int lsarpc_dissect_element_lsa_PolicyInformation_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
852 static int lsarpc_dissect_element_lsa_PolicyInformation_pd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
853 static int lsarpc_dissect_element_lsa_PolicyInformation_account_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
854 static int lsarpc_dissect_element_lsa_PolicyInformation_role(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
855 static int lsarpc_dissect_element_lsa_PolicyInformation_replica(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
856 static int lsarpc_dissect_element_lsa_PolicyInformation_quota(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
857 static int lsarpc_dissect_element_lsa_PolicyInformation_mod(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
858 static int lsarpc_dissect_element_lsa_PolicyInformation_auditfullset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
859 static int lsarpc_dissect_element_lsa_PolicyInformation_auditfullquery(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
860 static int lsarpc_dissect_element_lsa_PolicyInformation_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
861 static int lsarpc_dissect_element_lsa_PolicyInformation_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
862 static int lsarpc_dissect_element_lsa_PolicyInformation_l_account_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
863 static int lsarpc_dissect_element_lsa_SidPtr_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
864 static int lsarpc_dissect_element_lsa_SidPtr_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
865 static int lsarpc_dissect_element_lsa_SidArray_num_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
866 static int lsarpc_dissect_element_lsa_SidArray_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
867 static int lsarpc_dissect_element_lsa_SidArray_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
868 static int lsarpc_dissect_element_lsa_SidArray_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
869 static int lsarpc_dissect_element_lsa_DomainList_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
870 static int lsarpc_dissect_element_lsa_DomainList_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
871 static int lsarpc_dissect_element_lsa_DomainList_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
872 static int lsarpc_dissect_element_lsa_DomainList_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
873 const value_string lsarpc_lsa_SidType_vals[] = {
874         { SID_NAME_USE_NONE, "SID_NAME_USE_NONE" },
875         { SID_NAME_USER, "SID_NAME_USER" },
876         { SID_NAME_DOM_GRP, "SID_NAME_DOM_GRP" },
877         { SID_NAME_DOMAIN, "SID_NAME_DOMAIN" },
878         { SID_NAME_ALIAS, "SID_NAME_ALIAS" },
879         { SID_NAME_WKN_GRP, "SID_NAME_WKN_GRP" },
880         { SID_NAME_DELETED, "SID_NAME_DELETED" },
881         { SID_NAME_INVALID, "SID_NAME_INVALID" },
882         { SID_NAME_UNKNOWN, "SID_NAME_UNKNOWN" },
883         { SID_NAME_COMPUTER, "SID_NAME_COMPUTER" },
884 { 0, NULL }
885 };
886 static int lsarpc_dissect_element_lsa_TranslatedSid_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
887 static int lsarpc_dissect_element_lsa_TranslatedSid_rid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
888 static int lsarpc_dissect_element_lsa_TranslatedSid_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
889 static int lsarpc_dissect_element_lsa_TransSidArray_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
890 static int lsarpc_dissect_element_lsa_TransSidArray_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
891 static int lsarpc_dissect_element_lsa_TransSidArray_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
892 static int lsarpc_dissect_element_lsa_TransSidArray_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
893 static int lsarpc_dissect_element_lsa_RefDomainList_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
894 static int lsarpc_dissect_element_lsa_RefDomainList_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
895 static int lsarpc_dissect_element_lsa_RefDomainList_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
896 static int lsarpc_dissect_element_lsa_RefDomainList_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
897 static int lsarpc_dissect_element_lsa_RefDomainList_max_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
898 const value_string lsarpc_lsa_LookupNamesLevel_vals[] = {
899         { LSA_LOOKUP_NAMES_ALL, "LSA_LOOKUP_NAMES_ALL" },
900         { LSA_LOOKUP_NAMES_DOMAINS_ONLY, "LSA_LOOKUP_NAMES_DOMAINS_ONLY" },
901         { LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY, "LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY" },
902         { LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY, "LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY" },
903         { LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY, "LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY" },
904         { LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2, "LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2" },
905         { LSA_LOOKUP_NAMES_RODC_REFERRAL_TO_FULL_DC, "LSA_LOOKUP_NAMES_RODC_REFERRAL_TO_FULL_DC" },
906 { 0, NULL }
907 };
908 static int lsarpc_dissect_element_lsa_TranslatedName_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
909 static int lsarpc_dissect_element_lsa_TranslatedName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
910 static int lsarpc_dissect_element_lsa_TranslatedName_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
911 static int lsarpc_dissect_element_lsa_TransNameArray_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
912 static int lsarpc_dissect_element_lsa_TransNameArray_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
913 static int lsarpc_dissect_element_lsa_TransNameArray_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
914 static int lsarpc_dissect_element_lsa_TransNameArray_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
915 static int lsarpc_dissect_element_lsa_LUIDAttribute_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
916 static int lsarpc_dissect_element_lsa_LUIDAttribute_attribute(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
917 static int lsarpc_dissect_element_lsa_PrivilegeSet_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
918 static int lsarpc_dissect_element_lsa_PrivilegeSet_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
919 static int lsarpc_dissect_element_lsa_PrivilegeSet_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
920 static int lsarpc_dissect_element_lsa_PrivilegeSet_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
921 static int lsarpc_dissect_element_lsa_DATA_BUF_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
922 static int lsarpc_dissect_element_lsa_DATA_BUF_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
923 static int lsarpc_dissect_element_lsa_DATA_BUF_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
924 static int lsarpc_dissect_element_lsa_DATA_BUF_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
925 static int lsarpc_dissect_element_lsa_DATA_BUF_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
926 static int lsarpc_dissect_element_lsa_DATA_BUF2_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
927 static int lsarpc_dissect_element_lsa_DATA_BUF2_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
928 static int lsarpc_dissect_element_lsa_DATA_BUF2_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
929 static int lsarpc_dissect_element_lsa_DATA_BUF2_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
930 const value_string lsarpc_lsa_TrustDomInfoEnum_vals[] = {
931         { LSA_TRUSTED_DOMAIN_INFO_NAME, "LSA_TRUSTED_DOMAIN_INFO_NAME" },
932         { LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS, "LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS" },
933         { LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET, "LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET" },
934         { LSA_TRUSTED_DOMAIN_INFO_PASSWORD, "LSA_TRUSTED_DOMAIN_INFO_PASSWORD" },
935         { LSA_TRUSTED_DOMAIN_INFO_BASIC, "LSA_TRUSTED_DOMAIN_INFO_BASIC" },
936         { LSA_TRUSTED_DOMAIN_INFO_INFO_EX, "LSA_TRUSTED_DOMAIN_INFO_INFO_EX" },
937         { LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO, "LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO" },
938         { LSA_TRUSTED_DOMAIN_INFO_FULL_INFO, "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO" },
939         { LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL, "LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL" },
940         { LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL, "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL" },
941         { LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL, "LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL" },
942         { LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL, "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL" },
943         { LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES, "LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES" },
944 { 0, NULL }
945 };
946 static const true_false_string lsa_TrustDirection_LSA_TRUST_DIRECTION_INBOUND_tfs = {
947    "LSA_TRUST_DIRECTION_INBOUND is SET",
948    "LSA_TRUST_DIRECTION_INBOUND is NOT SET",
949 };
950 static const true_false_string lsa_TrustDirection_LSA_TRUST_DIRECTION_OUTBOUND_tfs = {
951    "LSA_TRUST_DIRECTION_OUTBOUND is SET",
952    "LSA_TRUST_DIRECTION_OUTBOUND is NOT SET",
953 };
954 const value_string lsarpc_lsa_TrustType_vals[] = {
955         { LSA_TRUST_TYPE_DOWNLEVEL, "LSA_TRUST_TYPE_DOWNLEVEL" },
956         { LSA_TRUST_TYPE_UPLEVEL, "LSA_TRUST_TYPE_UPLEVEL" },
957         { LSA_TRUST_TYPE_MIT, "LSA_TRUST_TYPE_MIT" },
958 { 0, NULL }
959 };
960 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE_tfs = {
961    "LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE is SET",
962    "LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE is NOT SET",
963 };
964 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY_tfs = {
965    "LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY is SET",
966    "LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY is NOT SET",
967 };
968 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN_tfs = {
969    "LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN is SET",
970    "LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN is NOT SET",
971 };
972 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE_tfs = {
973    "LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE is SET",
974    "LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE is NOT SET",
975 };
976 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION_tfs = {
977    "LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION is SET",
978    "LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION is NOT SET",
979 };
980 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_WITHIN_FOREST_tfs = {
981    "LSA_TRUST_ATTRIBUTE_WITHIN_FOREST is SET",
982    "LSA_TRUST_ATTRIBUTE_WITHIN_FOREST is NOT SET",
983 };
984 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL_tfs = {
985    "LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL is SET",
986    "LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL is NOT SET",
987 };
988 static const true_false_string lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION_tfs = {
989    "LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION is SET",
990    "LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION is NOT SET",
991 };
992 static int lsarpc_dissect_element_lsa_TrustDomainInfoName_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
993 static int lsarpc_dissect_element_lsa_TrustDomainInfoControllers_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
994 static int lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
995 static int lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
996 static int lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
997 static int lsarpc_dissect_element_lsa_TrustDomainInfoPosixOffset_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
998 static int lsarpc_dissect_element_lsa_TrustDomainInfoPassword_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
999 static int lsarpc_dissect_element_lsa_TrustDomainInfoPassword_password_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1000 static int lsarpc_dissect_element_lsa_TrustDomainInfoPassword_old_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1001 static int lsarpc_dissect_element_lsa_TrustDomainInfoPassword_old_password_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1002 static int lsarpc_dissect_element_lsa_TrustDomainInfoBasic_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1003 static int lsarpc_dissect_element_lsa_TrustDomainInfoBasic_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1004 static int lsarpc_dissect_element_lsa_TrustDomainInfoBasic_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1005 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1006 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1007 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1008 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1009 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_direction(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1010 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1011 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1012 const value_string lsarpc_lsa_TrustAuthType_vals[] = {
1013         { TRUST_AUTH_TYPE_NONE, "TRUST_AUTH_TYPE_NONE" },
1014         { TRUST_AUTH_TYPE_NT4OWF, "TRUST_AUTH_TYPE_NT4OWF" },
1015         { TRUST_AUTH_TYPE_CLEAR, "TRUST_AUTH_TYPE_CLEAR" },
1016         { TRUST_AUTH_TYPE_VERSION, "TRUST_AUTH_TYPE_VERSION" },
1017 { 0, NULL }
1018 };
1019 static int lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_last_update_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1020 static int lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_AuthType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1021 static int lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1022 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1023 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1024 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1025 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1026 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1027 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1028 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1029 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1030 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1031 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1032 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1033 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1034 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1035 static int lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfoInternal_auth_blob(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1036 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1037 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1038 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1039 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1040 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1041 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1042 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1043 static int lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1044 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1045 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1046 static int lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1047 static int lsarpc_dissect_element_lsa_TrustDomainInfoSupportedEncTypes_enc_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1048 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1049 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_controllers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1050 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1051 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1052 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_info_basic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1053 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1054 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1055 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1056 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_auth_info_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1057 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1058 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_info_ex2_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1059 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info2_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1060 static int lsarpc_dissect_element_lsa_TrustedDomainInfo_enc_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1061 static int lsarpc_dissect_element_lsa_DATA_BUF_PTR_buf(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1062 static int lsarpc_dissect_element_lsa_DATA_BUF_PTR_buf_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1063 static int lsarpc_dissect_element_lsa_RightAttribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1064 static int lsarpc_dissect_element_lsa_RightAttribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1065 static int lsarpc_dissect_element_lsa_RightSet_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1066 static int lsarpc_dissect_element_lsa_RightSet_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1067 static int lsarpc_dissect_element_lsa_RightSet_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1068 static int lsarpc_dissect_element_lsa_RightSet_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1069 static int lsarpc_dissect_element_lsa_DomainListEx_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1070 static int lsarpc_dissect_element_lsa_DomainListEx_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1071 static int lsarpc_dissect_element_lsa_DomainListEx_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1072 static int lsarpc_dissect_element_lsa_DomainListEx_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1073 static const true_false_string lsa_krbAuthenticationOptions_LSA_POLICY_KERBEROS_VALIDATE_CLIENT_tfs = {
1074    "LSA_POLICY_KERBEROS_VALIDATE_CLIENT is SET",
1075    "LSA_POLICY_KERBEROS_VALIDATE_CLIENT is NOT SET",
1076 };
1077 static int lsarpc_dissect_element_lsa_DomainInfoKerberos_authentication_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1078 static int lsarpc_dissect_element_lsa_DomainInfoKerberos_service_tkt_lifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1079 static int lsarpc_dissect_element_lsa_DomainInfoKerberos_user_tkt_lifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1080 static int lsarpc_dissect_element_lsa_DomainInfoKerberos_user_tkt_renewaltime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1081 static int lsarpc_dissect_element_lsa_DomainInfoKerberos_clock_skew(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1082 static int lsarpc_dissect_element_lsa_DomainInfoKerberos_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1083 static int lsarpc_dissect_element_lsa_DomainInfoEfs_blob_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1084 static int lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1085 static int lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1086 static int lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1087 const value_string lsarpc_lsa_DomainInfoEnum_vals[] = {
1088         { LSA_DOMAIN_INFO_POLICY_EFS, "LSA_DOMAIN_INFO_POLICY_EFS" },
1089         { LSA_DOMAIN_INFO_POLICY_KERBEROS, "LSA_DOMAIN_INFO_POLICY_KERBEROS" },
1090 { 0, NULL }
1091 };
1092 static int lsarpc_dissect_element_lsa_DomainInformationPolicy_efs_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1093 static int lsarpc_dissect_element_lsa_DomainInformationPolicy_kerberos_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1094 static int lsarpc_dissect_element_lsa_TranslatedName2_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1095 static int lsarpc_dissect_element_lsa_TranslatedName2_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1096 static int lsarpc_dissect_element_lsa_TranslatedName2_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1097 static int lsarpc_dissect_element_lsa_TranslatedName2_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1098 static int lsarpc_dissect_element_lsa_TransNameArray2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1099 static int lsarpc_dissect_element_lsa_TransNameArray2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1100 static int lsarpc_dissect_element_lsa_TransNameArray2_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1101 static int lsarpc_dissect_element_lsa_TransNameArray2_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1102 const value_string lsarpc_lsa_LookupOptions_vals[] = {
1103         { LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES, "LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES" },
1104         { LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES_LOCAL, "LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES_LOCAL" },
1105 { 0, NULL }
1106 };
1107 const value_string lsarpc_lsa_ClientRevision_vals[] = {
1108         { LSA_CLIENT_REVISION_1, "LSA_CLIENT_REVISION_1" },
1109         { LSA_CLIENT_REVISION_2, "LSA_CLIENT_REVISION_2" },
1110 { 0, NULL }
1111 };
1112 static int lsarpc_dissect_element_lsa_TranslatedSid2_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1113 static int lsarpc_dissect_element_lsa_TranslatedSid2_rid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1114 static int lsarpc_dissect_element_lsa_TranslatedSid2_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1115 static int lsarpc_dissect_element_lsa_TranslatedSid2_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1116 static int lsarpc_dissect_element_lsa_TransSidArray2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1117 static int lsarpc_dissect_element_lsa_TransSidArray2_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1118 static int lsarpc_dissect_element_lsa_TransSidArray2_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1119 static int lsarpc_dissect_element_lsa_TransSidArray2_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1120 static int lsarpc_dissect_element_lsa_TranslatedSid3_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1121 static int lsarpc_dissect_element_lsa_TranslatedSid3_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1122 static int lsarpc_dissect_element_lsa_TranslatedSid3_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1123 static int lsarpc_dissect_element_lsa_TranslatedSid3_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1124 static int lsarpc_dissect_element_lsa_TranslatedSid3_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1125 static int lsarpc_dissect_element_lsa_TransSidArray3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1126 static int lsarpc_dissect_element_lsa_TransSidArray3_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1127 static int lsarpc_dissect_element_lsa_TransSidArray3_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1128 static int lsarpc_dissect_element_lsa_TransSidArray3_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1129 static int lsarpc_dissect_element_lsa_ForestTrustBinaryData_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1130 static int lsarpc_dissect_element_lsa_ForestTrustBinaryData_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1131 static int lsarpc_dissect_element_lsa_ForestTrustBinaryData_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1132 static int lsarpc_dissect_element_lsa_ForestTrustBinaryData_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1133 static int lsarpc_dissect_element_lsa_ForestTrustDomainInfo_domain_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1134 static int lsarpc_dissect_element_lsa_ForestTrustDomainInfo_domain_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1135 static int lsarpc_dissect_element_lsa_ForestTrustDomainInfo_dns_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1136 static int lsarpc_dissect_element_lsa_ForestTrustDomainInfo_netbios_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1137 static int lsarpc_dissect_element_lsa_ForestTrustData_top_level_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1138 static int lsarpc_dissect_element_lsa_ForestTrustData_top_level_name_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1139 static int lsarpc_dissect_element_lsa_ForestTrustData_domain_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1140 static int lsarpc_dissect_element_lsa_ForestTrustData_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1141 const value_string lsarpc_lsa_ForestTrustRecordType_vals[] = {
1142         { LSA_FOREST_TRUST_TOP_LEVEL_NAME, "LSA_FOREST_TRUST_TOP_LEVEL_NAME" },
1143         { LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX, "LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX" },
1144         { LSA_FOREST_TRUST_DOMAIN_INFO, "LSA_FOREST_TRUST_DOMAIN_INFO" },
1145         { LSA_FOREST_TRUST_RECORD_TYPE_LAST, "LSA_FOREST_TRUST_RECORD_TYPE_LAST" },
1146 { 0, NULL }
1147 };
1148 static int lsarpc_dissect_element_lsa_ForestTrustRecord_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1149 static int lsarpc_dissect_element_lsa_ForestTrustRecord_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type);
1150 static int lsarpc_dissect_element_lsa_ForestTrustRecord_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1151 static int lsarpc_dissect_element_lsa_ForestTrustRecord_forest_trust_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type);
1152 static int lsarpc_dissect_element_lsa_ForestTrustInformation_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1153 static int lsarpc_dissect_element_lsa_ForestTrustInformation_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1154 static int lsarpc_dissect_element_lsa_ForestTrustInformation_entries_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1155 static int lsarpc_dissect_element_lsa_ForestTrustInformation_entries__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1156 static int lsarpc_dissect_element_lsa_ForestTrustInformation_entries___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1157 const value_string lsarpc_lsa_ForestTrustCollisionRecordType_vals[] = {
1158         { LSA_FOREST_TRUST_COLLISION_TDO, "LSA_FOREST_TRUST_COLLISION_TDO" },
1159         { LSA_FOREST_TRUST_COLLISION_XREF, "LSA_FOREST_TRUST_COLLISION_XREF" },
1160         { LSA_FOREST_TRUST_COLLISION_OTHER, "LSA_FOREST_TRUST_COLLISION_OTHER" },
1161 { 0, NULL }
1162 };
1163 static const true_false_string lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_NEW_tfs = {
1164    "LSA_TLN_DISABLED_NEW is SET",
1165    "LSA_TLN_DISABLED_NEW is NOT SET",
1166 };
1167 static const true_false_string lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_ADMIN_tfs = {
1168    "LSA_TLN_DISABLED_ADMIN is SET",
1169    "LSA_TLN_DISABLED_ADMIN is NOT SET",
1170 };
1171 static const true_false_string lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_CONFLICT_tfs = {
1172    "LSA_TLN_DISABLED_CONFLICT is SET",
1173    "LSA_TLN_DISABLED_CONFLICT is NOT SET",
1174 };
1175 static const true_false_string lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_ADMIN_tfs = {
1176    "LSA_SID_DISABLED_ADMIN is SET",
1177    "LSA_SID_DISABLED_ADMIN is NOT SET",
1178 };
1179 static const true_false_string lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_CONFLICT_tfs = {
1180    "LSA_SID_DISABLED_CONFLICT is SET",
1181    "LSA_SID_DISABLED_CONFLICT is NOT SET",
1182 };
1183 static const true_false_string lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_ADMIN_tfs = {
1184    "LSA_NB_DISABLED_ADMIN is SET",
1185    "LSA_NB_DISABLED_ADMIN is NOT SET",
1186 };
1187 static const true_false_string lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_CONFLICT_tfs = {
1188    "LSA_NB_DISABLED_CONFLICT is SET",
1189    "LSA_NB_DISABLED_CONFLICT is NOT SET",
1190 };
1191 static int lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1192 static int lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1193 static int lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1194 static int lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1195 static int lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type);
1196 static int lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type);
1197 static int lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1198 static int lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1199 static int lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1200 static int lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1201 static int lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1202 static int lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1203 static int lsarpc_dissect_element_lsa_Close_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1204 static int lsarpc_dissect_element_lsa_Close_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1205 static int lsarpc_dissect_element_lsa_Delete_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1206 static int lsarpc_dissect_element_lsa_Delete_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1207 static int lsarpc_dissect_element_lsa_EnumPrivs_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1208 static int lsarpc_dissect_element_lsa_EnumPrivs_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1209 static int lsarpc_dissect_element_lsa_EnumPrivs_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1210 static int lsarpc_dissect_element_lsa_EnumPrivs_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1211 static int lsarpc_dissect_element_lsa_EnumPrivs_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1212 static int lsarpc_dissect_element_lsa_EnumPrivs_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1213 static int lsarpc_dissect_element_lsa_EnumPrivs_max_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1214 static int lsarpc_dissect_element_lsa_QuerySecurity_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1215 static int lsarpc_dissect_element_lsa_QuerySecurity_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1216 static int lsarpc_dissect_element_lsa_QuerySecurity_sec_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1217 static int lsarpc_dissect_element_lsa_QuerySecurity_sdbuf(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1218 static int lsarpc_dissect_element_lsa_QuerySecurity_sdbuf_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1219 static int lsarpc_dissect_element_lsa_QuerySecurity_sdbuf__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1220 static int lsarpc_dissect_element_lsa_SetSecObj_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1221 static int lsarpc_dissect_element_lsa_SetSecObj_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1222 static int lsarpc_dissect_element_lsa_SetSecObj_sec_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1223 static int lsarpc_dissect_element_lsa_SetSecObj_sdbuf(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1224 static int lsarpc_dissect_element_lsa_SetSecObj_sdbuf_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1225 static int lsarpc_dissect_element_lsa_OpenPolicy_system_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1226 static int lsarpc_dissect_element_lsa_OpenPolicy_system_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1227 static int lsarpc_dissect_element_lsa_OpenPolicy_attr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1228 static int lsarpc_dissect_element_lsa_OpenPolicy_attr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1229 static int lsarpc_dissect_element_lsa_OpenPolicy_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1230 static int lsarpc_dissect_element_lsa_OpenPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1231 static int lsarpc_dissect_element_lsa_OpenPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1232 static int lsarpc_dissect_element_lsa_QueryInfoPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1233 static int lsarpc_dissect_element_lsa_QueryInfoPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1234 static int lsarpc_dissect_element_lsa_QueryInfoPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1235 static int lsarpc_dissect_element_lsa_QueryInfoPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1236 static int lsarpc_dissect_element_lsa_QueryInfoPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1237 static int lsarpc_dissect_element_lsa_QueryInfoPolicy_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1238 static int lsarpc_dissect_element_lsa_SetInfoPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1239 static int lsarpc_dissect_element_lsa_SetInfoPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1240 static int lsarpc_dissect_element_lsa_SetInfoPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1241 static int lsarpc_dissect_element_lsa_SetInfoPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1242 static int lsarpc_dissect_element_lsa_SetInfoPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1243 static int lsarpc_dissect_element_lsa_CreateAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1244 static int lsarpc_dissect_element_lsa_CreateAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1245 static int lsarpc_dissect_element_lsa_CreateAccount_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1246 static int lsarpc_dissect_element_lsa_CreateAccount_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1247 static int lsarpc_dissect_element_lsa_CreateAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1248 static int lsarpc_dissect_element_lsa_CreateAccount_acct_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1249 static int lsarpc_dissect_element_lsa_CreateAccount_acct_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1250 static int lsarpc_dissect_element_lsa_EnumAccounts_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1251 static int lsarpc_dissect_element_lsa_EnumAccounts_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1252 static int lsarpc_dissect_element_lsa_EnumAccounts_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1253 static int lsarpc_dissect_element_lsa_EnumAccounts_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1254 static int lsarpc_dissect_element_lsa_EnumAccounts_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1255 static int lsarpc_dissect_element_lsa_EnumAccounts_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1256 static int lsarpc_dissect_element_lsa_EnumAccounts_num_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1257 static int lsarpc_dissect_element_lsa_CreateTrustedDomain_policy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1258 static int lsarpc_dissect_element_lsa_CreateTrustedDomain_policy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1259 static int lsarpc_dissect_element_lsa_CreateTrustedDomain_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1260 static int lsarpc_dissect_element_lsa_CreateTrustedDomain_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1261 static int lsarpc_dissect_element_lsa_CreateTrustedDomain_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1262 static int lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1263 static int lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1264 static int lsarpc_dissect_element_lsa_EnumTrustDom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1265 static int lsarpc_dissect_element_lsa_EnumTrustDom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1266 static int lsarpc_dissect_element_lsa_EnumTrustDom_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1267 static int lsarpc_dissect_element_lsa_EnumTrustDom_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1268 static int lsarpc_dissect_element_lsa_EnumTrustDom_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1269 static int lsarpc_dissect_element_lsa_EnumTrustDom_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1270 static int lsarpc_dissect_element_lsa_EnumTrustDom_max_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1271 static int lsarpc_dissect_element_lsa_LookupNames_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1272 static int lsarpc_dissect_element_lsa_LookupNames_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1273 static int lsarpc_dissect_element_lsa_LookupNames_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1274 static int lsarpc_dissect_element_lsa_LookupNames_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1275 static int lsarpc_dissect_element_lsa_LookupNames_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1276 static int lsarpc_dissect_element_lsa_LookupNames_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1277 static int lsarpc_dissect_element_lsa_LookupNames_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1278 static int lsarpc_dissect_element_lsa_LookupNames_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1279 static int lsarpc_dissect_element_lsa_LookupNames_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1280 static int lsarpc_dissect_element_lsa_LookupNames_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1281 static int lsarpc_dissect_element_lsa_LookupNames_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1282 static int lsarpc_dissect_element_lsa_LookupNames_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1283 static int lsarpc_dissect_element_lsa_LookupNames_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1284 static int lsarpc_dissect_element_lsa_LookupSids_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1285 static int lsarpc_dissect_element_lsa_LookupSids_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1286 static int lsarpc_dissect_element_lsa_LookupSids_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1287 static int lsarpc_dissect_element_lsa_LookupSids_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1288 static int lsarpc_dissect_element_lsa_LookupSids_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1289 static int lsarpc_dissect_element_lsa_LookupSids_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1290 static int lsarpc_dissect_element_lsa_LookupSids_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1291 static int lsarpc_dissect_element_lsa_LookupSids_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1292 static int lsarpc_dissect_element_lsa_LookupSids_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1293 static int lsarpc_dissect_element_lsa_LookupSids_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1294 static int lsarpc_dissect_element_lsa_LookupSids_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1295 static int lsarpc_dissect_element_lsa_LookupSids_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1296 static int lsarpc_dissect_element_lsa_CreateSecret_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1297 static int lsarpc_dissect_element_lsa_CreateSecret_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1298 static int lsarpc_dissect_element_lsa_CreateSecret_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1299 static int lsarpc_dissect_element_lsa_CreateSecret_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1300 static int lsarpc_dissect_element_lsa_CreateSecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1301 static int lsarpc_dissect_element_lsa_CreateSecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1302 static int lsarpc_dissect_element_lsa_OpenAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1303 static int lsarpc_dissect_element_lsa_OpenAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1304 static int lsarpc_dissect_element_lsa_OpenAccount_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1305 static int lsarpc_dissect_element_lsa_OpenAccount_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1306 static int lsarpc_dissect_element_lsa_OpenAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1307 static int lsarpc_dissect_element_lsa_OpenAccount_acct_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1308 static int lsarpc_dissect_element_lsa_OpenAccount_acct_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1309 static int lsarpc_dissect_element_lsa_EnumPrivsAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1310 static int lsarpc_dissect_element_lsa_EnumPrivsAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1311 static int lsarpc_dissect_element_lsa_EnumPrivsAccount_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1312 static int lsarpc_dissect_element_lsa_EnumPrivsAccount_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1313 static int lsarpc_dissect_element_lsa_EnumPrivsAccount_privs__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1314 static int lsarpc_dissect_element_lsa_AddPrivilegesToAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1315 static int lsarpc_dissect_element_lsa_AddPrivilegesToAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1316 static int lsarpc_dissect_element_lsa_AddPrivilegesToAccount_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1317 static int lsarpc_dissect_element_lsa_AddPrivilegesToAccount_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1318 static int lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1319 static int lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1320 static int lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_remove_all(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1321 static int lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1322 static int lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1323 static int lsarpc_dissect_element_lsa_GetSystemAccessAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1324 static int lsarpc_dissect_element_lsa_GetSystemAccessAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1325 static int lsarpc_dissect_element_lsa_GetSystemAccessAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1326 static int lsarpc_dissect_element_lsa_GetSystemAccessAccount_access_mask_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1327 static int lsarpc_dissect_element_lsa_SetSystemAccessAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1328 static int lsarpc_dissect_element_lsa_SetSystemAccessAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1329 static int lsarpc_dissect_element_lsa_SetSystemAccessAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1330 static int lsarpc_dissect_element_lsa_OpenTrustedDomain_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1331 static int lsarpc_dissect_element_lsa_OpenTrustedDomain_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1332 static int lsarpc_dissect_element_lsa_OpenTrustedDomain_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1333 static int lsarpc_dissect_element_lsa_OpenTrustedDomain_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1334 static int lsarpc_dissect_element_lsa_OpenTrustedDomain_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1335 static int lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1336 static int lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1337 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1338 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1339 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1340 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1341 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1342 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1343 static int lsarpc_dissect_element_lsa_SetInformationTrustedDomain_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1344 static int lsarpc_dissect_element_lsa_SetInformationTrustedDomain_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1345 static int lsarpc_dissect_element_lsa_SetInformationTrustedDomain_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1346 static int lsarpc_dissect_element_lsa_SetInformationTrustedDomain_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1347 static int lsarpc_dissect_element_lsa_SetInformationTrustedDomain_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1348 static int lsarpc_dissect_element_lsa_OpenSecret_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1349 static int lsarpc_dissect_element_lsa_OpenSecret_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1350 static int lsarpc_dissect_element_lsa_OpenSecret_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1351 static int lsarpc_dissect_element_lsa_OpenSecret_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1352 static int lsarpc_dissect_element_lsa_OpenSecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1353 static int lsarpc_dissect_element_lsa_OpenSecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1354 static int lsarpc_dissect_element_lsa_SetSecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1355 static int lsarpc_dissect_element_lsa_SetSecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1356 static int lsarpc_dissect_element_lsa_SetSecret_new_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1357 static int lsarpc_dissect_element_lsa_SetSecret_new_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1358 static int lsarpc_dissect_element_lsa_SetSecret_old_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1359 static int lsarpc_dissect_element_lsa_SetSecret_old_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1360 static int lsarpc_dissect_element_lsa_QuerySecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1361 static int lsarpc_dissect_element_lsa_QuerySecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1362 static int lsarpc_dissect_element_lsa_QuerySecret_new_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1363 static int lsarpc_dissect_element_lsa_QuerySecret_new_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1364 static int lsarpc_dissect_element_lsa_QuerySecret_new_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1365 static int lsarpc_dissect_element_lsa_QuerySecret_new_mtime_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1366 static int lsarpc_dissect_element_lsa_QuerySecret_old_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1367 static int lsarpc_dissect_element_lsa_QuerySecret_old_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1368 static int lsarpc_dissect_element_lsa_QuerySecret_old_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1369 static int lsarpc_dissect_element_lsa_QuerySecret_old_mtime_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1370 static int lsarpc_dissect_element_lsa_LookupPrivValue_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1371 static int lsarpc_dissect_element_lsa_LookupPrivValue_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1372 static int lsarpc_dissect_element_lsa_LookupPrivValue_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1373 static int lsarpc_dissect_element_lsa_LookupPrivValue_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1374 static int lsarpc_dissect_element_lsa_LookupPrivValue_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1375 static int lsarpc_dissect_element_lsa_LookupPrivValue_luid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1376 static int lsarpc_dissect_element_lsa_LookupPrivName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1377 static int lsarpc_dissect_element_lsa_LookupPrivName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1378 static int lsarpc_dissect_element_lsa_LookupPrivName_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1379 static int lsarpc_dissect_element_lsa_LookupPrivName_luid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1380 static int lsarpc_dissect_element_lsa_LookupPrivName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1381 static int lsarpc_dissect_element_lsa_LookupPrivName_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1382 static int lsarpc_dissect_element_lsa_LookupPrivName_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1383 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1384 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1385 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1386 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1387 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_language_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1388 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_language_id_sys(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1389 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1390 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1391 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1392 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_returned_language_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1393 static int lsarpc_dissect_element_lsa_LookupPrivDisplayName_returned_language_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1394 static int lsarpc_dissect_element_lsa_DeleteObject_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1395 static int lsarpc_dissect_element_lsa_DeleteObject_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1396 static int lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1397 static int lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1398 static int lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1399 static int lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1400 static int lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1401 static int lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1402 static int lsarpc_dissect_element_lsa_EnumAccountRights_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1403 static int lsarpc_dissect_element_lsa_EnumAccountRights_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1404 static int lsarpc_dissect_element_lsa_EnumAccountRights_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1405 static int lsarpc_dissect_element_lsa_EnumAccountRights_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1406 static int lsarpc_dissect_element_lsa_EnumAccountRights_rights(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1407 static int lsarpc_dissect_element_lsa_EnumAccountRights_rights_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1408 static int lsarpc_dissect_element_lsa_AddAccountRights_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1409 static int lsarpc_dissect_element_lsa_AddAccountRights_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1410 static int lsarpc_dissect_element_lsa_AddAccountRights_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1411 static int lsarpc_dissect_element_lsa_AddAccountRights_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1412 static int lsarpc_dissect_element_lsa_AddAccountRights_rights(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1413 static int lsarpc_dissect_element_lsa_AddAccountRights_rights_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1414 static int lsarpc_dissect_element_lsa_RemoveAccountRights_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1415 static int lsarpc_dissect_element_lsa_RemoveAccountRights_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1416 static int lsarpc_dissect_element_lsa_RemoveAccountRights_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1417 static int lsarpc_dissect_element_lsa_RemoveAccountRights_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1418 static int lsarpc_dissect_element_lsa_RemoveAccountRights_remove_all(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1419 static int lsarpc_dissect_element_lsa_RemoveAccountRights_rights(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1420 static int lsarpc_dissect_element_lsa_RemoveAccountRights_rights_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1421 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1422 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1423 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_dom_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1424 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_dom_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1425 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1426 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1427 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1428 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1429 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfo_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1430 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfo_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1431 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfo_dom_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1432 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfo_dom_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1433 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1434 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1435 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfo_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1436 static int lsarpc_dissect_element_lsa_DeleteTrustedDomain_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1437 static int lsarpc_dissect_element_lsa_DeleteTrustedDomain_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1438 static int lsarpc_dissect_element_lsa_DeleteTrustedDomain_dom_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1439 static int lsarpc_dissect_element_lsa_DeleteTrustedDomain_dom_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1440 static int lsarpc_dissect_element_lsa_StorePrivateData_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1441 static int lsarpc_dissect_element_lsa_StorePrivateData_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1442 static int lsarpc_dissect_element_lsa_StorePrivateData_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1443 static int lsarpc_dissect_element_lsa_StorePrivateData_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1444 static int lsarpc_dissect_element_lsa_StorePrivateData_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1445 static int lsarpc_dissect_element_lsa_StorePrivateData_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1446 static int lsarpc_dissect_element_lsa_RetrievePrivateData_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1447 static int lsarpc_dissect_element_lsa_RetrievePrivateData_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1448 static int lsarpc_dissect_element_lsa_RetrievePrivateData_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1449 static int lsarpc_dissect_element_lsa_RetrievePrivateData_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1450 static int lsarpc_dissect_element_lsa_RetrievePrivateData_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1451 static int lsarpc_dissect_element_lsa_RetrievePrivateData_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1452 static int lsarpc_dissect_element_lsa_RetrievePrivateData_val__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1453 static int lsarpc_dissect_element_lsa_OpenPolicy2_system_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1454 static int lsarpc_dissect_element_lsa_OpenPolicy2_system_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1455 static int lsarpc_dissect_element_lsa_OpenPolicy2_attr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1456 static int lsarpc_dissect_element_lsa_OpenPolicy2_attr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1457 static int lsarpc_dissect_element_lsa_OpenPolicy2_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1458 static int lsarpc_dissect_element_lsa_OpenPolicy2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1459 static int lsarpc_dissect_element_lsa_OpenPolicy2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1460 static int lsarpc_dissect_element_lsa_GetUserName_system_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1461 static int lsarpc_dissect_element_lsa_GetUserName_system_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1462 static int lsarpc_dissect_element_lsa_GetUserName_account_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1463 static int lsarpc_dissect_element_lsa_GetUserName_account_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1464 static int lsarpc_dissect_element_lsa_GetUserName_account_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1465 static int lsarpc_dissect_element_lsa_GetUserName_authority_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1466 static int lsarpc_dissect_element_lsa_GetUserName_authority_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1467 static int lsarpc_dissect_element_lsa_GetUserName_authority_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1468 static int lsarpc_dissect_element_lsa_QueryInfoPolicy2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1469 static int lsarpc_dissect_element_lsa_QueryInfoPolicy2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1470 static int lsarpc_dissect_element_lsa_QueryInfoPolicy2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1471 static int lsarpc_dissect_element_lsa_QueryInfoPolicy2_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1472 static int lsarpc_dissect_element_lsa_QueryInfoPolicy2_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1473 static int lsarpc_dissect_element_lsa_QueryInfoPolicy2_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1474 static int lsarpc_dissect_element_lsa_SetInfoPolicy2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1475 static int lsarpc_dissect_element_lsa_SetInfoPolicy2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1476 static int lsarpc_dissect_element_lsa_SetInfoPolicy2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1477 static int lsarpc_dissect_element_lsa_SetInfoPolicy2_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1478 static int lsarpc_dissect_element_lsa_SetInfoPolicy2_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1479 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1480 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1481 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_trusted_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1482 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_trusted_domain_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1483 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1484 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1485 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1486 static int lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1487 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1488 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1489 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_trusted_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1490 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_trusted_domain_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1491 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1492 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1493 static int lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1494 static int lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1495 static int lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1496 static int lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1497 static int lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1498 static int lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1499 static int lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1500 static int lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_max_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1501 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_policy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1502 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_policy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1503 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1504 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1505 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1506 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1507 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1508 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1509 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1510 static int lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1511 static int lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1512 static int lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1513 static int lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1514 static int lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1515 static int lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1516 static int lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1517 static int lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1518 static int lsarpc_dissect_element_lsa_SetDomainInformationPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1519 static int lsarpc_dissect_element_lsa_SetDomainInformationPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1520 static int lsarpc_dissect_element_lsa_SetDomainInformationPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1521 static int lsarpc_dissect_element_lsa_SetDomainInformationPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1522 static int lsarpc_dissect_element_lsa_SetDomainInformationPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1523 static int lsarpc_dissect_element_lsa_OpenTrustedDomainByName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1524 static int lsarpc_dissect_element_lsa_OpenTrustedDomainByName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1525 static int lsarpc_dissect_element_lsa_OpenTrustedDomainByName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1526 static int lsarpc_dissect_element_lsa_OpenTrustedDomainByName_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1527 static int lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1528 static int lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1529 static int lsarpc_dissect_element_lsa_LookupSids2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1530 static int lsarpc_dissect_element_lsa_LookupSids2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1531 static int lsarpc_dissect_element_lsa_LookupSids2_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1532 static int lsarpc_dissect_element_lsa_LookupSids2_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1533 static int lsarpc_dissect_element_lsa_LookupSids2_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1534 static int lsarpc_dissect_element_lsa_LookupSids2_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1535 static int lsarpc_dissect_element_lsa_LookupSids2_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1536 static int lsarpc_dissect_element_lsa_LookupSids2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1537 static int lsarpc_dissect_element_lsa_LookupSids2_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1538 static int lsarpc_dissect_element_lsa_LookupSids2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1539 static int lsarpc_dissect_element_lsa_LookupSids2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1540 static int lsarpc_dissect_element_lsa_LookupSids2_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1541 static int lsarpc_dissect_element_lsa_LookupSids2_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1542 static int lsarpc_dissect_element_lsa_LookupSids2_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1543 static int lsarpc_dissect_element_lsa_LookupNames2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1544 static int lsarpc_dissect_element_lsa_LookupNames2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1545 static int lsarpc_dissect_element_lsa_LookupNames2_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1546 static int lsarpc_dissect_element_lsa_LookupNames2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1547 static int lsarpc_dissect_element_lsa_LookupNames2_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1548 static int lsarpc_dissect_element_lsa_LookupNames2_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1549 static int lsarpc_dissect_element_lsa_LookupNames2_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1550 static int lsarpc_dissect_element_lsa_LookupNames2_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1551 static int lsarpc_dissect_element_lsa_LookupNames2_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1552 static int lsarpc_dissect_element_lsa_LookupNames2_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1553 static int lsarpc_dissect_element_lsa_LookupNames2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1554 static int lsarpc_dissect_element_lsa_LookupNames2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1555 static int lsarpc_dissect_element_lsa_LookupNames2_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1556 static int lsarpc_dissect_element_lsa_LookupNames2_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1557 static int lsarpc_dissect_element_lsa_LookupNames2_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1558 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_policy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1559 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_policy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1560 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1561 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1562 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_auth_info_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1563 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_auth_info_internal_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1564 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1565 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1566 static int lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1567 static int lsarpc_dissect_element_lsa_LookupNames3_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1568 static int lsarpc_dissect_element_lsa_LookupNames3_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1569 static int lsarpc_dissect_element_lsa_LookupNames3_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1570 static int lsarpc_dissect_element_lsa_LookupNames3_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1571 static int lsarpc_dissect_element_lsa_LookupNames3_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1572 static int lsarpc_dissect_element_lsa_LookupNames3_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1573 static int lsarpc_dissect_element_lsa_LookupNames3_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1574 static int lsarpc_dissect_element_lsa_LookupNames3_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1575 static int lsarpc_dissect_element_lsa_LookupNames3_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1576 static int lsarpc_dissect_element_lsa_LookupNames3_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1577 static int lsarpc_dissect_element_lsa_LookupNames3_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1578 static int lsarpc_dissect_element_lsa_LookupNames3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1579 static int lsarpc_dissect_element_lsa_LookupNames3_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1580 static int lsarpc_dissect_element_lsa_LookupNames3_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1581 static int lsarpc_dissect_element_lsa_LookupNames3_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1582 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1583 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1584 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_trusted_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1585 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_trusted_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1586 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1587 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1588 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1589 static int lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1590 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1591 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1592 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_trusted_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1593 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_trusted_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1594 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_highest_record_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1595 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_forest_trust_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1596 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_forest_trust_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1597 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_check_only(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1598 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1599 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1600 static int lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1601 static int lsarpc_dissect_element_lsa_LookupSids3_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1602 static int lsarpc_dissect_element_lsa_LookupSids3_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1603 static int lsarpc_dissect_element_lsa_LookupSids3_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1604 static int lsarpc_dissect_element_lsa_LookupSids3_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1605 static int lsarpc_dissect_element_lsa_LookupSids3_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1606 static int lsarpc_dissect_element_lsa_LookupSids3_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1607 static int lsarpc_dissect_element_lsa_LookupSids3_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1608 static int lsarpc_dissect_element_lsa_LookupSids3_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1609 static int lsarpc_dissect_element_lsa_LookupSids3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1610 static int lsarpc_dissect_element_lsa_LookupSids3_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1611 static int lsarpc_dissect_element_lsa_LookupSids3_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1612 static int lsarpc_dissect_element_lsa_LookupSids3_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1613 static int lsarpc_dissect_element_lsa_LookupNames4_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1614 static int lsarpc_dissect_element_lsa_LookupNames4_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1615 static int lsarpc_dissect_element_lsa_LookupNames4_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1616 static int lsarpc_dissect_element_lsa_LookupNames4_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1617 static int lsarpc_dissect_element_lsa_LookupNames4_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1618 static int lsarpc_dissect_element_lsa_LookupNames4_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1619 static int lsarpc_dissect_element_lsa_LookupNames4_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1620 static int lsarpc_dissect_element_lsa_LookupNames4_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1621 static int lsarpc_dissect_element_lsa_LookupNames4_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1622 static int lsarpc_dissect_element_lsa_LookupNames4_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1623 static int lsarpc_dissect_element_lsa_LookupNames4_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1624 static int lsarpc_dissect_element_lsa_LookupNames4_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1625 static int lsarpc_dissect_element_lsa_LookupNames4_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
1626
1627
1628 /* IDL: bitmap { */
1629 /* IDL: } */
1630
1631 int
1632 lsarpc_dissect_bitmap_security_secinfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1633 {
1634         proto_item *item = NULL;
1635         proto_tree *tree = NULL;
1636
1637         guint32 flags;
1638         ALIGN_TO_4_BYTES;
1639
1640         if (parent_tree) {
1641                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
1642                 tree = proto_item_add_subtree(item,ett_lsarpc_security_secinfo);
1643         }
1644
1645         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
1646         proto_item_append_text(item, ": ");
1647
1648         if (!flags)
1649                 proto_item_append_text(item, "(No values set)");
1650
1651         if (flags) {
1652                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
1653         }
1654
1655         return offset;
1656 }
1657
1658
1659 /* IDL: bitmap { */
1660 /* IDL: } */
1661
1662 int
1663 lsarpc_dissect_bitmap_kerb_EncTypes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1664 {
1665         proto_item *item = NULL;
1666         proto_tree *tree = NULL;
1667
1668         guint32 flags;
1669         ALIGN_TO_4_BYTES;
1670
1671         if (parent_tree) {
1672                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
1673                 tree = proto_item_add_subtree(item,ett_lsarpc_kerb_EncTypes);
1674         }
1675
1676         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
1677         proto_item_append_text(item, ": ");
1678
1679         if (!flags)
1680                 proto_item_append_text(item, "(No values set)");
1681
1682         if (flags) {
1683                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
1684         }
1685
1686         return offset;
1687 }
1688
1689
1690 /* IDL: struct { */
1691 /* IDL:         [value(2*strlen_m(string))] uint16 length; */
1692 /* IDL:         [value(2*strlen_m(string))] uint16 size; */
1693 /* IDL:         [unique(1)] [charset(UTF16)] [length_is(length/2)] [size_is(size/2)] uint16 *string; */
1694 /* IDL: } */
1695
1696 static int
1697 lsarpc_dissect_element_lsa_String_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1698 {
1699         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_String_length, 0);
1700
1701         return offset;
1702 }
1703
1704 static int
1705 lsarpc_dissect_element_lsa_String_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1706 {
1707         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_String_size, 0);
1708
1709         return offset;
1710 }
1711
1712 static int
1713 lsarpc_dissect_element_lsa_String_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1714 {
1715         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_String_string_, NDR_POINTER_UNIQUE, "Pointer to String (uint16)",hf_lsarpc_lsa_String_string);
1716
1717         return offset;
1718 }
1719
1720 static int
1721 lsarpc_dissect_element_lsa_String_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1722 {
1723         offset = dissect_ndr_ucvarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_String_string__);
1724
1725         return offset;
1726 }
1727
1728 static int
1729 lsarpc_dissect_element_lsa_String_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1730 {
1731         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_String_string, 0);
1732
1733         return offset;
1734 }
1735
1736 int
1737 lsarpc_dissect_struct_lsa_String(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1738 {
1739         proto_item *item = NULL;
1740         proto_tree *tree = NULL;
1741         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1742         int old_offset;
1743
1744         ALIGN_TO_5_BYTES;
1745
1746         old_offset = offset;
1747
1748         if (parent_tree) {
1749                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1750                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_String);
1751         }
1752         
1753         offset = lsarpc_dissect_element_lsa_String_length(tvb, offset, pinfo, tree, drep);
1754
1755         offset = lsarpc_dissect_element_lsa_String_size(tvb, offset, pinfo, tree, drep);
1756
1757         offset = lsarpc_dissect_element_lsa_String_string(tvb, offset, pinfo, tree, drep);
1758
1759
1760         proto_item_set_len(item, offset-old_offset);
1761
1762
1763         if (di->call_data->flags & DCERPC_IS_NDR64) {
1764                 ALIGN_TO_5_BYTES;
1765         }
1766
1767         return offset;
1768 }
1769
1770
1771 /* IDL: struct { */
1772 /* IDL:         [value(2*strlen_m(string))] uint16 length; */
1773 /* IDL:         [value(2*strlen_m_term(string))] uint16 size; */
1774 /* IDL:         [unique(1)] [charset(UTF16)] [length_is(length/2)] [size_is(size/2)] uint16 *string; */
1775 /* IDL: } */
1776
1777 static int
1778 lsarpc_dissect_element_lsa_StringLarge_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1779 {
1780         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_StringLarge_length, 0);
1781
1782         return offset;
1783 }
1784
1785 static int
1786 lsarpc_dissect_element_lsa_StringLarge_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1787 {
1788         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_StringLarge_size, 0);
1789
1790         return offset;
1791 }
1792
1793 static int
1794 lsarpc_dissect_element_lsa_StringLarge_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1795 {
1796         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_StringLarge_string_, NDR_POINTER_UNIQUE, "Pointer to String (uint16)",hf_lsarpc_lsa_StringLarge_string);
1797
1798         return offset;
1799 }
1800
1801 static int
1802 lsarpc_dissect_element_lsa_StringLarge_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1803 {
1804         offset = dissect_ndr_ucvarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_StringLarge_string__);
1805
1806         return offset;
1807 }
1808
1809 static int
1810 lsarpc_dissect_element_lsa_StringLarge_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1811 {
1812         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_StringLarge_string, 0);
1813
1814         return offset;
1815 }
1816
1817 int
1818 lsarpc_dissect_struct_lsa_StringLarge(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1819 {
1820         proto_item *item = NULL;
1821         proto_tree *tree = NULL;
1822         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1823         int old_offset;
1824
1825         ALIGN_TO_5_BYTES;
1826
1827         old_offset = offset;
1828
1829         if (parent_tree) {
1830                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1831                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_StringLarge);
1832         }
1833         
1834         offset = lsarpc_dissect_element_lsa_StringLarge_length(tvb, offset, pinfo, tree, drep);
1835
1836         offset = lsarpc_dissect_element_lsa_StringLarge_size(tvb, offset, pinfo, tree, drep);
1837
1838         offset = lsarpc_dissect_element_lsa_StringLarge_string(tvb, offset, pinfo, tree, drep);
1839
1840
1841         proto_item_set_len(item, offset-old_offset);
1842
1843
1844         if (di->call_data->flags & DCERPC_IS_NDR64) {
1845                 ALIGN_TO_5_BYTES;
1846         }
1847
1848         return offset;
1849 }
1850
1851
1852 /* IDL: struct { */
1853 /* IDL:         uint32 count; */
1854 /* IDL:         [unique(1)] [size_is(count)] lsa_String *names; */
1855 /* IDL: } */
1856
1857 static int
1858 lsarpc_dissect_element_lsa_Strings_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1859 {
1860         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_Strings_count, 0);
1861
1862         return offset;
1863 }
1864
1865 static int
1866 lsarpc_dissect_element_lsa_Strings_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1867 {
1868         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_Strings_names_, NDR_POINTER_UNIQUE, "Pointer to Names (lsa_String)",hf_lsarpc_lsa_Strings_names);
1869
1870         return offset;
1871 }
1872
1873 static int
1874 lsarpc_dissect_element_lsa_Strings_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1875 {
1876         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_Strings_names__);
1877
1878         return offset;
1879 }
1880
1881 static int
1882 lsarpc_dissect_element_lsa_Strings_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1883 {
1884         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_Strings_names,0);
1885
1886         return offset;
1887 }
1888
1889 int
1890 lsarpc_dissect_struct_lsa_Strings(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1891 {
1892         proto_item *item = NULL;
1893         proto_tree *tree = NULL;
1894         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1895         int old_offset;
1896
1897         ALIGN_TO_5_BYTES;
1898
1899         old_offset = offset;
1900
1901         if (parent_tree) {
1902                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1903                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_Strings);
1904         }
1905         
1906         offset = lsarpc_dissect_element_lsa_Strings_count(tvb, offset, pinfo, tree, drep);
1907
1908         offset = lsarpc_dissect_element_lsa_Strings_names(tvb, offset, pinfo, tree, drep);
1909
1910
1911         proto_item_set_len(item, offset-old_offset);
1912
1913
1914         if (di->call_data->flags & DCERPC_IS_NDR64) {
1915                 ALIGN_TO_5_BYTES;
1916         }
1917
1918         return offset;
1919 }
1920
1921
1922 /* IDL: struct { */
1923 /* IDL:         [value(strlen_m(string))] uint16 length; */
1924 /* IDL:         [value(strlen_m(string))] uint16 size; */
1925 /* IDL:         [unique(1)] [charset(DOS)] [length_is(length)] [size_is(size)] uint8 *string; */
1926 /* IDL: } */
1927
1928 static int
1929 lsarpc_dissect_element_lsa_AsciiString_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1930 {
1931         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AsciiString_length, 0);
1932
1933         return offset;
1934 }
1935
1936 static int
1937 lsarpc_dissect_element_lsa_AsciiString_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1938 {
1939         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AsciiString_size, 0);
1940
1941         return offset;
1942 }
1943
1944 static int
1945 lsarpc_dissect_element_lsa_AsciiString_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1946 {
1947         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AsciiString_string_, NDR_POINTER_UNIQUE, "Pointer to String (uint8)",hf_lsarpc_lsa_AsciiString_string);
1948
1949         return offset;
1950 }
1951
1952 static int
1953 lsarpc_dissect_element_lsa_AsciiString_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1954 {
1955         offset = dissect_ndr_ucvarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AsciiString_string__);
1956
1957         return offset;
1958 }
1959
1960 static int
1961 lsarpc_dissect_element_lsa_AsciiString_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1962 {
1963         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AsciiString_string, 0);
1964
1965         return offset;
1966 }
1967
1968 int
1969 lsarpc_dissect_struct_lsa_AsciiString(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1970 {
1971         proto_item *item = NULL;
1972         proto_tree *tree = NULL;
1973         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1974         int old_offset;
1975
1976         ALIGN_TO_5_BYTES;
1977
1978         old_offset = offset;
1979
1980         if (parent_tree) {
1981                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1982                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_AsciiString);
1983         }
1984         
1985         offset = lsarpc_dissect_element_lsa_AsciiString_length(tvb, offset, pinfo, tree, drep);
1986
1987         offset = lsarpc_dissect_element_lsa_AsciiString_size(tvb, offset, pinfo, tree, drep);
1988
1989         offset = lsarpc_dissect_element_lsa_AsciiString_string(tvb, offset, pinfo, tree, drep);
1990
1991
1992         proto_item_set_len(item, offset-old_offset);
1993
1994
1995         if (di->call_data->flags & DCERPC_IS_NDR64) {
1996                 ALIGN_TO_5_BYTES;
1997         }
1998
1999         return offset;
2000 }
2001
2002
2003 /* IDL: struct { */
2004 /* IDL:         [value(strlen_m(string))] uint16 length; */
2005 /* IDL:         [value(strlen_m_term(string))] uint16 size; */
2006 /* IDL:         [unique(1)] [charset(DOS)] [length_is(length)] [size_is(size)] uint8 *string; */
2007 /* IDL: } */
2008
2009 static int
2010 lsarpc_dissect_element_lsa_AsciiStringLarge_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2011 {
2012         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AsciiStringLarge_length, 0);
2013
2014         return offset;
2015 }
2016
2017 static int
2018 lsarpc_dissect_element_lsa_AsciiStringLarge_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2019 {
2020         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AsciiStringLarge_size, 0);
2021
2022         return offset;
2023 }
2024
2025 static int
2026 lsarpc_dissect_element_lsa_AsciiStringLarge_string(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2027 {
2028         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AsciiStringLarge_string_, NDR_POINTER_UNIQUE, "Pointer to String (uint8)",hf_lsarpc_lsa_AsciiStringLarge_string);
2029
2030         return offset;
2031 }
2032
2033 static int
2034 lsarpc_dissect_element_lsa_AsciiStringLarge_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2035 {
2036         offset = dissect_ndr_ucvarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AsciiStringLarge_string__);
2037
2038         return offset;
2039 }
2040
2041 static int
2042 lsarpc_dissect_element_lsa_AsciiStringLarge_string__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2043 {
2044         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AsciiStringLarge_string, 0);
2045
2046         return offset;
2047 }
2048
2049 int
2050 lsarpc_dissect_struct_lsa_AsciiStringLarge(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2051 {
2052         proto_item *item = NULL;
2053         proto_tree *tree = NULL;
2054         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2055         int old_offset;
2056
2057         ALIGN_TO_5_BYTES;
2058
2059         old_offset = offset;
2060
2061         if (parent_tree) {
2062                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2063                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_AsciiStringLarge);
2064         }
2065         
2066         offset = lsarpc_dissect_element_lsa_AsciiStringLarge_length(tvb, offset, pinfo, tree, drep);
2067
2068         offset = lsarpc_dissect_element_lsa_AsciiStringLarge_size(tvb, offset, pinfo, tree, drep);
2069
2070         offset = lsarpc_dissect_element_lsa_AsciiStringLarge_string(tvb, offset, pinfo, tree, drep);
2071
2072
2073         proto_item_set_len(item, offset-old_offset);
2074
2075
2076         if (di->call_data->flags & DCERPC_IS_NDR64) {
2077                 ALIGN_TO_5_BYTES;
2078         }
2079
2080         return offset;
2081 }
2082
2083
2084 /* IDL: struct { */
2085 /* IDL:         uint16 length; */
2086 /* IDL:         uint16 size; */
2087 /* IDL:         [unique(1)] [length_is(length/2)] [size_is(size/2)] uint16 *array; */
2088 /* IDL: } */
2089
2090 static int
2091 lsarpc_dissect_element_lsa_BinaryString_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2092 {
2093         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_BinaryString_length, 0);
2094
2095         return offset;
2096 }
2097
2098 static int
2099 lsarpc_dissect_element_lsa_BinaryString_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2100 {
2101         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_BinaryString_size, 0);
2102
2103         return offset;
2104 }
2105
2106 static int
2107 lsarpc_dissect_element_lsa_BinaryString_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2108 {
2109         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_BinaryString_array_, NDR_POINTER_UNIQUE, "Pointer to Array (uint16)",hf_lsarpc_lsa_BinaryString_array);
2110
2111         return offset;
2112 }
2113
2114 static int
2115 lsarpc_dissect_element_lsa_BinaryString_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2116 {
2117         offset = dissect_ndr_ucvarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_BinaryString_array__);
2118
2119         return offset;
2120 }
2121
2122 static int
2123 lsarpc_dissect_element_lsa_BinaryString_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2124 {
2125         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_BinaryString_array, 0);
2126
2127         return offset;
2128 }
2129
2130 int
2131 lsarpc_dissect_struct_lsa_BinaryString(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2132 {
2133         proto_item *item = NULL;
2134         proto_tree *tree = NULL;
2135         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2136         int old_offset;
2137
2138         ALIGN_TO_5_BYTES;
2139
2140         old_offset = offset;
2141
2142         if (parent_tree) {
2143                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2144                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_BinaryString);
2145         }
2146         
2147         offset = lsarpc_dissect_element_lsa_BinaryString_length(tvb, offset, pinfo, tree, drep);
2148
2149         offset = lsarpc_dissect_element_lsa_BinaryString_size(tvb, offset, pinfo, tree, drep);
2150
2151         offset = lsarpc_dissect_element_lsa_BinaryString_array(tvb, offset, pinfo, tree, drep);
2152
2153
2154         proto_item_set_len(item, offset-old_offset);
2155
2156
2157         if (di->call_data->flags & DCERPC_IS_NDR64) {
2158                 ALIGN_TO_5_BYTES;
2159         }
2160
2161         return offset;
2162 }
2163
2164
2165 /* IDL: struct { */
2166 /* IDL:         uint32 low; */
2167 /* IDL:         uint32 high; */
2168 /* IDL: } */
2169
2170 static int
2171 lsarpc_dissect_element_lsa_LUID_low(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2172 {
2173         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LUID_low, 0);
2174
2175         return offset;
2176 }
2177
2178 static int
2179 lsarpc_dissect_element_lsa_LUID_high(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2180 {
2181         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LUID_high, 0);
2182
2183         return offset;
2184 }
2185
2186 int
2187 lsarpc_dissect_struct_lsa_LUID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2188 {
2189         proto_item *item = NULL;
2190         proto_tree *tree = NULL;
2191         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2192         int old_offset;
2193
2194         ALIGN_TO_4_BYTES;
2195
2196         old_offset = offset;
2197
2198         if (parent_tree) {
2199                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2200                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_LUID);
2201         }
2202         
2203         offset = lsarpc_dissect_element_lsa_LUID_low(tvb, offset, pinfo, tree, drep);
2204
2205         offset = lsarpc_dissect_element_lsa_LUID_high(tvb, offset, pinfo, tree, drep);
2206
2207
2208         proto_item_set_len(item, offset-old_offset);
2209
2210
2211         if (di->call_data->flags & DCERPC_IS_NDR64) {
2212                 ALIGN_TO_4_BYTES;
2213         }
2214
2215         return offset;
2216 }
2217
2218
2219 /* IDL: struct { */
2220 /* IDL:         lsa_StringLarge name; */
2221 /* IDL:         lsa_LUID luid; */
2222 /* IDL: } */
2223
2224 static int
2225 lsarpc_dissect_element_lsa_PrivEntry_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2226 {
2227         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PrivEntry_name,0);
2228
2229         return offset;
2230 }
2231
2232 static int
2233 lsarpc_dissect_element_lsa_PrivEntry_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2234 {
2235         offset = lsarpc_dissect_struct_lsa_LUID(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PrivEntry_luid,0);
2236
2237         return offset;
2238 }
2239
2240 int
2241 lsarpc_dissect_struct_lsa_PrivEntry(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2242 {
2243         proto_item *item = NULL;
2244         proto_tree *tree = NULL;
2245         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2246         int old_offset;
2247
2248         ALIGN_TO_5_BYTES;
2249
2250         old_offset = offset;
2251
2252         if (parent_tree) {
2253                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2254                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_PrivEntry);
2255         }
2256         
2257         offset = lsarpc_dissect_element_lsa_PrivEntry_name(tvb, offset, pinfo, tree, drep);
2258
2259         offset = lsarpc_dissect_element_lsa_PrivEntry_luid(tvb, offset, pinfo, tree, drep);
2260
2261
2262         proto_item_set_len(item, offset-old_offset);
2263
2264
2265         if (di->call_data->flags & DCERPC_IS_NDR64) {
2266                 ALIGN_TO_5_BYTES;
2267         }
2268
2269         return offset;
2270 }
2271
2272
2273 /* IDL: struct { */
2274 /* IDL:         uint32 count; */
2275 /* IDL:         [unique(1)] [size_is(count)] lsa_PrivEntry *privs; */
2276 /* IDL: } */
2277
2278 static int
2279 lsarpc_dissect_element_lsa_PrivArray_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2280 {
2281         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_PrivArray_count, 0);
2282
2283         return offset;
2284 }
2285
2286 static int
2287 lsarpc_dissect_element_lsa_PrivArray_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2288 {
2289         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_PrivArray_privs_, NDR_POINTER_UNIQUE, "Pointer to Privs (lsa_PrivEntry)",hf_lsarpc_lsa_PrivArray_privs);
2290
2291         return offset;
2292 }
2293
2294 static int
2295 lsarpc_dissect_element_lsa_PrivArray_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2296 {
2297         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_PrivArray_privs__);
2298
2299         return offset;
2300 }
2301
2302 static int
2303 lsarpc_dissect_element_lsa_PrivArray_privs__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2304 {
2305         offset = lsarpc_dissect_struct_lsa_PrivEntry(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PrivArray_privs,0);
2306
2307         return offset;
2308 }
2309
2310 int
2311 lsarpc_dissect_struct_lsa_PrivArray(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2312 {
2313         proto_item *item = NULL;
2314         proto_tree *tree = NULL;
2315         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2316         int old_offset;
2317
2318         ALIGN_TO_5_BYTES;
2319
2320         old_offset = offset;
2321
2322         if (parent_tree) {
2323                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2324                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_PrivArray);
2325         }
2326         
2327         offset = lsarpc_dissect_element_lsa_PrivArray_count(tvb, offset, pinfo, tree, drep);
2328
2329         offset = lsarpc_dissect_element_lsa_PrivArray_privs(tvb, offset, pinfo, tree, drep);
2330
2331
2332         proto_item_set_len(item, offset-old_offset);
2333
2334
2335         if (di->call_data->flags & DCERPC_IS_NDR64) {
2336                 ALIGN_TO_5_BYTES;
2337         }
2338
2339         return offset;
2340 }
2341
2342
2343 /* IDL: struct { */
2344 /* IDL:         uint3264 len; */
2345 /* IDL:         uint16 impersonation_level; */
2346 /* IDL:         uint8 context_mode; */
2347 /* IDL:         uint8 effective_only; */
2348 /* IDL: } */
2349
2350 static int
2351 lsarpc_dissect_element_lsa_QosInfo_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2352 {
2353         offset = dissect_ndr_uint3264(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QosInfo_len, NULL);
2354
2355         return offset;
2356 }
2357
2358 static int
2359 lsarpc_dissect_element_lsa_QosInfo_impersonation_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2360 {
2361         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QosInfo_impersonation_level, 0);
2362
2363         return offset;
2364 }
2365
2366 static int
2367 lsarpc_dissect_element_lsa_QosInfo_context_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2368 {
2369         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QosInfo_context_mode, 0);
2370
2371         return offset;
2372 }
2373
2374 static int
2375 lsarpc_dissect_element_lsa_QosInfo_effective_only(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2376 {
2377         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QosInfo_effective_only, 0);
2378
2379         return offset;
2380 }
2381
2382 int
2383 lsarpc_dissect_struct_lsa_QosInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2384 {
2385         proto_item *item = NULL;
2386         proto_tree *tree = NULL;
2387         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2388         int old_offset;
2389
2390         ALIGN_TO_5_BYTES;
2391
2392         old_offset = offset;
2393
2394         if (parent_tree) {
2395                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2396                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_QosInfo);
2397         }
2398         
2399         offset = lsarpc_dissect_element_lsa_QosInfo_len(tvb, offset, pinfo, tree, drep);
2400
2401         offset = lsarpc_dissect_element_lsa_QosInfo_impersonation_level(tvb, offset, pinfo, tree, drep);
2402
2403         offset = lsarpc_dissect_element_lsa_QosInfo_context_mode(tvb, offset, pinfo, tree, drep);
2404
2405         offset = lsarpc_dissect_element_lsa_QosInfo_effective_only(tvb, offset, pinfo, tree, drep);
2406
2407
2408         proto_item_set_len(item, offset-old_offset);
2409
2410
2411         if (di->call_data->flags & DCERPC_IS_NDR64) {
2412                 ALIGN_TO_5_BYTES;
2413         }
2414
2415         return offset;
2416 }
2417
2418
2419 /* IDL: struct { */
2420 /* IDL:         uint3264 len; */
2421 /* IDL:         [unique(1)] uint8 *root_dir; */
2422 /* IDL:         [unique(1)] [charset(UTF16)] uint16 *object_name; */
2423 /* IDL:         uint32 attributes; */
2424 /* IDL:         [unique(1)] security_descriptor *sec_desc; */
2425 /* IDL:         [unique(1)] lsa_QosInfo *sec_qos; */
2426 /* IDL: } */
2427
2428 static int
2429 lsarpc_dissect_element_lsa_ObjectAttribute_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2430 {
2431         offset = dissect_ndr_uint3264(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ObjectAttribute_len, NULL);
2432
2433         return offset;
2434 }
2435
2436 static int
2437 lsarpc_dissect_element_lsa_ObjectAttribute_root_dir(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2438 {
2439         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ObjectAttribute_root_dir_, NDR_POINTER_UNIQUE, "Pointer to Root Dir (uint8)",hf_lsarpc_lsa_ObjectAttribute_root_dir);
2440
2441         return offset;
2442 }
2443
2444 static int
2445 lsarpc_dissect_element_lsa_ObjectAttribute_root_dir_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2446 {
2447         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ObjectAttribute_root_dir, 0);
2448
2449         return offset;
2450 }
2451
2452 static int
2453 lsarpc_dissect_element_lsa_ObjectAttribute_object_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2454 {
2455         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ObjectAttribute_object_name_, NDR_POINTER_UNIQUE, "Pointer to Object Name (uint16)",hf_lsarpc_lsa_ObjectAttribute_object_name);
2456
2457         return offset;
2458 }
2459
2460 static int
2461 lsarpc_dissect_element_lsa_ObjectAttribute_object_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2462 {
2463         char *data;
2464
2465         offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_lsarpc_lsa_ObjectAttribute_object_name, FALSE, &data);
2466         proto_item_append_text(tree, ": %s", data);
2467
2468         return offset;
2469 }
2470
2471 static int
2472 lsarpc_dissect_element_lsa_ObjectAttribute_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2473 {
2474         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ObjectAttribute_attributes, 0);
2475
2476         return offset;
2477 }
2478
2479 static int
2480 lsarpc_dissect_element_lsa_ObjectAttribute_sec_desc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2481 {
2482         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ObjectAttribute_sec_desc_, NDR_POINTER_UNIQUE, "Pointer to Sec Desc (security_descriptor)",hf_lsarpc_lsa_ObjectAttribute_sec_desc);
2483
2484         return offset;
2485 }
2486
2487 static int
2488 lsarpc_dissect_element_lsa_ObjectAttribute_sec_desc_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2489 {
2490         offset = lsarpc_dissect_struct_security_descriptor(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ObjectAttribute_sec_desc,0);
2491
2492         return offset;
2493 }
2494
2495 static int
2496 lsarpc_dissect_element_lsa_ObjectAttribute_sec_qos(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2497 {
2498         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ObjectAttribute_sec_qos_, NDR_POINTER_UNIQUE, "Pointer to Sec Qos (lsa_QosInfo)",hf_lsarpc_lsa_ObjectAttribute_sec_qos);
2499
2500         return offset;
2501 }
2502
2503 static int
2504 lsarpc_dissect_element_lsa_ObjectAttribute_sec_qos_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2505 {
2506         offset = lsarpc_dissect_struct_lsa_QosInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ObjectAttribute_sec_qos,0);
2507
2508         return offset;
2509 }
2510
2511 int
2512 lsarpc_dissect_struct_lsa_ObjectAttribute(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2513 {
2514         proto_item *item = NULL;
2515         proto_tree *tree = NULL;
2516         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2517         int old_offset;
2518
2519         ALIGN_TO_5_BYTES;
2520
2521         old_offset = offset;
2522
2523         if (parent_tree) {
2524                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2525                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ObjectAttribute);
2526         }
2527         
2528         offset = lsarpc_dissect_element_lsa_ObjectAttribute_len(tvb, offset, pinfo, tree, drep);
2529
2530         offset = lsarpc_dissect_element_lsa_ObjectAttribute_root_dir(tvb, offset, pinfo, tree, drep);
2531
2532         offset = lsarpc_dissect_element_lsa_ObjectAttribute_object_name(tvb, offset, pinfo, tree, drep);
2533
2534         offset = lsarpc_dissect_element_lsa_ObjectAttribute_attributes(tvb, offset, pinfo, tree, drep);
2535
2536         offset = lsarpc_dissect_element_lsa_ObjectAttribute_sec_desc(tvb, offset, pinfo, tree, drep);
2537
2538         offset = lsarpc_dissect_element_lsa_ObjectAttribute_sec_qos(tvb, offset, pinfo, tree, drep);
2539
2540
2541         proto_item_set_len(item, offset-old_offset);
2542
2543
2544         if (di->call_data->flags & DCERPC_IS_NDR64) {
2545                 ALIGN_TO_5_BYTES;
2546         }
2547
2548         return offset;
2549 }
2550
2551
2552 /* IDL: bitmap { */
2553 /* IDL:         LSA_POLICY_VIEW_LOCAL_INFORMATION =  0x00000001 , */
2554 /* IDL:         LSA_POLICY_VIEW_AUDIT_INFORMATION =  0x00000002 , */
2555 /* IDL:         LSA_POLICY_GET_PRIVATE_INFORMATION =  0x00000004 , */
2556 /* IDL:         LSA_POLICY_TRUST_ADMIN =  0x00000008 , */
2557 /* IDL:         LSA_POLICY_CREATE_ACCOUNT =  0x00000010 , */
2558 /* IDL:         LSA_POLICY_CREATE_SECRET =  0x00000020 , */
2559 /* IDL:         LSA_POLICY_CREATE_PRIVILEGE =  0x00000040 , */
2560 /* IDL:         LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS =  0x00000080 , */
2561 /* IDL:         LSA_POLICY_SET_AUDIT_REQUIREMENTS =  0x00000100 , */
2562 /* IDL:         LSA_POLICY_AUDIT_LOG_ADMIN =  0x00000200 , */
2563 /* IDL:         LSA_POLICY_SERVER_ADMIN =  0x00000400 , */
2564 /* IDL:         LSA_POLICY_LOOKUP_NAMES =  0x00000800 , */
2565 /* IDL:         LSA_POLICY_NOTIFICATION =  0x00001000 , */
2566 /* IDL: } */
2567
2568 int
2569 lsarpc_dissect_bitmap_lsa_PolicyAccessMask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2570 {
2571         proto_item *item = NULL;
2572         proto_tree *tree = NULL;
2573
2574         guint32 flags;
2575         ALIGN_TO_4_BYTES;
2576
2577         if (parent_tree) {
2578                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
2579                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_PolicyAccessMask);
2580         }
2581
2582         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
2583         proto_item_append_text(item, ": ");
2584
2585         if (!flags)
2586                 proto_item_append_text(item, "(No values set)");
2587
2588         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_LOCAL_INFORMATION, tvb, offset-4, 4, flags);
2589         if (flags&( 0x00000001 )){
2590                 proto_item_append_text(item, "LSA_POLICY_VIEW_LOCAL_INFORMATION");
2591                 if (flags & (~( 0x00000001 )))
2592                         proto_item_append_text(item, ", ");
2593         }
2594         flags&=(~( 0x00000001 ));
2595
2596         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_AUDIT_INFORMATION, tvb, offset-4, 4, flags);
2597         if (flags&( 0x00000002 )){
2598                 proto_item_append_text(item, "LSA_POLICY_VIEW_AUDIT_INFORMATION");
2599                 if (flags & (~( 0x00000002 )))
2600                         proto_item_append_text(item, ", ");
2601         }
2602         flags&=(~( 0x00000002 ));
2603
2604         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_GET_PRIVATE_INFORMATION, tvb, offset-4, 4, flags);
2605         if (flags&( 0x00000004 )){
2606                 proto_item_append_text(item, "LSA_POLICY_GET_PRIVATE_INFORMATION");
2607                 if (flags & (~( 0x00000004 )))
2608                         proto_item_append_text(item, ", ");
2609         }
2610         flags&=(~( 0x00000004 ));
2611
2612         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_TRUST_ADMIN, tvb, offset-4, 4, flags);
2613         if (flags&( 0x00000008 )){
2614                 proto_item_append_text(item, "LSA_POLICY_TRUST_ADMIN");
2615                 if (flags & (~( 0x00000008 )))
2616                         proto_item_append_text(item, ", ");
2617         }
2618         flags&=(~( 0x00000008 ));
2619
2620         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_ACCOUNT, tvb, offset-4, 4, flags);
2621         if (flags&( 0x00000010 )){
2622                 proto_item_append_text(item, "LSA_POLICY_CREATE_ACCOUNT");
2623                 if (flags & (~( 0x00000010 )))
2624                         proto_item_append_text(item, ", ");
2625         }
2626         flags&=(~( 0x00000010 ));
2627
2628         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_SECRET, tvb, offset-4, 4, flags);
2629         if (flags&( 0x00000020 )){
2630                 proto_item_append_text(item, "LSA_POLICY_CREATE_SECRET");
2631                 if (flags & (~( 0x00000020 )))
2632                         proto_item_append_text(item, ", ");
2633         }
2634         flags&=(~( 0x00000020 ));
2635
2636         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_PRIVILEGE, tvb, offset-4, 4, flags);
2637         if (flags&( 0x00000040 )){
2638                 proto_item_append_text(item, "LSA_POLICY_CREATE_PRIVILEGE");
2639                 if (flags & (~( 0x00000040 )))
2640                         proto_item_append_text(item, ", ");
2641         }
2642         flags&=(~( 0x00000040 ));
2643
2644         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS, tvb, offset-4, 4, flags);
2645         if (flags&( 0x00000080 )){
2646                 proto_item_append_text(item, "LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS");
2647                 if (flags & (~( 0x00000080 )))
2648                         proto_item_append_text(item, ", ");
2649         }
2650         flags&=(~( 0x00000080 ));
2651
2652         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_AUDIT_REQUIREMENTS, tvb, offset-4, 4, flags);
2653         if (flags&( 0x00000100 )){
2654                 proto_item_append_text(item, "LSA_POLICY_SET_AUDIT_REQUIREMENTS");
2655                 if (flags & (~( 0x00000100 )))
2656                         proto_item_append_text(item, ", ");
2657         }
2658         flags&=(~( 0x00000100 ));
2659
2660         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_AUDIT_LOG_ADMIN, tvb, offset-4, 4, flags);
2661         if (flags&( 0x00000200 )){
2662                 proto_item_append_text(item, "LSA_POLICY_AUDIT_LOG_ADMIN");
2663                 if (flags & (~( 0x00000200 )))
2664                         proto_item_append_text(item, ", ");
2665         }
2666         flags&=(~( 0x00000200 ));
2667
2668         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SERVER_ADMIN, tvb, offset-4, 4, flags);
2669         if (flags&( 0x00000400 )){
2670                 proto_item_append_text(item, "LSA_POLICY_SERVER_ADMIN");
2671                 if (flags & (~( 0x00000400 )))
2672                         proto_item_append_text(item, ", ");
2673         }
2674         flags&=(~( 0x00000400 ));
2675
2676         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_LOOKUP_NAMES, tvb, offset-4, 4, flags);
2677         if (flags&( 0x00000800 )){
2678                 proto_item_append_text(item, "LSA_POLICY_LOOKUP_NAMES");
2679                 if (flags & (~( 0x00000800 )))
2680                         proto_item_append_text(item, ", ");
2681         }
2682         flags&=(~( 0x00000800 ));
2683
2684         proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_NOTIFICATION, tvb, offset-4, 4, flags);
2685         if (flags&( 0x00001000 )){
2686                 proto_item_append_text(item, "LSA_POLICY_NOTIFICATION");
2687                 if (flags & (~( 0x00001000 )))
2688                         proto_item_append_text(item, ", ");
2689         }
2690         flags&=(~( 0x00001000 ));
2691
2692         if (flags) {
2693                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
2694         }
2695
2696         return offset;
2697 }
2698
2699
2700 /* IDL: bitmap { */
2701 /* IDL:         LSA_ACCOUNT_VIEW =  0x00000001 , */
2702 /* IDL:         LSA_ACCOUNT_ADJUST_PRIVILEGES =  0x00000002 , */
2703 /* IDL:         LSA_ACCOUNT_ADJUST_QUOTAS =  0x00000004 , */
2704 /* IDL:         LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS =  0x00000008 , */
2705 /* IDL: } */
2706
2707 int
2708 lsarpc_dissect_bitmap_lsa_AccountAccessMask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2709 {
2710         proto_item *item = NULL;
2711         proto_tree *tree = NULL;
2712
2713         guint32 flags;
2714         ALIGN_TO_4_BYTES;
2715
2716         if (parent_tree) {
2717                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
2718                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_AccountAccessMask);
2719         }
2720
2721         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
2722         proto_item_append_text(item, ": ");
2723
2724         if (!flags)
2725                 proto_item_append_text(item, "(No values set)");
2726
2727         proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_VIEW, tvb, offset-4, 4, flags);
2728         if (flags&( 0x00000001 )){
2729                 proto_item_append_text(item, "LSA_ACCOUNT_VIEW");
2730                 if (flags & (~( 0x00000001 )))
2731                         proto_item_append_text(item, ", ");
2732         }
2733         flags&=(~( 0x00000001 ));
2734
2735         proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_PRIVILEGES, tvb, offset-4, 4, flags);
2736         if (flags&( 0x00000002 )){
2737                 proto_item_append_text(item, "LSA_ACCOUNT_ADJUST_PRIVILEGES");
2738                 if (flags & (~( 0x00000002 )))
2739                         proto_item_append_text(item, ", ");
2740         }
2741         flags&=(~( 0x00000002 ));
2742
2743         proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_QUOTAS, tvb, offset-4, 4, flags);
2744         if (flags&( 0x00000004 )){
2745                 proto_item_append_text(item, "LSA_ACCOUNT_ADJUST_QUOTAS");
2746                 if (flags & (~( 0x00000004 )))
2747                         proto_item_append_text(item, ", ");
2748         }
2749         flags&=(~( 0x00000004 ));
2750
2751         proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS, tvb, offset-4, 4, flags);
2752         if (flags&( 0x00000008 )){
2753                 proto_item_append_text(item, "LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS");
2754                 if (flags & (~( 0x00000008 )))
2755                         proto_item_append_text(item, ", ");
2756         }
2757         flags&=(~( 0x00000008 ));
2758
2759         if (flags) {
2760                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
2761         }
2762
2763         return offset;
2764 }
2765
2766
2767 /* IDL: bitmap { */
2768 /* IDL:         LSA_SECRET_SET_VALUE =  0x00000001 , */
2769 /* IDL:         LSA_SECRET_QUERY_VALUE =  0x00000002 , */
2770 /* IDL: } */
2771
2772 int
2773 lsarpc_dissect_bitmap_lsa_SecretAccessMask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2774 {
2775         proto_item *item = NULL;
2776         proto_tree *tree = NULL;
2777
2778         guint32 flags;
2779         ALIGN_TO_4_BYTES;
2780
2781         if (parent_tree) {
2782                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
2783                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_SecretAccessMask);
2784         }
2785
2786         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
2787         proto_item_append_text(item, ": ");
2788
2789         if (!flags)
2790                 proto_item_append_text(item, "(No values set)");
2791
2792         proto_tree_add_boolean(tree, hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_SET_VALUE, tvb, offset-4, 4, flags);
2793         if (flags&( 0x00000001 )){
2794                 proto_item_append_text(item, "LSA_SECRET_SET_VALUE");
2795                 if (flags & (~( 0x00000001 )))
2796                         proto_item_append_text(item, ", ");
2797         }
2798         flags&=(~( 0x00000001 ));
2799
2800         proto_tree_add_boolean(tree, hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_QUERY_VALUE, tvb, offset-4, 4, flags);
2801         if (flags&( 0x00000002 )){
2802                 proto_item_append_text(item, "LSA_SECRET_QUERY_VALUE");
2803                 if (flags & (~( 0x00000002 )))
2804                         proto_item_append_text(item, ", ");
2805         }
2806         flags&=(~( 0x00000002 ));
2807
2808         if (flags) {
2809                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
2810         }
2811
2812         return offset;
2813 }
2814
2815
2816 /* IDL: bitmap { */
2817 /* IDL:         LSA_TRUSTED_QUERY_DOMAIN_NAME =  0x00000001 , */
2818 /* IDL:         LSA_TRUSTED_QUERY_CONTROLLERS =  0x00000002 , */
2819 /* IDL:         LSA_TRUSTED_SET_CONTROLLERS =  0x00000004 , */
2820 /* IDL:         LSA_TRUSTED_QUERY_POSIX =  0x00000008 , */
2821 /* IDL:         LSA_TRUSTED_SET_POSIX =  0x00000010 , */
2822 /* IDL:         LSA_TRUSTED_SET_AUTH =  0x00000020 , */
2823 /* IDL:         LSA_TRUSTED_QUERY_AUTH =  0x00000040 , */
2824 /* IDL: } */
2825
2826 int
2827 lsarpc_dissect_bitmap_lsa_TrustedAccessMask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2828 {
2829         proto_item *item = NULL;
2830         proto_tree *tree = NULL;
2831
2832         guint32 flags;
2833         ALIGN_TO_4_BYTES;
2834
2835         if (parent_tree) {
2836                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
2837                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_TrustedAccessMask);
2838         }
2839
2840         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
2841         proto_item_append_text(item, ": ");
2842
2843         if (!flags)
2844                 proto_item_append_text(item, "(No values set)");
2845
2846         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_DOMAIN_NAME, tvb, offset-4, 4, flags);
2847         if (flags&( 0x00000001 )){
2848                 proto_item_append_text(item, "LSA_TRUSTED_QUERY_DOMAIN_NAME");
2849                 if (flags & (~( 0x00000001 )))
2850                         proto_item_append_text(item, ", ");
2851         }
2852         flags&=(~( 0x00000001 ));
2853
2854         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_CONTROLLERS, tvb, offset-4, 4, flags);
2855         if (flags&( 0x00000002 )){
2856                 proto_item_append_text(item, "LSA_TRUSTED_QUERY_CONTROLLERS");
2857                 if (flags & (~( 0x00000002 )))
2858                         proto_item_append_text(item, ", ");
2859         }
2860         flags&=(~( 0x00000002 ));
2861
2862         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_CONTROLLERS, tvb, offset-4, 4, flags);
2863         if (flags&( 0x00000004 )){
2864                 proto_item_append_text(item, "LSA_TRUSTED_SET_CONTROLLERS");
2865                 if (flags & (~( 0x00000004 )))
2866                         proto_item_append_text(item, ", ");
2867         }
2868         flags&=(~( 0x00000004 ));
2869
2870         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_POSIX, tvb, offset-4, 4, flags);
2871         if (flags&( 0x00000008 )){
2872                 proto_item_append_text(item, "LSA_TRUSTED_QUERY_POSIX");
2873                 if (flags & (~( 0x00000008 )))
2874                         proto_item_append_text(item, ", ");
2875         }
2876         flags&=(~( 0x00000008 ));
2877
2878         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_POSIX, tvb, offset-4, 4, flags);
2879         if (flags&( 0x00000010 )){
2880                 proto_item_append_text(item, "LSA_TRUSTED_SET_POSIX");
2881                 if (flags & (~( 0x00000010 )))
2882                         proto_item_append_text(item, ", ");
2883         }
2884         flags&=(~( 0x00000010 ));
2885
2886         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_AUTH, tvb, offset-4, 4, flags);
2887         if (flags&( 0x00000020 )){
2888                 proto_item_append_text(item, "LSA_TRUSTED_SET_AUTH");
2889                 if (flags & (~( 0x00000020 )))
2890                         proto_item_append_text(item, ", ");
2891         }
2892         flags&=(~( 0x00000020 ));
2893
2894         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_AUTH, tvb, offset-4, 4, flags);
2895         if (flags&( 0x00000040 )){
2896                 proto_item_append_text(item, "LSA_TRUSTED_QUERY_AUTH");
2897                 if (flags & (~( 0x00000040 )))
2898                         proto_item_append_text(item, ", ");
2899         }
2900         flags&=(~( 0x00000040 ));
2901
2902         if (flags) {
2903                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
2904         }
2905
2906         return offset;
2907 }
2908
2909
2910 /* IDL: struct { */
2911 /* IDL:         uint32 percent_full; */
2912 /* IDL:         uint32 maximum_log_size; */
2913 /* IDL:         hyper retention_time; */
2914 /* IDL:         uint8 shutdown_in_progress; */
2915 /* IDL:         hyper time_to_shutdown; */
2916 /* IDL:         uint32 next_audit_record; */
2917 /* IDL: } */
2918
2919 static int
2920 lsarpc_dissect_element_lsa_AuditLogInfo_percent_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2921 {
2922         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditLogInfo_percent_full, 0);
2923
2924         return offset;
2925 }
2926
2927 static int
2928 lsarpc_dissect_element_lsa_AuditLogInfo_maximum_log_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2929 {
2930         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditLogInfo_maximum_log_size, 0);
2931
2932         return offset;
2933 }
2934
2935 static int
2936 lsarpc_dissect_element_lsa_AuditLogInfo_retention_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2937 {
2938         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditLogInfo_retention_time, NULL);
2939
2940         return offset;
2941 }
2942
2943 static int
2944 lsarpc_dissect_element_lsa_AuditLogInfo_shutdown_in_progress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2945 {
2946         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditLogInfo_shutdown_in_progress, 0);
2947
2948         return offset;
2949 }
2950
2951 static int
2952 lsarpc_dissect_element_lsa_AuditLogInfo_time_to_shutdown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2953 {
2954         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditLogInfo_time_to_shutdown, NULL);
2955
2956         return offset;
2957 }
2958
2959 static int
2960 lsarpc_dissect_element_lsa_AuditLogInfo_next_audit_record(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2961 {
2962         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditLogInfo_next_audit_record, 0);
2963
2964         return offset;
2965 }
2966
2967 int
2968 lsarpc_dissect_struct_lsa_AuditLogInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2969 {
2970         proto_item *item = NULL;
2971         proto_tree *tree = NULL;
2972         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2973         int old_offset;
2974
2975         ALIGN_TO_8_BYTES;
2976
2977         old_offset = offset;
2978
2979         if (parent_tree) {
2980                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2981                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_AuditLogInfo);
2982         }
2983         
2984         offset = lsarpc_dissect_element_lsa_AuditLogInfo_percent_full(tvb, offset, pinfo, tree, drep);
2985
2986         offset = lsarpc_dissect_element_lsa_AuditLogInfo_maximum_log_size(tvb, offset, pinfo, tree, drep);
2987
2988         offset = lsarpc_dissect_element_lsa_AuditLogInfo_retention_time(tvb, offset, pinfo, tree, drep);
2989
2990         offset = lsarpc_dissect_element_lsa_AuditLogInfo_shutdown_in_progress(tvb, offset, pinfo, tree, drep);
2991
2992         offset = lsarpc_dissect_element_lsa_AuditLogInfo_time_to_shutdown(tvb, offset, pinfo, tree, drep);
2993
2994         offset = lsarpc_dissect_element_lsa_AuditLogInfo_next_audit_record(tvb, offset, pinfo, tree, drep);
2995
2996
2997         proto_item_set_len(item, offset-old_offset);
2998
2999
3000         if (di->call_data->flags & DCERPC_IS_NDR64) {
3001                 ALIGN_TO_8_BYTES;
3002         }
3003
3004         return offset;
3005 }
3006
3007
3008 /* IDL: enum { */
3009 /* IDL:         LSA_AUDIT_POLICY_NONE=0, */
3010 /* IDL:         LSA_AUDIT_POLICY_SUCCESS=1, */
3011 /* IDL:         LSA_AUDIT_POLICY_FAILURE=2, */
3012 /* IDL:         LSA_AUDIT_POLICY_ALL=(LSA_AUDIT_POLICY_SUCCESS|LSA_AUDIT_POLICY_FAILURE), */
3013 /* IDL:         LSA_AUDIT_POLICY_CLEAR=4, */
3014 /* IDL: } */
3015
3016 int
3017 lsarpc_dissect_enum_lsa_PolicyAuditPolicy(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
3018 {
3019         guint32 parameter=0;
3020         if(param){
3021                 parameter=(guint32)*param;
3022         }
3023         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
3024         if(param){
3025                 *param=(guint32)parameter;
3026         }
3027         return offset;
3028 }
3029
3030
3031 /* IDL: enum { */
3032 /* IDL:         LSA_AUDIT_CATEGORY_SYSTEM=0, */
3033 /* IDL:         LSA_AUDIT_CATEGORY_LOGON=1, */
3034 /* IDL:         LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS=2, */
3035 /* IDL:         LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS=3, */
3036 /* IDL:         LSA_AUDIT_CATEGORY_PROCCESS_TRACKING=4, */
3037 /* IDL:         LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES=5, */
3038 /* IDL:         LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT=6, */
3039 /* IDL:         LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS=7, */
3040 /* IDL:         LSA_AUDIT_CATEGORY_ACCOUNT_LOGON=8, */
3041 /* IDL: } */
3042
3043 int
3044 lsarpc_dissect_enum_lsa_PolicyAuditEventType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
3045 {
3046         guint1632 parameter=0;
3047         if(param){
3048                 parameter=(guint1632)*param;
3049         }
3050         offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
3051         if(param){
3052                 *param=(guint32)parameter;
3053         }
3054         return offset;
3055 }
3056
3057
3058 /* IDL: struct { */
3059 /* IDL:         uint32 auditing_mode; */
3060 /* IDL:         [unique(1)] [size_is(count)] lsa_PolicyAuditPolicy *settings; */
3061 /* IDL:         uint32 count; */
3062 /* IDL: } */
3063
3064 static int
3065 lsarpc_dissect_element_lsa_AuditEventsInfo_auditing_mode(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3066 {
3067         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditEventsInfo_auditing_mode, 0);
3068
3069         return offset;
3070 }
3071
3072 static int
3073 lsarpc_dissect_element_lsa_AuditEventsInfo_settings(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3074 {
3075         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AuditEventsInfo_settings_, NDR_POINTER_UNIQUE, "Pointer to Settings (lsa_PolicyAuditPolicy)",hf_lsarpc_lsa_AuditEventsInfo_settings);
3076
3077         return offset;
3078 }
3079
3080 static int
3081 lsarpc_dissect_element_lsa_AuditEventsInfo_settings_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3082 {
3083         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AuditEventsInfo_settings__);
3084
3085         return offset;
3086 }
3087
3088 static int
3089 lsarpc_dissect_element_lsa_AuditEventsInfo_settings__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3090 {
3091         offset = lsarpc_dissect_enum_lsa_PolicyAuditPolicy(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditEventsInfo_settings, 0);
3092
3093         return offset;
3094 }
3095
3096 static int
3097 lsarpc_dissect_element_lsa_AuditEventsInfo_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3098 {
3099         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditEventsInfo_count, 0);
3100
3101         return offset;
3102 }
3103
3104 int
3105 lsarpc_dissect_struct_lsa_AuditEventsInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3106 {
3107         proto_item *item = NULL;
3108         proto_tree *tree = NULL;
3109         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3110         int old_offset;
3111
3112         ALIGN_TO_5_BYTES;
3113
3114         old_offset = offset;
3115
3116         if (parent_tree) {
3117                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3118                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_AuditEventsInfo);
3119         }
3120         
3121         offset = lsarpc_dissect_element_lsa_AuditEventsInfo_auditing_mode(tvb, offset, pinfo, tree, drep);
3122
3123         offset = lsarpc_dissect_element_lsa_AuditEventsInfo_settings(tvb, offset, pinfo, tree, drep);
3124
3125         offset = lsarpc_dissect_element_lsa_AuditEventsInfo_count(tvb, offset, pinfo, tree, drep);
3126
3127
3128         proto_item_set_len(item, offset-old_offset);
3129
3130
3131         if (di->call_data->flags & DCERPC_IS_NDR64) {
3132                 ALIGN_TO_5_BYTES;
3133         }
3134
3135         return offset;
3136 }
3137
3138
3139 /* IDL: struct { */
3140 /* IDL:         lsa_StringLarge name; */
3141 /* IDL:         [unique(1)] dom_sid2 *sid; */
3142 /* IDL: } */
3143
3144 static int
3145 lsarpc_dissect_element_lsa_DomainInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3146 {
3147         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DomainInfo_name,0);
3148
3149         return offset;
3150 }
3151
3152 static int
3153 lsarpc_dissect_element_lsa_DomainInfo_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3154 {
3155         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DomainInfo_sid_, NDR_POINTER_UNIQUE, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_DomainInfo_sid);
3156
3157         return offset;
3158 }
3159
3160 static int
3161 lsarpc_dissect_element_lsa_DomainInfo_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3162 {
3163         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DomainInfo_sid,0);
3164
3165         return offset;
3166 }
3167
3168 int
3169 lsarpc_dissect_struct_lsa_DomainInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3170 {
3171         proto_item *item = NULL;
3172         proto_tree *tree = NULL;
3173         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3174         int old_offset;
3175
3176         ALIGN_TO_5_BYTES;
3177
3178         old_offset = offset;
3179
3180         if (parent_tree) {
3181                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3182                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DomainInfo);
3183         }
3184         
3185         offset = lsarpc_dissect_element_lsa_DomainInfo_name(tvb, offset, pinfo, tree, drep);
3186
3187         offset = lsarpc_dissect_element_lsa_DomainInfo_sid(tvb, offset, pinfo, tree, drep);
3188
3189
3190         proto_item_set_len(item, offset-old_offset);
3191
3192
3193         if (di->call_data->flags & DCERPC_IS_NDR64) {
3194                 ALIGN_TO_5_BYTES;
3195         }
3196
3197         return offset;
3198 }
3199
3200
3201 /* IDL: struct { */
3202 /* IDL:         lsa_String name; */
3203 /* IDL: } */
3204
3205 static int
3206 lsarpc_dissect_element_lsa_PDAccountInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3207 {
3208         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PDAccountInfo_name,0);
3209
3210         return offset;
3211 }
3212
3213 int
3214 lsarpc_dissect_struct_lsa_PDAccountInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3215 {
3216         proto_item *item = NULL;
3217         proto_tree *tree = NULL;
3218         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3219         int old_offset;
3220
3221         ALIGN_TO_5_BYTES;
3222
3223         old_offset = offset;
3224
3225         if (parent_tree) {
3226                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3227                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_PDAccountInfo);
3228         }
3229         
3230         offset = lsarpc_dissect_element_lsa_PDAccountInfo_name(tvb, offset, pinfo, tree, drep);
3231
3232
3233         proto_item_set_len(item, offset-old_offset);
3234
3235
3236         if (di->call_data->flags & DCERPC_IS_NDR64) {
3237                 ALIGN_TO_5_BYTES;
3238         }
3239
3240         return offset;
3241 }
3242
3243
3244 /* IDL: enum { */
3245 /* IDL:         LSA_ROLE_BACKUP=2, */
3246 /* IDL:         LSA_ROLE_PRIMARY=3, */
3247 /* IDL: } */
3248
3249 int
3250 lsarpc_dissect_enum_lsa_Role(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
3251 {
3252         guint32 parameter=0;
3253         if(param){
3254                 parameter=(guint32)*param;
3255         }
3256         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
3257         if(param){
3258                 *param=(guint32)parameter;
3259         }
3260         return offset;
3261 }
3262
3263
3264 /* IDL: struct { */
3265 /* IDL:         lsa_Role role; */
3266 /* IDL: } */
3267
3268 static int
3269 lsarpc_dissect_element_lsa_ServerRole_role(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3270 {
3271         offset = lsarpc_dissect_enum_lsa_Role(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ServerRole_role, 0);
3272
3273         return offset;
3274 }
3275
3276 int
3277 lsarpc_dissect_struct_lsa_ServerRole(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3278 {
3279         proto_item *item = NULL;
3280         proto_tree *tree = NULL;
3281         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3282         int old_offset;
3283
3284         ALIGN_TO_4_BYTES;
3285
3286         old_offset = offset;
3287
3288         if (parent_tree) {
3289                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3290                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ServerRole);
3291         }
3292         
3293         offset = lsarpc_dissect_element_lsa_ServerRole_role(tvb, offset, pinfo, tree, drep);
3294
3295
3296         proto_item_set_len(item, offset-old_offset);
3297
3298
3299         if (di->call_data->flags & DCERPC_IS_NDR64) {
3300                 ALIGN_TO_4_BYTES;
3301         }
3302
3303         return offset;
3304 }
3305
3306
3307 /* IDL: struct { */
3308 /* IDL:         lsa_String source; */
3309 /* IDL:         lsa_String account; */
3310 /* IDL: } */
3311
3312 static int
3313 lsarpc_dissect_element_lsa_ReplicaSourceInfo_source(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3314 {
3315         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ReplicaSourceInfo_source,0);
3316
3317         return offset;
3318 }
3319
3320 static int
3321 lsarpc_dissect_element_lsa_ReplicaSourceInfo_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3322 {
3323         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ReplicaSourceInfo_account,0);
3324
3325         return offset;
3326 }
3327
3328 int
3329 lsarpc_dissect_struct_lsa_ReplicaSourceInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3330 {
3331         proto_item *item = NULL;
3332         proto_tree *tree = NULL;
3333         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3334         int old_offset;
3335
3336         ALIGN_TO_5_BYTES;
3337
3338         old_offset = offset;
3339
3340         if (parent_tree) {
3341                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3342                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ReplicaSourceInfo);
3343         }
3344         
3345         offset = lsarpc_dissect_element_lsa_ReplicaSourceInfo_source(tvb, offset, pinfo, tree, drep);
3346
3347         offset = lsarpc_dissect_element_lsa_ReplicaSourceInfo_account(tvb, offset, pinfo, tree, drep);
3348
3349
3350         proto_item_set_len(item, offset-old_offset);
3351
3352
3353         if (di->call_data->flags & DCERPC_IS_NDR64) {
3354                 ALIGN_TO_5_BYTES;
3355         }
3356
3357         return offset;
3358 }
3359
3360
3361 /* IDL: struct { */
3362 /* IDL:         uint32 paged_pool; */
3363 /* IDL:         uint32 non_paged_pool; */
3364 /* IDL:         uint32 min_wss; */
3365 /* IDL:         uint32 max_wss; */
3366 /* IDL:         uint32 pagefile; */
3367 /* IDL:         hyper unknown; */
3368 /* IDL: } */
3369
3370 static int
3371 lsarpc_dissect_element_lsa_DefaultQuotaInfo_paged_pool(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3372 {
3373         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DefaultQuotaInfo_paged_pool, 0);
3374
3375         return offset;
3376 }
3377
3378 static int
3379 lsarpc_dissect_element_lsa_DefaultQuotaInfo_non_paged_pool(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3380 {
3381         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DefaultQuotaInfo_non_paged_pool, 0);
3382
3383         return offset;
3384 }
3385
3386 static int
3387 lsarpc_dissect_element_lsa_DefaultQuotaInfo_min_wss(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3388 {
3389         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DefaultQuotaInfo_min_wss, 0);
3390
3391         return offset;
3392 }
3393
3394 static int
3395 lsarpc_dissect_element_lsa_DefaultQuotaInfo_max_wss(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3396 {
3397         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DefaultQuotaInfo_max_wss, 0);
3398
3399         return offset;
3400 }
3401
3402 static int
3403 lsarpc_dissect_element_lsa_DefaultQuotaInfo_pagefile(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3404 {
3405         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DefaultQuotaInfo_pagefile, 0);
3406
3407         return offset;
3408 }
3409
3410 static int
3411 lsarpc_dissect_element_lsa_DefaultQuotaInfo_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3412 {
3413         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DefaultQuotaInfo_unknown, NULL);
3414
3415         return offset;
3416 }
3417
3418 int
3419 lsarpc_dissect_struct_lsa_DefaultQuotaInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3420 {
3421         proto_item *item = NULL;
3422         proto_tree *tree = NULL;
3423         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3424         int old_offset;
3425
3426         ALIGN_TO_8_BYTES;
3427
3428         old_offset = offset;
3429
3430         if (parent_tree) {
3431                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3432                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DefaultQuotaInfo);
3433         }
3434         
3435         offset = lsarpc_dissect_element_lsa_DefaultQuotaInfo_paged_pool(tvb, offset, pinfo, tree, drep);
3436
3437         offset = lsarpc_dissect_element_lsa_DefaultQuotaInfo_non_paged_pool(tvb, offset, pinfo, tree, drep);
3438
3439         offset = lsarpc_dissect_element_lsa_DefaultQuotaInfo_min_wss(tvb, offset, pinfo, tree, drep);
3440
3441         offset = lsarpc_dissect_element_lsa_DefaultQuotaInfo_max_wss(tvb, offset, pinfo, tree, drep);
3442
3443         offset = lsarpc_dissect_element_lsa_DefaultQuotaInfo_pagefile(tvb, offset, pinfo, tree, drep);
3444
3445         offset = lsarpc_dissect_element_lsa_DefaultQuotaInfo_unknown(tvb, offset, pinfo, tree, drep);
3446
3447
3448         proto_item_set_len(item, offset-old_offset);
3449
3450
3451         if (di->call_data->flags & DCERPC_IS_NDR64) {
3452                 ALIGN_TO_8_BYTES;
3453         }
3454
3455         return offset;
3456 }
3457
3458
3459 /* IDL: struct { */
3460 /* IDL:         hyper modified_id; */
3461 /* IDL:         NTTIME_hyper db_create_time; */
3462 /* IDL: } */
3463
3464 static int
3465 lsarpc_dissect_element_lsa_ModificationInfo_modified_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3466 {
3467         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ModificationInfo_modified_id, NULL);
3468
3469         return offset;
3470 }
3471
3472 static int
3473 lsarpc_dissect_element_lsa_ModificationInfo_db_create_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3474 {
3475         offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ModificationInfo_db_create_time);
3476
3477         return offset;
3478 }
3479
3480 int
3481 lsarpc_dissect_struct_lsa_ModificationInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3482 {
3483         proto_item *item = NULL;
3484         proto_tree *tree = NULL;
3485         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3486         int old_offset;
3487
3488         ALIGN_TO_8_BYTES;
3489
3490         old_offset = offset;
3491
3492         if (parent_tree) {
3493                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3494                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ModificationInfo);
3495         }
3496         
3497         offset = lsarpc_dissect_element_lsa_ModificationInfo_modified_id(tvb, offset, pinfo, tree, drep);
3498
3499         offset = lsarpc_dissect_element_lsa_ModificationInfo_db_create_time(tvb, offset, pinfo, tree, drep);
3500
3501
3502         proto_item_set_len(item, offset-old_offset);
3503
3504
3505         if (di->call_data->flags & DCERPC_IS_NDR64) {
3506                 ALIGN_TO_8_BYTES;
3507         }
3508
3509         return offset;
3510 }
3511
3512
3513 /* IDL: struct { */
3514 /* IDL:         uint8 shutdown_on_full; */
3515 /* IDL: } */
3516
3517 static int
3518 lsarpc_dissect_element_lsa_AuditFullSetInfo_shutdown_on_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3519 {
3520         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditFullSetInfo_shutdown_on_full, 0);
3521
3522         return offset;
3523 }
3524
3525 int
3526 lsarpc_dissect_struct_lsa_AuditFullSetInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3527 {
3528         proto_item *item = NULL;
3529         proto_tree *tree = NULL;
3530         int old_offset;
3531
3532
3533         old_offset = offset;
3534
3535         if (parent_tree) {
3536                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3537                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_AuditFullSetInfo);
3538         }
3539         
3540         offset = lsarpc_dissect_element_lsa_AuditFullSetInfo_shutdown_on_full(tvb, offset, pinfo, tree, drep);
3541
3542
3543         proto_item_set_len(item, offset-old_offset);
3544
3545
3546         return offset;
3547 }
3548
3549
3550 /* IDL: struct { */
3551 /* IDL:         uint8 shutdown_on_full; */
3552 /* IDL:         uint8 log_is_full; */
3553 /* IDL: } */
3554
3555 static int
3556 lsarpc_dissect_element_lsa_AuditFullQueryInfo_shutdown_on_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3557 {
3558         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditFullQueryInfo_shutdown_on_full, 0);
3559
3560         return offset;
3561 }
3562
3563 static int
3564 lsarpc_dissect_element_lsa_AuditFullQueryInfo_log_is_full(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3565 {
3566         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AuditFullQueryInfo_log_is_full, 0);
3567
3568         return offset;
3569 }
3570
3571 int
3572 lsarpc_dissect_struct_lsa_AuditFullQueryInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3573 {
3574         proto_item *item = NULL;
3575         proto_tree *tree = NULL;
3576         int old_offset;
3577
3578
3579         old_offset = offset;
3580
3581         if (parent_tree) {
3582                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3583                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_AuditFullQueryInfo);
3584         }
3585         
3586         offset = lsarpc_dissect_element_lsa_AuditFullQueryInfo_shutdown_on_full(tvb, offset, pinfo, tree, drep);
3587
3588         offset = lsarpc_dissect_element_lsa_AuditFullQueryInfo_log_is_full(tvb, offset, pinfo, tree, drep);
3589
3590
3591         proto_item_set_len(item, offset-old_offset);
3592
3593
3594         return offset;
3595 }
3596
3597
3598 /* IDL: struct { */
3599 /* IDL:         lsa_StringLarge name; */
3600 /* IDL:         lsa_StringLarge dns_domain; */
3601 /* IDL:         lsa_StringLarge dns_forest; */
3602 /* IDL:         GUID domain_guid; */
3603 /* IDL:         [unique(1)] dom_sid2 *sid; */
3604 /* IDL: } */
3605
3606 static int
3607 lsarpc_dissect_element_lsa_DnsDomainInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3608 {
3609         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DnsDomainInfo_name,0);
3610
3611         return offset;
3612 }
3613
3614 static int
3615 lsarpc_dissect_element_lsa_DnsDomainInfo_dns_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3616 {
3617         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DnsDomainInfo_dns_domain,0);
3618
3619         return offset;
3620 }
3621
3622 static int
3623 lsarpc_dissect_element_lsa_DnsDomainInfo_dns_forest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3624 {
3625         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DnsDomainInfo_dns_forest,0);
3626
3627         return offset;
3628 }
3629
3630 static int
3631 lsarpc_dissect_element_lsa_DnsDomainInfo_domain_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3632 {
3633         offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DnsDomainInfo_domain_guid, NULL);
3634
3635         return offset;
3636 }
3637
3638 static int
3639 lsarpc_dissect_element_lsa_DnsDomainInfo_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3640 {
3641         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DnsDomainInfo_sid_, NDR_POINTER_UNIQUE, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_DnsDomainInfo_sid);
3642
3643         return offset;
3644 }
3645
3646 static int
3647 lsarpc_dissect_element_lsa_DnsDomainInfo_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3648 {
3649         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DnsDomainInfo_sid,0);
3650
3651         return offset;
3652 }
3653
3654 int
3655 lsarpc_dissect_struct_lsa_DnsDomainInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3656 {
3657         proto_item *item = NULL;
3658         proto_tree *tree = NULL;
3659         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3660         int old_offset;
3661
3662         ALIGN_TO_5_BYTES;
3663
3664         old_offset = offset;
3665
3666         if (parent_tree) {
3667                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3668                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DnsDomainInfo);
3669         }
3670         
3671         offset = lsarpc_dissect_element_lsa_DnsDomainInfo_name(tvb, offset, pinfo, tree, drep);
3672
3673         offset = lsarpc_dissect_element_lsa_DnsDomainInfo_dns_domain(tvb, offset, pinfo, tree, drep);
3674
3675         offset = lsarpc_dissect_element_lsa_DnsDomainInfo_dns_forest(tvb, offset, pinfo, tree, drep);
3676
3677         offset = lsarpc_dissect_element_lsa_DnsDomainInfo_domain_guid(tvb, offset, pinfo, tree, drep);
3678
3679         offset = lsarpc_dissect_element_lsa_DnsDomainInfo_sid(tvb, offset, pinfo, tree, drep);
3680
3681
3682         proto_item_set_len(item, offset-old_offset);
3683
3684
3685         if (di->call_data->flags & DCERPC_IS_NDR64) {
3686                 ALIGN_TO_5_BYTES;
3687         }
3688
3689         return offset;
3690 }
3691
3692
3693 /* IDL: enum { */
3694 /* IDL:         LSA_POLICY_INFO_AUDIT_LOG=1, */
3695 /* IDL:         LSA_POLICY_INFO_AUDIT_EVENTS=2, */
3696 /* IDL:         LSA_POLICY_INFO_DOMAIN=3, */
3697 /* IDL:         LSA_POLICY_INFO_PD=4, */
3698 /* IDL:         LSA_POLICY_INFO_ACCOUNT_DOMAIN=5, */
3699 /* IDL:         LSA_POLICY_INFO_ROLE=6, */
3700 /* IDL:         LSA_POLICY_INFO_REPLICA=7, */
3701 /* IDL:         LSA_POLICY_INFO_QUOTA=8, */
3702 /* IDL:         LSA_POLICY_INFO_MOD=9, */
3703 /* IDL:         LSA_POLICY_INFO_AUDIT_FULL_SET=10, */
3704 /* IDL:         LSA_POLICY_INFO_AUDIT_FULL_QUERY=11, */
3705 /* IDL:         LSA_POLICY_INFO_DNS=12, */
3706 /* IDL:         LSA_POLICY_INFO_DNS_INT=13, */
3707 /* IDL:         LSA_POLICY_INFO_L_ACCOUNT_DOMAIN=14, */
3708 /* IDL: } */
3709
3710 int
3711 lsarpc_dissect_enum_lsa_PolicyInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
3712 {
3713         guint1632 parameter=0;
3714         if(param){
3715                 parameter=(guint1632)*param;
3716         }
3717         offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
3718         if(param){
3719                 *param=(guint32)parameter;
3720         }
3721         return offset;
3722 }
3723
3724
3725 /* IDL: [switch_type(uint16)] union { */
3726 /* IDL: [case(LSA_POLICY_INFO_AUDIT_LOG)] [case(LSA_POLICY_INFO_AUDIT_LOG)] lsa_AuditLogInfo audit_log; */
3727 /* IDL: [case(LSA_POLICY_INFO_AUDIT_EVENTS)] [case(LSA_POLICY_INFO_AUDIT_EVENTS)] lsa_AuditEventsInfo audit_events; */
3728 /* IDL: [case(LSA_POLICY_INFO_DOMAIN)] [case(LSA_POLICY_INFO_DOMAIN)] lsa_DomainInfo domain; */
3729 /* IDL: [case(LSA_POLICY_INFO_PD)] [case(LSA_POLICY_INFO_PD)] lsa_PDAccountInfo pd; */
3730 /* IDL: [case(LSA_POLICY_INFO_ACCOUNT_DOMAIN)] [case(LSA_POLICY_INFO_ACCOUNT_DOMAIN)] lsa_DomainInfo account_domain; */
3731 /* IDL: [case(LSA_POLICY_INFO_ROLE)] [case(LSA_POLICY_INFO_ROLE)] lsa_ServerRole role; */
3732 /* IDL: [case(LSA_POLICY_INFO_REPLICA)] [case(LSA_POLICY_INFO_REPLICA)] lsa_ReplicaSourceInfo replica; */
3733 /* IDL: [case(LSA_POLICY_INFO_QUOTA)] [case(LSA_POLICY_INFO_QUOTA)] lsa_DefaultQuotaInfo quota; */
3734 /* IDL: [case(LSA_POLICY_INFO_MOD)] [case(LSA_POLICY_INFO_MOD)] lsa_ModificationInfo mod; */
3735 /* IDL: [case(LSA_POLICY_INFO_AUDIT_FULL_SET)] [case(LSA_POLICY_INFO_AUDIT_FULL_SET)] lsa_AuditFullSetInfo auditfullset; */
3736 /* IDL: [case(LSA_POLICY_INFO_AUDIT_FULL_QUERY)] [case(LSA_POLICY_INFO_AUDIT_FULL_QUERY)] lsa_AuditFullQueryInfo auditfullquery; */
3737 /* IDL: [case(LSA_POLICY_INFO_DNS)] [case(LSA_POLICY_INFO_DNS)] lsa_DnsDomainInfo dns; */
3738 /* IDL: [case(LSA_POLICY_INFO_DNS_INT)] [case(LSA_POLICY_INFO_DNS_INT)] lsa_DnsDomainInfo dns; */
3739 /* IDL: [case(LSA_POLICY_INFO_L_ACCOUNT_DOMAIN)] [case(LSA_POLICY_INFO_L_ACCOUNT_DOMAIN)] lsa_DomainInfo l_account_domain; */
3740 /* IDL: } */
3741
3742 static int
3743 lsarpc_dissect_element_lsa_PolicyInformation_audit_log(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3744 {
3745         offset = lsarpc_dissect_struct_lsa_AuditLogInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_audit_log,0);
3746
3747         return offset;
3748 }
3749
3750 static int
3751 lsarpc_dissect_element_lsa_PolicyInformation_audit_events(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3752 {
3753         offset = lsarpc_dissect_struct_lsa_AuditEventsInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_audit_events,0);
3754
3755         return offset;
3756 }
3757
3758 static int
3759 lsarpc_dissect_element_lsa_PolicyInformation_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3760 {
3761         offset = lsarpc_dissect_struct_lsa_DomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_domain,0);
3762
3763         return offset;
3764 }
3765
3766 static int
3767 lsarpc_dissect_element_lsa_PolicyInformation_pd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3768 {
3769         offset = lsarpc_dissect_struct_lsa_PDAccountInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_pd,0);
3770
3771         return offset;
3772 }
3773
3774 static int
3775 lsarpc_dissect_element_lsa_PolicyInformation_account_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3776 {
3777         offset = lsarpc_dissect_struct_lsa_DomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_account_domain,0);
3778
3779         return offset;
3780 }
3781
3782 static int
3783 lsarpc_dissect_element_lsa_PolicyInformation_role(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3784 {
3785         offset = lsarpc_dissect_struct_lsa_ServerRole(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_role,0);
3786
3787         return offset;
3788 }
3789
3790 static int
3791 lsarpc_dissect_element_lsa_PolicyInformation_replica(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3792 {
3793         offset = lsarpc_dissect_struct_lsa_ReplicaSourceInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_replica,0);
3794
3795         return offset;
3796 }
3797
3798 static int
3799 lsarpc_dissect_element_lsa_PolicyInformation_quota(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3800 {
3801         offset = lsarpc_dissect_struct_lsa_DefaultQuotaInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_quota,0);
3802
3803         return offset;
3804 }
3805
3806 static int
3807 lsarpc_dissect_element_lsa_PolicyInformation_mod(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3808 {
3809         offset = lsarpc_dissect_struct_lsa_ModificationInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_mod,0);
3810
3811         return offset;
3812 }
3813
3814 static int
3815 lsarpc_dissect_element_lsa_PolicyInformation_auditfullset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3816 {
3817         offset = lsarpc_dissect_struct_lsa_AuditFullSetInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_auditfullset,0);
3818
3819         return offset;
3820 }
3821
3822 static int
3823 lsarpc_dissect_element_lsa_PolicyInformation_auditfullquery(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3824 {
3825         offset = lsarpc_dissect_struct_lsa_AuditFullQueryInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_auditfullquery,0);
3826
3827         return offset;
3828 }
3829
3830 static int
3831 lsarpc_dissect_element_lsa_PolicyInformation_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3832 {
3833         offset = lsarpc_dissect_struct_lsa_DnsDomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_dns,0);
3834
3835         return offset;
3836 }
3837
3838 static int
3839 lsarpc_dissect_element_lsa_PolicyInformation_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3840 {
3841         offset = lsarpc_dissect_struct_lsa_DnsDomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_dns,0);
3842
3843         return offset;
3844 }
3845
3846 static int
3847 lsarpc_dissect_element_lsa_PolicyInformation_l_account_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3848 {
3849         offset = lsarpc_dissect_struct_lsa_DomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PolicyInformation_l_account_domain,0);
3850
3851         return offset;
3852 }
3853
3854 static int
3855 lsarpc_dissect_lsa_PolicyInformation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3856 {
3857         proto_item *item = NULL;
3858         proto_tree *tree = NULL;
3859         int old_offset;
3860         guint16 level;
3861
3862         old_offset = offset;
3863         if (parent_tree) {
3864                 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "lsa_PolicyInformation");
3865                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_PolicyInformation);
3866         }
3867
3868         offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep, hf_index, &level);
3869         ALIGN_TO_8_BYTES;
3870
3871         switch(level) {
3872                 case LSA_POLICY_INFO_AUDIT_LOG:
3873                         offset = lsarpc_dissect_element_lsa_PolicyInformation_audit_log(tvb, offset, pinfo, tree, drep);
3874                 break;
3875
3876                 case LSA_POLICY_INFO_AUDIT_EVENTS:
3877                         offset = lsarpc_dissect_element_lsa_PolicyInformation_audit_events(tvb, offset, pinfo, tree, drep);
3878                 break;
3879
3880                 case LSA_POLICY_INFO_DOMAIN:
3881                         offset = lsarpc_dissect_element_lsa_PolicyInformation_domain(tvb, offset, pinfo, tree, drep);
3882                 break;
3883
3884                 case LSA_POLICY_INFO_PD:
3885                         offset = lsarpc_dissect_element_lsa_PolicyInformation_pd(tvb, offset, pinfo, tree, drep);
3886                 break;
3887
3888                 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
3889                         offset = lsarpc_dissect_element_lsa_PolicyInformation_account_domain(tvb, offset, pinfo, tree, drep);
3890                 break;
3891
3892                 case LSA_POLICY_INFO_ROLE:
3893                         offset = lsarpc_dissect_element_lsa_PolicyInformation_role(tvb, offset, pinfo, tree, drep);
3894                 break;
3895
3896                 case LSA_POLICY_INFO_REPLICA:
3897                         offset = lsarpc_dissect_element_lsa_PolicyInformation_replica(tvb, offset, pinfo, tree, drep);
3898                 break;
3899
3900                 case LSA_POLICY_INFO_QUOTA:
3901                         offset = lsarpc_dissect_element_lsa_PolicyInformation_quota(tvb, offset, pinfo, tree, drep);
3902                 break;
3903
3904                 case LSA_POLICY_INFO_MOD:
3905                         offset = lsarpc_dissect_element_lsa_PolicyInformation_mod(tvb, offset, pinfo, tree, drep);
3906                 break;
3907
3908                 case LSA_POLICY_INFO_AUDIT_FULL_SET:
3909                         offset = lsarpc_dissect_element_lsa_PolicyInformation_auditfullset(tvb, offset, pinfo, tree, drep);
3910                 break;
3911
3912                 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
3913                         offset = lsarpc_dissect_element_lsa_PolicyInformation_auditfullquery(tvb, offset, pinfo, tree, drep);
3914                 break;
3915
3916                 case LSA_POLICY_INFO_DNS:
3917                         offset = lsarpc_dissect_element_lsa_PolicyInformation_dns(tvb, offset, pinfo, tree, drep);
3918                 break;
3919
3920                 case LSA_POLICY_INFO_DNS_INT:
3921                         offset = lsarpc_dissect_element_lsa_PolicyInformation_dns(tvb, offset, pinfo, tree, drep);
3922                 break;
3923
3924                 case LSA_POLICY_INFO_L_ACCOUNT_DOMAIN:
3925                         offset = lsarpc_dissect_element_lsa_PolicyInformation_l_account_domain(tvb, offset, pinfo, tree, drep);
3926                 break;
3927         }
3928         proto_item_set_len(item, offset-old_offset);
3929
3930
3931         return offset;
3932 }
3933
3934 /* IDL: struct { */
3935 /* IDL:         [unique(1)] dom_sid2 *sid; */
3936 /* IDL: } */
3937
3938 static int
3939 lsarpc_dissect_element_lsa_SidPtr_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3940 {
3941         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SidPtr_sid_, NDR_POINTER_UNIQUE, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_SidPtr_sid);
3942
3943         return offset;
3944 }
3945
3946 static int
3947 lsarpc_dissect_element_lsa_SidPtr_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3948 {
3949         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_SidPtr_sid,0);
3950
3951         return offset;
3952 }
3953
3954 int
3955 lsarpc_dissect_struct_lsa_SidPtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3956 {
3957         proto_item *item = NULL;
3958         proto_tree *tree = NULL;
3959         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3960         int old_offset;
3961
3962         ALIGN_TO_5_BYTES;
3963
3964         old_offset = offset;
3965
3966         if (parent_tree) {
3967                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3968                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_SidPtr);
3969         }
3970         
3971         offset = lsarpc_dissect_element_lsa_SidPtr_sid(tvb, offset, pinfo, tree, drep);
3972
3973
3974         proto_item_set_len(item, offset-old_offset);
3975
3976
3977         if (di->call_data->flags & DCERPC_IS_NDR64) {
3978                 ALIGN_TO_5_BYTES;
3979         }
3980
3981         return offset;
3982 }
3983
3984
3985 /* IDL: struct { */
3986 /* IDL:         [range(0,20480)] uint32 num_sids; */
3987 /* IDL:         [unique(1)] [size_is(num_sids)] lsa_SidPtr *sids; */
3988 /* IDL: } */
3989
3990 static int
3991 lsarpc_dissect_element_lsa_SidArray_num_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3992 {
3993         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SidArray_num_sids, 0);
3994
3995         return offset;
3996 }
3997
3998 static int
3999 lsarpc_dissect_element_lsa_SidArray_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4000 {
4001         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SidArray_sids_, NDR_POINTER_UNIQUE, "Pointer to Sids (lsa_SidPtr)",hf_lsarpc_lsa_SidArray_sids);
4002
4003         return offset;
4004 }
4005
4006 static int
4007 lsarpc_dissect_element_lsa_SidArray_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4008 {
4009         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SidArray_sids__);
4010
4011         return offset;
4012 }
4013
4014 static int
4015 lsarpc_dissect_element_lsa_SidArray_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4016 {
4017         offset = lsarpc_dissect_struct_lsa_SidPtr(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_SidArray_sids,0);
4018
4019         return offset;
4020 }
4021
4022 int
4023 lsarpc_dissect_struct_lsa_SidArray(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4024 {
4025         proto_item *item = NULL;
4026         proto_tree *tree = NULL;
4027         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4028         int old_offset;
4029
4030         ALIGN_TO_5_BYTES;
4031
4032         old_offset = offset;
4033
4034         if (parent_tree) {
4035                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4036                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_SidArray);
4037         }
4038         
4039         offset = lsarpc_dissect_element_lsa_SidArray_num_sids(tvb, offset, pinfo, tree, drep);
4040
4041         offset = lsarpc_dissect_element_lsa_SidArray_sids(tvb, offset, pinfo, tree, drep);
4042
4043
4044         proto_item_set_len(item, offset-old_offset);
4045
4046
4047         if (di->call_data->flags & DCERPC_IS_NDR64) {
4048                 ALIGN_TO_5_BYTES;
4049         }
4050
4051         return offset;
4052 }
4053
4054
4055 /* IDL: struct { */
4056 /* IDL:         uint32 count; */
4057 /* IDL:         [unique(1)] [size_is(count)] lsa_DomainInfo *domains; */
4058 /* IDL: } */
4059
4060 static int
4061 lsarpc_dissect_element_lsa_DomainList_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4062 {
4063         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainList_count, 0);
4064
4065         return offset;
4066 }
4067
4068 static int
4069 lsarpc_dissect_element_lsa_DomainList_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4070 {
4071         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DomainList_domains_, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_DomainInfo)",hf_lsarpc_lsa_DomainList_domains);
4072
4073         return offset;
4074 }
4075
4076 static int
4077 lsarpc_dissect_element_lsa_DomainList_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4078 {
4079         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DomainList_domains__);
4080
4081         return offset;
4082 }
4083
4084 static int
4085 lsarpc_dissect_element_lsa_DomainList_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4086 {
4087         offset = lsarpc_dissect_struct_lsa_DomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DomainList_domains,0);
4088
4089         return offset;
4090 }
4091
4092 int
4093 lsarpc_dissect_struct_lsa_DomainList(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4094 {
4095         proto_item *item = NULL;
4096         proto_tree *tree = NULL;
4097         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4098         int old_offset;
4099
4100         ALIGN_TO_5_BYTES;
4101
4102         old_offset = offset;
4103
4104         if (parent_tree) {
4105                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4106                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DomainList);
4107         }
4108         
4109         offset = lsarpc_dissect_element_lsa_DomainList_count(tvb, offset, pinfo, tree, drep);
4110
4111         offset = lsarpc_dissect_element_lsa_DomainList_domains(tvb, offset, pinfo, tree, drep);
4112
4113
4114         proto_item_set_len(item, offset-old_offset);
4115
4116
4117         if (di->call_data->flags & DCERPC_IS_NDR64) {
4118                 ALIGN_TO_5_BYTES;
4119         }
4120
4121         return offset;
4122 }
4123
4124
4125 /* IDL: enum { */
4126 /* IDL:         SID_NAME_USE_NONE=0, */
4127 /* IDL:         SID_NAME_USER=1, */
4128 /* IDL:         SID_NAME_DOM_GRP=2, */
4129 /* IDL:         SID_NAME_DOMAIN=3, */
4130 /* IDL:         SID_NAME_ALIAS=4, */
4131 /* IDL:         SID_NAME_WKN_GRP=5, */
4132 /* IDL:         SID_NAME_DELETED=6, */
4133 /* IDL:         SID_NAME_INVALID=7, */
4134 /* IDL:         SID_NAME_UNKNOWN=8, */
4135 /* IDL:         SID_NAME_COMPUTER=9, */
4136 /* IDL: } */
4137
4138 int
4139 lsarpc_dissect_enum_lsa_SidType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
4140 {
4141         guint1632 parameter=0;
4142         if(param){
4143                 parameter=(guint1632)*param;
4144         }
4145         offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
4146         if(param){
4147                 *param=(guint32)parameter;
4148         }
4149         return offset;
4150 }
4151
4152
4153 /* IDL: struct { */
4154 /* IDL:         lsa_SidType sid_type; */
4155 /* IDL:         uint32 rid; */
4156 /* IDL:         uint32 sid_index; */
4157 /* IDL: } */
4158
4159 static int
4160 lsarpc_dissect_element_lsa_TranslatedSid_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4161 {
4162         offset = lsarpc_dissect_enum_lsa_SidType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid_sid_type, 0);
4163
4164         return offset;
4165 }
4166
4167 static int
4168 lsarpc_dissect_element_lsa_TranslatedSid_rid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4169 {
4170         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid_rid, 0);
4171
4172         return offset;
4173 }
4174
4175 static int
4176 lsarpc_dissect_element_lsa_TranslatedSid_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4177 {
4178         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid_sid_index, 0);
4179
4180         return offset;
4181 }
4182
4183 int
4184 lsarpc_dissect_struct_lsa_TranslatedSid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4185 {
4186         proto_item *item = NULL;
4187         proto_tree *tree = NULL;
4188         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4189         int old_offset;
4190
4191         ALIGN_TO_4_BYTES;
4192
4193         old_offset = offset;
4194
4195         if (parent_tree) {
4196                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4197                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TranslatedSid);
4198         }
4199         
4200         offset = lsarpc_dissect_element_lsa_TranslatedSid_sid_type(tvb, offset, pinfo, tree, drep);
4201
4202         offset = lsarpc_dissect_element_lsa_TranslatedSid_rid(tvb, offset, pinfo, tree, drep);
4203
4204         offset = lsarpc_dissect_element_lsa_TranslatedSid_sid_index(tvb, offset, pinfo, tree, drep);
4205
4206
4207         proto_item_set_len(item, offset-old_offset);
4208
4209
4210         if (di->call_data->flags & DCERPC_IS_NDR64) {
4211                 ALIGN_TO_4_BYTES;
4212         }
4213
4214         return offset;
4215 }
4216
4217
4218 /* IDL: struct { */
4219 /* IDL:         [range(0,1000)] uint32 count; */
4220 /* IDL:         [unique(1)] [size_is(count)] lsa_TranslatedSid *sids; */
4221 /* IDL: } */
4222
4223 static int
4224 lsarpc_dissect_element_lsa_TransSidArray_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4225 {
4226         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TransSidArray_count, 0);
4227
4228         return offset;
4229 }
4230
4231 static int
4232 lsarpc_dissect_element_lsa_TransSidArray_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4233 {
4234         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransSidArray_sids_, NDR_POINTER_UNIQUE, "Pointer to Sids (lsa_TranslatedSid)",hf_lsarpc_lsa_TransSidArray_sids);
4235
4236         return offset;
4237 }
4238
4239 static int
4240 lsarpc_dissect_element_lsa_TransSidArray_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4241 {
4242         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransSidArray_sids__);
4243
4244         return offset;
4245 }
4246
4247 static int
4248 lsarpc_dissect_element_lsa_TransSidArray_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4249 {
4250         offset = lsarpc_dissect_struct_lsa_TranslatedSid(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TransSidArray_sids,0);
4251
4252         return offset;
4253 }
4254
4255 int
4256 lsarpc_dissect_struct_lsa_TransSidArray(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4257 {
4258         proto_item *item = NULL;
4259         proto_tree *tree = NULL;
4260         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4261         int old_offset;
4262
4263         ALIGN_TO_5_BYTES;
4264
4265         old_offset = offset;
4266
4267         if (parent_tree) {
4268                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4269                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TransSidArray);
4270         }
4271         
4272         offset = lsarpc_dissect_element_lsa_TransSidArray_count(tvb, offset, pinfo, tree, drep);
4273
4274         offset = lsarpc_dissect_element_lsa_TransSidArray_sids(tvb, offset, pinfo, tree, drep);
4275
4276
4277         proto_item_set_len(item, offset-old_offset);
4278
4279
4280         if (di->call_data->flags & DCERPC_IS_NDR64) {
4281                 ALIGN_TO_5_BYTES;
4282         }
4283
4284         return offset;
4285 }
4286
4287
4288 /* IDL: struct { */
4289 /* IDL:         [range(0,1000)] uint32 count; */
4290 /* IDL:         [unique(1)] [size_is(count)] lsa_DomainInfo *domains; */
4291 /* IDL:         uint32 max_size; */
4292 /* IDL: } */
4293
4294 static int
4295 lsarpc_dissect_element_lsa_RefDomainList_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4296 {
4297         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RefDomainList_count, 0);
4298
4299         return offset;
4300 }
4301
4302 static int
4303 lsarpc_dissect_element_lsa_RefDomainList_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4304 {
4305         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RefDomainList_domains_, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_DomainInfo)",hf_lsarpc_lsa_RefDomainList_domains);
4306
4307         return offset;
4308 }
4309
4310 static int
4311 lsarpc_dissect_element_lsa_RefDomainList_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4312 {
4313         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RefDomainList_domains__);
4314
4315         return offset;
4316 }
4317
4318 static int
4319 lsarpc_dissect_element_lsa_RefDomainList_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4320 {
4321         offset = lsarpc_dissect_struct_lsa_DomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_RefDomainList_domains,0);
4322
4323         return offset;
4324 }
4325
4326 static int
4327 lsarpc_dissect_element_lsa_RefDomainList_max_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4328 {
4329         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RefDomainList_max_size, 0);
4330
4331         return offset;
4332 }
4333
4334 int
4335 lsarpc_dissect_struct_lsa_RefDomainList(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4336 {
4337         proto_item *item = NULL;
4338         proto_tree *tree = NULL;
4339         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4340         int old_offset;
4341
4342         ALIGN_TO_5_BYTES;
4343
4344         old_offset = offset;
4345
4346         if (parent_tree) {
4347                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4348                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_RefDomainList);
4349         }
4350         
4351         offset = lsarpc_dissect_element_lsa_RefDomainList_count(tvb, offset, pinfo, tree, drep);
4352
4353         offset = lsarpc_dissect_element_lsa_RefDomainList_domains(tvb, offset, pinfo, tree, drep);
4354
4355         offset = lsarpc_dissect_element_lsa_RefDomainList_max_size(tvb, offset, pinfo, tree, drep);
4356
4357
4358         proto_item_set_len(item, offset-old_offset);
4359
4360
4361         if (di->call_data->flags & DCERPC_IS_NDR64) {
4362                 ALIGN_TO_5_BYTES;
4363         }
4364
4365         return offset;
4366 }
4367
4368
4369 /* IDL: enum { */
4370 /* IDL:         LSA_LOOKUP_NAMES_ALL=1, */
4371 /* IDL:         LSA_LOOKUP_NAMES_DOMAINS_ONLY=2, */
4372 /* IDL:         LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY=3, */
4373 /* IDL:         LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY=4, */
4374 /* IDL:         LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY=5, */
4375 /* IDL:         LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2=6, */
4376 /* IDL:         LSA_LOOKUP_NAMES_RODC_REFERRAL_TO_FULL_DC=7, */
4377 /* IDL: } */
4378
4379 int
4380 lsarpc_dissect_enum_lsa_LookupNamesLevel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
4381 {
4382         guint1632 parameter=0;
4383         if(param){
4384                 parameter=(guint1632)*param;
4385         }
4386         offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
4387         if(param){
4388                 *param=(guint32)parameter;
4389         }
4390         return offset;
4391 }
4392
4393
4394 /* IDL: struct { */
4395 /* IDL:         lsa_SidType sid_type; */
4396 /* IDL:         lsa_String name; */
4397 /* IDL:         uint32 sid_index; */
4398 /* IDL: } */
4399
4400 static int
4401 lsarpc_dissect_element_lsa_TranslatedName_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4402 {
4403         offset = lsarpc_dissect_enum_lsa_SidType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedName_sid_type, 0);
4404
4405         return offset;
4406 }
4407
4408 static int
4409 lsarpc_dissect_element_lsa_TranslatedName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4410 {
4411         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TranslatedName_name,0);
4412
4413         return offset;
4414 }
4415
4416 static int
4417 lsarpc_dissect_element_lsa_TranslatedName_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4418 {
4419         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedName_sid_index, 0);
4420
4421         return offset;
4422 }
4423
4424 int
4425 lsarpc_dissect_struct_lsa_TranslatedName(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4426 {
4427         proto_item *item = NULL;
4428         proto_tree *tree = NULL;
4429         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4430         int old_offset;
4431
4432         ALIGN_TO_5_BYTES;
4433
4434         old_offset = offset;
4435
4436         if (parent_tree) {
4437                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4438                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TranslatedName);
4439         }
4440         
4441         offset = lsarpc_dissect_element_lsa_TranslatedName_sid_type(tvb, offset, pinfo, tree, drep);
4442
4443         offset = lsarpc_dissect_element_lsa_TranslatedName_name(tvb, offset, pinfo, tree, drep);
4444
4445         offset = lsarpc_dissect_element_lsa_TranslatedName_sid_index(tvb, offset, pinfo, tree, drep);
4446
4447
4448         proto_item_set_len(item, offset-old_offset);
4449
4450
4451         if (di->call_data->flags & DCERPC_IS_NDR64) {
4452                 ALIGN_TO_5_BYTES;
4453         }
4454
4455         return offset;
4456 }
4457
4458
4459 /* IDL: struct { */
4460 /* IDL:         [range(0,20480)] uint32 count; */
4461 /* IDL:         [unique(1)] [size_is(count)] lsa_TranslatedName *names; */
4462 /* IDL: } */
4463
4464 static int
4465 lsarpc_dissect_element_lsa_TransNameArray_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4466 {
4467         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TransNameArray_count, 0);
4468
4469         return offset;
4470 }
4471
4472 static int
4473 lsarpc_dissect_element_lsa_TransNameArray_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4474 {
4475         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransNameArray_names_, NDR_POINTER_UNIQUE, "Pointer to Names (lsa_TranslatedName)",hf_lsarpc_lsa_TransNameArray_names);
4476
4477         return offset;
4478 }
4479
4480 static int
4481 lsarpc_dissect_element_lsa_TransNameArray_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4482 {
4483         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransNameArray_names__);
4484
4485         return offset;
4486 }
4487
4488 static int
4489 lsarpc_dissect_element_lsa_TransNameArray_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4490 {
4491         offset = lsarpc_dissect_struct_lsa_TranslatedName(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TransNameArray_names,0);
4492
4493         return offset;
4494 }
4495
4496 int
4497 lsarpc_dissect_struct_lsa_TransNameArray(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4498 {
4499         proto_item *item = NULL;
4500         proto_tree *tree = NULL;
4501         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4502         int old_offset;
4503
4504         ALIGN_TO_5_BYTES;
4505
4506         old_offset = offset;
4507
4508         if (parent_tree) {
4509                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4510                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TransNameArray);
4511         }
4512         
4513         offset = lsarpc_dissect_element_lsa_TransNameArray_count(tvb, offset, pinfo, tree, drep);
4514
4515         offset = lsarpc_dissect_element_lsa_TransNameArray_names(tvb, offset, pinfo, tree, drep);
4516
4517
4518         proto_item_set_len(item, offset-old_offset);
4519
4520
4521         if (di->call_data->flags & DCERPC_IS_NDR64) {
4522                 ALIGN_TO_5_BYTES;
4523         }
4524
4525         return offset;
4526 }
4527
4528
4529 /* IDL: struct { */
4530 /* IDL:         lsa_LUID luid; */
4531 /* IDL:         uint32 attribute; */
4532 /* IDL: } */
4533
4534 static int
4535 lsarpc_dissect_element_lsa_LUIDAttribute_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4536 {
4537         offset = lsarpc_dissect_struct_lsa_LUID(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LUIDAttribute_luid,0);
4538
4539         return offset;
4540 }
4541
4542 static int
4543 lsarpc_dissect_element_lsa_LUIDAttribute_attribute(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4544 {
4545         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LUIDAttribute_attribute, 0);
4546
4547         return offset;
4548 }
4549
4550 int
4551 lsarpc_dissect_struct_lsa_LUIDAttribute(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4552 {
4553         proto_item *item = NULL;
4554         proto_tree *tree = NULL;
4555         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4556         int old_offset;
4557
4558         ALIGN_TO_4_BYTES;
4559
4560         old_offset = offset;
4561
4562         if (parent_tree) {
4563                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4564                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_LUIDAttribute);
4565         }
4566         
4567         offset = lsarpc_dissect_element_lsa_LUIDAttribute_luid(tvb, offset, pinfo, tree, drep);
4568
4569         offset = lsarpc_dissect_element_lsa_LUIDAttribute_attribute(tvb, offset, pinfo, tree, drep);
4570
4571
4572         proto_item_set_len(item, offset-old_offset);
4573
4574
4575         if (di->call_data->flags & DCERPC_IS_NDR64) {
4576                 ALIGN_TO_4_BYTES;
4577         }
4578
4579         return offset;
4580 }
4581
4582
4583 /* IDL: struct { */
4584 /* IDL:         [range(0,1000)] uint32 count; */
4585 /* IDL:         uint32 unknown; */
4586 /* IDL:         [size_is(count)] lsa_LUIDAttribute set[*]; */
4587 /* IDL: } */
4588
4589 static int
4590 lsarpc_dissect_element_lsa_PrivilegeSet_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4591 {
4592         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_PrivilegeSet_count, 0);
4593
4594         return offset;
4595 }
4596
4597 static int
4598 lsarpc_dissect_element_lsa_PrivilegeSet_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4599 {
4600         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_PrivilegeSet_unknown, 0);
4601
4602         return offset;
4603 }
4604
4605 static int
4606 lsarpc_dissect_element_lsa_PrivilegeSet_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4607 {
4608         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_PrivilegeSet_set_);
4609
4610         return offset;
4611 }
4612
4613 static int
4614 lsarpc_dissect_element_lsa_PrivilegeSet_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4615 {
4616         offset = lsarpc_dissect_struct_lsa_LUIDAttribute(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_PrivilegeSet_set,0);
4617
4618         return offset;
4619 }
4620
4621 int
4622 lsarpc_dissect_struct_lsa_PrivilegeSet(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4623 {
4624         proto_item *item = NULL;
4625         proto_tree *tree = NULL;
4626         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4627         int old_offset;
4628
4629         ALIGN_TO_4_BYTES;
4630
4631         old_offset = offset;
4632
4633         if (parent_tree) {
4634                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4635                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_PrivilegeSet);
4636         }
4637         
4638         offset = lsarpc_dissect_element_lsa_PrivilegeSet_count(tvb, offset, pinfo, tree, drep);
4639
4640         offset = lsarpc_dissect_element_lsa_PrivilegeSet_unknown(tvb, offset, pinfo, tree, drep);
4641
4642         offset = lsarpc_dissect_element_lsa_PrivilegeSet_set(tvb, offset, pinfo, tree, drep);
4643
4644
4645         proto_item_set_len(item, offset-old_offset);
4646
4647
4648         if (di->call_data->flags & DCERPC_IS_NDR64) {
4649                 ALIGN_TO_4_BYTES;
4650         }
4651
4652         return offset;
4653 }
4654
4655
4656 /* IDL: struct { */
4657 /* IDL:         uint3264 length; */
4658 /* IDL:         uint3264 size; */
4659 /* IDL:         [unique(1)] [length_is(length)] [size_is(size)] uint8 *data; */
4660 /* IDL: } */
4661
4662 static int
4663 lsarpc_dissect_element_lsa_DATA_BUF_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4664 {
4665         offset = dissect_ndr_uint3264(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DATA_BUF_length, NULL);
4666
4667         return offset;
4668 }
4669
4670 static int
4671 lsarpc_dissect_element_lsa_DATA_BUF_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4672 {
4673         offset = dissect_ndr_uint3264(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DATA_BUF_size, NULL);
4674
4675         return offset;
4676 }
4677
4678 static int
4679 lsarpc_dissect_element_lsa_DATA_BUF_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4680 {
4681         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DATA_BUF_data_, NDR_POINTER_UNIQUE, "Pointer to Data (uint8)",hf_lsarpc_lsa_DATA_BUF_data);
4682
4683         return offset;
4684 }
4685
4686 static int
4687 lsarpc_dissect_element_lsa_DATA_BUF_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4688 {
4689         offset = dissect_ndr_ucvarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DATA_BUF_data__);
4690
4691         return offset;
4692 }
4693
4694 static int
4695 lsarpc_dissect_element_lsa_DATA_BUF_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4696 {
4697         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DATA_BUF_data, 0);
4698
4699         return offset;
4700 }
4701
4702 int
4703 lsarpc_dissect_struct_lsa_DATA_BUF(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4704 {
4705         proto_item *item = NULL;
4706         proto_tree *tree = NULL;
4707         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4708         int old_offset;
4709
4710         ALIGN_TO_5_BYTES;
4711
4712         old_offset = offset;
4713
4714         if (parent_tree) {
4715                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4716                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DATA_BUF);
4717         }
4718         
4719         offset = lsarpc_dissect_element_lsa_DATA_BUF_length(tvb, offset, pinfo, tree, drep);
4720
4721         offset = lsarpc_dissect_element_lsa_DATA_BUF_size(tvb, offset, pinfo, tree, drep);
4722
4723         offset = lsarpc_dissect_element_lsa_DATA_BUF_data(tvb, offset, pinfo, tree, drep);
4724
4725
4726         proto_item_set_len(item, offset-old_offset);
4727
4728
4729         if (di->call_data->flags & DCERPC_IS_NDR64) {
4730                 ALIGN_TO_5_BYTES;
4731         }
4732
4733         return offset;
4734 }
4735
4736
4737 /* IDL: struct { */
4738 /* IDL:         [range(0,65536)] uint32 size; */
4739 /* IDL:         [unique(1)] [size_is(size)] uint8 *data; */
4740 /* IDL: } */
4741
4742 static int
4743 lsarpc_dissect_element_lsa_DATA_BUF2_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4744 {
4745         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DATA_BUF2_size, 0);
4746
4747         return offset;
4748 }
4749
4750 static int
4751 lsarpc_dissect_element_lsa_DATA_BUF2_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4752 {
4753         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DATA_BUF2_data_, NDR_POINTER_UNIQUE, "Pointer to Data (uint8)",hf_lsarpc_lsa_DATA_BUF2_data);
4754
4755         return offset;
4756 }
4757
4758 static int
4759 lsarpc_dissect_element_lsa_DATA_BUF2_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4760 {
4761         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DATA_BUF2_data__);
4762
4763         return offset;
4764 }
4765
4766 static int
4767 lsarpc_dissect_element_lsa_DATA_BUF2_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4768 {
4769         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DATA_BUF2_data, 0);
4770
4771         return offset;
4772 }
4773
4774 int
4775 lsarpc_dissect_struct_lsa_DATA_BUF2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4776 {
4777         proto_item *item = NULL;
4778         proto_tree *tree = NULL;
4779         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4780         int old_offset;
4781
4782         ALIGN_TO_5_BYTES;
4783
4784         old_offset = offset;
4785
4786         if (parent_tree) {
4787                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4788                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DATA_BUF2);
4789         }
4790         
4791         offset = lsarpc_dissect_element_lsa_DATA_BUF2_size(tvb, offset, pinfo, tree, drep);
4792
4793         offset = lsarpc_dissect_element_lsa_DATA_BUF2_data(tvb, offset, pinfo, tree, drep);
4794
4795
4796         proto_item_set_len(item, offset-old_offset);
4797
4798
4799         if (di->call_data->flags & DCERPC_IS_NDR64) {
4800                 ALIGN_TO_5_BYTES;
4801         }
4802
4803         return offset;
4804 }
4805
4806
4807 /* IDL: enum { */
4808 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_NAME=1, */
4809 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS=2, */
4810 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET=3, */
4811 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_PASSWORD=4, */
4812 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_BASIC=5, */
4813 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_INFO_EX=6, */
4814 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO=7, */
4815 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_FULL_INFO=8, */
4816 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL=9, */
4817 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL=10, */
4818 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL=11, */
4819 /* IDL:         LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL=12, */
4820 /* IDL:         LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES=13, */
4821 /* IDL: } */
4822
4823 int
4824 lsarpc_dissect_enum_lsa_TrustDomInfoEnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
4825 {
4826         guint1632 parameter=0;
4827         if(param){
4828                 parameter=(guint1632)*param;
4829         }
4830         offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
4831         if(param){
4832                 *param=(guint32)parameter;
4833         }
4834         return offset;
4835 }
4836
4837
4838 /* IDL: bitmap { */
4839 /* IDL:         LSA_TRUST_DIRECTION_INBOUND =  0x00000001 , */
4840 /* IDL:         LSA_TRUST_DIRECTION_OUTBOUND =  0x00000002 , */
4841 /* IDL: } */
4842
4843 int
4844 lsarpc_dissect_bitmap_lsa_TrustDirection(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4845 {
4846         proto_item *item = NULL;
4847         proto_tree *tree = NULL;
4848
4849         guint32 flags;
4850         ALIGN_TO_4_BYTES;
4851
4852         if (parent_tree) {
4853                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
4854                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_TrustDirection);
4855         }
4856
4857         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
4858         proto_item_append_text(item, ": ");
4859
4860         if (!flags)
4861                 proto_item_append_text(item, "(No values set)");
4862
4863         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustDirection_LSA_TRUST_DIRECTION_INBOUND, tvb, offset-4, 4, flags);
4864         if (flags&( 0x00000001 )){
4865                 proto_item_append_text(item, "LSA_TRUST_DIRECTION_INBOUND");
4866                 if (flags & (~( 0x00000001 )))
4867                         proto_item_append_text(item, ", ");
4868         }
4869         flags&=(~( 0x00000001 ));
4870
4871         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustDirection_LSA_TRUST_DIRECTION_OUTBOUND, tvb, offset-4, 4, flags);
4872         if (flags&( 0x00000002 )){
4873                 proto_item_append_text(item, "LSA_TRUST_DIRECTION_OUTBOUND");
4874                 if (flags & (~( 0x00000002 )))
4875                         proto_item_append_text(item, ", ");
4876         }
4877         flags&=(~( 0x00000002 ));
4878
4879         if (flags) {
4880                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
4881         }
4882
4883         return offset;
4884 }
4885
4886
4887 /* IDL: enum { */
4888 /* IDL:         LSA_TRUST_TYPE_DOWNLEVEL=0x00000001, */
4889 /* IDL:         LSA_TRUST_TYPE_UPLEVEL=0x00000002, */
4890 /* IDL:         LSA_TRUST_TYPE_MIT=0x00000003, */
4891 /* IDL: } */
4892
4893 int
4894 lsarpc_dissect_enum_lsa_TrustType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
4895 {
4896         guint32 parameter=0;
4897         if(param){
4898                 parameter=(guint32)*param;
4899         }
4900         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
4901         if(param){
4902                 *param=(guint32)parameter;
4903         }
4904         return offset;
4905 }
4906
4907
4908 /* IDL: bitmap { */
4909 /* IDL:         LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE =  0x00000001 , */
4910 /* IDL:         LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY =  0x00000002 , */
4911 /* IDL:         LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN =  0x00000004 , */
4912 /* IDL:         LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE =  0x00000008 , */
4913 /* IDL:         LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION =  0x00000010 , */
4914 /* IDL:         LSA_TRUST_ATTRIBUTE_WITHIN_FOREST =  0x00000020 , */
4915 /* IDL:         LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL =  0x00000040 , */
4916 /* IDL:         LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION =  0x00000080 , */
4917 /* IDL: } */
4918
4919 int
4920 lsarpc_dissect_bitmap_lsa_TrustAttributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4921 {
4922         proto_item *item = NULL;
4923         proto_tree *tree = NULL;
4924
4925         guint32 flags;
4926         ALIGN_TO_4_BYTES;
4927
4928         if (parent_tree) {
4929                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
4930                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_TrustAttributes);
4931         }
4932
4933         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
4934         proto_item_append_text(item, ": ");
4935
4936         if (!flags)
4937                 proto_item_append_text(item, "(No values set)");
4938
4939         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE, tvb, offset-4, 4, flags);
4940         if (flags&( 0x00000001 )){
4941                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE");
4942                 if (flags & (~( 0x00000001 )))
4943                         proto_item_append_text(item, ", ");
4944         }
4945         flags&=(~( 0x00000001 ));
4946
4947         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY, tvb, offset-4, 4, flags);
4948         if (flags&( 0x00000002 )){
4949                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY");
4950                 if (flags & (~( 0x00000002 )))
4951                         proto_item_append_text(item, ", ");
4952         }
4953         flags&=(~( 0x00000002 ));
4954
4955         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN, tvb, offset-4, 4, flags);
4956         if (flags&( 0x00000004 )){
4957                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN");
4958                 if (flags & (~( 0x00000004 )))
4959                         proto_item_append_text(item, ", ");
4960         }
4961         flags&=(~( 0x00000004 ));
4962
4963         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE, tvb, offset-4, 4, flags);
4964         if (flags&( 0x00000008 )){
4965                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE");
4966                 if (flags & (~( 0x00000008 )))
4967                         proto_item_append_text(item, ", ");
4968         }
4969         flags&=(~( 0x00000008 ));
4970
4971         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION, tvb, offset-4, 4, flags);
4972         if (flags&( 0x00000010 )){
4973                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION");
4974                 if (flags & (~( 0x00000010 )))
4975                         proto_item_append_text(item, ", ");
4976         }
4977         flags&=(~( 0x00000010 ));
4978
4979         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_WITHIN_FOREST, tvb, offset-4, 4, flags);
4980         if (flags&( 0x00000020 )){
4981                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_WITHIN_FOREST");
4982                 if (flags & (~( 0x00000020 )))
4983                         proto_item_append_text(item, ", ");
4984         }
4985         flags&=(~( 0x00000020 ));
4986
4987         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL, tvb, offset-4, 4, flags);
4988         if (flags&( 0x00000040 )){
4989                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL");
4990                 if (flags & (~( 0x00000040 )))
4991                         proto_item_append_text(item, ", ");
4992         }
4993         flags&=(~( 0x00000040 ));
4994
4995         proto_tree_add_boolean(tree, hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION, tvb, offset-4, 4, flags);
4996         if (flags&( 0x00000080 )){
4997                 proto_item_append_text(item, "LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION");
4998                 if (flags & (~( 0x00000080 )))
4999                         proto_item_append_text(item, ", ");
5000         }
5001         flags&=(~( 0x00000080 ));
5002
5003         if (flags) {
5004                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
5005         }
5006
5007         return offset;
5008 }
5009
5010
5011 /* IDL: struct { */
5012 /* IDL:         lsa_StringLarge netbios_name; */
5013 /* IDL: } */
5014
5015 static int
5016 lsarpc_dissect_element_lsa_TrustDomainInfoName_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5017 {
5018         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoName_netbios_name,0);
5019
5020         return offset;
5021 }
5022
5023 int
5024 lsarpc_dissect_struct_lsa_TrustDomainInfoName(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5025 {
5026         proto_item *item = NULL;
5027         proto_tree *tree = NULL;
5028         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5029         int old_offset;
5030
5031         ALIGN_TO_5_BYTES;
5032
5033         old_offset = offset;
5034
5035         if (parent_tree) {
5036                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5037                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoName);
5038         }
5039         
5040         offset = lsarpc_dissect_element_lsa_TrustDomainInfoName_netbios_name(tvb, offset, pinfo, tree, drep);
5041
5042
5043         proto_item_set_len(item, offset-old_offset);
5044
5045
5046         if (di->call_data->flags & DCERPC_IS_NDR64) {
5047                 ALIGN_TO_5_BYTES;
5048         }
5049
5050         return offset;
5051 }
5052
5053
5054 /* IDL: struct { */
5055 /* IDL:         uint32 entries; */
5056 /* IDL:         [unique(1)] [size_is(entries)] lsa_StringLarge *netbios_names; */
5057 /* IDL: } */
5058
5059 static int
5060 lsarpc_dissect_element_lsa_TrustDomainInfoControllers_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5061 {
5062         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoControllers_entries, 0);
5063
5064         return offset;
5065 }
5066
5067 static int
5068 lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5069 {
5070         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names_, NDR_POINTER_UNIQUE, "Pointer to Netbios Names (lsa_StringLarge)",hf_lsarpc_lsa_TrustDomainInfoControllers_netbios_names);
5071
5072         return offset;
5073 }
5074
5075 static int
5076 lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5077 {
5078         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names__);
5079
5080         return offset;
5081 }
5082
5083 static int
5084 lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5085 {
5086         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoControllers_netbios_names,0);
5087
5088         return offset;
5089 }
5090
5091 int
5092 lsarpc_dissect_struct_lsa_TrustDomainInfoControllers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5093 {
5094         proto_item *item = NULL;
5095         proto_tree *tree = NULL;
5096         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5097         int old_offset;
5098
5099         ALIGN_TO_5_BYTES;
5100
5101         old_offset = offset;
5102
5103         if (parent_tree) {
5104                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5105                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoControllers);
5106         }
5107         
5108         offset = lsarpc_dissect_element_lsa_TrustDomainInfoControllers_entries(tvb, offset, pinfo, tree, drep);
5109
5110         offset = lsarpc_dissect_element_lsa_TrustDomainInfoControllers_netbios_names(tvb, offset, pinfo, tree, drep);
5111
5112
5113         proto_item_set_len(item, offset-old_offset);
5114
5115
5116         if (di->call_data->flags & DCERPC_IS_NDR64) {
5117                 ALIGN_TO_5_BYTES;
5118         }
5119
5120         return offset;
5121 }
5122
5123
5124 /* IDL: struct { */
5125 /* IDL:         uint32 posix_offset; */
5126 /* IDL: } */
5127
5128 static int
5129 lsarpc_dissect_element_lsa_TrustDomainInfoPosixOffset_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5130 {
5131         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoPosixOffset_posix_offset, 0);
5132
5133         return offset;
5134 }
5135
5136 int
5137 lsarpc_dissect_struct_lsa_TrustDomainInfoPosixOffset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5138 {
5139         proto_item *item = NULL;
5140         proto_tree *tree = NULL;
5141         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5142         int old_offset;
5143
5144         ALIGN_TO_4_BYTES;
5145
5146         old_offset = offset;
5147
5148         if (parent_tree) {
5149                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5150                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoPosixOffset);
5151         }
5152         
5153         offset = lsarpc_dissect_element_lsa_TrustDomainInfoPosixOffset_posix_offset(tvb, offset, pinfo, tree, drep);
5154
5155
5156         proto_item_set_len(item, offset-old_offset);
5157
5158
5159         if (di->call_data->flags & DCERPC_IS_NDR64) {
5160                 ALIGN_TO_4_BYTES;
5161         }
5162
5163         return offset;
5164 }
5165
5166
5167 /* IDL: struct { */
5168 /* IDL:         [unique(1)] lsa_DATA_BUF *password; */
5169 /* IDL:         [unique(1)] lsa_DATA_BUF *old_password; */
5170 /* IDL: } */
5171
5172 static int
5173 lsarpc_dissect_element_lsa_TrustDomainInfoPassword_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5174 {
5175         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoPassword_password_, NDR_POINTER_UNIQUE, "Pointer to Password (lsa_DATA_BUF)",hf_lsarpc_lsa_TrustDomainInfoPassword_password);
5176
5177         return offset;
5178 }
5179
5180 static int
5181 lsarpc_dissect_element_lsa_TrustDomainInfoPassword_password_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5182 {
5183         offset = lsarpc_dissect_struct_lsa_DATA_BUF(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoPassword_password,0);
5184
5185         return offset;
5186 }
5187
5188 static int
5189 lsarpc_dissect_element_lsa_TrustDomainInfoPassword_old_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5190 {
5191         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoPassword_old_password_, NDR_POINTER_UNIQUE, "Pointer to Old Password (lsa_DATA_BUF)",hf_lsarpc_lsa_TrustDomainInfoPassword_old_password);
5192
5193         return offset;
5194 }
5195
5196 static int
5197 lsarpc_dissect_element_lsa_TrustDomainInfoPassword_old_password_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5198 {
5199         offset = lsarpc_dissect_struct_lsa_DATA_BUF(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoPassword_old_password,0);
5200
5201         return offset;
5202 }
5203
5204 int
5205 lsarpc_dissect_struct_lsa_TrustDomainInfoPassword(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5206 {
5207         proto_item *item = NULL;
5208         proto_tree *tree = NULL;
5209         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5210         int old_offset;
5211
5212         ALIGN_TO_5_BYTES;
5213
5214         old_offset = offset;
5215
5216         if (parent_tree) {
5217                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5218                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoPassword);
5219         }
5220         
5221         offset = lsarpc_dissect_element_lsa_TrustDomainInfoPassword_password(tvb, offset, pinfo, tree, drep);
5222
5223         offset = lsarpc_dissect_element_lsa_TrustDomainInfoPassword_old_password(tvb, offset, pinfo, tree, drep);
5224
5225
5226         proto_item_set_len(item, offset-old_offset);
5227
5228
5229         if (di->call_data->flags & DCERPC_IS_NDR64) {
5230                 ALIGN_TO_5_BYTES;
5231         }
5232
5233         return offset;
5234 }
5235
5236
5237 /* IDL: struct { */
5238 /* IDL:         lsa_String netbios_name; */
5239 /* IDL:         [unique(1)] dom_sid2 *sid; */
5240 /* IDL: } */
5241
5242 static int
5243 lsarpc_dissect_element_lsa_TrustDomainInfoBasic_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5244 {
5245         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoBasic_netbios_name,0);
5246
5247         return offset;
5248 }
5249
5250 static int
5251 lsarpc_dissect_element_lsa_TrustDomainInfoBasic_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5252 {
5253         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoBasic_sid_, NDR_POINTER_UNIQUE, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_TrustDomainInfoBasic_sid);
5254
5255         return offset;
5256 }
5257
5258 static int
5259 lsarpc_dissect_element_lsa_TrustDomainInfoBasic_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5260 {
5261         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoBasic_sid,0);
5262
5263         return offset;
5264 }
5265
5266 int
5267 lsarpc_dissect_struct_lsa_TrustDomainInfoBasic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5268 {
5269         proto_item *item = NULL;
5270         proto_tree *tree = NULL;
5271         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5272         int old_offset;
5273
5274         ALIGN_TO_5_BYTES;
5275
5276         old_offset = offset;
5277
5278         if (parent_tree) {
5279                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5280                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoBasic);
5281         }
5282         
5283         offset = lsarpc_dissect_element_lsa_TrustDomainInfoBasic_netbios_name(tvb, offset, pinfo, tree, drep);
5284
5285         offset = lsarpc_dissect_element_lsa_TrustDomainInfoBasic_sid(tvb, offset, pinfo, tree, drep);
5286
5287
5288         proto_item_set_len(item, offset-old_offset);
5289
5290
5291         if (di->call_data->flags & DCERPC_IS_NDR64) {
5292                 ALIGN_TO_5_BYTES;
5293         }
5294
5295         return offset;
5296 }
5297
5298
5299 /* IDL: struct { */
5300 /* IDL:         lsa_StringLarge domain_name; */
5301 /* IDL:         lsa_StringLarge netbios_name; */
5302 /* IDL:         [unique(1)] dom_sid2 *sid; */
5303 /* IDL:         lsa_TrustDirection trust_direction; */
5304 /* IDL:         lsa_TrustType trust_type; */
5305 /* IDL:         lsa_TrustAttributes trust_attributes; */
5306 /* IDL: } */
5307
5308 static int
5309 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5310 {
5311         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoInfoEx_domain_name,0);
5312
5313         return offset;
5314 }
5315
5316 static int
5317 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5318 {
5319         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoInfoEx_netbios_name,0);
5320
5321         return offset;
5322 }
5323
5324 static int
5325 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5326 {
5327         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_sid_, NDR_POINTER_UNIQUE, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_TrustDomainInfoInfoEx_sid);
5328
5329         return offset;
5330 }
5331
5332 static int
5333 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5334 {
5335         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoInfoEx_sid,0);
5336
5337         return offset;
5338 }
5339
5340 static int
5341 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_direction(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5342 {
5343         offset = lsarpc_dissect_bitmap_lsa_TrustDirection(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_direction, 0);
5344
5345         return offset;
5346 }
5347
5348 static int
5349 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5350 {
5351         offset = lsarpc_dissect_enum_lsa_TrustType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_type, 0);
5352
5353         return offset;
5354 }
5355
5356 static int
5357 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5358 {
5359         offset = lsarpc_dissect_bitmap_lsa_TrustAttributes(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_attributes, 0);
5360
5361         return offset;
5362 }
5363
5364 int
5365 lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5366 {
5367         proto_item *item = NULL;
5368         proto_tree *tree = NULL;
5369         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5370         int old_offset;
5371
5372         ALIGN_TO_5_BYTES;
5373
5374         old_offset = offset;
5375
5376         if (parent_tree) {
5377                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5378                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoInfoEx);
5379         }
5380         
5381         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_domain_name(tvb, offset, pinfo, tree, drep);
5382
5383         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_netbios_name(tvb, offset, pinfo, tree, drep);
5384
5385         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_sid(tvb, offset, pinfo, tree, drep);
5386
5387         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_direction(tvb, offset, pinfo, tree, drep);
5388
5389         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_type(tvb, offset, pinfo, tree, drep);
5390
5391         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx_trust_attributes(tvb, offset, pinfo, tree, drep);
5392
5393
5394         proto_item_set_len(item, offset-old_offset);
5395
5396
5397         if (di->call_data->flags & DCERPC_IS_NDR64) {
5398                 ALIGN_TO_5_BYTES;
5399         }
5400
5401         return offset;
5402 }
5403
5404
5405 /* IDL: enum { */
5406 /* IDL:         TRUST_AUTH_TYPE_NONE=0, */
5407 /* IDL:         TRUST_AUTH_TYPE_NT4OWF=1, */
5408 /* IDL:         TRUST_AUTH_TYPE_CLEAR=2, */
5409 /* IDL:         TRUST_AUTH_TYPE_VERSION=3, */
5410 /* IDL: } */
5411
5412 int
5413 lsarpc_dissect_enum_lsa_TrustAuthType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
5414 {
5415         guint32 parameter=0;
5416         if(param){
5417                 parameter=(guint32)*param;
5418         }
5419         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
5420         if(param){
5421                 *param=(guint32)parameter;
5422         }
5423         return offset;
5424 }
5425
5426
5427 /* IDL: struct { */
5428 /* IDL:         NTTIME_hyper last_update_time; */
5429 /* IDL:         lsa_TrustAuthType AuthType; */
5430 /* IDL:         lsa_DATA_BUF2 data; */
5431 /* IDL: } */
5432
5433 static int
5434 lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_last_update_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5435 {
5436         offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoBuffer_last_update_time);
5437
5438         return offset;
5439 }
5440
5441 static int
5442 lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_AuthType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5443 {
5444         offset = lsarpc_dissect_enum_lsa_TrustAuthType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoBuffer_AuthType, 0);
5445
5446         return offset;
5447 }
5448
5449 static int
5450 lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5451 {
5452         offset = lsarpc_dissect_struct_lsa_DATA_BUF2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoBuffer_data,0);
5453
5454         return offset;
5455 }
5456
5457 int
5458 lsarpc_dissect_struct_lsa_TrustDomainInfoBuffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5459 {
5460         proto_item *item = NULL;
5461         proto_tree *tree = NULL;
5462         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5463         int old_offset;
5464
5465         ALIGN_TO_8_BYTES;
5466
5467         old_offset = offset;
5468
5469         if (parent_tree) {
5470                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5471                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoBuffer);
5472         }
5473         
5474         offset = lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_last_update_time(tvb, offset, pinfo, tree, drep);
5475
5476         offset = lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_AuthType(tvb, offset, pinfo, tree, drep);
5477
5478         offset = lsarpc_dissect_element_lsa_TrustDomainInfoBuffer_data(tvb, offset, pinfo, tree, drep);
5479
5480
5481         proto_item_set_len(item, offset-old_offset);
5482
5483
5484         if (di->call_data->flags & DCERPC_IS_NDR64) {
5485                 ALIGN_TO_8_BYTES;
5486         }
5487
5488         return offset;
5489 }
5490
5491
5492 /* IDL: struct { */
5493 /* IDL:         uint32 incoming_count; */
5494 /* IDL:         [unique(1)] lsa_TrustDomainInfoBuffer *incoming_current_auth_info; */
5495 /* IDL:         [unique(1)] lsa_TrustDomainInfoBuffer *incoming_previous_auth_info; */
5496 /* IDL:         uint32 outgoing_count; */
5497 /* IDL:         [unique(1)] lsa_TrustDomainInfoBuffer *outgoing_current_auth_info; */
5498 /* IDL:         [unique(1)] lsa_TrustDomainInfoBuffer *outgoing_previous_auth_info; */
5499 /* IDL: } */
5500
5501 static int
5502 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5503 {
5504         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_count, 0);
5505
5506         return offset;
5507 }
5508
5509 static int
5510 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5511 {
5512         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info_, NDR_POINTER_UNIQUE, "Pointer to Incoming Current Auth Info (lsa_TrustDomainInfoBuffer)",hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info);
5513
5514         return offset;
5515 }
5516
5517 static int
5518 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5519 {
5520         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoBuffer(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info,0);
5521
5522         return offset;
5523 }
5524
5525 static int
5526 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5527 {
5528         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info_, NDR_POINTER_UNIQUE, "Pointer to Incoming Previous Auth Info (lsa_TrustDomainInfoBuffer)",hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info);
5529
5530         return offset;
5531 }
5532
5533 static int
5534 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5535 {
5536         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoBuffer(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info,0);
5537
5538         return offset;
5539 }
5540
5541 static int
5542 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5543 {
5544         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_count, 0);
5545
5546         return offset;
5547 }
5548
5549 static int
5550 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5551 {
5552         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info_, NDR_POINTER_UNIQUE, "Pointer to Outgoing Current Auth Info (lsa_TrustDomainInfoBuffer)",hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info);
5553
5554         return offset;
5555 }
5556
5557 static int
5558 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5559 {
5560         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoBuffer(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info,0);
5561
5562         return offset;
5563 }
5564
5565 static int
5566 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5567 {
5568         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info_, NDR_POINTER_UNIQUE, "Pointer to Outgoing Previous Auth Info (lsa_TrustDomainInfoBuffer)",hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info);
5569
5570         return offset;
5571 }
5572
5573 static int
5574 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5575 {
5576         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoBuffer(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info,0);
5577
5578         return offset;
5579 }
5580
5581 int
5582 lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5583 {
5584         proto_item *item = NULL;
5585         proto_tree *tree = NULL;
5586         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5587         int old_offset;
5588
5589         ALIGN_TO_5_BYTES;
5590
5591         old_offset = offset;
5592
5593         if (parent_tree) {
5594                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5595                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoAuthInfo);
5596         }
5597         
5598         offset = lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_count(tvb, offset, pinfo, tree, drep);
5599
5600         offset = lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info(tvb, offset, pinfo, tree, drep);
5601
5602         offset = lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info(tvb, offset, pinfo, tree, drep);
5603
5604         offset = lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_count(tvb, offset, pinfo, tree, drep);
5605
5606         offset = lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info(tvb, offset, pinfo, tree, drep);
5607
5608         offset = lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info(tvb, offset, pinfo, tree, drep);
5609
5610
5611         proto_item_set_len(item, offset-old_offset);
5612
5613
5614         if (di->call_data->flags & DCERPC_IS_NDR64) {
5615                 ALIGN_TO_5_BYTES;
5616         }
5617
5618         return offset;
5619 }
5620
5621
5622 /* IDL: struct { */
5623 /* IDL:         lsa_TrustDomainInfoInfoEx info_ex; */
5624 /* IDL:         lsa_TrustDomainInfoPosixOffset posix_offset; */
5625 /* IDL:         lsa_TrustDomainInfoAuthInfo auth_info; */
5626 /* IDL: } */
5627
5628 static int
5629 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5630 {
5631         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfo_info_ex,0);
5632
5633         return offset;
5634 }
5635
5636 static int
5637 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5638 {
5639         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoPosixOffset(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfo_posix_offset,0);
5640
5641         return offset;
5642 }
5643
5644 static int
5645 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5646 {
5647         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfo_auth_info,0);
5648
5649         return offset;
5650 }
5651
5652 int
5653 lsarpc_dissect_struct_lsa_TrustDomainInfoFullInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5654 {
5655         proto_item *item = NULL;
5656         proto_tree *tree = NULL;
5657         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5658         int old_offset;
5659
5660         ALIGN_TO_5_BYTES;
5661
5662         old_offset = offset;
5663
5664         if (parent_tree) {
5665                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5666                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoFullInfo);
5667         }
5668         
5669         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_info_ex(tvb, offset, pinfo, tree, drep);
5670
5671         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_posix_offset(tvb, offset, pinfo, tree, drep);
5672
5673         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo_auth_info(tvb, offset, pinfo, tree, drep);
5674
5675
5676         proto_item_set_len(item, offset-old_offset);
5677
5678
5679         if (di->call_data->flags & DCERPC_IS_NDR64) {
5680                 ALIGN_TO_5_BYTES;
5681         }
5682
5683         return offset;
5684 }
5685
5686
5687 /* IDL: struct { */
5688 /* IDL:         lsa_DATA_BUF2 auth_blob; */
5689 /* IDL: } */
5690
5691 static int
5692 lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfoInternal_auth_blob(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5693 {
5694         offset = lsarpc_dissect_struct_lsa_DATA_BUF2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoAuthInfoInternal_auth_blob,0);
5695
5696         return offset;
5697 }
5698
5699 int
5700 lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfoInternal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5701 {
5702         proto_item *item = NULL;
5703         proto_tree *tree = NULL;
5704         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5705         int old_offset;
5706
5707         ALIGN_TO_5_BYTES;
5708
5709         old_offset = offset;
5710
5711         if (parent_tree) {
5712                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5713                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoAuthInfoInternal);
5714         }
5715         
5716         offset = lsarpc_dissect_element_lsa_TrustDomainInfoAuthInfoInternal_auth_blob(tvb, offset, pinfo, tree, drep);
5717
5718
5719         proto_item_set_len(item, offset-old_offset);
5720
5721
5722         if (di->call_data->flags & DCERPC_IS_NDR64) {
5723                 ALIGN_TO_5_BYTES;
5724         }
5725
5726         return offset;
5727 }
5728
5729
5730 /* IDL: struct { */
5731 /* IDL:         lsa_TrustDomainInfoInfoEx info_ex; */
5732 /* IDL:         lsa_TrustDomainInfoPosixOffset posix_offset; */
5733 /* IDL:         lsa_TrustDomainInfoAuthInfoInternal auth_info; */
5734 /* IDL: } */
5735
5736 static int
5737 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5738 {
5739         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_info_ex,0);
5740
5741         return offset;
5742 }
5743
5744 static int
5745 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5746 {
5747         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoPosixOffset(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_posix_offset,0);
5748
5749         return offset;
5750 }
5751
5752 static int
5753 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5754 {
5755         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfoInternal(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_auth_info,0);
5756
5757         return offset;
5758 }
5759
5760 int
5761 lsarpc_dissect_struct_lsa_TrustDomainInfoFullInfoInternal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5762 {
5763         proto_item *item = NULL;
5764         proto_tree *tree = NULL;
5765         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5766         int old_offset;
5767
5768         ALIGN_TO_5_BYTES;
5769
5770         old_offset = offset;
5771
5772         if (parent_tree) {
5773                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5774                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoFullInfoInternal);
5775         }
5776         
5777         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_info_ex(tvb, offset, pinfo, tree, drep);
5778
5779         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_posix_offset(tvb, offset, pinfo, tree, drep);
5780
5781         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfoInternal_auth_info(tvb, offset, pinfo, tree, drep);
5782
5783
5784         proto_item_set_len(item, offset-old_offset);
5785
5786
5787         if (di->call_data->flags & DCERPC_IS_NDR64) {
5788                 ALIGN_TO_5_BYTES;
5789         }
5790
5791         return offset;
5792 }
5793
5794
5795 /* IDL: struct { */
5796 /* IDL:         lsa_TrustDomainInfoInfoEx info_ex; */
5797 /* IDL:         uint32 forest_trust_length; */
5798 /* IDL:         [unique(1)] [size_is(forest_trust_length)] uint8 *forest_trust_data; */
5799 /* IDL: } */
5800
5801 static int
5802 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5803 {
5804         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_info_ex,0);
5805
5806         return offset;
5807 }
5808
5809 static int
5810 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5811 {
5812         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_length, 0);
5813
5814         return offset;
5815 }
5816
5817 static int
5818 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5819 {
5820         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data_, NDR_POINTER_UNIQUE, "Pointer to Forest Trust Data (uint8)",hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data);
5821
5822         return offset;
5823 }
5824
5825 static int
5826 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5827 {
5828         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data__);
5829
5830         return offset;
5831 }
5832
5833 static int
5834 lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5835 {
5836         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data, 0);
5837
5838         return offset;
5839 }
5840
5841 int
5842 lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx2Internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5843 {
5844         proto_item *item = NULL;
5845         proto_tree *tree = NULL;
5846         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5847         int old_offset;
5848
5849         ALIGN_TO_5_BYTES;
5850
5851         old_offset = offset;
5852
5853         if (parent_tree) {
5854                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5855                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoInfoEx2Internal);
5856         }
5857         
5858         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_info_ex(tvb, offset, pinfo, tree, drep);
5859
5860         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_length(tvb, offset, pinfo, tree, drep);
5861
5862         offset = lsarpc_dissect_element_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data(tvb, offset, pinfo, tree, drep);
5863
5864
5865         proto_item_set_len(item, offset-old_offset);
5866
5867
5868         if (di->call_data->flags & DCERPC_IS_NDR64) {
5869                 ALIGN_TO_5_BYTES;
5870         }
5871
5872         return offset;
5873 }
5874
5875
5876 /* IDL: struct { */
5877 /* IDL:         lsa_TrustDomainInfoInfoEx2Internal info; */
5878 /* IDL:         lsa_TrustDomainInfoPosixOffset posix_offset; */
5879 /* IDL:         lsa_TrustDomainInfoAuthInfo auth_info; */
5880 /* IDL: } */
5881
5882 static int
5883 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5884 {
5885         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx2Internal(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_info,0);
5886
5887         return offset;
5888 }
5889
5890 static int
5891 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5892 {
5893         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoPosixOffset(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_posix_offset,0);
5894
5895         return offset;
5896 }
5897
5898 static int
5899 lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5900 {
5901         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_auth_info,0);
5902
5903         return offset;
5904 }
5905
5906 int
5907 lsarpc_dissect_struct_lsa_TrustDomainInfoFullInfo2Internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5908 {
5909         proto_item *item = NULL;
5910         proto_tree *tree = NULL;
5911         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5912         int old_offset;
5913
5914         ALIGN_TO_5_BYTES;
5915
5916         old_offset = offset;
5917
5918         if (parent_tree) {
5919                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5920                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoFullInfo2Internal);
5921         }
5922         
5923         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_info(tvb, offset, pinfo, tree, drep);
5924
5925         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_posix_offset(tvb, offset, pinfo, tree, drep);
5926
5927         offset = lsarpc_dissect_element_lsa_TrustDomainInfoFullInfo2Internal_auth_info(tvb, offset, pinfo, tree, drep);
5928
5929
5930         proto_item_set_len(item, offset-old_offset);
5931
5932
5933         if (di->call_data->flags & DCERPC_IS_NDR64) {
5934                 ALIGN_TO_5_BYTES;
5935         }
5936
5937         return offset;
5938 }
5939
5940
5941 /* IDL: struct { */
5942 /* IDL:         kerb_EncTypes enc_types; */
5943 /* IDL: } */
5944
5945 static int
5946 lsarpc_dissect_element_lsa_TrustDomainInfoSupportedEncTypes_enc_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
5947 {
5948         offset = lsarpc_dissect_bitmap_kerb_EncTypes(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TrustDomainInfoSupportedEncTypes_enc_types, 0);
5949
5950         return offset;
5951 }
5952
5953 int
5954 lsarpc_dissect_struct_lsa_TrustDomainInfoSupportedEncTypes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
5955 {
5956         proto_item *item = NULL;
5957         proto_tree *tree = NULL;
5958         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
5959         int old_offset;
5960
5961         ALIGN_TO_4_BYTES;
5962
5963         old_offset = offset;
5964
5965         if (parent_tree) {
5966                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
5967                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustDomainInfoSupportedEncTypes);
5968         }
5969         
5970         offset = lsarpc_dissect_element_lsa_TrustDomainInfoSupportedEncTypes_enc_types(tvb, offset, pinfo, tree, drep);
5971
5972
5973         proto_item_set_len(item, offset-old_offset);
5974
5975
5976         if (di->call_data->flags & DCERPC_IS_NDR64) {
5977                 ALIGN_TO_4_BYTES;
5978         }
5979
5980         return offset;
5981 }
5982
5983
5984 /* IDL: [switch_type(lsa_TrustDomInfoEnum)] union { */
5985 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_NAME)] [case(LSA_TRUSTED_DOMAIN_INFO_NAME)] lsa_TrustDomainInfoName name; */
5986 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS)] [case(LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS)] lsa_TrustDomainInfoControllers controllers; */
5987 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET)] [case(LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET)] lsa_TrustDomainInfoPosixOffset posix_offset; */
5988 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_PASSWORD)] [case(LSA_TRUSTED_DOMAIN_INFO_PASSWORD)] lsa_TrustDomainInfoPassword password; */
5989 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_BASIC)] [case(LSA_TRUSTED_DOMAIN_INFO_BASIC)] lsa_TrustDomainInfoBasic info_basic; */
5990 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX)] [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX)] lsa_TrustDomainInfoInfoEx info_ex; */
5991 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO)] [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO)] lsa_TrustDomainInfoAuthInfo auth_info; */
5992 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO)] [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO)] lsa_TrustDomainInfoFullInfo full_info; */
5993 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL)] [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL)] lsa_TrustDomainInfoAuthInfoInternal auth_info_internal; */
5994 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL)] [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL)] lsa_TrustDomainInfoFullInfoInternal full_info_internal; */
5995 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL)] [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL)] lsa_TrustDomainInfoInfoEx2Internal info_ex2_internal; */
5996 /* IDL: [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL)] [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL)] lsa_TrustDomainInfoFullInfo2Internal full_info2_internal; */
5997 /* IDL: [case(LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES)] [case(LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES)] lsa_TrustDomainInfoSupportedEncTypes enc_types; */
5998 /* IDL: } */
5999
6000 static int
6001 lsarpc_dissect_element_lsa_TrustedDomainInfo_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6002 {
6003         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoName(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_name,0);
6004
6005         return offset;
6006 }
6007
6008 static int
6009 lsarpc_dissect_element_lsa_TrustedDomainInfo_controllers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6010 {
6011         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoControllers(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_controllers,0);
6012
6013         return offset;
6014 }
6015
6016 static int
6017 lsarpc_dissect_element_lsa_TrustedDomainInfo_posix_offset(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6018 {
6019         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoPosixOffset(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_posix_offset,0);
6020
6021         return offset;
6022 }
6023
6024 static int
6025 lsarpc_dissect_element_lsa_TrustedDomainInfo_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6026 {
6027         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoPassword(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_password,0);
6028
6029         return offset;
6030 }
6031
6032 static int
6033 lsarpc_dissect_element_lsa_TrustedDomainInfo_info_basic(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6034 {
6035         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoBasic(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_info_basic,0);
6036
6037         return offset;
6038 }
6039
6040 static int
6041 lsarpc_dissect_element_lsa_TrustedDomainInfo_info_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6042 {
6043         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_info_ex,0);
6044
6045         return offset;
6046 }
6047
6048 static int
6049 lsarpc_dissect_element_lsa_TrustedDomainInfo_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6050 {
6051         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_auth_info,0);
6052
6053         return offset;
6054 }
6055
6056 static int
6057 lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6058 {
6059         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoFullInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_full_info,0);
6060
6061         return offset;
6062 }
6063
6064 static int
6065 lsarpc_dissect_element_lsa_TrustedDomainInfo_auth_info_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6066 {
6067         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfoInternal(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_auth_info_internal,0);
6068
6069         return offset;
6070 }
6071
6072 static int
6073 lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6074 {
6075         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoFullInfoInternal(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_full_info_internal,0);
6076
6077         return offset;
6078 }
6079
6080 static int
6081 lsarpc_dissect_element_lsa_TrustedDomainInfo_info_ex2_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6082 {
6083         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx2Internal(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_info_ex2_internal,0);
6084
6085         return offset;
6086 }
6087
6088 static int
6089 lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info2_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6090 {
6091         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoFullInfo2Internal(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_full_info2_internal,0);
6092
6093         return offset;
6094 }
6095
6096 static int
6097 lsarpc_dissect_element_lsa_TrustedDomainInfo_enc_types(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6098 {
6099         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoSupportedEncTypes(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TrustedDomainInfo_enc_types,0);
6100
6101         return offset;
6102 }
6103
6104 static int
6105 lsarpc_dissect_lsa_TrustedDomainInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6106 {
6107         proto_item *item = NULL;
6108         proto_tree *tree = NULL;
6109         int old_offset;
6110         guint1632 level;
6111
6112         old_offset = offset;
6113         if (parent_tree) {
6114                 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "lsa_TrustedDomainInfo");
6115                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TrustedDomainInfo);
6116         }
6117
6118         offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, drep, hf_index, &level);
6119         ALIGN_TO_5_BYTES;
6120
6121         switch(level) {
6122                 case LSA_TRUSTED_DOMAIN_INFO_NAME:
6123                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_name(tvb, offset, pinfo, tree, drep);
6124                 break;
6125
6126                 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS:
6127                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_controllers(tvb, offset, pinfo, tree, drep);
6128                 break;
6129
6130                 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
6131                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_posix_offset(tvb, offset, pinfo, tree, drep);
6132                 break;
6133
6134                 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
6135                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_password(tvb, offset, pinfo, tree, drep);
6136                 break;
6137
6138                 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
6139                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_info_basic(tvb, offset, pinfo, tree, drep);
6140                 break;
6141
6142                 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
6143                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_info_ex(tvb, offset, pinfo, tree, drep);
6144                 break;
6145
6146                 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
6147                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_auth_info(tvb, offset, pinfo, tree, drep);
6148                 break;
6149
6150                 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
6151                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info(tvb, offset, pinfo, tree, drep);
6152                 break;
6153
6154                 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL:
6155                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_auth_info_internal(tvb, offset, pinfo, tree, drep);
6156                 break;
6157
6158                 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL:
6159                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info_internal(tvb, offset, pinfo, tree, drep);
6160                 break;
6161
6162                 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL:
6163                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_info_ex2_internal(tvb, offset, pinfo, tree, drep);
6164                 break;
6165
6166                 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL:
6167                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_full_info2_internal(tvb, offset, pinfo, tree, drep);
6168                 break;
6169
6170                 case LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES:
6171                         offset = lsarpc_dissect_element_lsa_TrustedDomainInfo_enc_types(tvb, offset, pinfo, tree, drep);
6172                 break;
6173         }
6174         proto_item_set_len(item, offset-old_offset);
6175
6176
6177         return offset;
6178 }
6179
6180 /* IDL: struct { */
6181 /* IDL:         [unique(1)] lsa_DATA_BUF *buf; */
6182 /* IDL: } */
6183
6184 static int
6185 lsarpc_dissect_element_lsa_DATA_BUF_PTR_buf(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6186 {
6187         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DATA_BUF_PTR_buf_, NDR_POINTER_UNIQUE, "Pointer to Buf (lsa_DATA_BUF)",hf_lsarpc_lsa_DATA_BUF_PTR_buf);
6188
6189         return offset;
6190 }
6191
6192 static int
6193 lsarpc_dissect_element_lsa_DATA_BUF_PTR_buf_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6194 {
6195         offset = lsarpc_dissect_struct_lsa_DATA_BUF(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DATA_BUF_PTR_buf,0);
6196
6197         return offset;
6198 }
6199
6200 int
6201 lsarpc_dissect_struct_lsa_DATA_BUF_PTR(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6202 {
6203         proto_item *item = NULL;
6204         proto_tree *tree = NULL;
6205         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6206         int old_offset;
6207
6208         ALIGN_TO_5_BYTES;
6209
6210         old_offset = offset;
6211
6212         if (parent_tree) {
6213                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6214                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DATA_BUF_PTR);
6215         }
6216         
6217         offset = lsarpc_dissect_element_lsa_DATA_BUF_PTR_buf(tvb, offset, pinfo, tree, drep);
6218
6219
6220         proto_item_set_len(item, offset-old_offset);
6221
6222
6223         if (di->call_data->flags & DCERPC_IS_NDR64) {
6224                 ALIGN_TO_5_BYTES;
6225         }
6226
6227         return offset;
6228 }
6229
6230
6231 /* IDL: struct { */
6232 /* IDL:         [unique(1)] [charset(UTF16)] uint16 *name; */
6233 /* IDL: } */
6234
6235 static int
6236 lsarpc_dissect_element_lsa_RightAttribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6237 {
6238         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RightAttribute_name_, NDR_POINTER_UNIQUE, "Pointer to Name (uint16)",hf_lsarpc_lsa_RightAttribute_name);
6239
6240         return offset;
6241 }
6242
6243 static int
6244 lsarpc_dissect_element_lsa_RightAttribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6245 {
6246         char *data;
6247
6248         offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_lsarpc_lsa_RightAttribute_name, FALSE, &data);
6249         proto_item_append_text(tree, ": %s", data);
6250
6251         return offset;
6252 }
6253
6254 int
6255 lsarpc_dissect_struct_lsa_RightAttribute(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6256 {
6257         proto_item *item = NULL;
6258         proto_tree *tree = NULL;
6259         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6260         int old_offset;
6261
6262         ALIGN_TO_5_BYTES;
6263
6264         old_offset = offset;
6265
6266         if (parent_tree) {
6267                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6268                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_RightAttribute);
6269         }
6270         
6271         offset = lsarpc_dissect_element_lsa_RightAttribute_name(tvb, offset, pinfo, tree, drep);
6272
6273
6274         proto_item_set_len(item, offset-old_offset);
6275
6276
6277         if (di->call_data->flags & DCERPC_IS_NDR64) {
6278                 ALIGN_TO_5_BYTES;
6279         }
6280
6281         return offset;
6282 }
6283
6284
6285 /* IDL: struct { */
6286 /* IDL:         [range(0,256)] uint32 count; */
6287 /* IDL:         [unique(1)] [size_is(count)] lsa_StringLarge *names; */
6288 /* IDL: } */
6289
6290 static int
6291 lsarpc_dissect_element_lsa_RightSet_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6292 {
6293         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RightSet_count, 0);
6294
6295         return offset;
6296 }
6297
6298 static int
6299 lsarpc_dissect_element_lsa_RightSet_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6300 {
6301         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RightSet_names_, NDR_POINTER_UNIQUE, "Pointer to Names (lsa_StringLarge)",hf_lsarpc_lsa_RightSet_names);
6302
6303         return offset;
6304 }
6305
6306 static int
6307 lsarpc_dissect_element_lsa_RightSet_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6308 {
6309         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RightSet_names__);
6310
6311         return offset;
6312 }
6313
6314 static int
6315 lsarpc_dissect_element_lsa_RightSet_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6316 {
6317         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_RightSet_names,0);
6318
6319         return offset;
6320 }
6321
6322 int
6323 lsarpc_dissect_struct_lsa_RightSet(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6324 {
6325         proto_item *item = NULL;
6326         proto_tree *tree = NULL;
6327         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6328         int old_offset;
6329
6330         ALIGN_TO_5_BYTES;
6331
6332         old_offset = offset;
6333
6334         if (parent_tree) {
6335                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6336                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_RightSet);
6337         }
6338         
6339         offset = lsarpc_dissect_element_lsa_RightSet_count(tvb, offset, pinfo, tree, drep);
6340
6341         offset = lsarpc_dissect_element_lsa_RightSet_names(tvb, offset, pinfo, tree, drep);
6342
6343
6344         proto_item_set_len(item, offset-old_offset);
6345
6346
6347         if (di->call_data->flags & DCERPC_IS_NDR64) {
6348                 ALIGN_TO_5_BYTES;
6349         }
6350
6351         return offset;
6352 }
6353
6354
6355 /* IDL: struct { */
6356 /* IDL:         uint32 count; */
6357 /* IDL:         [unique(1)] [size_is(count)] lsa_TrustDomainInfoInfoEx *domains; */
6358 /* IDL: } */
6359
6360 static int
6361 lsarpc_dissect_element_lsa_DomainListEx_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6362 {
6363         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainListEx_count, 0);
6364
6365         return offset;
6366 }
6367
6368 static int
6369 lsarpc_dissect_element_lsa_DomainListEx_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6370 {
6371         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DomainListEx_domains_, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_TrustDomainInfoInfoEx)",hf_lsarpc_lsa_DomainListEx_domains);
6372
6373         return offset;
6374 }
6375
6376 static int
6377 lsarpc_dissect_element_lsa_DomainListEx_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6378 {
6379         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DomainListEx_domains__);
6380
6381         return offset;
6382 }
6383
6384 static int
6385 lsarpc_dissect_element_lsa_DomainListEx_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6386 {
6387         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DomainListEx_domains,0);
6388
6389         return offset;
6390 }
6391
6392 int
6393 lsarpc_dissect_struct_lsa_DomainListEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6394 {
6395         proto_item *item = NULL;
6396         proto_tree *tree = NULL;
6397         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6398         int old_offset;
6399
6400         ALIGN_TO_5_BYTES;
6401
6402         old_offset = offset;
6403
6404         if (parent_tree) {
6405                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6406                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DomainListEx);
6407         }
6408         
6409         offset = lsarpc_dissect_element_lsa_DomainListEx_count(tvb, offset, pinfo, tree, drep);
6410
6411         offset = lsarpc_dissect_element_lsa_DomainListEx_domains(tvb, offset, pinfo, tree, drep);
6412
6413
6414         proto_item_set_len(item, offset-old_offset);
6415
6416
6417         if (di->call_data->flags & DCERPC_IS_NDR64) {
6418                 ALIGN_TO_5_BYTES;
6419         }
6420
6421         return offset;
6422 }
6423
6424
6425 /* IDL: bitmap { */
6426 /* IDL:         LSA_POLICY_KERBEROS_VALIDATE_CLIENT =  0x00000080 , */
6427 /* IDL: } */
6428
6429 int
6430 lsarpc_dissect_bitmap_lsa_krbAuthenticationOptions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6431 {
6432         proto_item *item = NULL;
6433         proto_tree *tree = NULL;
6434
6435         guint32 flags;
6436         ALIGN_TO_4_BYTES;
6437
6438         if (parent_tree) {
6439                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
6440                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_krbAuthenticationOptions);
6441         }
6442
6443         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
6444         proto_item_append_text(item, ": ");
6445
6446         if (!flags)
6447                 proto_item_append_text(item, "(No values set)");
6448
6449         proto_tree_add_boolean(tree, hf_lsarpc_lsa_krbAuthenticationOptions_LSA_POLICY_KERBEROS_VALIDATE_CLIENT, tvb, offset-4, 4, flags);
6450         if (flags&( 0x00000080 )){
6451                 proto_item_append_text(item, "LSA_POLICY_KERBEROS_VALIDATE_CLIENT");
6452                 if (flags & (~( 0x00000080 )))
6453                         proto_item_append_text(item, ", ");
6454         }
6455         flags&=(~( 0x00000080 ));
6456
6457         if (flags) {
6458                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
6459         }
6460
6461         return offset;
6462 }
6463
6464
6465 /* IDL: struct { */
6466 /* IDL:         lsa_krbAuthenticationOptions authentication_options; */
6467 /* IDL:         hyper service_tkt_lifetime; */
6468 /* IDL:         hyper user_tkt_lifetime; */
6469 /* IDL:         hyper user_tkt_renewaltime; */
6470 /* IDL:         hyper clock_skew; */
6471 /* IDL:         hyper reserved; */
6472 /* IDL: } */
6473
6474 static int
6475 lsarpc_dissect_element_lsa_DomainInfoKerberos_authentication_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6476 {
6477         offset = lsarpc_dissect_bitmap_lsa_krbAuthenticationOptions(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoKerberos_authentication_options, 0);
6478
6479         return offset;
6480 }
6481
6482 static int
6483 lsarpc_dissect_element_lsa_DomainInfoKerberos_service_tkt_lifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6484 {
6485         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoKerberos_service_tkt_lifetime, NULL);
6486
6487         return offset;
6488 }
6489
6490 static int
6491 lsarpc_dissect_element_lsa_DomainInfoKerberos_user_tkt_lifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6492 {
6493         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoKerberos_user_tkt_lifetime, NULL);
6494
6495         return offset;
6496 }
6497
6498 static int
6499 lsarpc_dissect_element_lsa_DomainInfoKerberos_user_tkt_renewaltime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6500 {
6501         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoKerberos_user_tkt_renewaltime, NULL);
6502
6503         return offset;
6504 }
6505
6506 static int
6507 lsarpc_dissect_element_lsa_DomainInfoKerberos_clock_skew(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6508 {
6509         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoKerberos_clock_skew, NULL);
6510
6511         return offset;
6512 }
6513
6514 static int
6515 lsarpc_dissect_element_lsa_DomainInfoKerberos_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6516 {
6517         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoKerberos_reserved, NULL);
6518
6519         return offset;
6520 }
6521
6522 int
6523 lsarpc_dissect_struct_lsa_DomainInfoKerberos(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6524 {
6525         proto_item *item = NULL;
6526         proto_tree *tree = NULL;
6527         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6528         int old_offset;
6529
6530         ALIGN_TO_8_BYTES;
6531
6532         old_offset = offset;
6533
6534         if (parent_tree) {
6535                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6536                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DomainInfoKerberos);
6537         }
6538         
6539         offset = lsarpc_dissect_element_lsa_DomainInfoKerberos_authentication_options(tvb, offset, pinfo, tree, drep);
6540
6541         offset = lsarpc_dissect_element_lsa_DomainInfoKerberos_service_tkt_lifetime(tvb, offset, pinfo, tree, drep);
6542
6543         offset = lsarpc_dissect_element_lsa_DomainInfoKerberos_user_tkt_lifetime(tvb, offset, pinfo, tree, drep);
6544
6545         offset = lsarpc_dissect_element_lsa_DomainInfoKerberos_user_tkt_renewaltime(tvb, offset, pinfo, tree, drep);
6546
6547         offset = lsarpc_dissect_element_lsa_DomainInfoKerberos_clock_skew(tvb, offset, pinfo, tree, drep);
6548
6549         offset = lsarpc_dissect_element_lsa_DomainInfoKerberos_reserved(tvb, offset, pinfo, tree, drep);
6550
6551
6552         proto_item_set_len(item, offset-old_offset);
6553
6554
6555         if (di->call_data->flags & DCERPC_IS_NDR64) {
6556                 ALIGN_TO_8_BYTES;
6557         }
6558
6559         return offset;
6560 }
6561
6562
6563 /* IDL: struct { */
6564 /* IDL:         uint32 blob_size; */
6565 /* IDL:         [unique(1)] [size_is(blob_size)] uint8 *efs_blob; */
6566 /* IDL: } */
6567
6568 static int
6569 lsarpc_dissect_element_lsa_DomainInfoEfs_blob_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6570 {
6571         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoEfs_blob_size, 0);
6572
6573         return offset;
6574 }
6575
6576 static int
6577 lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6578 {
6579         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob_, NDR_POINTER_UNIQUE, "Pointer to Efs Blob (uint8)",hf_lsarpc_lsa_DomainInfoEfs_efs_blob);
6580
6581         return offset;
6582 }
6583
6584 static int
6585 lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6586 {
6587         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob__);
6588
6589         return offset;
6590 }
6591
6592 static int
6593 lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6594 {
6595         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DomainInfoEfs_efs_blob, 0);
6596
6597         return offset;
6598 }
6599
6600 int
6601 lsarpc_dissect_struct_lsa_DomainInfoEfs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6602 {
6603         proto_item *item = NULL;
6604         proto_tree *tree = NULL;
6605         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6606         int old_offset;
6607
6608         ALIGN_TO_5_BYTES;
6609
6610         old_offset = offset;
6611
6612         if (parent_tree) {
6613                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6614                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DomainInfoEfs);
6615         }
6616         
6617         offset = lsarpc_dissect_element_lsa_DomainInfoEfs_blob_size(tvb, offset, pinfo, tree, drep);
6618
6619         offset = lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob(tvb, offset, pinfo, tree, drep);
6620
6621
6622         proto_item_set_len(item, offset-old_offset);
6623
6624
6625         if (di->call_data->flags & DCERPC_IS_NDR64) {
6626                 ALIGN_TO_5_BYTES;
6627         }
6628
6629         return offset;
6630 }
6631
6632
6633 /* IDL: enum { */
6634 /* IDL:         LSA_DOMAIN_INFO_POLICY_EFS=2, */
6635 /* IDL:         LSA_DOMAIN_INFO_POLICY_KERBEROS=3, */
6636 /* IDL: } */
6637
6638 int
6639 lsarpc_dissect_enum_lsa_DomainInfoEnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
6640 {
6641         guint1632 parameter=0;
6642         if(param){
6643                 parameter=(guint1632)*param;
6644         }
6645         offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
6646         if(param){
6647                 *param=(guint32)parameter;
6648         }
6649         return offset;
6650 }
6651
6652
6653 /* IDL: [switch_type(uint16)] union { */
6654 /* IDL: [case(LSA_DOMAIN_INFO_POLICY_EFS)] [case(LSA_DOMAIN_INFO_POLICY_EFS)] lsa_DomainInfoEfs efs_info; */
6655 /* IDL: [case(LSA_DOMAIN_INFO_POLICY_KERBEROS)] [case(LSA_DOMAIN_INFO_POLICY_KERBEROS)] lsa_DomainInfoKerberos kerberos_info; */
6656 /* IDL: } */
6657
6658 static int
6659 lsarpc_dissect_element_lsa_DomainInformationPolicy_efs_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6660 {
6661         offset = lsarpc_dissect_struct_lsa_DomainInfoEfs(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DomainInformationPolicy_efs_info,0);
6662
6663         return offset;
6664 }
6665
6666 static int
6667 lsarpc_dissect_element_lsa_DomainInformationPolicy_kerberos_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6668 {
6669         offset = lsarpc_dissect_struct_lsa_DomainInfoKerberos(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DomainInformationPolicy_kerberos_info,0);
6670
6671         return offset;
6672 }
6673
6674 static int
6675 lsarpc_dissect_lsa_DomainInformationPolicy(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6676 {
6677         proto_item *item = NULL;
6678         proto_tree *tree = NULL;
6679         int old_offset;
6680         guint16 level;
6681
6682         old_offset = offset;
6683         if (parent_tree) {
6684                 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "lsa_DomainInformationPolicy");
6685                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_DomainInformationPolicy);
6686         }
6687
6688         offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep, hf_index, &level);
6689         ALIGN_TO_8_BYTES;
6690
6691         switch(level) {
6692                 case LSA_DOMAIN_INFO_POLICY_EFS:
6693                         offset = lsarpc_dissect_element_lsa_DomainInformationPolicy_efs_info(tvb, offset, pinfo, tree, drep);
6694                 break;
6695
6696                 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
6697                         offset = lsarpc_dissect_element_lsa_DomainInformationPolicy_kerberos_info(tvb, offset, pinfo, tree, drep);
6698                 break;
6699         }
6700         proto_item_set_len(item, offset-old_offset);
6701
6702
6703         return offset;
6704 }
6705
6706 /* IDL: struct { */
6707 /* IDL:         lsa_SidType sid_type; */
6708 /* IDL:         lsa_String name; */
6709 /* IDL:         uint32 sid_index; */
6710 /* IDL:         uint32 unknown; */
6711 /* IDL: } */
6712
6713 static int
6714 lsarpc_dissect_element_lsa_TranslatedName2_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6715 {
6716         offset = lsarpc_dissect_enum_lsa_SidType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedName2_sid_type, 0);
6717
6718         return offset;
6719 }
6720
6721 static int
6722 lsarpc_dissect_element_lsa_TranslatedName2_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6723 {
6724         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TranslatedName2_name,0);
6725
6726         return offset;
6727 }
6728
6729 static int
6730 lsarpc_dissect_element_lsa_TranslatedName2_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6731 {
6732         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedName2_sid_index, 0);
6733
6734         return offset;
6735 }
6736
6737 static int
6738 lsarpc_dissect_element_lsa_TranslatedName2_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6739 {
6740         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedName2_unknown, 0);
6741
6742         return offset;
6743 }
6744
6745 int
6746 lsarpc_dissect_struct_lsa_TranslatedName2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6747 {
6748         proto_item *item = NULL;
6749         proto_tree *tree = NULL;
6750         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6751         int old_offset;
6752
6753         ALIGN_TO_5_BYTES;
6754
6755         old_offset = offset;
6756
6757         if (parent_tree) {
6758                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6759                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TranslatedName2);
6760         }
6761         
6762         offset = lsarpc_dissect_element_lsa_TranslatedName2_sid_type(tvb, offset, pinfo, tree, drep);
6763
6764         offset = lsarpc_dissect_element_lsa_TranslatedName2_name(tvb, offset, pinfo, tree, drep);
6765
6766         offset = lsarpc_dissect_element_lsa_TranslatedName2_sid_index(tvb, offset, pinfo, tree, drep);
6767
6768         offset = lsarpc_dissect_element_lsa_TranslatedName2_unknown(tvb, offset, pinfo, tree, drep);
6769
6770
6771         proto_item_set_len(item, offset-old_offset);
6772
6773
6774         if (di->call_data->flags & DCERPC_IS_NDR64) {
6775                 ALIGN_TO_5_BYTES;
6776         }
6777
6778         return offset;
6779 }
6780
6781
6782 /* IDL: struct { */
6783 /* IDL:         [range(0,1000)] uint32 count; */
6784 /* IDL:         [unique(1)] [size_is(count)] lsa_TranslatedName2 *names; */
6785 /* IDL: } */
6786
6787 static int
6788 lsarpc_dissect_element_lsa_TransNameArray2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6789 {
6790         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TransNameArray2_count, 0);
6791
6792         return offset;
6793 }
6794
6795 static int
6796 lsarpc_dissect_element_lsa_TransNameArray2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6797 {
6798         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransNameArray2_names_, NDR_POINTER_UNIQUE, "Pointer to Names (lsa_TranslatedName2)",hf_lsarpc_lsa_TransNameArray2_names);
6799
6800         return offset;
6801 }
6802
6803 static int
6804 lsarpc_dissect_element_lsa_TransNameArray2_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6805 {
6806         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransNameArray2_names__);
6807
6808         return offset;
6809 }
6810
6811 static int
6812 lsarpc_dissect_element_lsa_TransNameArray2_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6813 {
6814         offset = lsarpc_dissect_struct_lsa_TranslatedName2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TransNameArray2_names,0);
6815
6816         return offset;
6817 }
6818
6819 int
6820 lsarpc_dissect_struct_lsa_TransNameArray2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6821 {
6822         proto_item *item = NULL;
6823         proto_tree *tree = NULL;
6824         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6825         int old_offset;
6826
6827         ALIGN_TO_5_BYTES;
6828
6829         old_offset = offset;
6830
6831         if (parent_tree) {
6832                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6833                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TransNameArray2);
6834         }
6835         
6836         offset = lsarpc_dissect_element_lsa_TransNameArray2_count(tvb, offset, pinfo, tree, drep);
6837
6838         offset = lsarpc_dissect_element_lsa_TransNameArray2_names(tvb, offset, pinfo, tree, drep);
6839
6840
6841         proto_item_set_len(item, offset-old_offset);
6842
6843
6844         if (di->call_data->flags & DCERPC_IS_NDR64) {
6845                 ALIGN_TO_5_BYTES;
6846         }
6847
6848         return offset;
6849 }
6850
6851
6852 /* IDL: enum { */
6853 /* IDL:         LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES=0x00000000, */
6854 /* IDL:         LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES_LOCAL=0x80000000, */
6855 /* IDL: } */
6856
6857 int
6858 lsarpc_dissect_enum_lsa_LookupOptions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
6859 {
6860         guint32 parameter=0;
6861         if(param){
6862                 parameter=(guint32)*param;
6863         }
6864         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
6865         if(param){
6866                 *param=(guint32)parameter;
6867         }
6868         return offset;
6869 }
6870
6871
6872 /* IDL: enum { */
6873 /* IDL:         LSA_CLIENT_REVISION_1=0x00000001, */
6874 /* IDL:         LSA_CLIENT_REVISION_2=0x00000002, */
6875 /* IDL: } */
6876
6877 int
6878 lsarpc_dissect_enum_lsa_ClientRevision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
6879 {
6880         guint32 parameter=0;
6881         if(param){
6882                 parameter=(guint32)*param;
6883         }
6884         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
6885         if(param){
6886                 *param=(guint32)parameter;
6887         }
6888         return offset;
6889 }
6890
6891
6892 /* IDL: struct { */
6893 /* IDL:         lsa_SidType sid_type; */
6894 /* IDL:         uint32 rid; */
6895 /* IDL:         uint32 sid_index; */
6896 /* IDL:         uint32 unknown; */
6897 /* IDL: } */
6898
6899 static int
6900 lsarpc_dissect_element_lsa_TranslatedSid2_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6901 {
6902         offset = lsarpc_dissect_enum_lsa_SidType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid2_sid_type, 0);
6903
6904         return offset;
6905 }
6906
6907 static int
6908 lsarpc_dissect_element_lsa_TranslatedSid2_rid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6909 {
6910         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid2_rid, 0);
6911
6912         return offset;
6913 }
6914
6915 static int
6916 lsarpc_dissect_element_lsa_TranslatedSid2_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6917 {
6918         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid2_sid_index, 0);
6919
6920         return offset;
6921 }
6922
6923 static int
6924 lsarpc_dissect_element_lsa_TranslatedSid2_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6925 {
6926         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid2_unknown, 0);
6927
6928         return offset;
6929 }
6930
6931 int
6932 lsarpc_dissect_struct_lsa_TranslatedSid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
6933 {
6934         proto_item *item = NULL;
6935         proto_tree *tree = NULL;
6936         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
6937         int old_offset;
6938
6939         ALIGN_TO_4_BYTES;
6940
6941         old_offset = offset;
6942
6943         if (parent_tree) {
6944                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
6945                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TranslatedSid2);
6946         }
6947         
6948         offset = lsarpc_dissect_element_lsa_TranslatedSid2_sid_type(tvb, offset, pinfo, tree, drep);
6949
6950         offset = lsarpc_dissect_element_lsa_TranslatedSid2_rid(tvb, offset, pinfo, tree, drep);
6951
6952         offset = lsarpc_dissect_element_lsa_TranslatedSid2_sid_index(tvb, offset, pinfo, tree, drep);
6953
6954         offset = lsarpc_dissect_element_lsa_TranslatedSid2_unknown(tvb, offset, pinfo, tree, drep);
6955
6956
6957         proto_item_set_len(item, offset-old_offset);
6958
6959
6960         if (di->call_data->flags & DCERPC_IS_NDR64) {
6961                 ALIGN_TO_4_BYTES;
6962         }
6963
6964         return offset;
6965 }
6966
6967
6968 /* IDL: struct { */
6969 /* IDL:         [range(0,1000)] uint32 count; */
6970 /* IDL:         [unique(1)] [size_is(count)] lsa_TranslatedSid2 *sids; */
6971 /* IDL: } */
6972
6973 static int
6974 lsarpc_dissect_element_lsa_TransSidArray2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6975 {
6976         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TransSidArray2_count, 0);
6977
6978         return offset;
6979 }
6980
6981 static int
6982 lsarpc_dissect_element_lsa_TransSidArray2_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6983 {
6984         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransSidArray2_sids_, NDR_POINTER_UNIQUE, "Pointer to Sids (lsa_TranslatedSid2)",hf_lsarpc_lsa_TransSidArray2_sids);
6985
6986         return offset;
6987 }
6988
6989 static int
6990 lsarpc_dissect_element_lsa_TransSidArray2_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6991 {
6992         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransSidArray2_sids__);
6993
6994         return offset;
6995 }
6996
6997 static int
6998 lsarpc_dissect_element_lsa_TransSidArray2_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
6999 {
7000         offset = lsarpc_dissect_struct_lsa_TranslatedSid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TransSidArray2_sids,0);
7001
7002         return offset;
7003 }
7004
7005 int
7006 lsarpc_dissect_struct_lsa_TransSidArray2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7007 {
7008         proto_item *item = NULL;
7009         proto_tree *tree = NULL;
7010         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7011         int old_offset;
7012
7013         ALIGN_TO_5_BYTES;
7014
7015         old_offset = offset;
7016
7017         if (parent_tree) {
7018                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7019                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TransSidArray2);
7020         }
7021         
7022         offset = lsarpc_dissect_element_lsa_TransSidArray2_count(tvb, offset, pinfo, tree, drep);
7023
7024         offset = lsarpc_dissect_element_lsa_TransSidArray2_sids(tvb, offset, pinfo, tree, drep);
7025
7026
7027         proto_item_set_len(item, offset-old_offset);
7028
7029
7030         if (di->call_data->flags & DCERPC_IS_NDR64) {
7031                 ALIGN_TO_5_BYTES;
7032         }
7033
7034         return offset;
7035 }
7036
7037
7038 /* IDL: struct { */
7039 /* IDL:         lsa_SidType sid_type; */
7040 /* IDL:         [unique(1)] dom_sid2 *sid; */
7041 /* IDL:         uint32 sid_index; */
7042 /* IDL:         uint32 flags; */
7043 /* IDL: } */
7044
7045 static int
7046 lsarpc_dissect_element_lsa_TranslatedSid3_sid_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7047 {
7048         offset = lsarpc_dissect_enum_lsa_SidType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid3_sid_type, 0);
7049
7050         return offset;
7051 }
7052
7053 static int
7054 lsarpc_dissect_element_lsa_TranslatedSid3_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7055 {
7056         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TranslatedSid3_sid_, NDR_POINTER_UNIQUE, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_TranslatedSid3_sid);
7057
7058         return offset;
7059 }
7060
7061 static int
7062 lsarpc_dissect_element_lsa_TranslatedSid3_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7063 {
7064         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TranslatedSid3_sid,0);
7065
7066         return offset;
7067 }
7068
7069 static int
7070 lsarpc_dissect_element_lsa_TranslatedSid3_sid_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7071 {
7072         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid3_sid_index, 0);
7073
7074         return offset;
7075 }
7076
7077 static int
7078 lsarpc_dissect_element_lsa_TranslatedSid3_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7079 {
7080         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TranslatedSid3_flags, 0);
7081
7082         return offset;
7083 }
7084
7085 int
7086 lsarpc_dissect_struct_lsa_TranslatedSid3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7087 {
7088         proto_item *item = NULL;
7089         proto_tree *tree = NULL;
7090         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7091         int old_offset;
7092
7093         ALIGN_TO_5_BYTES;
7094
7095         old_offset = offset;
7096
7097         if (parent_tree) {
7098                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7099                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TranslatedSid3);
7100         }
7101         
7102         offset = lsarpc_dissect_element_lsa_TranslatedSid3_sid_type(tvb, offset, pinfo, tree, drep);
7103
7104         offset = lsarpc_dissect_element_lsa_TranslatedSid3_sid(tvb, offset, pinfo, tree, drep);
7105
7106         offset = lsarpc_dissect_element_lsa_TranslatedSid3_sid_index(tvb, offset, pinfo, tree, drep);
7107
7108         offset = lsarpc_dissect_element_lsa_TranslatedSid3_flags(tvb, offset, pinfo, tree, drep);
7109
7110
7111         proto_item_set_len(item, offset-old_offset);
7112
7113
7114         if (di->call_data->flags & DCERPC_IS_NDR64) {
7115                 ALIGN_TO_5_BYTES;
7116         }
7117
7118         return offset;
7119 }
7120
7121
7122 /* IDL: struct { */
7123 /* IDL:         [range(0,1000)] uint32 count; */
7124 /* IDL:         [unique(1)] [size_is(count)] lsa_TranslatedSid3 *sids; */
7125 /* IDL: } */
7126
7127 static int
7128 lsarpc_dissect_element_lsa_TransSidArray3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7129 {
7130         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_TransSidArray3_count, 0);
7131
7132         return offset;
7133 }
7134
7135 static int
7136 lsarpc_dissect_element_lsa_TransSidArray3_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7137 {
7138         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransSidArray3_sids_, NDR_POINTER_UNIQUE, "Pointer to Sids (lsa_TranslatedSid3)",hf_lsarpc_lsa_TransSidArray3_sids);
7139
7140         return offset;
7141 }
7142
7143 static int
7144 lsarpc_dissect_element_lsa_TransSidArray3_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7145 {
7146         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_TransSidArray3_sids__);
7147
7148         return offset;
7149 }
7150
7151 static int
7152 lsarpc_dissect_element_lsa_TransSidArray3_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7153 {
7154         offset = lsarpc_dissect_struct_lsa_TranslatedSid3(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_TransSidArray3_sids,0);
7155
7156         return offset;
7157 }
7158
7159 int
7160 lsarpc_dissect_struct_lsa_TransSidArray3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7161 {
7162         proto_item *item = NULL;
7163         proto_tree *tree = NULL;
7164         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7165         int old_offset;
7166
7167         ALIGN_TO_5_BYTES;
7168
7169         old_offset = offset;
7170
7171         if (parent_tree) {
7172                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7173                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_TransSidArray3);
7174         }
7175         
7176         offset = lsarpc_dissect_element_lsa_TransSidArray3_count(tvb, offset, pinfo, tree, drep);
7177
7178         offset = lsarpc_dissect_element_lsa_TransSidArray3_sids(tvb, offset, pinfo, tree, drep);
7179
7180
7181         proto_item_set_len(item, offset-old_offset);
7182
7183
7184         if (di->call_data->flags & DCERPC_IS_NDR64) {
7185                 ALIGN_TO_5_BYTES;
7186         }
7187
7188         return offset;
7189 }
7190
7191
7192 /* IDL: struct { */
7193 /* IDL:         [range(0,131072)] uint3264 length; */
7194 /* IDL:         [unique(1)] [size_is(length)] uint8 *data; */
7195 /* IDL: } */
7196
7197 static int
7198 lsarpc_dissect_element_lsa_ForestTrustBinaryData_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7199 {
7200         offset = dissect_ndr_uint3264(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustBinaryData_length, NULL);
7201
7202         return offset;
7203 }
7204
7205 static int
7206 lsarpc_dissect_element_lsa_ForestTrustBinaryData_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7207 {
7208         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustBinaryData_data_, NDR_POINTER_UNIQUE, "Pointer to Data (uint8)",hf_lsarpc_lsa_ForestTrustBinaryData_data);
7209
7210         return offset;
7211 }
7212
7213 static int
7214 lsarpc_dissect_element_lsa_ForestTrustBinaryData_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7215 {
7216         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustBinaryData_data__);
7217
7218         return offset;
7219 }
7220
7221 static int
7222 lsarpc_dissect_element_lsa_ForestTrustBinaryData_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7223 {
7224         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustBinaryData_data, 0);
7225
7226         return offset;
7227 }
7228
7229 int
7230 lsarpc_dissect_struct_lsa_ForestTrustBinaryData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7231 {
7232         proto_item *item = NULL;
7233         proto_tree *tree = NULL;
7234         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7235         int old_offset;
7236
7237         ALIGN_TO_5_BYTES;
7238
7239         old_offset = offset;
7240
7241         if (parent_tree) {
7242                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7243                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustBinaryData);
7244         }
7245         
7246         offset = lsarpc_dissect_element_lsa_ForestTrustBinaryData_length(tvb, offset, pinfo, tree, drep);
7247
7248         offset = lsarpc_dissect_element_lsa_ForestTrustBinaryData_data(tvb, offset, pinfo, tree, drep);
7249
7250
7251         proto_item_set_len(item, offset-old_offset);
7252
7253
7254         if (di->call_data->flags & DCERPC_IS_NDR64) {
7255                 ALIGN_TO_5_BYTES;
7256         }
7257
7258         return offset;
7259 }
7260
7261
7262 /* IDL: struct { */
7263 /* IDL:         [unique(1)] dom_sid2 *domain_sid; */
7264 /* IDL:         lsa_StringLarge dns_domain_name; */
7265 /* IDL:         lsa_StringLarge netbios_domain_name; */
7266 /* IDL: } */
7267
7268 static int
7269 lsarpc_dissect_element_lsa_ForestTrustDomainInfo_domain_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7270 {
7271         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustDomainInfo_domain_sid_, NDR_POINTER_UNIQUE, "Pointer to Domain Sid (dom_sid2)",hf_lsarpc_lsa_ForestTrustDomainInfo_domain_sid);
7272
7273         return offset;
7274 }
7275
7276 static int
7277 lsarpc_dissect_element_lsa_ForestTrustDomainInfo_domain_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7278 {
7279         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustDomainInfo_domain_sid,0);
7280
7281         return offset;
7282 }
7283
7284 static int
7285 lsarpc_dissect_element_lsa_ForestTrustDomainInfo_dns_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7286 {
7287         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustDomainInfo_dns_domain_name,0);
7288
7289         return offset;
7290 }
7291
7292 static int
7293 lsarpc_dissect_element_lsa_ForestTrustDomainInfo_netbios_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7294 {
7295         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustDomainInfo_netbios_domain_name,0);
7296
7297         return offset;
7298 }
7299
7300 int
7301 lsarpc_dissect_struct_lsa_ForestTrustDomainInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7302 {
7303         proto_item *item = NULL;
7304         proto_tree *tree = NULL;
7305         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7306         int old_offset;
7307
7308         ALIGN_TO_5_BYTES;
7309
7310         old_offset = offset;
7311
7312         if (parent_tree) {
7313                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7314                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustDomainInfo);
7315         }
7316         
7317         offset = lsarpc_dissect_element_lsa_ForestTrustDomainInfo_domain_sid(tvb, offset, pinfo, tree, drep);
7318
7319         offset = lsarpc_dissect_element_lsa_ForestTrustDomainInfo_dns_domain_name(tvb, offset, pinfo, tree, drep);
7320
7321         offset = lsarpc_dissect_element_lsa_ForestTrustDomainInfo_netbios_domain_name(tvb, offset, pinfo, tree, drep);
7322
7323
7324         proto_item_set_len(item, offset-old_offset);
7325
7326
7327         if (di->call_data->flags & DCERPC_IS_NDR64) {
7328                 ALIGN_TO_5_BYTES;
7329         }
7330
7331         return offset;
7332 }
7333
7334
7335 /* IDL: [switch_type(uint32)] union { */
7336 /* IDL: [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME)] [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME)] lsa_StringLarge top_level_name; */
7337 /* IDL: [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX)] [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX)] lsa_StringLarge top_level_name_ex; */
7338 /* IDL: [case(LSA_FOREST_TRUST_DOMAIN_INFO)] [case(LSA_FOREST_TRUST_DOMAIN_INFO)] lsa_ForestTrustDomainInfo domain_info; */
7339 /* IDL: [default] ; */
7340 /* IDL: } */
7341
7342 static int
7343 lsarpc_dissect_element_lsa_ForestTrustData_top_level_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7344 {
7345         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustData_top_level_name,0);
7346
7347         return offset;
7348 }
7349
7350 static int
7351 lsarpc_dissect_element_lsa_ForestTrustData_top_level_name_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7352 {
7353         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustData_top_level_name_ex,0);
7354
7355         return offset;
7356 }
7357
7358 static int
7359 lsarpc_dissect_element_lsa_ForestTrustData_domain_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7360 {
7361         offset = lsarpc_dissect_struct_lsa_ForestTrustDomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustData_domain_info,0);
7362
7363         return offset;
7364 }
7365
7366 static int
7367 lsarpc_dissect_element_lsa_ForestTrustData_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7368 {
7369         offset = lsarpc_dissect_struct_lsa_ForestTrustBinaryData(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustData_data,0);
7370
7371         return offset;
7372 }
7373
7374 static int
7375 lsarpc_dissect_lsa_ForestTrustData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7376 {
7377         proto_item *item = NULL;
7378         proto_tree *tree = NULL;
7379         int old_offset;
7380         guint32 level;
7381
7382         old_offset = offset;
7383         if (parent_tree) {
7384                 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "lsa_ForestTrustData");
7385                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustData);
7386         }
7387
7388         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &level);
7389         ALIGN_TO_5_BYTES;
7390
7391         switch(level) {
7392                 case LSA_FOREST_TRUST_TOP_LEVEL_NAME:
7393                         offset = lsarpc_dissect_element_lsa_ForestTrustData_top_level_name(tvb, offset, pinfo, tree, drep);
7394                 break;
7395
7396                 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX:
7397                         offset = lsarpc_dissect_element_lsa_ForestTrustData_top_level_name_ex(tvb, offset, pinfo, tree, drep);
7398                 break;
7399
7400                 case LSA_FOREST_TRUST_DOMAIN_INFO:
7401                         offset = lsarpc_dissect_element_lsa_ForestTrustData_domain_info(tvb, offset, pinfo, tree, drep);
7402                 break;
7403
7404                 default:
7405                         offset = lsarpc_dissect_element_lsa_ForestTrustData_data(tvb, offset, pinfo, tree, drep);
7406                 break;
7407         }
7408         proto_item_set_len(item, offset-old_offset);
7409
7410
7411         return offset;
7412 }
7413
7414 /* IDL: enum { */
7415 /* IDL:         LSA_FOREST_TRUST_TOP_LEVEL_NAME=0, */
7416 /* IDL:         LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX=1, */
7417 /* IDL:         LSA_FOREST_TRUST_DOMAIN_INFO=2, */
7418 /* IDL:         LSA_FOREST_TRUST_RECORD_TYPE_LAST=3, */
7419 /* IDL: } */
7420
7421 int
7422 lsarpc_dissect_enum_lsa_ForestTrustRecordType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
7423 {
7424         guint32 parameter=0;
7425         if(param){
7426                 parameter=(guint32)*param;
7427         }
7428         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
7429         if(param){
7430                 *param=(guint32)parameter;
7431         }
7432         return offset;
7433 }
7434
7435
7436 /* IDL: struct { */
7437 /* IDL:         uint32 flags; */
7438 /* IDL:         lsa_ForestTrustRecordType type; */
7439 /* IDL:         hyper time; */
7440 /* IDL:         [switch_is(type)] lsa_ForestTrustData forest_trust_data; */
7441 /* IDL: } */
7442
7443 static int
7444 lsarpc_dissect_element_lsa_ForestTrustRecord_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7445 {
7446         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustRecord_flags, 0);
7447
7448         return offset;
7449 }
7450
7451 static int
7452 lsarpc_dissect_element_lsa_ForestTrustRecord_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type)
7453 {
7454         offset = lsarpc_dissect_enum_lsa_ForestTrustRecordType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustRecord_type, type);
7455
7456         return offset;
7457 }
7458
7459 static int
7460 lsarpc_dissect_element_lsa_ForestTrustRecord_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7461 {
7462         offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustRecord_time, NULL);
7463
7464         return offset;
7465 }
7466
7467 static int
7468 lsarpc_dissect_element_lsa_ForestTrustRecord_forest_trust_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type)
7469 {
7470         offset = lsarpc_dissect_lsa_ForestTrustData(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustRecord_forest_trust_data, *type);
7471
7472         return offset;
7473 }
7474
7475 int
7476 lsarpc_dissect_struct_lsa_ForestTrustRecord(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7477 {
7478         guint32 type;
7479         proto_item *item = NULL;
7480         proto_tree *tree = NULL;
7481         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7482         int old_offset;
7483
7484         ALIGN_TO_8_BYTES;
7485
7486         old_offset = offset;
7487
7488         if (parent_tree) {
7489                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7490                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustRecord);
7491         }
7492         
7493         offset = lsarpc_dissect_element_lsa_ForestTrustRecord_flags(tvb, offset, pinfo, tree, drep);
7494
7495         offset = lsarpc_dissect_element_lsa_ForestTrustRecord_type(tvb, offset, pinfo, tree, drep, &type);
7496
7497         offset = lsarpc_dissect_element_lsa_ForestTrustRecord_time(tvb, offset, pinfo, tree, drep);
7498
7499         offset = lsarpc_dissect_element_lsa_ForestTrustRecord_forest_trust_data(tvb, offset, pinfo, tree, drep, &type);
7500
7501
7502         proto_item_set_len(item, offset-old_offset);
7503
7504
7505         if (di->call_data->flags & DCERPC_IS_NDR64) {
7506                 ALIGN_TO_8_BYTES;
7507         }
7508
7509         return offset;
7510 }
7511
7512
7513 /* IDL: struct { */
7514 /* IDL:         [range(0,4000)] uint32 count; */
7515 /* IDL:         [unique(1)] [size_is(count)] lsa_ForestTrustRecord **entries; */
7516 /* IDL: } */
7517
7518 static int
7519 lsarpc_dissect_element_lsa_ForestTrustInformation_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7520 {
7521         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustInformation_count, 0);
7522
7523         return offset;
7524 }
7525
7526 static int
7527 lsarpc_dissect_element_lsa_ForestTrustInformation_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7528 {
7529         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustInformation_entries_, NDR_POINTER_UNIQUE, "Pointer to Entries (lsa_ForestTrustRecord)",hf_lsarpc_lsa_ForestTrustInformation_entries);
7530
7531         return offset;
7532 }
7533
7534 static int
7535 lsarpc_dissect_element_lsa_ForestTrustInformation_entries_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7536 {
7537         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustInformation_entries__);
7538
7539         return offset;
7540 }
7541
7542 static int
7543 lsarpc_dissect_element_lsa_ForestTrustInformation_entries__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7544 {
7545         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustInformation_entries___, NDR_POINTER_UNIQUE, "Pointer to Entries (lsa_ForestTrustRecord)",hf_lsarpc_lsa_ForestTrustInformation_entries);
7546
7547         return offset;
7548 }
7549
7550 static int
7551 lsarpc_dissect_element_lsa_ForestTrustInformation_entries___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7552 {
7553         offset = lsarpc_dissect_struct_lsa_ForestTrustRecord(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustInformation_entries,0);
7554
7555         return offset;
7556 }
7557
7558 int
7559 lsarpc_dissect_struct_lsa_ForestTrustInformation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7560 {
7561         proto_item *item = NULL;
7562         proto_tree *tree = NULL;
7563         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7564         int old_offset;
7565
7566         ALIGN_TO_5_BYTES;
7567
7568         old_offset = offset;
7569
7570         if (parent_tree) {
7571                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7572                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustInformation);
7573         }
7574         
7575         offset = lsarpc_dissect_element_lsa_ForestTrustInformation_count(tvb, offset, pinfo, tree, drep);
7576
7577         offset = lsarpc_dissect_element_lsa_ForestTrustInformation_entries(tvb, offset, pinfo, tree, drep);
7578
7579
7580         proto_item_set_len(item, offset-old_offset);
7581
7582
7583         if (di->call_data->flags & DCERPC_IS_NDR64) {
7584                 ALIGN_TO_5_BYTES;
7585         }
7586
7587         return offset;
7588 }
7589
7590
7591 /* IDL: enum { */
7592 /* IDL:         LSA_FOREST_TRUST_COLLISION_TDO=0, */
7593 /* IDL:         LSA_FOREST_TRUST_COLLISION_XREF=1, */
7594 /* IDL:         LSA_FOREST_TRUST_COLLISION_OTHER=2, */
7595 /* IDL: } */
7596
7597 int
7598 lsarpc_dissect_enum_lsa_ForestTrustCollisionRecordType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
7599 {
7600         guint32 parameter=0;
7601         if(param){
7602                 parameter=(guint32)*param;
7603         }
7604         offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &parameter);
7605         if(param){
7606                 *param=(guint32)parameter;
7607         }
7608         return offset;
7609 }
7610
7611
7612 /* IDL: bitmap { */
7613 /* IDL:         LSA_TLN_DISABLED_NEW =  0x00000001 , */
7614 /* IDL:         LSA_TLN_DISABLED_ADMIN =  0x00000002 , */
7615 /* IDL:         LSA_TLN_DISABLED_CONFLICT =  0x00000004 , */
7616 /* IDL: } */
7617
7618 int
7619 lsarpc_dissect_bitmap_lsa_ForestTrustCollisionTDOFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7620 {
7621         proto_item *item = NULL;
7622         proto_tree *tree = NULL;
7623
7624         guint32 flags;
7625         ALIGN_TO_4_BYTES;
7626
7627         if (parent_tree) {
7628                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
7629                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_ForestTrustCollisionTDOFlags);
7630         }
7631
7632         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
7633         proto_item_append_text(item, ": ");
7634
7635         if (!flags)
7636                 proto_item_append_text(item, "(No values set)");
7637
7638         proto_tree_add_boolean(tree, hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_NEW, tvb, offset-4, 4, flags);
7639         if (flags&( 0x00000001 )){
7640                 proto_item_append_text(item, "LSA_TLN_DISABLED_NEW");
7641                 if (flags & (~( 0x00000001 )))
7642                         proto_item_append_text(item, ", ");
7643         }
7644         flags&=(~( 0x00000001 ));
7645
7646         proto_tree_add_boolean(tree, hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_ADMIN, tvb, offset-4, 4, flags);
7647         if (flags&( 0x00000002 )){
7648                 proto_item_append_text(item, "LSA_TLN_DISABLED_ADMIN");
7649                 if (flags & (~( 0x00000002 )))
7650                         proto_item_append_text(item, ", ");
7651         }
7652         flags&=(~( 0x00000002 ));
7653
7654         proto_tree_add_boolean(tree, hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_CONFLICT, tvb, offset-4, 4, flags);
7655         if (flags&( 0x00000004 )){
7656                 proto_item_append_text(item, "LSA_TLN_DISABLED_CONFLICT");
7657                 if (flags & (~( 0x00000004 )))
7658                         proto_item_append_text(item, ", ");
7659         }
7660         flags&=(~( 0x00000004 ));
7661
7662         if (flags) {
7663                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
7664         }
7665
7666         return offset;
7667 }
7668
7669
7670 /* IDL: bitmap { */
7671 /* IDL:         LSA_SID_DISABLED_ADMIN =  0x00000001 , */
7672 /* IDL:         LSA_SID_DISABLED_CONFLICT =  0x00000002 , */
7673 /* IDL:         LSA_NB_DISABLED_ADMIN =  0x00000004 , */
7674 /* IDL:         LSA_NB_DISABLED_CONFLICT =  0x00000008 , */
7675 /* IDL: } */
7676
7677 int
7678 lsarpc_dissect_bitmap_lsa_ForestTrustCollisionXrefFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7679 {
7680         proto_item *item = NULL;
7681         proto_tree *tree = NULL;
7682
7683         guint32 flags;
7684         ALIGN_TO_4_BYTES;
7685
7686         if (parent_tree) {
7687                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
7688                 tree = proto_item_add_subtree(item,ett_lsarpc_lsa_ForestTrustCollisionXrefFlags);
7689         }
7690
7691         offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
7692         proto_item_append_text(item, ": ");
7693
7694         if (!flags)
7695                 proto_item_append_text(item, "(No values set)");
7696
7697         proto_tree_add_boolean(tree, hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_ADMIN, tvb, offset-4, 4, flags);
7698         if (flags&( 0x00000001 )){
7699                 proto_item_append_text(item, "LSA_SID_DISABLED_ADMIN");
7700                 if (flags & (~( 0x00000001 )))
7701                         proto_item_append_text(item, ", ");
7702         }
7703         flags&=(~( 0x00000001 ));
7704
7705         proto_tree_add_boolean(tree, hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_CONFLICT, tvb, offset-4, 4, flags);
7706         if (flags&( 0x00000002 )){
7707                 proto_item_append_text(item, "LSA_SID_DISABLED_CONFLICT");
7708                 if (flags & (~( 0x00000002 )))
7709                         proto_item_append_text(item, ", ");
7710         }
7711         flags&=(~( 0x00000002 ));
7712
7713         proto_tree_add_boolean(tree, hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_ADMIN, tvb, offset-4, 4, flags);
7714         if (flags&( 0x00000004 )){
7715                 proto_item_append_text(item, "LSA_NB_DISABLED_ADMIN");
7716                 if (flags & (~( 0x00000004 )))
7717                         proto_item_append_text(item, ", ");
7718         }
7719         flags&=(~( 0x00000004 ));
7720
7721         proto_tree_add_boolean(tree, hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_CONFLICT, tvb, offset-4, 4, flags);
7722         if (flags&( 0x00000008 )){
7723                 proto_item_append_text(item, "LSA_NB_DISABLED_CONFLICT");
7724                 if (flags & (~( 0x00000008 )))
7725                         proto_item_append_text(item, ", ");
7726         }
7727         flags&=(~( 0x00000008 ));
7728
7729         if (flags) {
7730                 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
7731         }
7732
7733         return offset;
7734 }
7735
7736
7737 /* IDL: [nodiscriminant(1)] union { */
7738 /* IDL: [case(LSA_FOREST_TRUST_COLLISION_TDO)] [case(LSA_FOREST_TRUST_COLLISION_TDO)] lsa_ForestTrustCollisionTDOFlags flags; */
7739 /* IDL: [case(LSA_FOREST_TRUST_COLLISION_XREF)] [case(LSA_FOREST_TRUST_COLLISION_XREF)] lsa_ForestTrustCollisionXrefFlags flags; */
7740 /* IDL: [default] ; */
7741 /* IDL: } */
7742
7743 static int
7744 lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7745 {
7746         offset = lsarpc_dissect_bitmap_lsa_ForestTrustCollisionTDOFlags(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustCollisionFlags_flags, 0);
7747
7748         return offset;
7749 }
7750
7751 static int
7752 lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7753 {
7754         offset = lsarpc_dissect_bitmap_lsa_ForestTrustCollisionXrefFlags(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustCollisionFlags_flags, 0);
7755
7756         return offset;
7757 }
7758
7759 static int
7760 lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7761 {
7762         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustCollisionFlags_flags, 0);
7763
7764         return offset;
7765 }
7766
7767 static int
7768 lsarpc_dissect_lsa_ForestTrustCollisionFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7769 {
7770         proto_item *item = NULL;
7771         proto_tree *tree = NULL;
7772         int old_offset;
7773         guint32 level = param;
7774
7775         old_offset = offset;
7776         if (parent_tree) {
7777                 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "lsa_ForestTrustCollisionFlags");
7778                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustCollisionFlags);
7779         }
7780
7781         switch(level) {
7782                 case LSA_FOREST_TRUST_COLLISION_TDO:
7783                         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvb, offset, pinfo, tree, drep);
7784                 break;
7785
7786                 case LSA_FOREST_TRUST_COLLISION_XREF:
7787                         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvb, offset, pinfo, tree, drep);
7788                 break;
7789
7790                 default:
7791                         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionFlags_flags(tvb, offset, pinfo, tree, drep);
7792                 break;
7793         }
7794         proto_item_set_len(item, offset-old_offset);
7795
7796
7797         return offset;
7798 }
7799
7800 /* IDL: struct { */
7801 /* IDL:         uint32 index; */
7802 /* IDL:         lsa_ForestTrustCollisionRecordType type; */
7803 /* IDL:         [switch_is(type)] lsa_ForestTrustCollisionFlags flags; */
7804 /* IDL:         lsa_String name; */
7805 /* IDL: } */
7806
7807 static int
7808 lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_index(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7809 {
7810         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustCollisionRecord_index, 0);
7811
7812         return offset;
7813 }
7814
7815 static int
7816 lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type)
7817 {
7818         offset = lsarpc_dissect_enum_lsa_ForestTrustCollisionRecordType(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustCollisionRecord_type, type);
7819
7820         return offset;
7821 }
7822
7823 static int
7824 lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *type)
7825 {
7826         offset = lsarpc_dissect_lsa_ForestTrustCollisionFlags(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustCollisionRecord_flags, *type);
7827
7828         return offset;
7829 }
7830
7831 static int
7832 lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7833 {
7834         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustCollisionRecord_name,0);
7835
7836         return offset;
7837 }
7838
7839 int
7840 lsarpc_dissect_struct_lsa_ForestTrustCollisionRecord(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7841 {
7842         guint32 type;
7843         proto_item *item = NULL;
7844         proto_tree *tree = NULL;
7845         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7846         int old_offset;
7847
7848         ALIGN_TO_5_BYTES;
7849
7850         old_offset = offset;
7851
7852         if (parent_tree) {
7853                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7854                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustCollisionRecord);
7855         }
7856         
7857         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_index(tvb, offset, pinfo, tree, drep);
7858
7859         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_type(tvb, offset, pinfo, tree, drep, &type);
7860
7861         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_flags(tvb, offset, pinfo, tree, drep, &type);
7862
7863         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionRecord_name(tvb, offset, pinfo, tree, drep);
7864
7865
7866         proto_item_set_len(item, offset-old_offset);
7867
7868
7869         if (di->call_data->flags & DCERPC_IS_NDR64) {
7870                 ALIGN_TO_5_BYTES;
7871         }
7872
7873         return offset;
7874 }
7875
7876
7877 /* IDL: struct { */
7878 /* IDL:         uint32 count; */
7879 /* IDL:         [unique(1)] [size_is(count)] lsa_ForestTrustCollisionRecord **entries; */
7880 /* IDL: } */
7881
7882 static int
7883 lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7884 {
7885         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_ForestTrustCollisionInfo_count, 0);
7886
7887         return offset;
7888 }
7889
7890 static int
7891 lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7892 {
7893         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries_, NDR_POINTER_UNIQUE, "Pointer to Entries (lsa_ForestTrustCollisionRecord)",hf_lsarpc_lsa_ForestTrustCollisionInfo_entries);
7894
7895         return offset;
7896 }
7897
7898 static int
7899 lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7900 {
7901         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries__);
7902
7903         return offset;
7904 }
7905
7906 static int
7907 lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7908 {
7909         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries___, NDR_POINTER_UNIQUE, "Pointer to Entries (lsa_ForestTrustCollisionRecord)",hf_lsarpc_lsa_ForestTrustCollisionInfo_entries);
7910
7911         return offset;
7912 }
7913
7914 static int
7915 lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7916 {
7917         offset = lsarpc_dissect_struct_lsa_ForestTrustCollisionRecord(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_ForestTrustCollisionInfo_entries,0);
7918
7919         return offset;
7920 }
7921
7922 int
7923 lsarpc_dissect_struct_lsa_ForestTrustCollisionInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
7924 {
7925         proto_item *item = NULL;
7926         proto_tree *tree = NULL;
7927         dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
7928         int old_offset;
7929
7930         ALIGN_TO_5_BYTES;
7931
7932         old_offset = offset;
7933
7934         if (parent_tree) {
7935                 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
7936                 tree = proto_item_add_subtree(item, ett_lsarpc_lsa_ForestTrustCollisionInfo);
7937         }
7938         
7939         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_count(tvb, offset, pinfo, tree, drep);
7940
7941         offset = lsarpc_dissect_element_lsa_ForestTrustCollisionInfo_entries(tvb, offset, pinfo, tree, drep);
7942
7943
7944         proto_item_set_len(item, offset-old_offset);
7945
7946
7947         if (di->call_data->flags & DCERPC_IS_NDR64) {
7948                 ALIGN_TO_5_BYTES;
7949         }
7950
7951         return offset;
7952 }
7953
7954 static int
7955 lsarpc_dissect_element_lsa_Close_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7956 {
7957         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_Close_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_Close_handle);
7958
7959         return offset;
7960 }
7961
7962 static int
7963 lsarpc_dissect_element_lsa_Close_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7964 {
7965         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_Close_handle, 0);
7966
7967         return offset;
7968 }
7969
7970 /* IDL: NTSTATUS lsa_Close( */
7971 /* IDL: [out] [ref] [in] policy_handle *handle */
7972 /* IDL: ); */
7973
7974 static int
7975 lsarpc_dissect_lsa_Close_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7976 {
7977         guint32 status;
7978
7979         pinfo->dcerpc_procedure_name="lsa_Close";
7980         offset = lsarpc_dissect_element_lsa_Close_handle(tvb, offset, pinfo, tree, drep);
7981         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
7982
7983         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
7984
7985         if (status != 0)
7986                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
7987
7988         return offset;
7989 }
7990
7991 static int
7992 lsarpc_dissect_lsa_Close_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
7993 {
7994         pinfo->dcerpc_procedure_name="lsa_Close";
7995         offset = lsarpc_dissect_element_lsa_Close_handle(tvb, offset, pinfo, tree, drep);
7996         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
7997         return offset;
7998 }
7999
8000 static int
8001 lsarpc_dissect_element_lsa_Delete_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8002 {
8003         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_Delete_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_Delete_handle);
8004
8005         return offset;
8006 }
8007
8008 static int
8009 lsarpc_dissect_element_lsa_Delete_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8010 {
8011         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_Delete_handle, 0);
8012
8013         return offset;
8014 }
8015
8016 /* IDL: NTSTATUS lsa_Delete( */
8017 /* IDL: [ref] [in] policy_handle *handle */
8018 /* IDL: ); */
8019
8020 static int
8021 lsarpc_dissect_lsa_Delete_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8022 {
8023         guint32 status;
8024
8025         pinfo->dcerpc_procedure_name="lsa_Delete";
8026         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8027
8028         if (status != 0)
8029                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8030
8031         return offset;
8032 }
8033
8034 static int
8035 lsarpc_dissect_lsa_Delete_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8036 {
8037         pinfo->dcerpc_procedure_name="lsa_Delete";
8038         offset = lsarpc_dissect_element_lsa_Delete_handle(tvb, offset, pinfo, tree, drep);
8039         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8040         return offset;
8041 }
8042
8043 static int
8044 lsarpc_dissect_element_lsa_EnumPrivs_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8045 {
8046         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumPrivs_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_EnumPrivs_handle);
8047
8048         return offset;
8049 }
8050
8051 static int
8052 lsarpc_dissect_element_lsa_EnumPrivs_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8053 {
8054         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumPrivs_handle, 0);
8055
8056         return offset;
8057 }
8058
8059 static int
8060 lsarpc_dissect_element_lsa_EnumPrivs_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8061 {
8062         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumPrivs_resume_handle_, NDR_POINTER_REF, "Pointer to Resume Handle (uint32)",hf_lsarpc_lsa_EnumPrivs_resume_handle);
8063
8064         return offset;
8065 }
8066
8067 static int
8068 lsarpc_dissect_element_lsa_EnumPrivs_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8069 {
8070         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumPrivs_resume_handle, 0);
8071
8072         return offset;
8073 }
8074
8075 static int
8076 lsarpc_dissect_element_lsa_EnumPrivs_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8077 {
8078         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumPrivs_privs_, NDR_POINTER_REF, "Pointer to Privs (lsa_PrivArray)",hf_lsarpc_lsa_EnumPrivs_privs);
8079
8080         return offset;
8081 }
8082
8083 static int
8084 lsarpc_dissect_element_lsa_EnumPrivs_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8085 {
8086         offset = lsarpc_dissect_struct_lsa_PrivArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumPrivs_privs,0);
8087
8088         return offset;
8089 }
8090
8091 static int
8092 lsarpc_dissect_element_lsa_EnumPrivs_max_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8093 {
8094         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumPrivs_max_count, 0);
8095
8096         return offset;
8097 }
8098
8099 /* IDL: NTSTATUS lsa_EnumPrivs( */
8100 /* IDL: [ref] [in] policy_handle *handle, */
8101 /* IDL: [out] [in] [ref] uint32 *resume_handle, */
8102 /* IDL: [out] [ref] lsa_PrivArray *privs, */
8103 /* IDL: [in] uint32 max_count */
8104 /* IDL: ); */
8105
8106 static int
8107 lsarpc_dissect_lsa_EnumPrivs_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8108 {
8109         guint32 status;
8110
8111         pinfo->dcerpc_procedure_name="lsa_EnumPrivs";
8112         offset = lsarpc_dissect_element_lsa_EnumPrivs_resume_handle(tvb, offset, pinfo, tree, drep);
8113         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8114
8115         offset = lsarpc_dissect_element_lsa_EnumPrivs_privs(tvb, offset, pinfo, tree, drep);
8116         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8117
8118         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8119
8120         if (status != 0)
8121                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8122
8123         return offset;
8124 }
8125
8126 static int
8127 lsarpc_dissect_lsa_EnumPrivs_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8128 {
8129         pinfo->dcerpc_procedure_name="lsa_EnumPrivs";
8130         offset = lsarpc_dissect_element_lsa_EnumPrivs_handle(tvb, offset, pinfo, tree, drep);
8131         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8132         offset = lsarpc_dissect_element_lsa_EnumPrivs_resume_handle(tvb, offset, pinfo, tree, drep);
8133         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8134         offset = lsarpc_dissect_element_lsa_EnumPrivs_max_count(tvb, offset, pinfo, tree, drep);
8135         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8136         return offset;
8137 }
8138
8139 static int
8140 lsarpc_dissect_element_lsa_QuerySecurity_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8141 {
8142         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecurity_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_QuerySecurity_handle);
8143
8144         return offset;
8145 }
8146
8147 static int
8148 lsarpc_dissect_element_lsa_QuerySecurity_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8149 {
8150         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QuerySecurity_handle, 0);
8151
8152         return offset;
8153 }
8154
8155 static int
8156 lsarpc_dissect_element_lsa_QuerySecurity_sec_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8157 {
8158         offset = lsarpc_dissect_bitmap_security_secinfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QuerySecurity_sec_info, 0);
8159
8160         return offset;
8161 }
8162
8163 static int
8164 lsarpc_dissect_element_lsa_QuerySecurity_sdbuf(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8165 {
8166         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecurity_sdbuf_, NDR_POINTER_REF, "Pointer to Sdbuf (sec_desc_buf)",hf_lsarpc_lsa_QuerySecurity_sdbuf);
8167
8168         return offset;
8169 }
8170
8171 static int
8172 lsarpc_dissect_element_lsa_QuerySecurity_sdbuf_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8173 {
8174         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecurity_sdbuf__, NDR_POINTER_UNIQUE, "Pointer to Sdbuf (sec_desc_buf)",hf_lsarpc_lsa_QuerySecurity_sdbuf);
8175
8176         return offset;
8177 }
8178
8179 static int
8180 lsarpc_dissect_element_lsa_QuerySecurity_sdbuf__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8181 {
8182         offset = lsarpc_dissect_struct_sec_desc_buf(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_QuerySecurity_sdbuf,0);
8183
8184         return offset;
8185 }
8186
8187 /* IDL: NTSTATUS lsa_QuerySecurity( */
8188 /* IDL: [ref] [in] policy_handle *handle, */
8189 /* IDL: [in] security_secinfo sec_info, */
8190 /* IDL: [out] [ref] sec_desc_buf **sdbuf */
8191 /* IDL: ); */
8192
8193 static int
8194 lsarpc_dissect_lsa_QuerySecurity_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8195 {
8196         guint32 status;
8197
8198         pinfo->dcerpc_procedure_name="lsa_QuerySecurity";
8199         offset = lsarpc_dissect_element_lsa_QuerySecurity_sdbuf(tvb, offset, pinfo, tree, drep);
8200         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8201
8202         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8203
8204         if (status != 0)
8205                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8206
8207         return offset;
8208 }
8209
8210 static int
8211 lsarpc_dissect_lsa_QuerySecurity_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8212 {
8213         pinfo->dcerpc_procedure_name="lsa_QuerySecurity";
8214         offset = lsarpc_dissect_element_lsa_QuerySecurity_handle(tvb, offset, pinfo, tree, drep);
8215         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8216         offset = lsarpc_dissect_element_lsa_QuerySecurity_sec_info(tvb, offset, pinfo, tree, drep);
8217         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8218         return offset;
8219 }
8220
8221 static int
8222 lsarpc_dissect_element_lsa_SetSecObj_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8223 {
8224         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetSecObj_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_SetSecObj_handle);
8225
8226         return offset;
8227 }
8228
8229 static int
8230 lsarpc_dissect_element_lsa_SetSecObj_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8231 {
8232         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetSecObj_handle, 0);
8233
8234         return offset;
8235 }
8236
8237 static int
8238 lsarpc_dissect_element_lsa_SetSecObj_sec_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8239 {
8240         offset = lsarpc_dissect_bitmap_security_secinfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetSecObj_sec_info, 0);
8241
8242         return offset;
8243 }
8244
8245 static int
8246 lsarpc_dissect_element_lsa_SetSecObj_sdbuf(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8247 {
8248         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetSecObj_sdbuf_, NDR_POINTER_REF, "Pointer to Sdbuf (sec_desc_buf)",hf_lsarpc_lsa_SetSecObj_sdbuf);
8249
8250         return offset;
8251 }
8252
8253 static int
8254 lsarpc_dissect_element_lsa_SetSecObj_sdbuf_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8255 {
8256         offset = lsarpc_dissect_struct_sec_desc_buf(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_SetSecObj_sdbuf,0);
8257
8258         return offset;
8259 }
8260
8261 /* IDL: NTSTATUS lsa_SetSecObj( */
8262 /* IDL: [ref] [in] policy_handle *handle, */
8263 /* IDL: [in] security_secinfo sec_info, */
8264 /* IDL: [in] [ref] sec_desc_buf *sdbuf */
8265 /* IDL: ); */
8266
8267 static int
8268 lsarpc_dissect_lsa_SetSecObj_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8269 {
8270         guint32 status;
8271
8272         pinfo->dcerpc_procedure_name="lsa_SetSecObj";
8273         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8274
8275         if (status != 0)
8276                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8277
8278         return offset;
8279 }
8280
8281 static int
8282 lsarpc_dissect_lsa_SetSecObj_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8283 {
8284         pinfo->dcerpc_procedure_name="lsa_SetSecObj";
8285         offset = lsarpc_dissect_element_lsa_SetSecObj_handle(tvb, offset, pinfo, tree, drep);
8286         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8287         offset = lsarpc_dissect_element_lsa_SetSecObj_sec_info(tvb, offset, pinfo, tree, drep);
8288         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8289         offset = lsarpc_dissect_element_lsa_SetSecObj_sdbuf(tvb, offset, pinfo, tree, drep);
8290         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8291         return offset;
8292 }
8293
8294 /* IDL: NTSTATUS lsa_ChangePassword( */
8295 /* IDL:  */
8296 /* IDL: ); */
8297
8298 static int
8299 lsarpc_dissect_lsa_ChangePassword_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8300 {
8301         guint32 status;
8302
8303         pinfo->dcerpc_procedure_name="lsa_ChangePassword";
8304         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8305
8306         if (status != 0)
8307                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8308
8309         return offset;
8310 }
8311
8312 static int
8313 lsarpc_dissect_lsa_ChangePassword_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8314 {
8315         pinfo->dcerpc_procedure_name="lsa_ChangePassword";
8316         return offset;
8317 }
8318
8319 static int
8320 lsarpc_dissect_element_lsa_OpenPolicy_system_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8321 {
8322         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenPolicy_system_name_, NDR_POINTER_UNIQUE, "Pointer to System Name (uint16)",hf_lsarpc_lsa_OpenPolicy_system_name);
8323
8324         return offset;
8325 }
8326
8327 static int
8328 lsarpc_dissect_element_lsa_OpenPolicy_system_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8329 {
8330         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenPolicy_system_name, 0);
8331
8332         return offset;
8333 }
8334
8335 static int
8336 lsarpc_dissect_element_lsa_OpenPolicy_attr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8337 {
8338         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenPolicy_attr_, NDR_POINTER_REF, "Pointer to Attr (lsa_ObjectAttribute)",hf_lsarpc_lsa_OpenPolicy_attr);
8339
8340         return offset;
8341 }
8342
8343 static int
8344 lsarpc_dissect_element_lsa_OpenPolicy_attr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8345 {
8346         offset = lsarpc_dissect_struct_lsa_ObjectAttribute(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_OpenPolicy_attr,0);
8347
8348         return offset;
8349 }
8350
8351 static int
8352 lsarpc_dissect_element_lsa_OpenPolicy_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8353 {
8354         offset = lsarpc_dissect_bitmap_lsa_PolicyAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenPolicy_access_mask, 0);
8355
8356         return offset;
8357 }
8358
8359 static int
8360 lsarpc_dissect_element_lsa_OpenPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8361 {
8362         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenPolicy_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_OpenPolicy_handle);
8363
8364         return offset;
8365 }
8366
8367 static int
8368 lsarpc_dissect_element_lsa_OpenPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8369 {
8370         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenPolicy_handle, 0);
8371
8372         return offset;
8373 }
8374
8375 /* IDL: NTSTATUS lsa_OpenPolicy( */
8376 /* IDL: [unique(1)] [in] uint16 *system_name, */
8377 /* IDL: [ref] [in] lsa_ObjectAttribute *attr, */
8378 /* IDL: [in] lsa_PolicyAccessMask access_mask, */
8379 /* IDL: [out] [ref] policy_handle *handle */
8380 /* IDL: ); */
8381
8382 static int
8383 lsarpc_dissect_lsa_OpenPolicy_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8384 {
8385         guint32 status;
8386
8387         pinfo->dcerpc_procedure_name="lsa_OpenPolicy";
8388         offset = lsarpc_dissect_element_lsa_OpenPolicy_handle(tvb, offset, pinfo, tree, drep);
8389         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8390
8391         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8392
8393         if (status != 0)
8394                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8395
8396         return offset;
8397 }
8398
8399 static int
8400 lsarpc_dissect_lsa_OpenPolicy_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8401 {
8402         pinfo->dcerpc_procedure_name="lsa_OpenPolicy";
8403         offset = lsarpc_dissect_element_lsa_OpenPolicy_system_name(tvb, offset, pinfo, tree, drep);
8404         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8405         offset = lsarpc_dissect_element_lsa_OpenPolicy_attr(tvb, offset, pinfo, tree, drep);
8406         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8407         offset = lsarpc_dissect_element_lsa_OpenPolicy_access_mask(tvb, offset, pinfo, tree, drep);
8408         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8409         return offset;
8410 }
8411
8412 static int
8413 lsarpc_dissect_element_lsa_QueryInfoPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8414 {
8415         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryInfoPolicy_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_QueryInfoPolicy_handle);
8416
8417         return offset;
8418 }
8419
8420 static int
8421 lsarpc_dissect_element_lsa_QueryInfoPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8422 {
8423         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryInfoPolicy_handle, 0);
8424
8425         return offset;
8426 }
8427
8428 static int
8429 lsarpc_dissect_element_lsa_QueryInfoPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8430 {
8431         offset = lsarpc_dissect_enum_lsa_PolicyInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryInfoPolicy_level, 0);
8432
8433         return offset;
8434 }
8435
8436 static int
8437 lsarpc_dissect_element_lsa_QueryInfoPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8438 {
8439         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryInfoPolicy_info_, NDR_POINTER_REF, "Pointer to Info (lsa_PolicyInformation)",hf_lsarpc_lsa_QueryInfoPolicy_info);
8440
8441         return offset;
8442 }
8443
8444 static int
8445 lsarpc_dissect_element_lsa_QueryInfoPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8446 {
8447         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryInfoPolicy_info__, NDR_POINTER_UNIQUE, "Pointer to Info (lsa_PolicyInformation)",hf_lsarpc_lsa_QueryInfoPolicy_info);
8448
8449         return offset;
8450 }
8451
8452 static int
8453 lsarpc_dissect_element_lsa_QueryInfoPolicy_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8454 {
8455         offset = lsarpc_dissect_lsa_PolicyInformation(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryInfoPolicy_info, *0);
8456
8457         return offset;
8458 }
8459
8460 /* IDL: NTSTATUS lsa_QueryInfoPolicy( */
8461 /* IDL: [ref] [in] policy_handle *handle, */
8462 /* IDL: [in] lsa_PolicyInfo level, */
8463 /* IDL: [out] [ref] [switch_is(level)] lsa_PolicyInformation **info */
8464 /* IDL: ); */
8465
8466 static int
8467 lsarpc_dissect_lsa_QueryInfoPolicy_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8468 {
8469         guint32 status;
8470
8471         pinfo->dcerpc_procedure_name="lsa_QueryInfoPolicy";
8472         offset = lsarpc_dissect_element_lsa_QueryInfoPolicy_info(tvb, offset, pinfo, tree, drep);
8473         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8474
8475         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8476
8477         if (status != 0)
8478                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8479
8480         return offset;
8481 }
8482
8483 static int
8484 lsarpc_dissect_lsa_QueryInfoPolicy_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8485 {
8486         pinfo->dcerpc_procedure_name="lsa_QueryInfoPolicy";
8487         offset = lsarpc_dissect_element_lsa_QueryInfoPolicy_handle(tvb, offset, pinfo, tree, drep);
8488         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8489         offset = lsarpc_dissect_element_lsa_QueryInfoPolicy_level(tvb, offset, pinfo, tree, drep);
8490         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8491         return offset;
8492 }
8493
8494 static int
8495 lsarpc_dissect_element_lsa_SetInfoPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8496 {
8497         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetInfoPolicy_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_SetInfoPolicy_handle);
8498
8499         return offset;
8500 }
8501
8502 static int
8503 lsarpc_dissect_element_lsa_SetInfoPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8504 {
8505         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInfoPolicy_handle, 0);
8506
8507         return offset;
8508 }
8509
8510 static int
8511 lsarpc_dissect_element_lsa_SetInfoPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8512 {
8513         offset = lsarpc_dissect_enum_lsa_PolicyInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInfoPolicy_level, 0);
8514
8515         return offset;
8516 }
8517
8518 static int
8519 lsarpc_dissect_element_lsa_SetInfoPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8520 {
8521         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetInfoPolicy_info_, NDR_POINTER_REF, "Pointer to Info (lsa_PolicyInformation)",hf_lsarpc_lsa_SetInfoPolicy_info);
8522
8523         return offset;
8524 }
8525
8526 static int
8527 lsarpc_dissect_element_lsa_SetInfoPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8528 {
8529         offset = lsarpc_dissect_lsa_PolicyInformation(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInfoPolicy_info, *0);
8530
8531         return offset;
8532 }
8533
8534 /* IDL: NTSTATUS lsa_SetInfoPolicy( */
8535 /* IDL: [ref] [in] policy_handle *handle, */
8536 /* IDL: [in] lsa_PolicyInfo level, */
8537 /* IDL: [ref] [in] [switch_is(level)] lsa_PolicyInformation *info */
8538 /* IDL: ); */
8539
8540 static int
8541 lsarpc_dissect_lsa_SetInfoPolicy_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8542 {
8543         guint32 status;
8544
8545         pinfo->dcerpc_procedure_name="lsa_SetInfoPolicy";
8546         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8547
8548         if (status != 0)
8549                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8550
8551         return offset;
8552 }
8553
8554 static int
8555 lsarpc_dissect_lsa_SetInfoPolicy_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8556 {
8557         pinfo->dcerpc_procedure_name="lsa_SetInfoPolicy";
8558         offset = lsarpc_dissect_element_lsa_SetInfoPolicy_handle(tvb, offset, pinfo, tree, drep);
8559         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8560         offset = lsarpc_dissect_element_lsa_SetInfoPolicy_level(tvb, offset, pinfo, tree, drep);
8561         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8562         offset = lsarpc_dissect_element_lsa_SetInfoPolicy_info(tvb, offset, pinfo, tree, drep);
8563         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8564         return offset;
8565 }
8566
8567 /* IDL: NTSTATUS lsa_ClearAuditLog( */
8568 /* IDL:  */
8569 /* IDL: ); */
8570
8571 static int
8572 lsarpc_dissect_lsa_ClearAuditLog_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8573 {
8574         guint32 status;
8575
8576         pinfo->dcerpc_procedure_name="lsa_ClearAuditLog";
8577         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8578
8579         if (status != 0)
8580                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8581
8582         return offset;
8583 }
8584
8585 static int
8586 lsarpc_dissect_lsa_ClearAuditLog_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8587 {
8588         pinfo->dcerpc_procedure_name="lsa_ClearAuditLog";
8589         return offset;
8590 }
8591
8592 static int
8593 lsarpc_dissect_element_lsa_CreateAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8594 {
8595         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateAccount_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_CreateAccount_handle);
8596
8597         return offset;
8598 }
8599
8600 static int
8601 lsarpc_dissect_element_lsa_CreateAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8602 {
8603         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateAccount_handle, 0);
8604
8605         return offset;
8606 }
8607
8608 static int
8609 lsarpc_dissect_element_lsa_CreateAccount_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8610 {
8611         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateAccount_sid_, NDR_POINTER_REF, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_CreateAccount_sid);
8612
8613         return offset;
8614 }
8615
8616 static int
8617 lsarpc_dissect_element_lsa_CreateAccount_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8618 {
8619         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_CreateAccount_sid,0);
8620
8621         return offset;
8622 }
8623
8624 static int
8625 lsarpc_dissect_element_lsa_CreateAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8626 {
8627         offset = lsarpc_dissect_bitmap_lsa_AccountAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateAccount_access_mask, 0);
8628
8629         return offset;
8630 }
8631
8632 static int
8633 lsarpc_dissect_element_lsa_CreateAccount_acct_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8634 {
8635         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateAccount_acct_handle_, NDR_POINTER_REF, "Pointer to Acct Handle (policy_handle)",hf_lsarpc_lsa_CreateAccount_acct_handle);
8636
8637         return offset;
8638 }
8639
8640 static int
8641 lsarpc_dissect_element_lsa_CreateAccount_acct_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8642 {
8643         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateAccount_acct_handle, 0);
8644
8645         return offset;
8646 }
8647
8648 /* IDL: NTSTATUS lsa_CreateAccount( */
8649 /* IDL: [ref] [in] policy_handle *handle, */
8650 /* IDL: [in] [ref] dom_sid2 *sid, */
8651 /* IDL: [in] lsa_AccountAccessMask access_mask, */
8652 /* IDL: [out] [ref] policy_handle *acct_handle */
8653 /* IDL: ); */
8654
8655 static int
8656 lsarpc_dissect_lsa_CreateAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8657 {
8658         guint32 status;
8659
8660         pinfo->dcerpc_procedure_name="lsa_CreateAccount";
8661         offset = lsarpc_dissect_element_lsa_CreateAccount_acct_handle(tvb, offset, pinfo, tree, drep);
8662         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8663
8664         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8665
8666         if (status != 0)
8667                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8668
8669         return offset;
8670 }
8671
8672 static int
8673 lsarpc_dissect_lsa_CreateAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8674 {
8675         pinfo->dcerpc_procedure_name="lsa_CreateAccount";
8676         offset = lsarpc_dissect_element_lsa_CreateAccount_handle(tvb, offset, pinfo, tree, drep);
8677         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8678         offset = lsarpc_dissect_element_lsa_CreateAccount_sid(tvb, offset, pinfo, tree, drep);
8679         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8680         offset = lsarpc_dissect_element_lsa_CreateAccount_access_mask(tvb, offset, pinfo, tree, drep);
8681         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8682         return offset;
8683 }
8684
8685 static int
8686 lsarpc_dissect_element_lsa_EnumAccounts_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8687 {
8688         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccounts_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_EnumAccounts_handle);
8689
8690         return offset;
8691 }
8692
8693 static int
8694 lsarpc_dissect_element_lsa_EnumAccounts_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8695 {
8696         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumAccounts_handle, 0);
8697
8698         return offset;
8699 }
8700
8701 static int
8702 lsarpc_dissect_element_lsa_EnumAccounts_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8703 {
8704         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccounts_resume_handle_, NDR_POINTER_REF, "Pointer to Resume Handle (uint32)",hf_lsarpc_lsa_EnumAccounts_resume_handle);
8705
8706         return offset;
8707 }
8708
8709 static int
8710 lsarpc_dissect_element_lsa_EnumAccounts_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8711 {
8712         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumAccounts_resume_handle, 0);
8713
8714         return offset;
8715 }
8716
8717 static int
8718 lsarpc_dissect_element_lsa_EnumAccounts_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8719 {
8720         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccounts_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_SidArray)",hf_lsarpc_lsa_EnumAccounts_sids);
8721
8722         return offset;
8723 }
8724
8725 static int
8726 lsarpc_dissect_element_lsa_EnumAccounts_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8727 {
8728         offset = lsarpc_dissect_struct_lsa_SidArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumAccounts_sids,0);
8729
8730         return offset;
8731 }
8732
8733 static int
8734 lsarpc_dissect_element_lsa_EnumAccounts_num_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8735 {
8736         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumAccounts_num_entries, 0);
8737
8738         return offset;
8739 }
8740
8741 /* IDL: NTSTATUS lsa_EnumAccounts( */
8742 /* IDL: [ref] [in] policy_handle *handle, */
8743 /* IDL: [out] [in] [ref] uint32 *resume_handle, */
8744 /* IDL: [out] [ref] lsa_SidArray *sids, */
8745 /* IDL: [in] [range(0,8192)] uint32 num_entries */
8746 /* IDL: ); */
8747
8748 static int
8749 lsarpc_dissect_lsa_EnumAccounts_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8750 {
8751         guint32 status;
8752
8753         pinfo->dcerpc_procedure_name="lsa_EnumAccounts";
8754         offset = lsarpc_dissect_element_lsa_EnumAccounts_resume_handle(tvb, offset, pinfo, tree, drep);
8755         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8756
8757         offset = lsarpc_dissect_element_lsa_EnumAccounts_sids(tvb, offset, pinfo, tree, drep);
8758         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8759
8760         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8761
8762         if (status != 0)
8763                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8764
8765         return offset;
8766 }
8767
8768 static int
8769 lsarpc_dissect_lsa_EnumAccounts_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8770 {
8771         pinfo->dcerpc_procedure_name="lsa_EnumAccounts";
8772         offset = lsarpc_dissect_element_lsa_EnumAccounts_handle(tvb, offset, pinfo, tree, drep);
8773         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8774         offset = lsarpc_dissect_element_lsa_EnumAccounts_resume_handle(tvb, offset, pinfo, tree, drep);
8775         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8776         offset = lsarpc_dissect_element_lsa_EnumAccounts_num_entries(tvb, offset, pinfo, tree, drep);
8777         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8778         return offset;
8779 }
8780
8781 static int
8782 lsarpc_dissect_element_lsa_CreateTrustedDomain_policy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8783 {
8784         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomain_policy_handle_, NDR_POINTER_REF, "Pointer to Policy Handle (policy_handle)",hf_lsarpc_lsa_CreateTrustedDomain_policy_handle);
8785
8786         return offset;
8787 }
8788
8789 static int
8790 lsarpc_dissect_element_lsa_CreateTrustedDomain_policy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8791 {
8792         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomain_policy_handle, 0);
8793
8794         return offset;
8795 }
8796
8797 static int
8798 lsarpc_dissect_element_lsa_CreateTrustedDomain_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8799 {
8800         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomain_info_, NDR_POINTER_REF, "Pointer to Info (lsa_DomainInfo)",hf_lsarpc_lsa_CreateTrustedDomain_info);
8801
8802         return offset;
8803 }
8804
8805 static int
8806 lsarpc_dissect_element_lsa_CreateTrustedDomain_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8807 {
8808         offset = lsarpc_dissect_struct_lsa_DomainInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_CreateTrustedDomain_info,0);
8809
8810         return offset;
8811 }
8812
8813 static int
8814 lsarpc_dissect_element_lsa_CreateTrustedDomain_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8815 {
8816         offset = lsarpc_dissect_bitmap_lsa_TrustedAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomain_access_mask, 0);
8817
8818         return offset;
8819 }
8820
8821 static int
8822 lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8823 {
8824         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle_, NDR_POINTER_REF, "Pointer to Trustdom Handle (policy_handle)",hf_lsarpc_lsa_CreateTrustedDomain_trustdom_handle);
8825
8826         return offset;
8827 }
8828
8829 static int
8830 lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8831 {
8832         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomain_trustdom_handle, 0);
8833
8834         return offset;
8835 }
8836
8837 /* IDL: NTSTATUS lsa_CreateTrustedDomain( */
8838 /* IDL: [ref] [in] policy_handle *policy_handle, */
8839 /* IDL: [ref] [in] lsa_DomainInfo *info, */
8840 /* IDL: [in] lsa_TrustedAccessMask access_mask, */
8841 /* IDL: [out] [ref] policy_handle *trustdom_handle */
8842 /* IDL: ); */
8843
8844 static int
8845 lsarpc_dissect_lsa_CreateTrustedDomain_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8846 {
8847         guint32 status;
8848
8849         pinfo->dcerpc_procedure_name="lsa_CreateTrustedDomain";
8850         offset = lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle(tvb, offset, pinfo, tree, drep);
8851         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8852
8853         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8854
8855         if (status != 0)
8856                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8857
8858         return offset;
8859 }
8860
8861 static int
8862 lsarpc_dissect_lsa_CreateTrustedDomain_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8863 {
8864         pinfo->dcerpc_procedure_name="lsa_CreateTrustedDomain";
8865         offset = lsarpc_dissect_element_lsa_CreateTrustedDomain_policy_handle(tvb, offset, pinfo, tree, drep);
8866         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8867         offset = lsarpc_dissect_element_lsa_CreateTrustedDomain_info(tvb, offset, pinfo, tree, drep);
8868         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8869         offset = lsarpc_dissect_element_lsa_CreateTrustedDomain_access_mask(tvb, offset, pinfo, tree, drep);
8870         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8871         return offset;
8872 }
8873
8874 static int
8875 lsarpc_dissect_element_lsa_EnumTrustDom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8876 {
8877         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumTrustDom_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_EnumTrustDom_handle);
8878
8879         return offset;
8880 }
8881
8882 static int
8883 lsarpc_dissect_element_lsa_EnumTrustDom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8884 {
8885         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumTrustDom_handle, 0);
8886
8887         return offset;
8888 }
8889
8890 static int
8891 lsarpc_dissect_element_lsa_EnumTrustDom_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8892 {
8893         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumTrustDom_resume_handle_, NDR_POINTER_REF, "Pointer to Resume Handle (uint32)",hf_lsarpc_lsa_EnumTrustDom_resume_handle);
8894
8895         return offset;
8896 }
8897
8898 static int
8899 lsarpc_dissect_element_lsa_EnumTrustDom_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8900 {
8901         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumTrustDom_resume_handle, 0);
8902
8903         return offset;
8904 }
8905
8906 static int
8907 lsarpc_dissect_element_lsa_EnumTrustDom_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8908 {
8909         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumTrustDom_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_DomainList)",hf_lsarpc_lsa_EnumTrustDom_domains);
8910
8911         return offset;
8912 }
8913
8914 static int
8915 lsarpc_dissect_element_lsa_EnumTrustDom_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8916 {
8917         offset = lsarpc_dissect_struct_lsa_DomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumTrustDom_domains,0);
8918
8919         return offset;
8920 }
8921
8922 static int
8923 lsarpc_dissect_element_lsa_EnumTrustDom_max_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8924 {
8925         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumTrustDom_max_size, 0);
8926
8927         return offset;
8928 }
8929
8930 /* IDL: NTSTATUS lsa_EnumTrustDom( */
8931 /* IDL: [ref] [in] policy_handle *handle, */
8932 /* IDL: [out] [in] [ref] uint32 *resume_handle, */
8933 /* IDL: [out] [ref] lsa_DomainList *domains, */
8934 /* IDL: [in] uint32 max_size */
8935 /* IDL: ); */
8936
8937 static int
8938 lsarpc_dissect_lsa_EnumTrustDom_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8939 {
8940         guint32 status;
8941
8942         pinfo->dcerpc_procedure_name="lsa_EnumTrustDom";
8943         offset = lsarpc_dissect_element_lsa_EnumTrustDom_resume_handle(tvb, offset, pinfo, tree, drep);
8944         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8945
8946         offset = lsarpc_dissect_element_lsa_EnumTrustDom_domains(tvb, offset, pinfo, tree, drep);
8947         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8948
8949         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
8950
8951         if (status != 0)
8952                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
8953
8954         return offset;
8955 }
8956
8957 static int
8958 lsarpc_dissect_lsa_EnumTrustDom_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8959 {
8960         pinfo->dcerpc_procedure_name="lsa_EnumTrustDom";
8961         offset = lsarpc_dissect_element_lsa_EnumTrustDom_handle(tvb, offset, pinfo, tree, drep);
8962         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8963         offset = lsarpc_dissect_element_lsa_EnumTrustDom_resume_handle(tvb, offset, pinfo, tree, drep);
8964         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8965         offset = lsarpc_dissect_element_lsa_EnumTrustDom_max_size(tvb, offset, pinfo, tree, drep);
8966         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
8967         return offset;
8968 }
8969
8970 static int
8971 lsarpc_dissect_element_lsa_LookupNames_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8972 {
8973         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupNames_handle);
8974
8975         return offset;
8976 }
8977
8978 static int
8979 lsarpc_dissect_element_lsa_LookupNames_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8980 {
8981         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames_handle, 0);
8982
8983         return offset;
8984 }
8985
8986 static int
8987 lsarpc_dissect_element_lsa_LookupNames_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8988 {
8989         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames_num_names, 0);
8990
8991         return offset;
8992 }
8993
8994 static int
8995 lsarpc_dissect_element_lsa_LookupNames_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
8996 {
8997         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames_names_);
8998
8999         return offset;
9000 }
9001
9002 static int
9003 lsarpc_dissect_element_lsa_LookupNames_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9004 {
9005         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames_names,0);
9006
9007         return offset;
9008 }
9009
9010 static int
9011 lsarpc_dissect_element_lsa_LookupNames_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9012 {
9013         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames_domains);
9014
9015         return offset;
9016 }
9017
9018 static int
9019 lsarpc_dissect_element_lsa_LookupNames_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9020 {
9021         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames_domains__, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames_domains);
9022
9023         return offset;
9024 }
9025
9026 static int
9027 lsarpc_dissect_element_lsa_LookupNames_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9028 {
9029         offset = lsarpc_dissect_struct_lsa_RefDomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames_domains,0);
9030
9031         return offset;
9032 }
9033
9034 static int
9035 lsarpc_dissect_element_lsa_LookupNames_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9036 {
9037         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_TransSidArray)",hf_lsarpc_lsa_LookupNames_sids);
9038
9039         return offset;
9040 }
9041
9042 static int
9043 lsarpc_dissect_element_lsa_LookupNames_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9044 {
9045         offset = lsarpc_dissect_struct_lsa_TransSidArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames_sids,0);
9046
9047         return offset;
9048 }
9049
9050 static int
9051 lsarpc_dissect_element_lsa_LookupNames_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9052 {
9053         offset = lsarpc_dissect_enum_lsa_LookupNamesLevel(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames_level, 0);
9054
9055         return offset;
9056 }
9057
9058 static int
9059 lsarpc_dissect_element_lsa_LookupNames_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9060 {
9061         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames_count_, NDR_POINTER_REF, "Pointer to Count (uint32)",hf_lsarpc_lsa_LookupNames_count);
9062
9063         return offset;
9064 }
9065
9066 static int
9067 lsarpc_dissect_element_lsa_LookupNames_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9068 {
9069         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames_count, 0);
9070
9071         return offset;
9072 }
9073
9074 /* IDL: NTSTATUS lsa_LookupNames( */
9075 /* IDL: [ref] [in] policy_handle *handle, */
9076 /* IDL: [in] [range(0,1000)] uint32 num_names, */
9077 /* IDL: [in] [size_is(num_names)] lsa_String names[*], */
9078 /* IDL: [out] [ref] lsa_RefDomainList **domains, */
9079 /* IDL: [out] [in] [ref] lsa_TransSidArray *sids, */
9080 /* IDL: [in] lsa_LookupNamesLevel level, */
9081 /* IDL: [out] [in] [ref] uint32 *count */
9082 /* IDL: ); */
9083
9084 static int
9085 lsarpc_dissect_lsa_LookupNames_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9086 {
9087         guint32 status;
9088
9089         pinfo->dcerpc_procedure_name="lsa_LookupNames";
9090         offset = lsarpc_dissect_element_lsa_LookupNames_domains(tvb, offset, pinfo, tree, drep);
9091         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9092
9093         offset = lsarpc_dissect_element_lsa_LookupNames_sids(tvb, offset, pinfo, tree, drep);
9094         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9095
9096         offset = lsarpc_dissect_element_lsa_LookupNames_count(tvb, offset, pinfo, tree, drep);
9097         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9098
9099         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9100
9101         if (status != 0)
9102                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9103
9104         return offset;
9105 }
9106
9107 static int
9108 lsarpc_dissect_lsa_LookupNames_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9109 {
9110         pinfo->dcerpc_procedure_name="lsa_LookupNames";
9111         offset = lsarpc_dissect_element_lsa_LookupNames_handle(tvb, offset, pinfo, tree, drep);
9112         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9113         offset = lsarpc_dissect_element_lsa_LookupNames_num_names(tvb, offset, pinfo, tree, drep);
9114         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9115         offset = lsarpc_dissect_element_lsa_LookupNames_names(tvb, offset, pinfo, tree, drep);
9116         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9117         offset = lsarpc_dissect_element_lsa_LookupNames_sids(tvb, offset, pinfo, tree, drep);
9118         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9119         offset = lsarpc_dissect_element_lsa_LookupNames_level(tvb, offset, pinfo, tree, drep);
9120         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9121         offset = lsarpc_dissect_element_lsa_LookupNames_count(tvb, offset, pinfo, tree, drep);
9122         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9123         return offset;
9124 }
9125
9126 static int
9127 lsarpc_dissect_element_lsa_LookupSids_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9128 {
9129         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupSids_handle);
9130
9131         return offset;
9132 }
9133
9134 static int
9135 lsarpc_dissect_element_lsa_LookupSids_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9136 {
9137         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids_handle, 0);
9138
9139         return offset;
9140 }
9141
9142 static int
9143 lsarpc_dissect_element_lsa_LookupSids_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9144 {
9145         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_SidArray)",hf_lsarpc_lsa_LookupSids_sids);
9146
9147         return offset;
9148 }
9149
9150 static int
9151 lsarpc_dissect_element_lsa_LookupSids_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9152 {
9153         offset = lsarpc_dissect_struct_lsa_SidArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids_sids,0);
9154
9155         return offset;
9156 }
9157
9158 static int
9159 lsarpc_dissect_element_lsa_LookupSids_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9160 {
9161         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupSids_domains);
9162
9163         return offset;
9164 }
9165
9166 static int
9167 lsarpc_dissect_element_lsa_LookupSids_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9168 {
9169         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids_domains__, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupSids_domains);
9170
9171         return offset;
9172 }
9173
9174 static int
9175 lsarpc_dissect_element_lsa_LookupSids_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9176 {
9177         offset = lsarpc_dissect_struct_lsa_RefDomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids_domains,0);
9178
9179         return offset;
9180 }
9181
9182 static int
9183 lsarpc_dissect_element_lsa_LookupSids_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9184 {
9185         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids_names_, NDR_POINTER_REF, "Pointer to Names (lsa_TransNameArray)",hf_lsarpc_lsa_LookupSids_names);
9186
9187         return offset;
9188 }
9189
9190 static int
9191 lsarpc_dissect_element_lsa_LookupSids_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9192 {
9193         offset = lsarpc_dissect_struct_lsa_TransNameArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids_names,0);
9194
9195         return offset;
9196 }
9197
9198 static int
9199 lsarpc_dissect_element_lsa_LookupSids_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9200 {
9201         offset = lsarpc_dissect_enum_lsa_LookupNamesLevel(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids_level, 0);
9202
9203         return offset;
9204 }
9205
9206 static int
9207 lsarpc_dissect_element_lsa_LookupSids_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9208 {
9209         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids_count_, NDR_POINTER_REF, "Pointer to Count (uint32)",hf_lsarpc_lsa_LookupSids_count);
9210
9211         return offset;
9212 }
9213
9214 static int
9215 lsarpc_dissect_element_lsa_LookupSids_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9216 {
9217         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids_count, 0);
9218
9219         return offset;
9220 }
9221
9222 /* IDL: NTSTATUS lsa_LookupSids( */
9223 /* IDL: [ref] [in] policy_handle *handle, */
9224 /* IDL: [in] [ref] lsa_SidArray *sids, */
9225 /* IDL: [out] [ref] lsa_RefDomainList **domains, */
9226 /* IDL: [out] [in] [ref] lsa_TransNameArray *names, */
9227 /* IDL: [in] lsa_LookupNamesLevel level, */
9228 /* IDL: [out] [in] [ref] uint32 *count */
9229 /* IDL: ); */
9230
9231 static int
9232 lsarpc_dissect_lsa_LookupSids_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9233 {
9234         guint32 status;
9235
9236         pinfo->dcerpc_procedure_name="lsa_LookupSids";
9237         offset = lsarpc_dissect_element_lsa_LookupSids_domains(tvb, offset, pinfo, tree, drep);
9238         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9239
9240         offset = lsarpc_dissect_element_lsa_LookupSids_names(tvb, offset, pinfo, tree, drep);
9241         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9242
9243         offset = lsarpc_dissect_element_lsa_LookupSids_count(tvb, offset, pinfo, tree, drep);
9244         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9245
9246         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9247
9248         if (status != 0)
9249                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9250
9251         return offset;
9252 }
9253
9254 static int
9255 lsarpc_dissect_lsa_LookupSids_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9256 {
9257         pinfo->dcerpc_procedure_name="lsa_LookupSids";
9258         offset = lsarpc_dissect_element_lsa_LookupSids_handle(tvb, offset, pinfo, tree, drep);
9259         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9260         offset = lsarpc_dissect_element_lsa_LookupSids_sids(tvb, offset, pinfo, tree, drep);
9261         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9262         offset = lsarpc_dissect_element_lsa_LookupSids_names(tvb, offset, pinfo, tree, drep);
9263         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9264         offset = lsarpc_dissect_element_lsa_LookupSids_level(tvb, offset, pinfo, tree, drep);
9265         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9266         offset = lsarpc_dissect_element_lsa_LookupSids_count(tvb, offset, pinfo, tree, drep);
9267         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9268         return offset;
9269 }
9270
9271 static int
9272 lsarpc_dissect_element_lsa_CreateSecret_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9273 {
9274         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateSecret_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_CreateSecret_handle);
9275
9276         return offset;
9277 }
9278
9279 static int
9280 lsarpc_dissect_element_lsa_CreateSecret_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9281 {
9282         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateSecret_handle, 0);
9283
9284         return offset;
9285 }
9286
9287 static int
9288 lsarpc_dissect_element_lsa_CreateSecret_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9289 {
9290         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_CreateSecret_name,0);
9291
9292         return offset;
9293 }
9294
9295 static int
9296 lsarpc_dissect_element_lsa_CreateSecret_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9297 {
9298         offset = lsarpc_dissect_bitmap_lsa_SecretAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateSecret_access_mask, 0);
9299
9300         return offset;
9301 }
9302
9303 static int
9304 lsarpc_dissect_element_lsa_CreateSecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9305 {
9306         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateSecret_sec_handle_, NDR_POINTER_REF, "Pointer to Sec Handle (policy_handle)",hf_lsarpc_lsa_CreateSecret_sec_handle);
9307
9308         return offset;
9309 }
9310
9311 static int
9312 lsarpc_dissect_element_lsa_CreateSecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9313 {
9314         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateSecret_sec_handle, 0);
9315
9316         return offset;
9317 }
9318
9319 /* IDL: NTSTATUS lsa_CreateSecret( */
9320 /* IDL: [ref] [in] policy_handle *handle, */
9321 /* IDL: [in] lsa_String name, */
9322 /* IDL: [in] lsa_SecretAccessMask access_mask, */
9323 /* IDL: [out] [ref] policy_handle *sec_handle */
9324 /* IDL: ); */
9325
9326 static int
9327 lsarpc_dissect_lsa_CreateSecret_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9328 {
9329         guint32 status;
9330
9331         pinfo->dcerpc_procedure_name="lsa_CreateSecret";
9332         offset = lsarpc_dissect_element_lsa_CreateSecret_sec_handle(tvb, offset, pinfo, tree, drep);
9333         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9334
9335         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9336
9337         if (status != 0)
9338                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9339
9340         return offset;
9341 }
9342
9343 static int
9344 lsarpc_dissect_lsa_CreateSecret_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9345 {
9346         pinfo->dcerpc_procedure_name="lsa_CreateSecret";
9347         offset = lsarpc_dissect_element_lsa_CreateSecret_handle(tvb, offset, pinfo, tree, drep);
9348         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9349         offset = lsarpc_dissect_element_lsa_CreateSecret_name(tvb, offset, pinfo, tree, drep);
9350         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9351         offset = lsarpc_dissect_element_lsa_CreateSecret_access_mask(tvb, offset, pinfo, tree, drep);
9352         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9353         return offset;
9354 }
9355
9356 static int
9357 lsarpc_dissect_element_lsa_OpenAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9358 {
9359         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenAccount_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_OpenAccount_handle);
9360
9361         return offset;
9362 }
9363
9364 static int
9365 lsarpc_dissect_element_lsa_OpenAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9366 {
9367         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenAccount_handle, 0);
9368
9369         return offset;
9370 }
9371
9372 static int
9373 lsarpc_dissect_element_lsa_OpenAccount_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9374 {
9375         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenAccount_sid_, NDR_POINTER_REF, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_OpenAccount_sid);
9376
9377         return offset;
9378 }
9379
9380 static int
9381 lsarpc_dissect_element_lsa_OpenAccount_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9382 {
9383         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_OpenAccount_sid,0);
9384
9385         return offset;
9386 }
9387
9388 static int
9389 lsarpc_dissect_element_lsa_OpenAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9390 {
9391         offset = lsarpc_dissect_bitmap_lsa_AccountAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenAccount_access_mask, 0);
9392
9393         return offset;
9394 }
9395
9396 static int
9397 lsarpc_dissect_element_lsa_OpenAccount_acct_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9398 {
9399         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenAccount_acct_handle_, NDR_POINTER_REF, "Pointer to Acct Handle (policy_handle)",hf_lsarpc_lsa_OpenAccount_acct_handle);
9400
9401         return offset;
9402 }
9403
9404 static int
9405 lsarpc_dissect_element_lsa_OpenAccount_acct_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9406 {
9407         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenAccount_acct_handle, 0);
9408
9409         return offset;
9410 }
9411
9412 /* IDL: NTSTATUS lsa_OpenAccount( */
9413 /* IDL: [ref] [in] policy_handle *handle, */
9414 /* IDL: [in] [ref] dom_sid2 *sid, */
9415 /* IDL: [in] lsa_AccountAccessMask access_mask, */
9416 /* IDL: [out] [ref] policy_handle *acct_handle */
9417 /* IDL: ); */
9418
9419 static int
9420 lsarpc_dissect_lsa_OpenAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9421 {
9422         guint32 status;
9423
9424         pinfo->dcerpc_procedure_name="lsa_OpenAccount";
9425         offset = lsarpc_dissect_element_lsa_OpenAccount_acct_handle(tvb, offset, pinfo, tree, drep);
9426         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9427
9428         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9429
9430         if (status != 0)
9431                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9432
9433         return offset;
9434 }
9435
9436 static int
9437 lsarpc_dissect_lsa_OpenAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9438 {
9439         pinfo->dcerpc_procedure_name="lsa_OpenAccount";
9440         offset = lsarpc_dissect_element_lsa_OpenAccount_handle(tvb, offset, pinfo, tree, drep);
9441         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9442         offset = lsarpc_dissect_element_lsa_OpenAccount_sid(tvb, offset, pinfo, tree, drep);
9443         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9444         offset = lsarpc_dissect_element_lsa_OpenAccount_access_mask(tvb, offset, pinfo, tree, drep);
9445         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9446         return offset;
9447 }
9448
9449 static int
9450 lsarpc_dissect_element_lsa_EnumPrivsAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9451 {
9452         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumPrivsAccount_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_EnumPrivsAccount_handle);
9453
9454         return offset;
9455 }
9456
9457 static int
9458 lsarpc_dissect_element_lsa_EnumPrivsAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9459 {
9460         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumPrivsAccount_handle, 0);
9461
9462         return offset;
9463 }
9464
9465 static int
9466 lsarpc_dissect_element_lsa_EnumPrivsAccount_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9467 {
9468         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumPrivsAccount_privs_, NDR_POINTER_REF, "Pointer to Privs (lsa_PrivilegeSet)",hf_lsarpc_lsa_EnumPrivsAccount_privs);
9469
9470         return offset;
9471 }
9472
9473 static int
9474 lsarpc_dissect_element_lsa_EnumPrivsAccount_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9475 {
9476         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumPrivsAccount_privs__, NDR_POINTER_UNIQUE, "Pointer to Privs (lsa_PrivilegeSet)",hf_lsarpc_lsa_EnumPrivsAccount_privs);
9477
9478         return offset;
9479 }
9480
9481 static int
9482 lsarpc_dissect_element_lsa_EnumPrivsAccount_privs__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9483 {
9484         offset = lsarpc_dissect_struct_lsa_PrivilegeSet(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumPrivsAccount_privs,0);
9485
9486         return offset;
9487 }
9488
9489 /* IDL: NTSTATUS lsa_EnumPrivsAccount( */
9490 /* IDL: [ref] [in] policy_handle *handle, */
9491 /* IDL: [out] [ref] lsa_PrivilegeSet **privs */
9492 /* IDL: ); */
9493
9494 static int
9495 lsarpc_dissect_lsa_EnumPrivsAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9496 {
9497         guint32 status;
9498
9499         pinfo->dcerpc_procedure_name="lsa_EnumPrivsAccount";
9500         offset = lsarpc_dissect_element_lsa_EnumPrivsAccount_privs(tvb, offset, pinfo, tree, drep);
9501         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9502
9503         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9504
9505         if (status != 0)
9506                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9507
9508         return offset;
9509 }
9510
9511 static int
9512 lsarpc_dissect_lsa_EnumPrivsAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9513 {
9514         pinfo->dcerpc_procedure_name="lsa_EnumPrivsAccount";
9515         offset = lsarpc_dissect_element_lsa_EnumPrivsAccount_handle(tvb, offset, pinfo, tree, drep);
9516         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9517         return offset;
9518 }
9519
9520 static int
9521 lsarpc_dissect_element_lsa_AddPrivilegesToAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9522 {
9523         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AddPrivilegesToAccount_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_AddPrivilegesToAccount_handle);
9524
9525         return offset;
9526 }
9527
9528 static int
9529 lsarpc_dissect_element_lsa_AddPrivilegesToAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9530 {
9531         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AddPrivilegesToAccount_handle, 0);
9532
9533         return offset;
9534 }
9535
9536 static int
9537 lsarpc_dissect_element_lsa_AddPrivilegesToAccount_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9538 {
9539         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AddPrivilegesToAccount_privs_, NDR_POINTER_REF, "Pointer to Privs (lsa_PrivilegeSet)",hf_lsarpc_lsa_AddPrivilegesToAccount_privs);
9540
9541         return offset;
9542 }
9543
9544 static int
9545 lsarpc_dissect_element_lsa_AddPrivilegesToAccount_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9546 {
9547         offset = lsarpc_dissect_struct_lsa_PrivilegeSet(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_AddPrivilegesToAccount_privs,0);
9548
9549         return offset;
9550 }
9551
9552 /* IDL: NTSTATUS lsa_AddPrivilegesToAccount( */
9553 /* IDL: [ref] [in] policy_handle *handle, */
9554 /* IDL: [in] [ref] lsa_PrivilegeSet *privs */
9555 /* IDL: ); */
9556
9557 static int
9558 lsarpc_dissect_lsa_AddPrivilegesToAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9559 {
9560         guint32 status;
9561
9562         pinfo->dcerpc_procedure_name="lsa_AddPrivilegesToAccount";
9563         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9564
9565         if (status != 0)
9566                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9567
9568         return offset;
9569 }
9570
9571 static int
9572 lsarpc_dissect_lsa_AddPrivilegesToAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9573 {
9574         pinfo->dcerpc_procedure_name="lsa_AddPrivilegesToAccount";
9575         offset = lsarpc_dissect_element_lsa_AddPrivilegesToAccount_handle(tvb, offset, pinfo, tree, drep);
9576         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9577         offset = lsarpc_dissect_element_lsa_AddPrivilegesToAccount_privs(tvb, offset, pinfo, tree, drep);
9578         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9579         return offset;
9580 }
9581
9582 static int
9583 lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9584 {
9585         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_RemovePrivilegesFromAccount_handle);
9586
9587         return offset;
9588 }
9589
9590 static int
9591 lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9592 {
9593         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RemovePrivilegesFromAccount_handle, 0);
9594
9595         return offset;
9596 }
9597
9598 static int
9599 lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_remove_all(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9600 {
9601         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RemovePrivilegesFromAccount_remove_all, 0);
9602
9603         return offset;
9604 }
9605
9606 static int
9607 lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_privs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9608 {
9609         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_privs_, NDR_POINTER_UNIQUE, "Pointer to Privs (lsa_PrivilegeSet)",hf_lsarpc_lsa_RemovePrivilegesFromAccount_privs);
9610
9611         return offset;
9612 }
9613
9614 static int
9615 lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_privs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9616 {
9617         offset = lsarpc_dissect_struct_lsa_PrivilegeSet(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_RemovePrivilegesFromAccount_privs,0);
9618
9619         return offset;
9620 }
9621
9622 /* IDL: NTSTATUS lsa_RemovePrivilegesFromAccount( */
9623 /* IDL: [ref] [in] policy_handle *handle, */
9624 /* IDL: [in] uint8 remove_all, */
9625 /* IDL: [unique(1)] [in] lsa_PrivilegeSet *privs */
9626 /* IDL: ); */
9627
9628 static int
9629 lsarpc_dissect_lsa_RemovePrivilegesFromAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9630 {
9631         guint32 status;
9632
9633         pinfo->dcerpc_procedure_name="lsa_RemovePrivilegesFromAccount";
9634         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9635
9636         if (status != 0)
9637                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9638
9639         return offset;
9640 }
9641
9642 static int
9643 lsarpc_dissect_lsa_RemovePrivilegesFromAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9644 {
9645         pinfo->dcerpc_procedure_name="lsa_RemovePrivilegesFromAccount";
9646         offset = lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_handle(tvb, offset, pinfo, tree, drep);
9647         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9648         offset = lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_remove_all(tvb, offset, pinfo, tree, drep);
9649         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9650         offset = lsarpc_dissect_element_lsa_RemovePrivilegesFromAccount_privs(tvb, offset, pinfo, tree, drep);
9651         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9652         return offset;
9653 }
9654
9655 /* IDL: NTSTATUS lsa_GetQuotasForAccount( */
9656 /* IDL:  */
9657 /* IDL: ); */
9658
9659 static int
9660 lsarpc_dissect_lsa_GetQuotasForAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9661 {
9662         guint32 status;
9663
9664         pinfo->dcerpc_procedure_name="lsa_GetQuotasForAccount";
9665         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9666
9667         if (status != 0)
9668                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9669
9670         return offset;
9671 }
9672
9673 static int
9674 lsarpc_dissect_lsa_GetQuotasForAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9675 {
9676         pinfo->dcerpc_procedure_name="lsa_GetQuotasForAccount";
9677         return offset;
9678 }
9679
9680 /* IDL: NTSTATUS lsa_SetQuotasForAccount( */
9681 /* IDL:  */
9682 /* IDL: ); */
9683
9684 static int
9685 lsarpc_dissect_lsa_SetQuotasForAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9686 {
9687         guint32 status;
9688
9689         pinfo->dcerpc_procedure_name="lsa_SetQuotasForAccount";
9690         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9691
9692         if (status != 0)
9693                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9694
9695         return offset;
9696 }
9697
9698 static int
9699 lsarpc_dissect_lsa_SetQuotasForAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9700 {
9701         pinfo->dcerpc_procedure_name="lsa_SetQuotasForAccount";
9702         return offset;
9703 }
9704
9705 static int
9706 lsarpc_dissect_element_lsa_GetSystemAccessAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9707 {
9708         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_GetSystemAccessAccount_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_GetSystemAccessAccount_handle);
9709
9710         return offset;
9711 }
9712
9713 static int
9714 lsarpc_dissect_element_lsa_GetSystemAccessAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9715 {
9716         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_GetSystemAccessAccount_handle, 0);
9717
9718         return offset;
9719 }
9720
9721 static int
9722 lsarpc_dissect_element_lsa_GetSystemAccessAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9723 {
9724         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_GetSystemAccessAccount_access_mask_, NDR_POINTER_REF, "Pointer to Access Mask (lsa_AccountAccessMask)",hf_lsarpc_lsa_GetSystemAccessAccount_access_mask);
9725
9726         return offset;
9727 }
9728
9729 static int
9730 lsarpc_dissect_element_lsa_GetSystemAccessAccount_access_mask_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9731 {
9732         offset = lsarpc_dissect_bitmap_lsa_AccountAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_GetSystemAccessAccount_access_mask, 0);
9733
9734         return offset;
9735 }
9736
9737 /* IDL: NTSTATUS lsa_GetSystemAccessAccount( */
9738 /* IDL: [ref] [in] policy_handle *handle, */
9739 /* IDL: [out] [ref] lsa_AccountAccessMask *access_mask */
9740 /* IDL: ); */
9741
9742 static int
9743 lsarpc_dissect_lsa_GetSystemAccessAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9744 {
9745         guint32 status;
9746
9747         pinfo->dcerpc_procedure_name="lsa_GetSystemAccessAccount";
9748         offset = lsarpc_dissect_element_lsa_GetSystemAccessAccount_access_mask(tvb, offset, pinfo, tree, drep);
9749         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9750
9751         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9752
9753         if (status != 0)
9754                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9755
9756         return offset;
9757 }
9758
9759 static int
9760 lsarpc_dissect_lsa_GetSystemAccessAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9761 {
9762         pinfo->dcerpc_procedure_name="lsa_GetSystemAccessAccount";
9763         offset = lsarpc_dissect_element_lsa_GetSystemAccessAccount_handle(tvb, offset, pinfo, tree, drep);
9764         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9765         return offset;
9766 }
9767
9768 static int
9769 lsarpc_dissect_element_lsa_SetSystemAccessAccount_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9770 {
9771         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetSystemAccessAccount_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_SetSystemAccessAccount_handle);
9772
9773         return offset;
9774 }
9775
9776 static int
9777 lsarpc_dissect_element_lsa_SetSystemAccessAccount_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9778 {
9779         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetSystemAccessAccount_handle, 0);
9780
9781         return offset;
9782 }
9783
9784 static int
9785 lsarpc_dissect_element_lsa_SetSystemAccessAccount_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9786 {
9787         offset = lsarpc_dissect_bitmap_lsa_AccountAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetSystemAccessAccount_access_mask, 0);
9788
9789         return offset;
9790 }
9791
9792 /* IDL: NTSTATUS lsa_SetSystemAccessAccount( */
9793 /* IDL: [ref] [in] policy_handle *handle, */
9794 /* IDL: [in] lsa_AccountAccessMask access_mask */
9795 /* IDL: ); */
9796
9797 static int
9798 lsarpc_dissect_lsa_SetSystemAccessAccount_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9799 {
9800         guint32 status;
9801
9802         pinfo->dcerpc_procedure_name="lsa_SetSystemAccessAccount";
9803         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9804
9805         if (status != 0)
9806                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9807
9808         return offset;
9809 }
9810
9811 static int
9812 lsarpc_dissect_lsa_SetSystemAccessAccount_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9813 {
9814         pinfo->dcerpc_procedure_name="lsa_SetSystemAccessAccount";
9815         offset = lsarpc_dissect_element_lsa_SetSystemAccessAccount_handle(tvb, offset, pinfo, tree, drep);
9816         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9817         offset = lsarpc_dissect_element_lsa_SetSystemAccessAccount_access_mask(tvb, offset, pinfo, tree, drep);
9818         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9819         return offset;
9820 }
9821
9822 static int
9823 lsarpc_dissect_element_lsa_OpenTrustedDomain_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9824 {
9825         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenTrustedDomain_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_OpenTrustedDomain_handle);
9826
9827         return offset;
9828 }
9829
9830 static int
9831 lsarpc_dissect_element_lsa_OpenTrustedDomain_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9832 {
9833         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenTrustedDomain_handle, 0);
9834
9835         return offset;
9836 }
9837
9838 static int
9839 lsarpc_dissect_element_lsa_OpenTrustedDomain_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9840 {
9841         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenTrustedDomain_sid_, NDR_POINTER_REF, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_OpenTrustedDomain_sid);
9842
9843         return offset;
9844 }
9845
9846 static int
9847 lsarpc_dissect_element_lsa_OpenTrustedDomain_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9848 {
9849         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_OpenTrustedDomain_sid,0);
9850
9851         return offset;
9852 }
9853
9854 static int
9855 lsarpc_dissect_element_lsa_OpenTrustedDomain_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9856 {
9857         offset = lsarpc_dissect_bitmap_lsa_TrustedAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenTrustedDomain_access_mask, 0);
9858
9859         return offset;
9860 }
9861
9862 static int
9863 lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9864 {
9865         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle_, NDR_POINTER_REF, "Pointer to Trustdom Handle (policy_handle)",hf_lsarpc_lsa_OpenTrustedDomain_trustdom_handle);
9866
9867         return offset;
9868 }
9869
9870 static int
9871 lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9872 {
9873         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenTrustedDomain_trustdom_handle, 0);
9874
9875         return offset;
9876 }
9877
9878 /* IDL: NTSTATUS lsa_OpenTrustedDomain( */
9879 /* IDL: [ref] [in] policy_handle *handle, */
9880 /* IDL: [ref] [in] dom_sid2 *sid, */
9881 /* IDL: [in] lsa_TrustedAccessMask access_mask, */
9882 /* IDL: [out] [ref] policy_handle *trustdom_handle */
9883 /* IDL: ); */
9884
9885 static int
9886 lsarpc_dissect_lsa_OpenTrustedDomain_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9887 {
9888         guint32 status;
9889
9890         pinfo->dcerpc_procedure_name="lsa_OpenTrustedDomain";
9891         offset = lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle(tvb, offset, pinfo, tree, drep);
9892         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9893
9894         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9895
9896         if (status != 0)
9897                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9898
9899         return offset;
9900 }
9901
9902 static int
9903 lsarpc_dissect_lsa_OpenTrustedDomain_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9904 {
9905         pinfo->dcerpc_procedure_name="lsa_OpenTrustedDomain";
9906         offset = lsarpc_dissect_element_lsa_OpenTrustedDomain_handle(tvb, offset, pinfo, tree, drep);
9907         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9908         offset = lsarpc_dissect_element_lsa_OpenTrustedDomain_sid(tvb, offset, pinfo, tree, drep);
9909         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9910         offset = lsarpc_dissect_element_lsa_OpenTrustedDomain_access_mask(tvb, offset, pinfo, tree, drep);
9911         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9912         return offset;
9913 }
9914
9915 static int
9916 lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9917 {
9918         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_trustdom_handle_, NDR_POINTER_REF, "Pointer to Trustdom Handle (policy_handle)",hf_lsarpc_lsa_QueryTrustedDomainInfo_trustdom_handle);
9919
9920         return offset;
9921 }
9922
9923 static int
9924 lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9925 {
9926         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfo_trustdom_handle, 0);
9927
9928         return offset;
9929 }
9930
9931 static int
9932 lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9933 {
9934         offset = lsarpc_dissect_enum_lsa_TrustDomInfoEnum(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfo_level, 0);
9935
9936         return offset;
9937 }
9938
9939 static int
9940 lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9941 {
9942         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_QueryTrustedDomainInfo_info);
9943
9944         return offset;
9945 }
9946
9947 static int
9948 lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9949 {
9950         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info__, NDR_POINTER_UNIQUE, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_QueryTrustedDomainInfo_info);
9951
9952         return offset;
9953 }
9954
9955 static int
9956 lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9957 {
9958         offset = lsarpc_dissect_lsa_TrustedDomainInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfo_info, *0);
9959
9960         return offset;
9961 }
9962
9963 /* IDL: NTSTATUS lsa_QueryTrustedDomainInfo( */
9964 /* IDL: [ref] [in] policy_handle *trustdom_handle, */
9965 /* IDL: [in] lsa_TrustDomInfoEnum level, */
9966 /* IDL: [out] [ref] [switch_is(level)] lsa_TrustedDomainInfo **info */
9967 /* IDL: ); */
9968
9969 static int
9970 lsarpc_dissect_lsa_QueryTrustedDomainInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9971 {
9972         guint32 status;
9973
9974         pinfo->dcerpc_procedure_name="lsa_QueryTrustedDomainInfo";
9975         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_info(tvb, offset, pinfo, tree, drep);
9976         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9977
9978         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
9979
9980         if (status != 0)
9981                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
9982
9983         return offset;
9984 }
9985
9986 static int
9987 lsarpc_dissect_lsa_QueryTrustedDomainInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9988 {
9989         pinfo->dcerpc_procedure_name="lsa_QueryTrustedDomainInfo";
9990         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_trustdom_handle(tvb, offset, pinfo, tree, drep);
9991         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9992         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfo_level(tvb, offset, pinfo, tree, drep);
9993         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
9994         return offset;
9995 }
9996
9997 static int
9998 lsarpc_dissect_element_lsa_SetInformationTrustedDomain_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
9999 {
10000         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetInformationTrustedDomain_trustdom_handle_, NDR_POINTER_REF, "Pointer to Trustdom Handle (policy_handle)",hf_lsarpc_lsa_SetInformationTrustedDomain_trustdom_handle);
10001
10002         return offset;
10003 }
10004
10005 static int
10006 lsarpc_dissect_element_lsa_SetInformationTrustedDomain_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10007 {
10008         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInformationTrustedDomain_trustdom_handle, 0);
10009
10010         return offset;
10011 }
10012
10013 static int
10014 lsarpc_dissect_element_lsa_SetInformationTrustedDomain_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10015 {
10016         offset = lsarpc_dissect_enum_lsa_TrustDomInfoEnum(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInformationTrustedDomain_level, 0);
10017
10018         return offset;
10019 }
10020
10021 static int
10022 lsarpc_dissect_element_lsa_SetInformationTrustedDomain_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10023 {
10024         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetInformationTrustedDomain_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_SetInformationTrustedDomain_info);
10025
10026         return offset;
10027 }
10028
10029 static int
10030 lsarpc_dissect_element_lsa_SetInformationTrustedDomain_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10031 {
10032         offset = lsarpc_dissect_lsa_TrustedDomainInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInformationTrustedDomain_info, *0);
10033
10034         return offset;
10035 }
10036
10037 /* IDL: NTSTATUS lsa_SetInformationTrustedDomain( */
10038 /* IDL: [ref] [in] policy_handle *trustdom_handle, */
10039 /* IDL: [in] lsa_TrustDomInfoEnum level, */
10040 /* IDL: [ref] [in] [switch_is(level)] lsa_TrustedDomainInfo *info */
10041 /* IDL: ); */
10042
10043 static int
10044 lsarpc_dissect_lsa_SetInformationTrustedDomain_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10045 {
10046         guint32 status;
10047
10048         pinfo->dcerpc_procedure_name="lsa_SetInformationTrustedDomain";
10049         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10050
10051         if (status != 0)
10052                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10053
10054         return offset;
10055 }
10056
10057 static int
10058 lsarpc_dissect_lsa_SetInformationTrustedDomain_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10059 {
10060         pinfo->dcerpc_procedure_name="lsa_SetInformationTrustedDomain";
10061         offset = lsarpc_dissect_element_lsa_SetInformationTrustedDomain_trustdom_handle(tvb, offset, pinfo, tree, drep);
10062         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10063         offset = lsarpc_dissect_element_lsa_SetInformationTrustedDomain_level(tvb, offset, pinfo, tree, drep);
10064         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10065         offset = lsarpc_dissect_element_lsa_SetInformationTrustedDomain_info(tvb, offset, pinfo, tree, drep);
10066         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10067         return offset;
10068 }
10069
10070 static int
10071 lsarpc_dissect_element_lsa_OpenSecret_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10072 {
10073         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenSecret_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_OpenSecret_handle);
10074
10075         return offset;
10076 }
10077
10078 static int
10079 lsarpc_dissect_element_lsa_OpenSecret_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10080 {
10081         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenSecret_handle, 0);
10082
10083         return offset;
10084 }
10085
10086 static int
10087 lsarpc_dissect_element_lsa_OpenSecret_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10088 {
10089         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_OpenSecret_name,0);
10090
10091         return offset;
10092 }
10093
10094 static int
10095 lsarpc_dissect_element_lsa_OpenSecret_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10096 {
10097         offset = lsarpc_dissect_bitmap_lsa_SecretAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenSecret_access_mask, 0);
10098
10099         return offset;
10100 }
10101
10102 static int
10103 lsarpc_dissect_element_lsa_OpenSecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10104 {
10105         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenSecret_sec_handle_, NDR_POINTER_REF, "Pointer to Sec Handle (policy_handle)",hf_lsarpc_lsa_OpenSecret_sec_handle);
10106
10107         return offset;
10108 }
10109
10110 static int
10111 lsarpc_dissect_element_lsa_OpenSecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10112 {
10113         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenSecret_sec_handle, 0);
10114
10115         return offset;
10116 }
10117
10118 /* IDL: NTSTATUS lsa_OpenSecret( */
10119 /* IDL: [ref] [in] policy_handle *handle, */
10120 /* IDL: [in] lsa_String name, */
10121 /* IDL: [in] lsa_SecretAccessMask access_mask, */
10122 /* IDL: [out] [ref] policy_handle *sec_handle */
10123 /* IDL: ); */
10124
10125 static int
10126 lsarpc_dissect_lsa_OpenSecret_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10127 {
10128         guint32 status;
10129
10130         pinfo->dcerpc_procedure_name="lsa_OpenSecret";
10131         offset = lsarpc_dissect_element_lsa_OpenSecret_sec_handle(tvb, offset, pinfo, tree, drep);
10132         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10133
10134         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10135
10136         if (status != 0)
10137                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10138
10139         return offset;
10140 }
10141
10142 static int
10143 lsarpc_dissect_lsa_OpenSecret_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10144 {
10145         pinfo->dcerpc_procedure_name="lsa_OpenSecret";
10146         offset = lsarpc_dissect_element_lsa_OpenSecret_handle(tvb, offset, pinfo, tree, drep);
10147         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10148         offset = lsarpc_dissect_element_lsa_OpenSecret_name(tvb, offset, pinfo, tree, drep);
10149         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10150         offset = lsarpc_dissect_element_lsa_OpenSecret_access_mask(tvb, offset, pinfo, tree, drep);
10151         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10152         return offset;
10153 }
10154
10155 static int
10156 lsarpc_dissect_element_lsa_SetSecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10157 {
10158         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetSecret_sec_handle_, NDR_POINTER_REF, "Pointer to Sec Handle (policy_handle)",hf_lsarpc_lsa_SetSecret_sec_handle);
10159
10160         return offset;
10161 }
10162
10163 static int
10164 lsarpc_dissect_element_lsa_SetSecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10165 {
10166         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetSecret_sec_handle, 0);
10167
10168         return offset;
10169 }
10170
10171 static int
10172 lsarpc_dissect_element_lsa_SetSecret_new_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10173 {
10174         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetSecret_new_val_, NDR_POINTER_UNIQUE, "Pointer to New Val (lsa_DATA_BUF)",hf_lsarpc_lsa_SetSecret_new_val);
10175
10176         return offset;
10177 }
10178
10179 static int
10180 lsarpc_dissect_element_lsa_SetSecret_new_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10181 {
10182         offset = lsarpc_dissect_struct_lsa_DATA_BUF(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_SetSecret_new_val,0);
10183
10184         return offset;
10185 }
10186
10187 static int
10188 lsarpc_dissect_element_lsa_SetSecret_old_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10189 {
10190         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetSecret_old_val_, NDR_POINTER_UNIQUE, "Pointer to Old Val (lsa_DATA_BUF)",hf_lsarpc_lsa_SetSecret_old_val);
10191
10192         return offset;
10193 }
10194
10195 static int
10196 lsarpc_dissect_element_lsa_SetSecret_old_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10197 {
10198         offset = lsarpc_dissect_struct_lsa_DATA_BUF(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_SetSecret_old_val,0);
10199
10200         return offset;
10201 }
10202
10203 /* IDL: NTSTATUS lsa_SetSecret( */
10204 /* IDL: [ref] [in] policy_handle *sec_handle, */
10205 /* IDL: [unique(1)] [in] lsa_DATA_BUF *new_val, */
10206 /* IDL: [unique(1)] [in] lsa_DATA_BUF *old_val */
10207 /* IDL: ); */
10208
10209 static int
10210 lsarpc_dissect_lsa_SetSecret_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10211 {
10212         guint32 status;
10213
10214         pinfo->dcerpc_procedure_name="lsa_SetSecret";
10215         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10216
10217         if (status != 0)
10218                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10219
10220         return offset;
10221 }
10222
10223 static int
10224 lsarpc_dissect_lsa_SetSecret_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10225 {
10226         pinfo->dcerpc_procedure_name="lsa_SetSecret";
10227         offset = lsarpc_dissect_element_lsa_SetSecret_sec_handle(tvb, offset, pinfo, tree, drep);
10228         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10229         offset = lsarpc_dissect_element_lsa_SetSecret_new_val(tvb, offset, pinfo, tree, drep);
10230         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10231         offset = lsarpc_dissect_element_lsa_SetSecret_old_val(tvb, offset, pinfo, tree, drep);
10232         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10233         return offset;
10234 }
10235
10236 static int
10237 lsarpc_dissect_element_lsa_QuerySecret_sec_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10238 {
10239         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecret_sec_handle_, NDR_POINTER_REF, "Pointer to Sec Handle (policy_handle)",hf_lsarpc_lsa_QuerySecret_sec_handle);
10240
10241         return offset;
10242 }
10243
10244 static int
10245 lsarpc_dissect_element_lsa_QuerySecret_sec_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10246 {
10247         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QuerySecret_sec_handle, 0);
10248
10249         return offset;
10250 }
10251
10252 static int
10253 lsarpc_dissect_element_lsa_QuerySecret_new_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10254 {
10255         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecret_new_val_, NDR_POINTER_UNIQUE, "Pointer to New Val (lsa_DATA_BUF_PTR)",hf_lsarpc_lsa_QuerySecret_new_val);
10256
10257         return offset;
10258 }
10259
10260 static int
10261 lsarpc_dissect_element_lsa_QuerySecret_new_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10262 {
10263         offset = lsarpc_dissect_struct_lsa_DATA_BUF_PTR(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_QuerySecret_new_val,0);
10264
10265         return offset;
10266 }
10267
10268 static int
10269 lsarpc_dissect_element_lsa_QuerySecret_new_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10270 {
10271         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecret_new_mtime_, NDR_POINTER_UNIQUE, "Pointer to New Mtime (NTTIME_hyper)",hf_lsarpc_lsa_QuerySecret_new_mtime);
10272
10273         return offset;
10274 }
10275
10276 static int
10277 lsarpc_dissect_element_lsa_QuerySecret_new_mtime_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10278 {
10279         offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QuerySecret_new_mtime);
10280
10281         return offset;
10282 }
10283
10284 static int
10285 lsarpc_dissect_element_lsa_QuerySecret_old_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10286 {
10287         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecret_old_val_, NDR_POINTER_UNIQUE, "Pointer to Old Val (lsa_DATA_BUF_PTR)",hf_lsarpc_lsa_QuerySecret_old_val);
10288
10289         return offset;
10290 }
10291
10292 static int
10293 lsarpc_dissect_element_lsa_QuerySecret_old_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10294 {
10295         offset = lsarpc_dissect_struct_lsa_DATA_BUF_PTR(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_QuerySecret_old_val,0);
10296
10297         return offset;
10298 }
10299
10300 static int
10301 lsarpc_dissect_element_lsa_QuerySecret_old_mtime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10302 {
10303         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QuerySecret_old_mtime_, NDR_POINTER_UNIQUE, "Pointer to Old Mtime (NTTIME_hyper)",hf_lsarpc_lsa_QuerySecret_old_mtime);
10304
10305         return offset;
10306 }
10307
10308 static int
10309 lsarpc_dissect_element_lsa_QuerySecret_old_mtime_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10310 {
10311         offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QuerySecret_old_mtime);
10312
10313         return offset;
10314 }
10315
10316 /* IDL: NTSTATUS lsa_QuerySecret( */
10317 /* IDL: [ref] [in] policy_handle *sec_handle, */
10318 /* IDL: [out] [unique(1)] [in] lsa_DATA_BUF_PTR *new_val, */
10319 /* IDL: [out] [unique(1)] [in] NTTIME_hyper *new_mtime, */
10320 /* IDL: [out] [unique(1)] [in] lsa_DATA_BUF_PTR *old_val, */
10321 /* IDL: [out] [unique(1)] [in] NTTIME_hyper *old_mtime */
10322 /* IDL: ); */
10323
10324 static int
10325 lsarpc_dissect_lsa_QuerySecret_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10326 {
10327         guint32 status;
10328
10329         pinfo->dcerpc_procedure_name="lsa_QuerySecret";
10330         offset = lsarpc_dissect_element_lsa_QuerySecret_new_val(tvb, offset, pinfo, tree, drep);
10331         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10332
10333         offset = lsarpc_dissect_element_lsa_QuerySecret_new_mtime(tvb, offset, pinfo, tree, drep);
10334         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10335
10336         offset = lsarpc_dissect_element_lsa_QuerySecret_old_val(tvb, offset, pinfo, tree, drep);
10337         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10338
10339         offset = lsarpc_dissect_element_lsa_QuerySecret_old_mtime(tvb, offset, pinfo, tree, drep);
10340         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10341
10342         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10343
10344         if (status != 0)
10345                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10346
10347         return offset;
10348 }
10349
10350 static int
10351 lsarpc_dissect_lsa_QuerySecret_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10352 {
10353         pinfo->dcerpc_procedure_name="lsa_QuerySecret";
10354         offset = lsarpc_dissect_element_lsa_QuerySecret_sec_handle(tvb, offset, pinfo, tree, drep);
10355         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10356         offset = lsarpc_dissect_element_lsa_QuerySecret_new_val(tvb, offset, pinfo, tree, drep);
10357         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10358         offset = lsarpc_dissect_element_lsa_QuerySecret_new_mtime(tvb, offset, pinfo, tree, drep);
10359         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10360         offset = lsarpc_dissect_element_lsa_QuerySecret_old_val(tvb, offset, pinfo, tree, drep);
10361         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10362         offset = lsarpc_dissect_element_lsa_QuerySecret_old_mtime(tvb, offset, pinfo, tree, drep);
10363         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10364         return offset;
10365 }
10366
10367 static int
10368 lsarpc_dissect_element_lsa_LookupPrivValue_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10369 {
10370         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivValue_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupPrivValue_handle);
10371
10372         return offset;
10373 }
10374
10375 static int
10376 lsarpc_dissect_element_lsa_LookupPrivValue_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10377 {
10378         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupPrivValue_handle, 0);
10379
10380         return offset;
10381 }
10382
10383 static int
10384 lsarpc_dissect_element_lsa_LookupPrivValue_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10385 {
10386         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivValue_name_, NDR_POINTER_REF, "Pointer to Name (lsa_String)",hf_lsarpc_lsa_LookupPrivValue_name);
10387
10388         return offset;
10389 }
10390
10391 static int
10392 lsarpc_dissect_element_lsa_LookupPrivValue_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10393 {
10394         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupPrivValue_name,0);
10395
10396         return offset;
10397 }
10398
10399 static int
10400 lsarpc_dissect_element_lsa_LookupPrivValue_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10401 {
10402         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivValue_luid_, NDR_POINTER_REF, "Pointer to Luid (lsa_LUID)",hf_lsarpc_lsa_LookupPrivValue_luid);
10403
10404         return offset;
10405 }
10406
10407 static int
10408 lsarpc_dissect_element_lsa_LookupPrivValue_luid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10409 {
10410         offset = lsarpc_dissect_struct_lsa_LUID(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupPrivValue_luid,0);
10411
10412         return offset;
10413 }
10414
10415 /* IDL: NTSTATUS lsa_LookupPrivValue( */
10416 /* IDL: [ref] [in] policy_handle *handle, */
10417 /* IDL: [in] [ref] lsa_String *name, */
10418 /* IDL: [out] [ref] lsa_LUID *luid */
10419 /* IDL: ); */
10420
10421 static int
10422 lsarpc_dissect_lsa_LookupPrivValue_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10423 {
10424         guint32 status;
10425
10426         pinfo->dcerpc_procedure_name="lsa_LookupPrivValue";
10427         offset = lsarpc_dissect_element_lsa_LookupPrivValue_luid(tvb, offset, pinfo, tree, drep);
10428         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10429
10430         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10431
10432         if (status != 0)
10433                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10434
10435         return offset;
10436 }
10437
10438 static int
10439 lsarpc_dissect_lsa_LookupPrivValue_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10440 {
10441         pinfo->dcerpc_procedure_name="lsa_LookupPrivValue";
10442         offset = lsarpc_dissect_element_lsa_LookupPrivValue_handle(tvb, offset, pinfo, tree, drep);
10443         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10444         offset = lsarpc_dissect_element_lsa_LookupPrivValue_name(tvb, offset, pinfo, tree, drep);
10445         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10446         return offset;
10447 }
10448
10449 static int
10450 lsarpc_dissect_element_lsa_LookupPrivName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10451 {
10452         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivName_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupPrivName_handle);
10453
10454         return offset;
10455 }
10456
10457 static int
10458 lsarpc_dissect_element_lsa_LookupPrivName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10459 {
10460         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupPrivName_handle, 0);
10461
10462         return offset;
10463 }
10464
10465 static int
10466 lsarpc_dissect_element_lsa_LookupPrivName_luid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10467 {
10468         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivName_luid_, NDR_POINTER_REF, "Pointer to Luid (lsa_LUID)",hf_lsarpc_lsa_LookupPrivName_luid);
10469
10470         return offset;
10471 }
10472
10473 static int
10474 lsarpc_dissect_element_lsa_LookupPrivName_luid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10475 {
10476         offset = lsarpc_dissect_struct_lsa_LUID(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupPrivName_luid,0);
10477
10478         return offset;
10479 }
10480
10481 static int
10482 lsarpc_dissect_element_lsa_LookupPrivName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10483 {
10484         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivName_name_, NDR_POINTER_REF, "Pointer to Name (lsa_StringLarge)",hf_lsarpc_lsa_LookupPrivName_name);
10485
10486         return offset;
10487 }
10488
10489 static int
10490 lsarpc_dissect_element_lsa_LookupPrivName_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10491 {
10492         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivName_name__, NDR_POINTER_UNIQUE, "Pointer to Name (lsa_StringLarge)",hf_lsarpc_lsa_LookupPrivName_name);
10493
10494         return offset;
10495 }
10496
10497 static int
10498 lsarpc_dissect_element_lsa_LookupPrivName_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10499 {
10500         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupPrivName_name,0);
10501
10502         return offset;
10503 }
10504
10505 /* IDL: NTSTATUS lsa_LookupPrivName( */
10506 /* IDL: [ref] [in] policy_handle *handle, */
10507 /* IDL: [in] [ref] lsa_LUID *luid, */
10508 /* IDL: [out] [ref] lsa_StringLarge **name */
10509 /* IDL: ); */
10510
10511 static int
10512 lsarpc_dissect_lsa_LookupPrivName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10513 {
10514         guint32 status;
10515
10516         pinfo->dcerpc_procedure_name="lsa_LookupPrivName";
10517         offset = lsarpc_dissect_element_lsa_LookupPrivName_name(tvb, offset, pinfo, tree, drep);
10518         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10519
10520         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10521
10522         if (status != 0)
10523                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10524
10525         return offset;
10526 }
10527
10528 static int
10529 lsarpc_dissect_lsa_LookupPrivName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10530 {
10531         pinfo->dcerpc_procedure_name="lsa_LookupPrivName";
10532         offset = lsarpc_dissect_element_lsa_LookupPrivName_handle(tvb, offset, pinfo, tree, drep);
10533         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10534         offset = lsarpc_dissect_element_lsa_LookupPrivName_luid(tvb, offset, pinfo, tree, drep);
10535         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10536         return offset;
10537 }
10538
10539 static int
10540 lsarpc_dissect_element_lsa_LookupPrivDisplayName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10541 {
10542         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivDisplayName_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupPrivDisplayName_handle);
10543
10544         return offset;
10545 }
10546
10547 static int
10548 lsarpc_dissect_element_lsa_LookupPrivDisplayName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10549 {
10550         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupPrivDisplayName_handle, 0);
10551
10552         return offset;
10553 }
10554
10555 static int
10556 lsarpc_dissect_element_lsa_LookupPrivDisplayName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10557 {
10558         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivDisplayName_name_, NDR_POINTER_REF, "Pointer to Name (lsa_String)",hf_lsarpc_lsa_LookupPrivDisplayName_name);
10559
10560         return offset;
10561 }
10562
10563 static int
10564 lsarpc_dissect_element_lsa_LookupPrivDisplayName_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10565 {
10566         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupPrivDisplayName_name,0);
10567
10568         return offset;
10569 }
10570
10571 static int
10572 lsarpc_dissect_element_lsa_LookupPrivDisplayName_language_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10573 {
10574         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupPrivDisplayName_language_id, 0);
10575
10576         return offset;
10577 }
10578
10579 static int
10580 lsarpc_dissect_element_lsa_LookupPrivDisplayName_language_id_sys(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10581 {
10582         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupPrivDisplayName_language_id_sys, 0);
10583
10584         return offset;
10585 }
10586
10587 static int
10588 lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10589 {
10590         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name_, NDR_POINTER_REF, "Pointer to Disp Name (lsa_StringLarge)",hf_lsarpc_lsa_LookupPrivDisplayName_disp_name);
10591
10592         return offset;
10593 }
10594
10595 static int
10596 lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10597 {
10598         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name__, NDR_POINTER_UNIQUE, "Pointer to Disp Name (lsa_StringLarge)",hf_lsarpc_lsa_LookupPrivDisplayName_disp_name);
10599
10600         return offset;
10601 }
10602
10603 static int
10604 lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10605 {
10606         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupPrivDisplayName_disp_name,0);
10607
10608         return offset;
10609 }
10610
10611 static int
10612 lsarpc_dissect_element_lsa_LookupPrivDisplayName_returned_language_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10613 {
10614         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupPrivDisplayName_returned_language_id_, NDR_POINTER_REF, "Pointer to Returned Language Id (uint16)",hf_lsarpc_lsa_LookupPrivDisplayName_returned_language_id);
10615
10616         return offset;
10617 }
10618
10619 static int
10620 lsarpc_dissect_element_lsa_LookupPrivDisplayName_returned_language_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10621 {
10622         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupPrivDisplayName_returned_language_id, 0);
10623
10624         return offset;
10625 }
10626
10627 /* IDL: NTSTATUS lsa_LookupPrivDisplayName( */
10628 /* IDL: [ref] [in] policy_handle *handle, */
10629 /* IDL: [in] [ref] lsa_String *name, */
10630 /* IDL: [in] uint16 language_id, */
10631 /* IDL: [in] uint16 language_id_sys, */
10632 /* IDL: [out] [ref] lsa_StringLarge **disp_name, */
10633 /* IDL: [out] [ref] uint16 *returned_language_id */
10634 /* IDL: ); */
10635
10636 static int
10637 lsarpc_dissect_lsa_LookupPrivDisplayName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10638 {
10639         guint32 status;
10640
10641         pinfo->dcerpc_procedure_name="lsa_LookupPrivDisplayName";
10642         offset = lsarpc_dissect_element_lsa_LookupPrivDisplayName_disp_name(tvb, offset, pinfo, tree, drep);
10643         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10644
10645         offset = lsarpc_dissect_element_lsa_LookupPrivDisplayName_returned_language_id(tvb, offset, pinfo, tree, drep);
10646         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10647
10648         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10649
10650         if (status != 0)
10651                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10652
10653         return offset;
10654 }
10655
10656 static int
10657 lsarpc_dissect_lsa_LookupPrivDisplayName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10658 {
10659         pinfo->dcerpc_procedure_name="lsa_LookupPrivDisplayName";
10660         offset = lsarpc_dissect_element_lsa_LookupPrivDisplayName_handle(tvb, offset, pinfo, tree, drep);
10661         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10662         offset = lsarpc_dissect_element_lsa_LookupPrivDisplayName_name(tvb, offset, pinfo, tree, drep);
10663         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10664         offset = lsarpc_dissect_element_lsa_LookupPrivDisplayName_language_id(tvb, offset, pinfo, tree, drep);
10665         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10666         offset = lsarpc_dissect_element_lsa_LookupPrivDisplayName_language_id_sys(tvb, offset, pinfo, tree, drep);
10667         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10668         return offset;
10669 }
10670
10671 static int
10672 lsarpc_dissect_element_lsa_DeleteObject_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10673 {
10674         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DeleteObject_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_DeleteObject_handle);
10675
10676         return offset;
10677 }
10678
10679 static int
10680 lsarpc_dissect_element_lsa_DeleteObject_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10681 {
10682         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DeleteObject_handle, 0);
10683
10684         return offset;
10685 }
10686
10687 /* IDL: NTSTATUS lsa_DeleteObject( */
10688 /* IDL: [out] [ref] [in] policy_handle *handle */
10689 /* IDL: ); */
10690
10691 static int
10692 lsarpc_dissect_lsa_DeleteObject_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10693 {
10694         guint32 status;
10695
10696         pinfo->dcerpc_procedure_name="lsa_DeleteObject";
10697         offset = lsarpc_dissect_element_lsa_DeleteObject_handle(tvb, offset, pinfo, tree, drep);
10698         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10699
10700         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10701
10702         if (status != 0)
10703                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10704
10705         return offset;
10706 }
10707
10708 static int
10709 lsarpc_dissect_lsa_DeleteObject_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10710 {
10711         pinfo->dcerpc_procedure_name="lsa_DeleteObject";
10712         offset = lsarpc_dissect_element_lsa_DeleteObject_handle(tvb, offset, pinfo, tree, drep);
10713         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10714         return offset;
10715 }
10716
10717 static int
10718 lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10719 {
10720         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_EnumAccountsWithUserRight_handle);
10721
10722         return offset;
10723 }
10724
10725 static int
10726 lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10727 {
10728         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumAccountsWithUserRight_handle, 0);
10729
10730         return offset;
10731 }
10732
10733 static int
10734 lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10735 {
10736         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_name_, NDR_POINTER_UNIQUE, "Pointer to Name (lsa_String)",hf_lsarpc_lsa_EnumAccountsWithUserRight_name);
10737
10738         return offset;
10739 }
10740
10741 static int
10742 lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10743 {
10744         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumAccountsWithUserRight_name,0);
10745
10746         return offset;
10747 }
10748
10749 static int
10750 lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10751 {
10752         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_SidArray)",hf_lsarpc_lsa_EnumAccountsWithUserRight_sids);
10753
10754         return offset;
10755 }
10756
10757 static int
10758 lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10759 {
10760         offset = lsarpc_dissect_struct_lsa_SidArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumAccountsWithUserRight_sids,0);
10761
10762         return offset;
10763 }
10764
10765 /* IDL: NTSTATUS lsa_EnumAccountsWithUserRight( */
10766 /* IDL: [ref] [in] policy_handle *handle, */
10767 /* IDL: [unique(1)] [in] lsa_String *name, */
10768 /* IDL: [out] [ref] lsa_SidArray *sids */
10769 /* IDL: ); */
10770
10771 static int
10772 lsarpc_dissect_lsa_EnumAccountsWithUserRight_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10773 {
10774         guint32 status;
10775
10776         pinfo->dcerpc_procedure_name="lsa_EnumAccountsWithUserRight";
10777         offset = lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_sids(tvb, offset, pinfo, tree, drep);
10778         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10779
10780         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10781
10782         if (status != 0)
10783                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10784
10785         return offset;
10786 }
10787
10788 static int
10789 lsarpc_dissect_lsa_EnumAccountsWithUserRight_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10790 {
10791         pinfo->dcerpc_procedure_name="lsa_EnumAccountsWithUserRight";
10792         offset = lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_handle(tvb, offset, pinfo, tree, drep);
10793         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10794         offset = lsarpc_dissect_element_lsa_EnumAccountsWithUserRight_name(tvb, offset, pinfo, tree, drep);
10795         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10796         return offset;
10797 }
10798
10799 static int
10800 lsarpc_dissect_element_lsa_EnumAccountRights_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10801 {
10802         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccountRights_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_EnumAccountRights_handle);
10803
10804         return offset;
10805 }
10806
10807 static int
10808 lsarpc_dissect_element_lsa_EnumAccountRights_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10809 {
10810         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumAccountRights_handle, 0);
10811
10812         return offset;
10813 }
10814
10815 static int
10816 lsarpc_dissect_element_lsa_EnumAccountRights_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10817 {
10818         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccountRights_sid_, NDR_POINTER_REF, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_EnumAccountRights_sid);
10819
10820         return offset;
10821 }
10822
10823 static int
10824 lsarpc_dissect_element_lsa_EnumAccountRights_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10825 {
10826         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumAccountRights_sid,0);
10827
10828         return offset;
10829 }
10830
10831 static int
10832 lsarpc_dissect_element_lsa_EnumAccountRights_rights(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10833 {
10834         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumAccountRights_rights_, NDR_POINTER_REF, "Pointer to Rights (lsa_RightSet)",hf_lsarpc_lsa_EnumAccountRights_rights);
10835
10836         return offset;
10837 }
10838
10839 static int
10840 lsarpc_dissect_element_lsa_EnumAccountRights_rights_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10841 {
10842         offset = lsarpc_dissect_struct_lsa_RightSet(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumAccountRights_rights,0);
10843
10844         return offset;
10845 }
10846
10847 /* IDL: NTSTATUS lsa_EnumAccountRights( */
10848 /* IDL: [ref] [in] policy_handle *handle, */
10849 /* IDL: [in] [ref] dom_sid2 *sid, */
10850 /* IDL: [out] [ref] lsa_RightSet *rights */
10851 /* IDL: ); */
10852
10853 static int
10854 lsarpc_dissect_lsa_EnumAccountRights_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10855 {
10856         guint32 status;
10857
10858         pinfo->dcerpc_procedure_name="lsa_EnumAccountRights";
10859         offset = lsarpc_dissect_element_lsa_EnumAccountRights_rights(tvb, offset, pinfo, tree, drep);
10860         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10861
10862         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10863
10864         if (status != 0)
10865                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10866
10867         return offset;
10868 }
10869
10870 static int
10871 lsarpc_dissect_lsa_EnumAccountRights_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10872 {
10873         pinfo->dcerpc_procedure_name="lsa_EnumAccountRights";
10874         offset = lsarpc_dissect_element_lsa_EnumAccountRights_handle(tvb, offset, pinfo, tree, drep);
10875         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10876         offset = lsarpc_dissect_element_lsa_EnumAccountRights_sid(tvb, offset, pinfo, tree, drep);
10877         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10878         return offset;
10879 }
10880
10881 static int
10882 lsarpc_dissect_element_lsa_AddAccountRights_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10883 {
10884         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AddAccountRights_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_AddAccountRights_handle);
10885
10886         return offset;
10887 }
10888
10889 static int
10890 lsarpc_dissect_element_lsa_AddAccountRights_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10891 {
10892         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_AddAccountRights_handle, 0);
10893
10894         return offset;
10895 }
10896
10897 static int
10898 lsarpc_dissect_element_lsa_AddAccountRights_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10899 {
10900         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AddAccountRights_sid_, NDR_POINTER_REF, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_AddAccountRights_sid);
10901
10902         return offset;
10903 }
10904
10905 static int
10906 lsarpc_dissect_element_lsa_AddAccountRights_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10907 {
10908         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_AddAccountRights_sid,0);
10909
10910         return offset;
10911 }
10912
10913 static int
10914 lsarpc_dissect_element_lsa_AddAccountRights_rights(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10915 {
10916         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_AddAccountRights_rights_, NDR_POINTER_REF, "Pointer to Rights (lsa_RightSet)",hf_lsarpc_lsa_AddAccountRights_rights);
10917
10918         return offset;
10919 }
10920
10921 static int
10922 lsarpc_dissect_element_lsa_AddAccountRights_rights_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10923 {
10924         offset = lsarpc_dissect_struct_lsa_RightSet(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_AddAccountRights_rights,0);
10925
10926         return offset;
10927 }
10928
10929 /* IDL: NTSTATUS lsa_AddAccountRights( */
10930 /* IDL: [ref] [in] policy_handle *handle, */
10931 /* IDL: [in] [ref] dom_sid2 *sid, */
10932 /* IDL: [in] [ref] lsa_RightSet *rights */
10933 /* IDL: ); */
10934
10935 static int
10936 lsarpc_dissect_lsa_AddAccountRights_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10937 {
10938         guint32 status;
10939
10940         pinfo->dcerpc_procedure_name="lsa_AddAccountRights";
10941         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
10942
10943         if (status != 0)
10944                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
10945
10946         return offset;
10947 }
10948
10949 static int
10950 lsarpc_dissect_lsa_AddAccountRights_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10951 {
10952         pinfo->dcerpc_procedure_name="lsa_AddAccountRights";
10953         offset = lsarpc_dissect_element_lsa_AddAccountRights_handle(tvb, offset, pinfo, tree, drep);
10954         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10955         offset = lsarpc_dissect_element_lsa_AddAccountRights_sid(tvb, offset, pinfo, tree, drep);
10956         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10957         offset = lsarpc_dissect_element_lsa_AddAccountRights_rights(tvb, offset, pinfo, tree, drep);
10958         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
10959         return offset;
10960 }
10961
10962 static int
10963 lsarpc_dissect_element_lsa_RemoveAccountRights_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10964 {
10965         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RemoveAccountRights_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_RemoveAccountRights_handle);
10966
10967         return offset;
10968 }
10969
10970 static int
10971 lsarpc_dissect_element_lsa_RemoveAccountRights_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10972 {
10973         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RemoveAccountRights_handle, 0);
10974
10975         return offset;
10976 }
10977
10978 static int
10979 lsarpc_dissect_element_lsa_RemoveAccountRights_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10980 {
10981         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RemoveAccountRights_sid_, NDR_POINTER_REF, "Pointer to Sid (dom_sid2)",hf_lsarpc_lsa_RemoveAccountRights_sid);
10982
10983         return offset;
10984 }
10985
10986 static int
10987 lsarpc_dissect_element_lsa_RemoveAccountRights_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10988 {
10989         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_RemoveAccountRights_sid,0);
10990
10991         return offset;
10992 }
10993
10994 static int
10995 lsarpc_dissect_element_lsa_RemoveAccountRights_remove_all(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
10996 {
10997         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RemoveAccountRights_remove_all, 0);
10998
10999         return offset;
11000 }
11001
11002 static int
11003 lsarpc_dissect_element_lsa_RemoveAccountRights_rights(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11004 {
11005         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RemoveAccountRights_rights_, NDR_POINTER_REF, "Pointer to Rights (lsa_RightSet)",hf_lsarpc_lsa_RemoveAccountRights_rights);
11006
11007         return offset;
11008 }
11009
11010 static int
11011 lsarpc_dissect_element_lsa_RemoveAccountRights_rights_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11012 {
11013         offset = lsarpc_dissect_struct_lsa_RightSet(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_RemoveAccountRights_rights,0);
11014
11015         return offset;
11016 }
11017
11018 /* IDL: NTSTATUS lsa_RemoveAccountRights( */
11019 /* IDL: [ref] [in] policy_handle *handle, */
11020 /* IDL: [in] [ref] dom_sid2 *sid, */
11021 /* IDL: [in] uint8 remove_all, */
11022 /* IDL: [in] [ref] lsa_RightSet *rights */
11023 /* IDL: ); */
11024
11025 static int
11026 lsarpc_dissect_lsa_RemoveAccountRights_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11027 {
11028         guint32 status;
11029
11030         pinfo->dcerpc_procedure_name="lsa_RemoveAccountRights";
11031         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11032
11033         if (status != 0)
11034                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11035
11036         return offset;
11037 }
11038
11039 static int
11040 lsarpc_dissect_lsa_RemoveAccountRights_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11041 {
11042         pinfo->dcerpc_procedure_name="lsa_RemoveAccountRights";
11043         offset = lsarpc_dissect_element_lsa_RemoveAccountRights_handle(tvb, offset, pinfo, tree, drep);
11044         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11045         offset = lsarpc_dissect_element_lsa_RemoveAccountRights_sid(tvb, offset, pinfo, tree, drep);
11046         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11047         offset = lsarpc_dissect_element_lsa_RemoveAccountRights_remove_all(tvb, offset, pinfo, tree, drep);
11048         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11049         offset = lsarpc_dissect_element_lsa_RemoveAccountRights_rights(tvb, offset, pinfo, tree, drep);
11050         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11051         return offset;
11052 }
11053
11054 static int
11055 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11056 {
11057         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_handle);
11058
11059         return offset;
11060 }
11061
11062 static int
11063 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11064 {
11065         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_handle, 0);
11066
11067         return offset;
11068 }
11069
11070 static int
11071 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_dom_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11072 {
11073         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_dom_sid_, NDR_POINTER_REF, "Pointer to Dom Sid (dom_sid2)",hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_dom_sid);
11074
11075         return offset;
11076 }
11077
11078 static int
11079 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_dom_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11080 {
11081         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_dom_sid,0);
11082
11083         return offset;
11084 }
11085
11086 static int
11087 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11088 {
11089         offset = lsarpc_dissect_enum_lsa_TrustDomInfoEnum(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_level, 0);
11090
11091         return offset;
11092 }
11093
11094 static int
11095 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11096 {
11097         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_info);
11098
11099         return offset;
11100 }
11101
11102 static int
11103 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11104 {
11105         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info__, NDR_POINTER_UNIQUE, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_info);
11106
11107         return offset;
11108 }
11109
11110 static int
11111 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11112 {
11113         offset = lsarpc_dissect_lsa_TrustedDomainInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_info, *0);
11114
11115         return offset;
11116 }
11117
11118 /* IDL: NTSTATUS lsa_QueryTrustedDomainInfoBySid( */
11119 /* IDL: [ref] [in] policy_handle *handle, */
11120 /* IDL: [in] [ref] dom_sid2 *dom_sid, */
11121 /* IDL: [in] lsa_TrustDomInfoEnum level, */
11122 /* IDL: [out] [ref] [switch_is(level)] lsa_TrustedDomainInfo **info */
11123 /* IDL: ); */
11124
11125 static int
11126 lsarpc_dissect_lsa_QueryTrustedDomainInfoBySid_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11127 {
11128         guint32 status;
11129
11130         pinfo->dcerpc_procedure_name="lsa_QueryTrustedDomainInfoBySid";
11131         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_info(tvb, offset, pinfo, tree, drep);
11132         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11133
11134         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11135
11136         if (status != 0)
11137                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11138
11139         return offset;
11140 }
11141
11142 static int
11143 lsarpc_dissect_lsa_QueryTrustedDomainInfoBySid_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11144 {
11145         pinfo->dcerpc_procedure_name="lsa_QueryTrustedDomainInfoBySid";
11146         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_handle(tvb, offset, pinfo, tree, drep);
11147         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11148         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_dom_sid(tvb, offset, pinfo, tree, drep);
11149         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11150         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoBySid_level(tvb, offset, pinfo, tree, drep);
11151         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11152         return offset;
11153 }
11154
11155 static int
11156 lsarpc_dissect_element_lsa_SetTrustedDomainInfo_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11157 {
11158         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetTrustedDomainInfo_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_SetTrustedDomainInfo_handle);
11159
11160         return offset;
11161 }
11162
11163 static int
11164 lsarpc_dissect_element_lsa_SetTrustedDomainInfo_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11165 {
11166         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetTrustedDomainInfo_handle, 0);
11167
11168         return offset;
11169 }
11170
11171 static int
11172 lsarpc_dissect_element_lsa_SetTrustedDomainInfo_dom_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11173 {
11174         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetTrustedDomainInfo_dom_sid_, NDR_POINTER_REF, "Pointer to Dom Sid (dom_sid2)",hf_lsarpc_lsa_SetTrustedDomainInfo_dom_sid);
11175
11176         return offset;
11177 }
11178
11179 static int
11180 lsarpc_dissect_element_lsa_SetTrustedDomainInfo_dom_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11181 {
11182         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_SetTrustedDomainInfo_dom_sid,0);
11183
11184         return offset;
11185 }
11186
11187 static int
11188 lsarpc_dissect_element_lsa_SetTrustedDomainInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11189 {
11190         offset = lsarpc_dissect_enum_lsa_TrustDomInfoEnum(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetTrustedDomainInfo_level, 0);
11191
11192         return offset;
11193 }
11194
11195 static int
11196 lsarpc_dissect_element_lsa_SetTrustedDomainInfo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11197 {
11198         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetTrustedDomainInfo_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_SetTrustedDomainInfo_info);
11199
11200         return offset;
11201 }
11202
11203 static int
11204 lsarpc_dissect_element_lsa_SetTrustedDomainInfo_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11205 {
11206         offset = lsarpc_dissect_lsa_TrustedDomainInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetTrustedDomainInfo_info, *0);
11207
11208         return offset;
11209 }
11210
11211 /* IDL: NTSTATUS lsa_SetTrustedDomainInfo( */
11212 /* IDL: [ref] [in] policy_handle *handle, */
11213 /* IDL: [ref] [in] dom_sid2 *dom_sid, */
11214 /* IDL: [in] lsa_TrustDomInfoEnum level, */
11215 /* IDL: [ref] [in] [switch_is(level)] lsa_TrustedDomainInfo *info */
11216 /* IDL: ); */
11217
11218 static int
11219 lsarpc_dissect_lsa_SetTrustedDomainInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11220 {
11221         guint32 status;
11222
11223         pinfo->dcerpc_procedure_name="lsa_SetTrustedDomainInfo";
11224         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11225
11226         if (status != 0)
11227                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11228
11229         return offset;
11230 }
11231
11232 static int
11233 lsarpc_dissect_lsa_SetTrustedDomainInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11234 {
11235         pinfo->dcerpc_procedure_name="lsa_SetTrustedDomainInfo";
11236         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfo_handle(tvb, offset, pinfo, tree, drep);
11237         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11238         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfo_dom_sid(tvb, offset, pinfo, tree, drep);
11239         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11240         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfo_level(tvb, offset, pinfo, tree, drep);
11241         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11242         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfo_info(tvb, offset, pinfo, tree, drep);
11243         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11244         return offset;
11245 }
11246
11247 static int
11248 lsarpc_dissect_element_lsa_DeleteTrustedDomain_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11249 {
11250         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DeleteTrustedDomain_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_DeleteTrustedDomain_handle);
11251
11252         return offset;
11253 }
11254
11255 static int
11256 lsarpc_dissect_element_lsa_DeleteTrustedDomain_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11257 {
11258         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_DeleteTrustedDomain_handle, 0);
11259
11260         return offset;
11261 }
11262
11263 static int
11264 lsarpc_dissect_element_lsa_DeleteTrustedDomain_dom_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11265 {
11266         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_DeleteTrustedDomain_dom_sid_, NDR_POINTER_REF, "Pointer to Dom Sid (dom_sid2)",hf_lsarpc_lsa_DeleteTrustedDomain_dom_sid);
11267
11268         return offset;
11269 }
11270
11271 static int
11272 lsarpc_dissect_element_lsa_DeleteTrustedDomain_dom_sid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11273 {
11274         offset = lsarpc_dissect_struct_dom_sid2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_DeleteTrustedDomain_dom_sid,0);
11275
11276         return offset;
11277 }
11278
11279 /* IDL: NTSTATUS lsa_DeleteTrustedDomain( */
11280 /* IDL: [ref] [in] policy_handle *handle, */
11281 /* IDL: [ref] [in] dom_sid2 *dom_sid */
11282 /* IDL: ); */
11283
11284 static int
11285 lsarpc_dissect_lsa_DeleteTrustedDomain_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11286 {
11287         guint32 status;
11288
11289         pinfo->dcerpc_procedure_name="lsa_DeleteTrustedDomain";
11290         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11291
11292         if (status != 0)
11293                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11294
11295         return offset;
11296 }
11297
11298 static int
11299 lsarpc_dissect_lsa_DeleteTrustedDomain_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11300 {
11301         pinfo->dcerpc_procedure_name="lsa_DeleteTrustedDomain";
11302         offset = lsarpc_dissect_element_lsa_DeleteTrustedDomain_handle(tvb, offset, pinfo, tree, drep);
11303         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11304         offset = lsarpc_dissect_element_lsa_DeleteTrustedDomain_dom_sid(tvb, offset, pinfo, tree, drep);
11305         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11306         return offset;
11307 }
11308
11309 static int
11310 lsarpc_dissect_element_lsa_StorePrivateData_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11311 {
11312         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_StorePrivateData_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_StorePrivateData_handle);
11313
11314         return offset;
11315 }
11316
11317 static int
11318 lsarpc_dissect_element_lsa_StorePrivateData_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11319 {
11320         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_StorePrivateData_handle, 0);
11321
11322         return offset;
11323 }
11324
11325 static int
11326 lsarpc_dissect_element_lsa_StorePrivateData_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11327 {
11328         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_StorePrivateData_name_, NDR_POINTER_REF, "Pointer to Name (lsa_String)",hf_lsarpc_lsa_StorePrivateData_name);
11329
11330         return offset;
11331 }
11332
11333 static int
11334 lsarpc_dissect_element_lsa_StorePrivateData_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11335 {
11336         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_StorePrivateData_name,0);
11337
11338         return offset;
11339 }
11340
11341 static int
11342 lsarpc_dissect_element_lsa_StorePrivateData_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11343 {
11344         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_StorePrivateData_val_, NDR_POINTER_UNIQUE, "Pointer to Val (lsa_DATA_BUF)",hf_lsarpc_lsa_StorePrivateData_val);
11345
11346         return offset;
11347 }
11348
11349 static int
11350 lsarpc_dissect_element_lsa_StorePrivateData_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11351 {
11352         offset = lsarpc_dissect_struct_lsa_DATA_BUF(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_StorePrivateData_val,0);
11353
11354         return offset;
11355 }
11356
11357 /* IDL: NTSTATUS lsa_StorePrivateData( */
11358 /* IDL: [ref] [in] policy_handle *handle, */
11359 /* IDL: [in] [ref] lsa_String *name, */
11360 /* IDL: [unique(1)] [in] lsa_DATA_BUF *val */
11361 /* IDL: ); */
11362
11363 static int
11364 lsarpc_dissect_lsa_StorePrivateData_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11365 {
11366         guint32 status;
11367
11368         pinfo->dcerpc_procedure_name="lsa_StorePrivateData";
11369         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11370
11371         if (status != 0)
11372                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11373
11374         return offset;
11375 }
11376
11377 static int
11378 lsarpc_dissect_lsa_StorePrivateData_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11379 {
11380         pinfo->dcerpc_procedure_name="lsa_StorePrivateData";
11381         offset = lsarpc_dissect_element_lsa_StorePrivateData_handle(tvb, offset, pinfo, tree, drep);
11382         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11383         offset = lsarpc_dissect_element_lsa_StorePrivateData_name(tvb, offset, pinfo, tree, drep);
11384         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11385         offset = lsarpc_dissect_element_lsa_StorePrivateData_val(tvb, offset, pinfo, tree, drep);
11386         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11387         return offset;
11388 }
11389
11390 static int
11391 lsarpc_dissect_element_lsa_RetrievePrivateData_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11392 {
11393         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RetrievePrivateData_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_RetrievePrivateData_handle);
11394
11395         return offset;
11396 }
11397
11398 static int
11399 lsarpc_dissect_element_lsa_RetrievePrivateData_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11400 {
11401         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_RetrievePrivateData_handle, 0);
11402
11403         return offset;
11404 }
11405
11406 static int
11407 lsarpc_dissect_element_lsa_RetrievePrivateData_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11408 {
11409         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RetrievePrivateData_name_, NDR_POINTER_REF, "Pointer to Name (lsa_String)",hf_lsarpc_lsa_RetrievePrivateData_name);
11410
11411         return offset;
11412 }
11413
11414 static int
11415 lsarpc_dissect_element_lsa_RetrievePrivateData_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11416 {
11417         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_RetrievePrivateData_name,0);
11418
11419         return offset;
11420 }
11421
11422 static int
11423 lsarpc_dissect_element_lsa_RetrievePrivateData_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11424 {
11425         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RetrievePrivateData_val_, NDR_POINTER_REF, "Pointer to Val (lsa_DATA_BUF)",hf_lsarpc_lsa_RetrievePrivateData_val);
11426
11427         return offset;
11428 }
11429
11430 static int
11431 lsarpc_dissect_element_lsa_RetrievePrivateData_val_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11432 {
11433         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_RetrievePrivateData_val__, NDR_POINTER_UNIQUE, "Pointer to Val (lsa_DATA_BUF)",hf_lsarpc_lsa_RetrievePrivateData_val);
11434
11435         return offset;
11436 }
11437
11438 static int
11439 lsarpc_dissect_element_lsa_RetrievePrivateData_val__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11440 {
11441         offset = lsarpc_dissect_struct_lsa_DATA_BUF(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_RetrievePrivateData_val,0);
11442
11443         return offset;
11444 }
11445
11446 /* IDL: NTSTATUS lsa_RetrievePrivateData( */
11447 /* IDL: [ref] [in] policy_handle *handle, */
11448 /* IDL: [in] [ref] lsa_String *name, */
11449 /* IDL: [out] [in] [ref] lsa_DATA_BUF **val */
11450 /* IDL: ); */
11451
11452 static int
11453 lsarpc_dissect_lsa_RetrievePrivateData_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11454 {
11455         guint32 status;
11456
11457         pinfo->dcerpc_procedure_name="lsa_RetrievePrivateData";
11458         offset = lsarpc_dissect_element_lsa_RetrievePrivateData_val(tvb, offset, pinfo, tree, drep);
11459         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11460
11461         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11462
11463         if (status != 0)
11464                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11465
11466         return offset;
11467 }
11468
11469 static int
11470 lsarpc_dissect_lsa_RetrievePrivateData_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11471 {
11472         pinfo->dcerpc_procedure_name="lsa_RetrievePrivateData";
11473         offset = lsarpc_dissect_element_lsa_RetrievePrivateData_handle(tvb, offset, pinfo, tree, drep);
11474         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11475         offset = lsarpc_dissect_element_lsa_RetrievePrivateData_name(tvb, offset, pinfo, tree, drep);
11476         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11477         offset = lsarpc_dissect_element_lsa_RetrievePrivateData_val(tvb, offset, pinfo, tree, drep);
11478         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11479         return offset;
11480 }
11481
11482 static int
11483 lsarpc_dissect_element_lsa_OpenPolicy2_system_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11484 {
11485         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenPolicy2_system_name_, NDR_POINTER_UNIQUE, "Pointer to System Name (uint16)",hf_lsarpc_lsa_OpenPolicy2_system_name);
11486
11487         return offset;
11488 }
11489
11490 static int
11491 lsarpc_dissect_element_lsa_OpenPolicy2_system_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11492 {
11493         char *data;
11494
11495         offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_lsarpc_lsa_OpenPolicy2_system_name, FALSE, &data);
11496         proto_item_append_text(tree, ": %s", data);
11497
11498         return offset;
11499 }
11500
11501 static int
11502 lsarpc_dissect_element_lsa_OpenPolicy2_attr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11503 {
11504         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenPolicy2_attr_, NDR_POINTER_REF, "Pointer to Attr (lsa_ObjectAttribute)",hf_lsarpc_lsa_OpenPolicy2_attr);
11505
11506         return offset;
11507 }
11508
11509 static int
11510 lsarpc_dissect_element_lsa_OpenPolicy2_attr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11511 {
11512         offset = lsarpc_dissect_struct_lsa_ObjectAttribute(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_OpenPolicy2_attr,0);
11513
11514         return offset;
11515 }
11516
11517 static int
11518 lsarpc_dissect_element_lsa_OpenPolicy2_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11519 {
11520         offset = lsarpc_dissect_bitmap_lsa_PolicyAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenPolicy2_access_mask, 0);
11521
11522         return offset;
11523 }
11524
11525 static int
11526 lsarpc_dissect_element_lsa_OpenPolicy2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11527 {
11528         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenPolicy2_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_OpenPolicy2_handle);
11529
11530         return offset;
11531 }
11532
11533 static int
11534 lsarpc_dissect_element_lsa_OpenPolicy2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11535 {
11536         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenPolicy2_handle, 0);
11537
11538         return offset;
11539 }
11540
11541 /* IDL: NTSTATUS lsa_OpenPolicy2( */
11542 /* IDL: [unique(1)] [in] [charset(UTF16)] uint16 *system_name, */
11543 /* IDL: [ref] [in] lsa_ObjectAttribute *attr, */
11544 /* IDL: [in] lsa_PolicyAccessMask access_mask, */
11545 /* IDL: [out] [ref] policy_handle *handle */
11546 /* IDL: ); */
11547
11548 static int
11549 lsarpc_dissect_lsa_OpenPolicy2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11550 {
11551         guint32 status;
11552
11553         pinfo->dcerpc_procedure_name="lsa_OpenPolicy2";
11554         offset = lsarpc_dissect_element_lsa_OpenPolicy2_handle(tvb, offset, pinfo, tree, drep);
11555         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11556
11557         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11558
11559         if (status != 0)
11560                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11561
11562         return offset;
11563 }
11564
11565 static int
11566 lsarpc_dissect_lsa_OpenPolicy2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11567 {
11568         pinfo->dcerpc_procedure_name="lsa_OpenPolicy2";
11569         offset = lsarpc_dissect_element_lsa_OpenPolicy2_system_name(tvb, offset, pinfo, tree, drep);
11570         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11571         offset = lsarpc_dissect_element_lsa_OpenPolicy2_attr(tvb, offset, pinfo, tree, drep);
11572         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11573         offset = lsarpc_dissect_element_lsa_OpenPolicy2_access_mask(tvb, offset, pinfo, tree, drep);
11574         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11575         return offset;
11576 }
11577
11578 static int
11579 lsarpc_dissect_element_lsa_GetUserName_system_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11580 {
11581         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_GetUserName_system_name_, NDR_POINTER_UNIQUE, "Pointer to System Name (uint16)",hf_lsarpc_lsa_GetUserName_system_name);
11582
11583         return offset;
11584 }
11585
11586 static int
11587 lsarpc_dissect_element_lsa_GetUserName_system_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11588 {
11589         char *data;
11590
11591         offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_lsarpc_lsa_GetUserName_system_name, FALSE, &data);
11592         proto_item_append_text(tree, ": %s", data);
11593
11594         return offset;
11595 }
11596
11597 static int
11598 lsarpc_dissect_element_lsa_GetUserName_account_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11599 {
11600         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_GetUserName_account_name_, NDR_POINTER_REF, "Pointer to Account Name (lsa_String)",hf_lsarpc_lsa_GetUserName_account_name);
11601
11602         return offset;
11603 }
11604
11605 static int
11606 lsarpc_dissect_element_lsa_GetUserName_account_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11607 {
11608         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_GetUserName_account_name__, NDR_POINTER_UNIQUE, "Pointer to Account Name (lsa_String)",hf_lsarpc_lsa_GetUserName_account_name);
11609
11610         return offset;
11611 }
11612
11613 static int
11614 lsarpc_dissect_element_lsa_GetUserName_account_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11615 {
11616         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_GetUserName_account_name,0);
11617
11618         return offset;
11619 }
11620
11621 static int
11622 lsarpc_dissect_element_lsa_GetUserName_authority_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11623 {
11624         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_GetUserName_authority_name_, NDR_POINTER_UNIQUE, "Pointer to Authority Name (lsa_String)",hf_lsarpc_lsa_GetUserName_authority_name);
11625
11626         return offset;
11627 }
11628
11629 static int
11630 lsarpc_dissect_element_lsa_GetUserName_authority_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11631 {
11632         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_GetUserName_authority_name__, NDR_POINTER_UNIQUE, "Pointer to Authority Name (lsa_String)",hf_lsarpc_lsa_GetUserName_authority_name);
11633
11634         return offset;
11635 }
11636
11637 static int
11638 lsarpc_dissect_element_lsa_GetUserName_authority_name__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11639 {
11640         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_GetUserName_authority_name,0);
11641
11642         return offset;
11643 }
11644
11645 /* IDL: NTSTATUS lsa_GetUserName( */
11646 /* IDL: [unique(1)] [in] [charset(UTF16)] uint16 *system_name, */
11647 /* IDL: [out] [in] [ref] lsa_String **account_name, */
11648 /* IDL: [out] [unique(1)] [in] lsa_String **authority_name */
11649 /* IDL: ); */
11650
11651 static int
11652 lsarpc_dissect_lsa_GetUserName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11653 {
11654         guint32 status;
11655
11656         pinfo->dcerpc_procedure_name="lsa_GetUserName";
11657         offset = lsarpc_dissect_element_lsa_GetUserName_account_name(tvb, offset, pinfo, tree, drep);
11658         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11659
11660         offset = lsarpc_dissect_element_lsa_GetUserName_authority_name(tvb, offset, pinfo, tree, drep);
11661         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11662
11663         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11664
11665         if (status != 0)
11666                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11667
11668         return offset;
11669 }
11670
11671 static int
11672 lsarpc_dissect_lsa_GetUserName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11673 {
11674         pinfo->dcerpc_procedure_name="lsa_GetUserName";
11675         offset = lsarpc_dissect_element_lsa_GetUserName_system_name(tvb, offset, pinfo, tree, drep);
11676         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11677         offset = lsarpc_dissect_element_lsa_GetUserName_account_name(tvb, offset, pinfo, tree, drep);
11678         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11679         offset = lsarpc_dissect_element_lsa_GetUserName_authority_name(tvb, offset, pinfo, tree, drep);
11680         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11681         return offset;
11682 }
11683
11684 static int
11685 lsarpc_dissect_element_lsa_QueryInfoPolicy2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11686 {
11687         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryInfoPolicy2_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_QueryInfoPolicy2_handle);
11688
11689         return offset;
11690 }
11691
11692 static int
11693 lsarpc_dissect_element_lsa_QueryInfoPolicy2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11694 {
11695         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryInfoPolicy2_handle, 0);
11696
11697         return offset;
11698 }
11699
11700 static int
11701 lsarpc_dissect_element_lsa_QueryInfoPolicy2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11702 {
11703         offset = lsarpc_dissect_enum_lsa_PolicyInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryInfoPolicy2_level, 0);
11704
11705         return offset;
11706 }
11707
11708 static int
11709 lsarpc_dissect_element_lsa_QueryInfoPolicy2_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11710 {
11711         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryInfoPolicy2_info_, NDR_POINTER_REF, "Pointer to Info (lsa_PolicyInformation)",hf_lsarpc_lsa_QueryInfoPolicy2_info);
11712
11713         return offset;
11714 }
11715
11716 static int
11717 lsarpc_dissect_element_lsa_QueryInfoPolicy2_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11718 {
11719         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryInfoPolicy2_info__, NDR_POINTER_UNIQUE, "Pointer to Info (lsa_PolicyInformation)",hf_lsarpc_lsa_QueryInfoPolicy2_info);
11720
11721         return offset;
11722 }
11723
11724 static int
11725 lsarpc_dissect_element_lsa_QueryInfoPolicy2_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11726 {
11727         offset = lsarpc_dissect_lsa_PolicyInformation(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryInfoPolicy2_info, *0);
11728
11729         return offset;
11730 }
11731
11732 /* IDL: NTSTATUS lsa_QueryInfoPolicy2( */
11733 /* IDL: [ref] [in] policy_handle *handle, */
11734 /* IDL: [in] lsa_PolicyInfo level, */
11735 /* IDL: [out] [ref] [switch_is(level)] lsa_PolicyInformation **info */
11736 /* IDL: ); */
11737
11738 static int
11739 lsarpc_dissect_lsa_QueryInfoPolicy2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11740 {
11741         guint32 status;
11742
11743         pinfo->dcerpc_procedure_name="lsa_QueryInfoPolicy2";
11744         offset = lsarpc_dissect_element_lsa_QueryInfoPolicy2_info(tvb, offset, pinfo, tree, drep);
11745         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11746
11747         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11748
11749         if (status != 0)
11750                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11751
11752         return offset;
11753 }
11754
11755 static int
11756 lsarpc_dissect_lsa_QueryInfoPolicy2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11757 {
11758         pinfo->dcerpc_procedure_name="lsa_QueryInfoPolicy2";
11759         offset = lsarpc_dissect_element_lsa_QueryInfoPolicy2_handle(tvb, offset, pinfo, tree, drep);
11760         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11761         offset = lsarpc_dissect_element_lsa_QueryInfoPolicy2_level(tvb, offset, pinfo, tree, drep);
11762         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11763         return offset;
11764 }
11765
11766 static int
11767 lsarpc_dissect_element_lsa_SetInfoPolicy2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11768 {
11769         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetInfoPolicy2_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_SetInfoPolicy2_handle);
11770
11771         return offset;
11772 }
11773
11774 static int
11775 lsarpc_dissect_element_lsa_SetInfoPolicy2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11776 {
11777         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInfoPolicy2_handle, 0);
11778
11779         return offset;
11780 }
11781
11782 static int
11783 lsarpc_dissect_element_lsa_SetInfoPolicy2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11784 {
11785         offset = lsarpc_dissect_enum_lsa_PolicyInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInfoPolicy2_level, 0);
11786
11787         return offset;
11788 }
11789
11790 static int
11791 lsarpc_dissect_element_lsa_SetInfoPolicy2_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11792 {
11793         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetInfoPolicy2_info_, NDR_POINTER_REF, "Pointer to Info (lsa_PolicyInformation)",hf_lsarpc_lsa_SetInfoPolicy2_info);
11794
11795         return offset;
11796 }
11797
11798 static int
11799 lsarpc_dissect_element_lsa_SetInfoPolicy2_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11800 {
11801         offset = lsarpc_dissect_lsa_PolicyInformation(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetInfoPolicy2_info, *0);
11802
11803         return offset;
11804 }
11805
11806 /* IDL: NTSTATUS lsa_SetInfoPolicy2( */
11807 /* IDL: [ref] [in] policy_handle *handle, */
11808 /* IDL: [in] lsa_PolicyInfo level, */
11809 /* IDL: [ref] [in] [switch_is(level)] lsa_PolicyInformation *info */
11810 /* IDL: ); */
11811
11812 static int
11813 lsarpc_dissect_lsa_SetInfoPolicy2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11814 {
11815         guint32 status;
11816
11817         pinfo->dcerpc_procedure_name="lsa_SetInfoPolicy2";
11818         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11819
11820         if (status != 0)
11821                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11822
11823         return offset;
11824 }
11825
11826 static int
11827 lsarpc_dissect_lsa_SetInfoPolicy2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11828 {
11829         pinfo->dcerpc_procedure_name="lsa_SetInfoPolicy2";
11830         offset = lsarpc_dissect_element_lsa_SetInfoPolicy2_handle(tvb, offset, pinfo, tree, drep);
11831         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11832         offset = lsarpc_dissect_element_lsa_SetInfoPolicy2_level(tvb, offset, pinfo, tree, drep);
11833         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11834         offset = lsarpc_dissect_element_lsa_SetInfoPolicy2_info(tvb, offset, pinfo, tree, drep);
11835         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11836         return offset;
11837 }
11838
11839 static int
11840 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11841 {
11842         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_QueryTrustedDomainInfoByName_handle);
11843
11844         return offset;
11845 }
11846
11847 static int
11848 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11849 {
11850         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfoByName_handle, 0);
11851
11852         return offset;
11853 }
11854
11855 static int
11856 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_trusted_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11857 {
11858         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_trusted_domain_, NDR_POINTER_REF, "Pointer to Trusted Domain (lsa_String)",hf_lsarpc_lsa_QueryTrustedDomainInfoByName_trusted_domain);
11859
11860         return offset;
11861 }
11862
11863 static int
11864 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_trusted_domain_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11865 {
11866         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_QueryTrustedDomainInfoByName_trusted_domain,0);
11867
11868         return offset;
11869 }
11870
11871 static int
11872 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11873 {
11874         offset = lsarpc_dissect_enum_lsa_TrustDomInfoEnum(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfoByName_level, 0);
11875
11876         return offset;
11877 }
11878
11879 static int
11880 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11881 {
11882         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_QueryTrustedDomainInfoByName_info);
11883
11884         return offset;
11885 }
11886
11887 static int
11888 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11889 {
11890         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info__, NDR_POINTER_UNIQUE, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_QueryTrustedDomainInfoByName_info);
11891
11892         return offset;
11893 }
11894
11895 static int
11896 lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11897 {
11898         offset = lsarpc_dissect_lsa_TrustedDomainInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryTrustedDomainInfoByName_info, *0);
11899
11900         return offset;
11901 }
11902
11903 /* IDL: NTSTATUS lsa_QueryTrustedDomainInfoByName( */
11904 /* IDL: [ref] [in] policy_handle *handle, */
11905 /* IDL: [in] [ref] lsa_String *trusted_domain, */
11906 /* IDL: [in] lsa_TrustDomInfoEnum level, */
11907 /* IDL: [out] [ref] [switch_is(level)] lsa_TrustedDomainInfo **info */
11908 /* IDL: ); */
11909
11910 static int
11911 lsarpc_dissect_lsa_QueryTrustedDomainInfoByName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11912 {
11913         guint32 status;
11914
11915         pinfo->dcerpc_procedure_name="lsa_QueryTrustedDomainInfoByName";
11916         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_info(tvb, offset, pinfo, tree, drep);
11917         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11918
11919         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
11920
11921         if (status != 0)
11922                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
11923
11924         return offset;
11925 }
11926
11927 static int
11928 lsarpc_dissect_lsa_QueryTrustedDomainInfoByName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11929 {
11930         pinfo->dcerpc_procedure_name="lsa_QueryTrustedDomainInfoByName";
11931         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_handle(tvb, offset, pinfo, tree, drep);
11932         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11933         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_trusted_domain(tvb, offset, pinfo, tree, drep);
11934         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11935         offset = lsarpc_dissect_element_lsa_QueryTrustedDomainInfoByName_level(tvb, offset, pinfo, tree, drep);
11936         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
11937         return offset;
11938 }
11939
11940 static int
11941 lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11942 {
11943         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_SetTrustedDomainInfoByName_handle);
11944
11945         return offset;
11946 }
11947
11948 static int
11949 lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11950 {
11951         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetTrustedDomainInfoByName_handle, 0);
11952
11953         return offset;
11954 }
11955
11956 static int
11957 lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_trusted_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11958 {
11959         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_trusted_domain_, NDR_POINTER_REF, "Pointer to Trusted Domain (lsa_String)",hf_lsarpc_lsa_SetTrustedDomainInfoByName_trusted_domain);
11960
11961         return offset;
11962 }
11963
11964 static int
11965 lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_trusted_domain_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11966 {
11967         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_SetTrustedDomainInfoByName_trusted_domain,0);
11968
11969         return offset;
11970 }
11971
11972 static int
11973 lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11974 {
11975         offset = lsarpc_dissect_enum_lsa_TrustDomInfoEnum(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetTrustedDomainInfoByName_level, 0);
11976
11977         return offset;
11978 }
11979
11980 static int
11981 lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11982 {
11983         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustedDomainInfo)",hf_lsarpc_lsa_SetTrustedDomainInfoByName_info);
11984
11985         return offset;
11986 }
11987
11988 static int
11989 lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
11990 {
11991         offset = lsarpc_dissect_lsa_TrustedDomainInfo(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetTrustedDomainInfoByName_info, *0);
11992
11993         return offset;
11994 }
11995
11996 /* IDL: NTSTATUS lsa_SetTrustedDomainInfoByName( */
11997 /* IDL: [ref] [in] policy_handle *handle, */
11998 /* IDL: [in] [ref] lsa_String *trusted_domain, */
11999 /* IDL: [in] lsa_TrustDomInfoEnum level, */
12000 /* IDL: [ref] [in] [switch_is(level)] lsa_TrustedDomainInfo *info */
12001 /* IDL: ); */
12002
12003 static int
12004 lsarpc_dissect_lsa_SetTrustedDomainInfoByName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12005 {
12006         guint32 status;
12007
12008         pinfo->dcerpc_procedure_name="lsa_SetTrustedDomainInfoByName";
12009         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12010
12011         if (status != 0)
12012                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12013
12014         return offset;
12015 }
12016
12017 static int
12018 lsarpc_dissect_lsa_SetTrustedDomainInfoByName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12019 {
12020         pinfo->dcerpc_procedure_name="lsa_SetTrustedDomainInfoByName";
12021         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_handle(tvb, offset, pinfo, tree, drep);
12022         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12023         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_trusted_domain(tvb, offset, pinfo, tree, drep);
12024         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12025         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_level(tvb, offset, pinfo, tree, drep);
12026         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12027         offset = lsarpc_dissect_element_lsa_SetTrustedDomainInfoByName_info(tvb, offset, pinfo, tree, drep);
12028         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12029         return offset;
12030 }
12031
12032 static int
12033 lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12034 {
12035         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_EnumTrustedDomainsEx_handle);
12036
12037         return offset;
12038 }
12039
12040 static int
12041 lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12042 {
12043         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumTrustedDomainsEx_handle, 0);
12044
12045         return offset;
12046 }
12047
12048 static int
12049 lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_resume_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12050 {
12051         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_resume_handle_, NDR_POINTER_REF, "Pointer to Resume Handle (uint32)",hf_lsarpc_lsa_EnumTrustedDomainsEx_resume_handle);
12052
12053         return offset;
12054 }
12055
12056 static int
12057 lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_resume_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12058 {
12059         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumTrustedDomainsEx_resume_handle, 0);
12060
12061         return offset;
12062 }
12063
12064 static int
12065 lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12066 {
12067         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_DomainListEx)",hf_lsarpc_lsa_EnumTrustedDomainsEx_domains);
12068
12069         return offset;
12070 }
12071
12072 static int
12073 lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12074 {
12075         offset = lsarpc_dissect_struct_lsa_DomainListEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_EnumTrustedDomainsEx_domains,0);
12076
12077         return offset;
12078 }
12079
12080 static int
12081 lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_max_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12082 {
12083         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_EnumTrustedDomainsEx_max_size, 0);
12084
12085         return offset;
12086 }
12087
12088 /* IDL: NTSTATUS lsa_EnumTrustedDomainsEx( */
12089 /* IDL: [ref] [in] policy_handle *handle, */
12090 /* IDL: [out] [ref] [in] uint32 *resume_handle, */
12091 /* IDL: [out] [ref] lsa_DomainListEx *domains, */
12092 /* IDL: [in] uint32 max_size */
12093 /* IDL: ); */
12094
12095 static int
12096 lsarpc_dissect_lsa_EnumTrustedDomainsEx_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12097 {
12098         guint32 status;
12099
12100         pinfo->dcerpc_procedure_name="lsa_EnumTrustedDomainsEx";
12101         offset = lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_resume_handle(tvb, offset, pinfo, tree, drep);
12102         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12103
12104         offset = lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_domains(tvb, offset, pinfo, tree, drep);
12105         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12106
12107         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12108
12109         if (status != 0)
12110                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12111
12112         return offset;
12113 }
12114
12115 static int
12116 lsarpc_dissect_lsa_EnumTrustedDomainsEx_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12117 {
12118         pinfo->dcerpc_procedure_name="lsa_EnumTrustedDomainsEx";
12119         offset = lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_handle(tvb, offset, pinfo, tree, drep);
12120         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12121         offset = lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_resume_handle(tvb, offset, pinfo, tree, drep);
12122         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12123         offset = lsarpc_dissect_element_lsa_EnumTrustedDomainsEx_max_size(tvb, offset, pinfo, tree, drep);
12124         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12125         return offset;
12126 }
12127
12128 static int
12129 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_policy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12130 {
12131         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx_policy_handle_, NDR_POINTER_REF, "Pointer to Policy Handle (policy_handle)",hf_lsarpc_lsa_CreateTrustedDomainEx_policy_handle);
12132
12133         return offset;
12134 }
12135
12136 static int
12137 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_policy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12138 {
12139         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomainEx_policy_handle, 0);
12140
12141         return offset;
12142 }
12143
12144 static int
12145 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12146 {
12147         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustDomainInfoInfoEx)",hf_lsarpc_lsa_CreateTrustedDomainEx_info);
12148
12149         return offset;
12150 }
12151
12152 static int
12153 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12154 {
12155         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_CreateTrustedDomainEx_info,0);
12156
12157         return offset;
12158 }
12159
12160 static int
12161 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12162 {
12163         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx_auth_info_, NDR_POINTER_REF, "Pointer to Auth Info (lsa_TrustDomainInfoAuthInfo)",hf_lsarpc_lsa_CreateTrustedDomainEx_auth_info);
12164
12165         return offset;
12166 }
12167
12168 static int
12169 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_auth_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12170 {
12171         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_CreateTrustedDomainEx_auth_info,0);
12172
12173         return offset;
12174 }
12175
12176 static int
12177 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12178 {
12179         offset = lsarpc_dissect_bitmap_lsa_TrustedAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomainEx_access_mask, 0);
12180
12181         return offset;
12182 }
12183
12184 static int
12185 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12186 {
12187         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx_trustdom_handle_, NDR_POINTER_REF, "Pointer to Trustdom Handle (policy_handle)",hf_lsarpc_lsa_CreateTrustedDomainEx_trustdom_handle);
12188
12189         return offset;
12190 }
12191
12192 static int
12193 lsarpc_dissect_element_lsa_CreateTrustedDomainEx_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12194 {
12195         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomainEx_trustdom_handle, 0);
12196
12197         return offset;
12198 }
12199
12200 /* IDL: NTSTATUS lsa_CreateTrustedDomainEx( */
12201 /* IDL: [ref] [in] policy_handle *policy_handle, */
12202 /* IDL: [ref] [in] lsa_TrustDomainInfoInfoEx *info, */
12203 /* IDL: [ref] [in] lsa_TrustDomainInfoAuthInfo *auth_info, */
12204 /* IDL: [in] lsa_TrustedAccessMask access_mask, */
12205 /* IDL: [out] [ref] policy_handle *trustdom_handle */
12206 /* IDL: ); */
12207
12208 static int
12209 lsarpc_dissect_lsa_CreateTrustedDomainEx_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12210 {
12211         guint32 status;
12212
12213         pinfo->dcerpc_procedure_name="lsa_CreateTrustedDomainEx";
12214         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx_trustdom_handle(tvb, offset, pinfo, tree, drep);
12215         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12216
12217         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12218
12219         if (status != 0)
12220                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12221
12222         return offset;
12223 }
12224
12225 static int
12226 lsarpc_dissect_lsa_CreateTrustedDomainEx_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12227 {
12228         pinfo->dcerpc_procedure_name="lsa_CreateTrustedDomainEx";
12229         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx_policy_handle(tvb, offset, pinfo, tree, drep);
12230         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12231         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx_info(tvb, offset, pinfo, tree, drep);
12232         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12233         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx_auth_info(tvb, offset, pinfo, tree, drep);
12234         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12235         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx_access_mask(tvb, offset, pinfo, tree, drep);
12236         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12237         return offset;
12238 }
12239
12240 static int
12241 lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12242 {
12243         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_CloseTrustedDomainEx_handle);
12244
12245         return offset;
12246 }
12247
12248 static int
12249 lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12250 {
12251         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CloseTrustedDomainEx_handle, 0);
12252
12253         return offset;
12254 }
12255
12256 /* IDL: NTSTATUS lsa_CloseTrustedDomainEx( */
12257 /* IDL: [out] [ref] [in] policy_handle *handle */
12258 /* IDL: ); */
12259
12260 static int
12261 lsarpc_dissect_lsa_CloseTrustedDomainEx_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12262 {
12263         guint32 status;
12264
12265         pinfo->dcerpc_procedure_name="lsa_CloseTrustedDomainEx";
12266         offset = lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle(tvb, offset, pinfo, tree, drep);
12267         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12268
12269         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12270
12271         if (status != 0)
12272                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12273
12274         return offset;
12275 }
12276
12277 static int
12278 lsarpc_dissect_lsa_CloseTrustedDomainEx_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12279 {
12280         pinfo->dcerpc_procedure_name="lsa_CloseTrustedDomainEx";
12281         offset = lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle(tvb, offset, pinfo, tree, drep);
12282         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12283         return offset;
12284 }
12285
12286 static int
12287 lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12288 {
12289         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_QueryDomainInformationPolicy_handle);
12290
12291         return offset;
12292 }
12293
12294 static int
12295 lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12296 {
12297         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryDomainInformationPolicy_handle, 0);
12298
12299         return offset;
12300 }
12301
12302 static int
12303 lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12304 {
12305         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryDomainInformationPolicy_level, 0);
12306
12307         return offset;
12308 }
12309
12310 static int
12311 lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12312 {
12313         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info_, NDR_POINTER_REF, "Pointer to Info (lsa_DomainInformationPolicy)",hf_lsarpc_lsa_QueryDomainInformationPolicy_info);
12314
12315         return offset;
12316 }
12317
12318 static int
12319 lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12320 {
12321         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info__, NDR_POINTER_UNIQUE, "Pointer to Info (lsa_DomainInformationPolicy)",hf_lsarpc_lsa_QueryDomainInformationPolicy_info);
12322
12323         return offset;
12324 }
12325
12326 static int
12327 lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12328 {
12329         offset = lsarpc_dissect_lsa_DomainInformationPolicy(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_QueryDomainInformationPolicy_info, *0);
12330
12331         return offset;
12332 }
12333
12334 /* IDL: NTSTATUS lsa_QueryDomainInformationPolicy( */
12335 /* IDL: [ref] [in] policy_handle *handle, */
12336 /* IDL: [in] uint16 level, */
12337 /* IDL: [out] [ref] [switch_is(level)] lsa_DomainInformationPolicy **info */
12338 /* IDL: ); */
12339
12340 static int
12341 lsarpc_dissect_lsa_QueryDomainInformationPolicy_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12342 {
12343         guint32 status;
12344
12345         pinfo->dcerpc_procedure_name="lsa_QueryDomainInformationPolicy";
12346         offset = lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_info(tvb, offset, pinfo, tree, drep);
12347         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12348
12349         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12350
12351         if (status != 0)
12352                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12353
12354         return offset;
12355 }
12356
12357 static int
12358 lsarpc_dissect_lsa_QueryDomainInformationPolicy_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12359 {
12360         pinfo->dcerpc_procedure_name="lsa_QueryDomainInformationPolicy";
12361         offset = lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_handle(tvb, offset, pinfo, tree, drep);
12362         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12363         offset = lsarpc_dissect_element_lsa_QueryDomainInformationPolicy_level(tvb, offset, pinfo, tree, drep);
12364         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12365         return offset;
12366 }
12367
12368 static int
12369 lsarpc_dissect_element_lsa_SetDomainInformationPolicy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12370 {
12371         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetDomainInformationPolicy_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_SetDomainInformationPolicy_handle);
12372
12373         return offset;
12374 }
12375
12376 static int
12377 lsarpc_dissect_element_lsa_SetDomainInformationPolicy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12378 {
12379         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetDomainInformationPolicy_handle, 0);
12380
12381         return offset;
12382 }
12383
12384 static int
12385 lsarpc_dissect_element_lsa_SetDomainInformationPolicy_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12386 {
12387         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetDomainInformationPolicy_level, 0);
12388
12389         return offset;
12390 }
12391
12392 static int
12393 lsarpc_dissect_element_lsa_SetDomainInformationPolicy_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12394 {
12395         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_SetDomainInformationPolicy_info_, NDR_POINTER_UNIQUE, "Pointer to Info (lsa_DomainInformationPolicy)",hf_lsarpc_lsa_SetDomainInformationPolicy_info);
12396
12397         return offset;
12398 }
12399
12400 static int
12401 lsarpc_dissect_element_lsa_SetDomainInformationPolicy_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12402 {
12403         offset = lsarpc_dissect_lsa_DomainInformationPolicy(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_SetDomainInformationPolicy_info, *0);
12404
12405         return offset;
12406 }
12407
12408 /* IDL: NTSTATUS lsa_SetDomainInformationPolicy( */
12409 /* IDL: [ref] [in] policy_handle *handle, */
12410 /* IDL: [in] uint16 level, */
12411 /* IDL: [unique(1)] [in] [switch_is(level)] lsa_DomainInformationPolicy *info */
12412 /* IDL: ); */
12413
12414 static int
12415 lsarpc_dissect_lsa_SetDomainInformationPolicy_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12416 {
12417         guint32 status;
12418
12419         pinfo->dcerpc_procedure_name="lsa_SetDomainInformationPolicy";
12420         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12421
12422         if (status != 0)
12423                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12424
12425         return offset;
12426 }
12427
12428 static int
12429 lsarpc_dissect_lsa_SetDomainInformationPolicy_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12430 {
12431         pinfo->dcerpc_procedure_name="lsa_SetDomainInformationPolicy";
12432         offset = lsarpc_dissect_element_lsa_SetDomainInformationPolicy_handle(tvb, offset, pinfo, tree, drep);
12433         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12434         offset = lsarpc_dissect_element_lsa_SetDomainInformationPolicy_level(tvb, offset, pinfo, tree, drep);
12435         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12436         offset = lsarpc_dissect_element_lsa_SetDomainInformationPolicy_info(tvb, offset, pinfo, tree, drep);
12437         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12438         return offset;
12439 }
12440
12441 static int
12442 lsarpc_dissect_element_lsa_OpenTrustedDomainByName_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12443 {
12444         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenTrustedDomainByName_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_OpenTrustedDomainByName_handle);
12445
12446         return offset;
12447 }
12448
12449 static int
12450 lsarpc_dissect_element_lsa_OpenTrustedDomainByName_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12451 {
12452         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenTrustedDomainByName_handle, 0);
12453
12454         return offset;
12455 }
12456
12457 static int
12458 lsarpc_dissect_element_lsa_OpenTrustedDomainByName_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12459 {
12460         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_OpenTrustedDomainByName_name,0);
12461
12462         return offset;
12463 }
12464
12465 static int
12466 lsarpc_dissect_element_lsa_OpenTrustedDomainByName_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12467 {
12468         offset = lsarpc_dissect_bitmap_lsa_TrustedAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenTrustedDomainByName_access_mask, 0);
12469
12470         return offset;
12471 }
12472
12473 static int
12474 lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12475 {
12476         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle_, NDR_POINTER_REF, "Pointer to Trustdom Handle (policy_handle)",hf_lsarpc_lsa_OpenTrustedDomainByName_trustdom_handle);
12477
12478         return offset;
12479 }
12480
12481 static int
12482 lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12483 {
12484         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_OpenTrustedDomainByName_trustdom_handle, 0);
12485
12486         return offset;
12487 }
12488
12489 /* IDL: NTSTATUS lsa_OpenTrustedDomainByName( */
12490 /* IDL: [ref] [in] policy_handle *handle, */
12491 /* IDL: [in] lsa_String name, */
12492 /* IDL: [in] lsa_TrustedAccessMask access_mask, */
12493 /* IDL: [out] [ref] policy_handle *trustdom_handle */
12494 /* IDL: ); */
12495
12496 static int
12497 lsarpc_dissect_lsa_OpenTrustedDomainByName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12498 {
12499         guint32 status;
12500
12501         pinfo->dcerpc_procedure_name="lsa_OpenTrustedDomainByName";
12502         offset = lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle(tvb, offset, pinfo, tree, drep);
12503         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12504
12505         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12506
12507         if (status != 0)
12508                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12509
12510         return offset;
12511 }
12512
12513 static int
12514 lsarpc_dissect_lsa_OpenTrustedDomainByName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12515 {
12516         pinfo->dcerpc_procedure_name="lsa_OpenTrustedDomainByName";
12517         offset = lsarpc_dissect_element_lsa_OpenTrustedDomainByName_handle(tvb, offset, pinfo, tree, drep);
12518         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12519         offset = lsarpc_dissect_element_lsa_OpenTrustedDomainByName_name(tvb, offset, pinfo, tree, drep);
12520         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12521         offset = lsarpc_dissect_element_lsa_OpenTrustedDomainByName_access_mask(tvb, offset, pinfo, tree, drep);
12522         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12523         return offset;
12524 }
12525
12526 /* IDL: NTSTATUS lsa_TestCall( */
12527 /* IDL:  */
12528 /* IDL: ); */
12529
12530 static int
12531 lsarpc_dissect_lsa_TestCall_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12532 {
12533         guint32 status;
12534
12535         pinfo->dcerpc_procedure_name="lsa_TestCall";
12536         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12537
12538         if (status != 0)
12539                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12540
12541         return offset;
12542 }
12543
12544 static int
12545 lsarpc_dissect_lsa_TestCall_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12546 {
12547         pinfo->dcerpc_procedure_name="lsa_TestCall";
12548         return offset;
12549 }
12550
12551 static int
12552 lsarpc_dissect_element_lsa_LookupSids2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12553 {
12554         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids2_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupSids2_handle);
12555
12556         return offset;
12557 }
12558
12559 static int
12560 lsarpc_dissect_element_lsa_LookupSids2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12561 {
12562         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids2_handle, 0);
12563
12564         return offset;
12565 }
12566
12567 static int
12568 lsarpc_dissect_element_lsa_LookupSids2_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12569 {
12570         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids2_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_SidArray)",hf_lsarpc_lsa_LookupSids2_sids);
12571
12572         return offset;
12573 }
12574
12575 static int
12576 lsarpc_dissect_element_lsa_LookupSids2_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12577 {
12578         offset = lsarpc_dissect_struct_lsa_SidArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids2_sids,0);
12579
12580         return offset;
12581 }
12582
12583 static int
12584 lsarpc_dissect_element_lsa_LookupSids2_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12585 {
12586         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids2_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupSids2_domains);
12587
12588         return offset;
12589 }
12590
12591 static int
12592 lsarpc_dissect_element_lsa_LookupSids2_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12593 {
12594         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids2_domains__, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupSids2_domains);
12595
12596         return offset;
12597 }
12598
12599 static int
12600 lsarpc_dissect_element_lsa_LookupSids2_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12601 {
12602         offset = lsarpc_dissect_struct_lsa_RefDomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids2_domains,0);
12603
12604         return offset;
12605 }
12606
12607 static int
12608 lsarpc_dissect_element_lsa_LookupSids2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12609 {
12610         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids2_names_, NDR_POINTER_REF, "Pointer to Names (lsa_TransNameArray2)",hf_lsarpc_lsa_LookupSids2_names);
12611
12612         return offset;
12613 }
12614
12615 static int
12616 lsarpc_dissect_element_lsa_LookupSids2_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12617 {
12618         offset = lsarpc_dissect_struct_lsa_TransNameArray2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids2_names,0);
12619
12620         return offset;
12621 }
12622
12623 static int
12624 lsarpc_dissect_element_lsa_LookupSids2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12625 {
12626         offset = lsarpc_dissect_enum_lsa_LookupNamesLevel(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids2_level, 0);
12627
12628         return offset;
12629 }
12630
12631 static int
12632 lsarpc_dissect_element_lsa_LookupSids2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12633 {
12634         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids2_count_, NDR_POINTER_REF, "Pointer to Count (uint32)",hf_lsarpc_lsa_LookupSids2_count);
12635
12636         return offset;
12637 }
12638
12639 static int
12640 lsarpc_dissect_element_lsa_LookupSids2_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12641 {
12642         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids2_count, 0);
12643
12644         return offset;
12645 }
12646
12647 static int
12648 lsarpc_dissect_element_lsa_LookupSids2_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12649 {
12650         offset = lsarpc_dissect_enum_lsa_LookupOptions(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids2_lookup_options, 0);
12651
12652         return offset;
12653 }
12654
12655 static int
12656 lsarpc_dissect_element_lsa_LookupSids2_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12657 {
12658         offset = lsarpc_dissect_enum_lsa_ClientRevision(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids2_client_revision, 0);
12659
12660         return offset;
12661 }
12662
12663 /* IDL: NTSTATUS lsa_LookupSids2( */
12664 /* IDL: [ref] [in] policy_handle *handle, */
12665 /* IDL: [in] [ref] lsa_SidArray *sids, */
12666 /* IDL: [out] [ref] lsa_RefDomainList **domains, */
12667 /* IDL: [out] [in] [ref] lsa_TransNameArray2 *names, */
12668 /* IDL: [in] lsa_LookupNamesLevel level, */
12669 /* IDL: [out] [in] [ref] uint32 *count, */
12670 /* IDL: [in] lsa_LookupOptions lookup_options, */
12671 /* IDL: [in] lsa_ClientRevision client_revision */
12672 /* IDL: ); */
12673
12674 static int
12675 lsarpc_dissect_lsa_LookupSids2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12676 {
12677         guint32 status;
12678
12679         pinfo->dcerpc_procedure_name="lsa_LookupSids2";
12680         offset = lsarpc_dissect_element_lsa_LookupSids2_domains(tvb, offset, pinfo, tree, drep);
12681         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12682
12683         offset = lsarpc_dissect_element_lsa_LookupSids2_names(tvb, offset, pinfo, tree, drep);
12684         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12685
12686         offset = lsarpc_dissect_element_lsa_LookupSids2_count(tvb, offset, pinfo, tree, drep);
12687         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12688
12689         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12690
12691         if (status != 0)
12692                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12693
12694         return offset;
12695 }
12696
12697 static int
12698 lsarpc_dissect_lsa_LookupSids2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12699 {
12700         pinfo->dcerpc_procedure_name="lsa_LookupSids2";
12701         offset = lsarpc_dissect_element_lsa_LookupSids2_handle(tvb, offset, pinfo, tree, drep);
12702         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12703         offset = lsarpc_dissect_element_lsa_LookupSids2_sids(tvb, offset, pinfo, tree, drep);
12704         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12705         offset = lsarpc_dissect_element_lsa_LookupSids2_names(tvb, offset, pinfo, tree, drep);
12706         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12707         offset = lsarpc_dissect_element_lsa_LookupSids2_level(tvb, offset, pinfo, tree, drep);
12708         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12709         offset = lsarpc_dissect_element_lsa_LookupSids2_count(tvb, offset, pinfo, tree, drep);
12710         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12711         offset = lsarpc_dissect_element_lsa_LookupSids2_lookup_options(tvb, offset, pinfo, tree, drep);
12712         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12713         offset = lsarpc_dissect_element_lsa_LookupSids2_client_revision(tvb, offset, pinfo, tree, drep);
12714         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12715         return offset;
12716 }
12717
12718 static int
12719 lsarpc_dissect_element_lsa_LookupNames2_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12720 {
12721         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames2_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupNames2_handle);
12722
12723         return offset;
12724 }
12725
12726 static int
12727 lsarpc_dissect_element_lsa_LookupNames2_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12728 {
12729         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames2_handle, 0);
12730
12731         return offset;
12732 }
12733
12734 static int
12735 lsarpc_dissect_element_lsa_LookupNames2_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12736 {
12737         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames2_num_names, 0);
12738
12739         return offset;
12740 }
12741
12742 static int
12743 lsarpc_dissect_element_lsa_LookupNames2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12744 {
12745         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames2_names_);
12746
12747         return offset;
12748 }
12749
12750 static int
12751 lsarpc_dissect_element_lsa_LookupNames2_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12752 {
12753         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames2_names,0);
12754
12755         return offset;
12756 }
12757
12758 static int
12759 lsarpc_dissect_element_lsa_LookupNames2_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12760 {
12761         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames2_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames2_domains);
12762
12763         return offset;
12764 }
12765
12766 static int
12767 lsarpc_dissect_element_lsa_LookupNames2_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12768 {
12769         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames2_domains__, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames2_domains);
12770
12771         return offset;
12772 }
12773
12774 static int
12775 lsarpc_dissect_element_lsa_LookupNames2_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12776 {
12777         offset = lsarpc_dissect_struct_lsa_RefDomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames2_domains,0);
12778
12779         return offset;
12780 }
12781
12782 static int
12783 lsarpc_dissect_element_lsa_LookupNames2_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12784 {
12785         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames2_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_TransSidArray2)",hf_lsarpc_lsa_LookupNames2_sids);
12786
12787         return offset;
12788 }
12789
12790 static int
12791 lsarpc_dissect_element_lsa_LookupNames2_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12792 {
12793         offset = lsarpc_dissect_struct_lsa_TransSidArray2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames2_sids,0);
12794
12795         return offset;
12796 }
12797
12798 static int
12799 lsarpc_dissect_element_lsa_LookupNames2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12800 {
12801         offset = lsarpc_dissect_enum_lsa_LookupNamesLevel(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames2_level, 0);
12802
12803         return offset;
12804 }
12805
12806 static int
12807 lsarpc_dissect_element_lsa_LookupNames2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12808 {
12809         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames2_count_, NDR_POINTER_REF, "Pointer to Count (uint32)",hf_lsarpc_lsa_LookupNames2_count);
12810
12811         return offset;
12812 }
12813
12814 static int
12815 lsarpc_dissect_element_lsa_LookupNames2_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12816 {
12817         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames2_count, 0);
12818
12819         return offset;
12820 }
12821
12822 static int
12823 lsarpc_dissect_element_lsa_LookupNames2_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12824 {
12825         offset = lsarpc_dissect_enum_lsa_LookupOptions(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames2_lookup_options, 0);
12826
12827         return offset;
12828 }
12829
12830 static int
12831 lsarpc_dissect_element_lsa_LookupNames2_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12832 {
12833         offset = lsarpc_dissect_enum_lsa_ClientRevision(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames2_client_revision, 0);
12834
12835         return offset;
12836 }
12837
12838 /* IDL: NTSTATUS lsa_LookupNames2( */
12839 /* IDL: [ref] [in] policy_handle *handle, */
12840 /* IDL: [in] [range(0,1000)] uint32 num_names, */
12841 /* IDL: [in] [size_is(num_names)] lsa_String names[*], */
12842 /* IDL: [out] [ref] lsa_RefDomainList **domains, */
12843 /* IDL: [out] [in] [ref] lsa_TransSidArray2 *sids, */
12844 /* IDL: [in] lsa_LookupNamesLevel level, */
12845 /* IDL: [out] [in] [ref] uint32 *count, */
12846 /* IDL: [in] lsa_LookupOptions lookup_options, */
12847 /* IDL: [in] lsa_ClientRevision client_revision */
12848 /* IDL: ); */
12849
12850 static int
12851 lsarpc_dissect_lsa_LookupNames2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12852 {
12853         guint32 status;
12854
12855         pinfo->dcerpc_procedure_name="lsa_LookupNames2";
12856         offset = lsarpc_dissect_element_lsa_LookupNames2_domains(tvb, offset, pinfo, tree, drep);
12857         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12858
12859         offset = lsarpc_dissect_element_lsa_LookupNames2_sids(tvb, offset, pinfo, tree, drep);
12860         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12861
12862         offset = lsarpc_dissect_element_lsa_LookupNames2_count(tvb, offset, pinfo, tree, drep);
12863         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12864
12865         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12866
12867         if (status != 0)
12868                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12869
12870         return offset;
12871 }
12872
12873 static int
12874 lsarpc_dissect_lsa_LookupNames2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12875 {
12876         pinfo->dcerpc_procedure_name="lsa_LookupNames2";
12877         offset = lsarpc_dissect_element_lsa_LookupNames2_handle(tvb, offset, pinfo, tree, drep);
12878         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12879         offset = lsarpc_dissect_element_lsa_LookupNames2_num_names(tvb, offset, pinfo, tree, drep);
12880         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12881         offset = lsarpc_dissect_element_lsa_LookupNames2_names(tvb, offset, pinfo, tree, drep);
12882         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12883         offset = lsarpc_dissect_element_lsa_LookupNames2_sids(tvb, offset, pinfo, tree, drep);
12884         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12885         offset = lsarpc_dissect_element_lsa_LookupNames2_level(tvb, offset, pinfo, tree, drep);
12886         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12887         offset = lsarpc_dissect_element_lsa_LookupNames2_count(tvb, offset, pinfo, tree, drep);
12888         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12889         offset = lsarpc_dissect_element_lsa_LookupNames2_lookup_options(tvb, offset, pinfo, tree, drep);
12890         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12891         offset = lsarpc_dissect_element_lsa_LookupNames2_client_revision(tvb, offset, pinfo, tree, drep);
12892         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12893         return offset;
12894 }
12895
12896 static int
12897 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_policy_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12898 {
12899         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_policy_handle_, NDR_POINTER_REF, "Pointer to Policy Handle (policy_handle)",hf_lsarpc_lsa_CreateTrustedDomainEx2_policy_handle);
12900
12901         return offset;
12902 }
12903
12904 static int
12905 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_policy_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12906 {
12907         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomainEx2_policy_handle, 0);
12908
12909         return offset;
12910 }
12911
12912 static int
12913 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12914 {
12915         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_info_, NDR_POINTER_REF, "Pointer to Info (lsa_TrustDomainInfoInfoEx)",hf_lsarpc_lsa_CreateTrustedDomainEx2_info);
12916
12917         return offset;
12918 }
12919
12920 static int
12921 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12922 {
12923         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoInfoEx(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_CreateTrustedDomainEx2_info,0);
12924
12925         return offset;
12926 }
12927
12928 static int
12929 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_auth_info_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12930 {
12931         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_auth_info_internal_, NDR_POINTER_REF, "Pointer to Auth Info Internal (lsa_TrustDomainInfoAuthInfoInternal)",hf_lsarpc_lsa_CreateTrustedDomainEx2_auth_info_internal);
12932
12933         return offset;
12934 }
12935
12936 static int
12937 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_auth_info_internal_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12938 {
12939         offset = lsarpc_dissect_struct_lsa_TrustDomainInfoAuthInfoInternal(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_CreateTrustedDomainEx2_auth_info_internal,0);
12940
12941         return offset;
12942 }
12943
12944 static int
12945 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_access_mask(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12946 {
12947         offset = lsarpc_dissect_bitmap_lsa_TrustedAccessMask(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomainEx2_access_mask, 0);
12948
12949         return offset;
12950 }
12951
12952 static int
12953 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_trustdom_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12954 {
12955         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_trustdom_handle_, NDR_POINTER_REF, "Pointer to Trustdom Handle (policy_handle)",hf_lsarpc_lsa_CreateTrustedDomainEx2_trustdom_handle);
12956
12957         return offset;
12958 }
12959
12960 static int
12961 lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_trustdom_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12962 {
12963         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_CreateTrustedDomainEx2_trustdom_handle, 0);
12964
12965         return offset;
12966 }
12967
12968 /* IDL: NTSTATUS lsa_CreateTrustedDomainEx2( */
12969 /* IDL: [ref] [in] policy_handle *policy_handle, */
12970 /* IDL: [ref] [in] lsa_TrustDomainInfoInfoEx *info, */
12971 /* IDL: [ref] [in] lsa_TrustDomainInfoAuthInfoInternal *auth_info_internal, */
12972 /* IDL: [in] lsa_TrustedAccessMask access_mask, */
12973 /* IDL: [out] [ref] policy_handle *trustdom_handle */
12974 /* IDL: ); */
12975
12976 static int
12977 lsarpc_dissect_lsa_CreateTrustedDomainEx2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12978 {
12979         guint32 status;
12980
12981         pinfo->dcerpc_procedure_name="lsa_CreateTrustedDomainEx2";
12982         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_trustdom_handle(tvb, offset, pinfo, tree, drep);
12983         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12984
12985         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
12986
12987         if (status != 0)
12988                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
12989
12990         return offset;
12991 }
12992
12993 static int
12994 lsarpc_dissect_lsa_CreateTrustedDomainEx2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
12995 {
12996         pinfo->dcerpc_procedure_name="lsa_CreateTrustedDomainEx2";
12997         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_policy_handle(tvb, offset, pinfo, tree, drep);
12998         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
12999         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_info(tvb, offset, pinfo, tree, drep);
13000         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13001         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_auth_info_internal(tvb, offset, pinfo, tree, drep);
13002         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13003         offset = lsarpc_dissect_element_lsa_CreateTrustedDomainEx2_access_mask(tvb, offset, pinfo, tree, drep);
13004         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13005         return offset;
13006 }
13007
13008 /* IDL: NTSTATUS lsa_CREDRWRITE( */
13009 /* IDL:  */
13010 /* IDL: ); */
13011
13012 static int
13013 lsarpc_dissect_lsa_CREDRWRITE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13014 {
13015         guint32 status;
13016
13017         pinfo->dcerpc_procedure_name="lsa_CREDRWRITE";
13018         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13019
13020         if (status != 0)
13021                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13022
13023         return offset;
13024 }
13025
13026 static int
13027 lsarpc_dissect_lsa_CREDRWRITE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13028 {
13029         pinfo->dcerpc_procedure_name="lsa_CREDRWRITE";
13030         return offset;
13031 }
13032
13033 /* IDL: NTSTATUS lsa_CREDRREAD( */
13034 /* IDL:  */
13035 /* IDL: ); */
13036
13037 static int
13038 lsarpc_dissect_lsa_CREDRREAD_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13039 {
13040         guint32 status;
13041
13042         pinfo->dcerpc_procedure_name="lsa_CREDRREAD";
13043         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13044
13045         if (status != 0)
13046                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13047
13048         return offset;
13049 }
13050
13051 static int
13052 lsarpc_dissect_lsa_CREDRREAD_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13053 {
13054         pinfo->dcerpc_procedure_name="lsa_CREDRREAD";
13055         return offset;
13056 }
13057
13058 /* IDL: NTSTATUS lsa_CREDRENUMERATE( */
13059 /* IDL:  */
13060 /* IDL: ); */
13061
13062 static int
13063 lsarpc_dissect_lsa_CREDRENUMERATE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13064 {
13065         guint32 status;
13066
13067         pinfo->dcerpc_procedure_name="lsa_CREDRENUMERATE";
13068         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13069
13070         if (status != 0)
13071                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13072
13073         return offset;
13074 }
13075
13076 static int
13077 lsarpc_dissect_lsa_CREDRENUMERATE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13078 {
13079         pinfo->dcerpc_procedure_name="lsa_CREDRENUMERATE";
13080         return offset;
13081 }
13082
13083 /* IDL: NTSTATUS lsa_CREDRWRITEDOMAINCREDENTIALS( */
13084 /* IDL:  */
13085 /* IDL: ); */
13086
13087 static int
13088 lsarpc_dissect_lsa_CREDRWRITEDOMAINCREDENTIALS_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13089 {
13090         guint32 status;
13091
13092         pinfo->dcerpc_procedure_name="lsa_CREDRWRITEDOMAINCREDENTIALS";
13093         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13094
13095         if (status != 0)
13096                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13097
13098         return offset;
13099 }
13100
13101 static int
13102 lsarpc_dissect_lsa_CREDRWRITEDOMAINCREDENTIALS_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13103 {
13104         pinfo->dcerpc_procedure_name="lsa_CREDRWRITEDOMAINCREDENTIALS";
13105         return offset;
13106 }
13107
13108 /* IDL: NTSTATUS lsa_CREDRREADDOMAINCREDENTIALS( */
13109 /* IDL:  */
13110 /* IDL: ); */
13111
13112 static int
13113 lsarpc_dissect_lsa_CREDRREADDOMAINCREDENTIALS_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13114 {
13115         guint32 status;
13116
13117         pinfo->dcerpc_procedure_name="lsa_CREDRREADDOMAINCREDENTIALS";
13118         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13119
13120         if (status != 0)
13121                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13122
13123         return offset;
13124 }
13125
13126 static int
13127 lsarpc_dissect_lsa_CREDRREADDOMAINCREDENTIALS_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13128 {
13129         pinfo->dcerpc_procedure_name="lsa_CREDRREADDOMAINCREDENTIALS";
13130         return offset;
13131 }
13132
13133 /* IDL: NTSTATUS lsa_CREDRDELETE( */
13134 /* IDL:  */
13135 /* IDL: ); */
13136
13137 static int
13138 lsarpc_dissect_lsa_CREDRDELETE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13139 {
13140         guint32 status;
13141
13142         pinfo->dcerpc_procedure_name="lsa_CREDRDELETE";
13143         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13144
13145         if (status != 0)
13146                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13147
13148         return offset;
13149 }
13150
13151 static int
13152 lsarpc_dissect_lsa_CREDRDELETE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13153 {
13154         pinfo->dcerpc_procedure_name="lsa_CREDRDELETE";
13155         return offset;
13156 }
13157
13158 /* IDL: NTSTATUS lsa_CREDRGETTARGETINFO( */
13159 /* IDL:  */
13160 /* IDL: ); */
13161
13162 static int
13163 lsarpc_dissect_lsa_CREDRGETTARGETINFO_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13164 {
13165         guint32 status;
13166
13167         pinfo->dcerpc_procedure_name="lsa_CREDRGETTARGETINFO";
13168         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13169
13170         if (status != 0)
13171                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13172
13173         return offset;
13174 }
13175
13176 static int
13177 lsarpc_dissect_lsa_CREDRGETTARGETINFO_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13178 {
13179         pinfo->dcerpc_procedure_name="lsa_CREDRGETTARGETINFO";
13180         return offset;
13181 }
13182
13183 /* IDL: NTSTATUS lsa_CREDRPROFILELOADED( */
13184 /* IDL:  */
13185 /* IDL: ); */
13186
13187 static int
13188 lsarpc_dissect_lsa_CREDRPROFILELOADED_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13189 {
13190         guint32 status;
13191
13192         pinfo->dcerpc_procedure_name="lsa_CREDRPROFILELOADED";
13193         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13194
13195         if (status != 0)
13196                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13197
13198         return offset;
13199 }
13200
13201 static int
13202 lsarpc_dissect_lsa_CREDRPROFILELOADED_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13203 {
13204         pinfo->dcerpc_procedure_name="lsa_CREDRPROFILELOADED";
13205         return offset;
13206 }
13207
13208 static int
13209 lsarpc_dissect_element_lsa_LookupNames3_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13210 {
13211         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames3_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_LookupNames3_handle);
13212
13213         return offset;
13214 }
13215
13216 static int
13217 lsarpc_dissect_element_lsa_LookupNames3_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13218 {
13219         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames3_handle, 0);
13220
13221         return offset;
13222 }
13223
13224 static int
13225 lsarpc_dissect_element_lsa_LookupNames3_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13226 {
13227         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames3_num_names, 0);
13228
13229         return offset;
13230 }
13231
13232 static int
13233 lsarpc_dissect_element_lsa_LookupNames3_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13234 {
13235         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames3_names_);
13236
13237         return offset;
13238 }
13239
13240 static int
13241 lsarpc_dissect_element_lsa_LookupNames3_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13242 {
13243         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames3_names,0);
13244
13245         return offset;
13246 }
13247
13248 static int
13249 lsarpc_dissect_element_lsa_LookupNames3_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13250 {
13251         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames3_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames3_domains);
13252
13253         return offset;
13254 }
13255
13256 static int
13257 lsarpc_dissect_element_lsa_LookupNames3_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13258 {
13259         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames3_domains__, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames3_domains);
13260
13261         return offset;
13262 }
13263
13264 static int
13265 lsarpc_dissect_element_lsa_LookupNames3_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13266 {
13267         offset = lsarpc_dissect_struct_lsa_RefDomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames3_domains,0);
13268
13269         return offset;
13270 }
13271
13272 static int
13273 lsarpc_dissect_element_lsa_LookupNames3_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13274 {
13275         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames3_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_TransSidArray3)",hf_lsarpc_lsa_LookupNames3_sids);
13276
13277         return offset;
13278 }
13279
13280 static int
13281 lsarpc_dissect_element_lsa_LookupNames3_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13282 {
13283         offset = lsarpc_dissect_struct_lsa_TransSidArray3(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames3_sids,0);
13284
13285         return offset;
13286 }
13287
13288 static int
13289 lsarpc_dissect_element_lsa_LookupNames3_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13290 {
13291         offset = lsarpc_dissect_enum_lsa_LookupNamesLevel(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames3_level, 0);
13292
13293         return offset;
13294 }
13295
13296 static int
13297 lsarpc_dissect_element_lsa_LookupNames3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13298 {
13299         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames3_count_, NDR_POINTER_REF, "Pointer to Count (uint32)",hf_lsarpc_lsa_LookupNames3_count);
13300
13301         return offset;
13302 }
13303
13304 static int
13305 lsarpc_dissect_element_lsa_LookupNames3_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13306 {
13307         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames3_count, 0);
13308
13309         return offset;
13310 }
13311
13312 static int
13313 lsarpc_dissect_element_lsa_LookupNames3_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13314 {
13315         offset = lsarpc_dissect_enum_lsa_LookupOptions(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames3_lookup_options, 0);
13316
13317         return offset;
13318 }
13319
13320 static int
13321 lsarpc_dissect_element_lsa_LookupNames3_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13322 {
13323         offset = lsarpc_dissect_enum_lsa_ClientRevision(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames3_client_revision, 0);
13324
13325         return offset;
13326 }
13327
13328 /* IDL: NTSTATUS lsa_LookupNames3( */
13329 /* IDL: [ref] [in] policy_handle *handle, */
13330 /* IDL: [in] [range(0,1000)] uint32 num_names, */
13331 /* IDL: [in] [size_is(num_names)] lsa_String names[*], */
13332 /* IDL: [out] [ref] lsa_RefDomainList **domains, */
13333 /* IDL: [out] [in] [ref] lsa_TransSidArray3 *sids, */
13334 /* IDL: [in] lsa_LookupNamesLevel level, */
13335 /* IDL: [out] [in] [ref] uint32 *count, */
13336 /* IDL: [in] lsa_LookupOptions lookup_options, */
13337 /* IDL: [in] lsa_ClientRevision client_revision */
13338 /* IDL: ); */
13339
13340 static int
13341 lsarpc_dissect_lsa_LookupNames3_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13342 {
13343         guint32 status;
13344
13345         pinfo->dcerpc_procedure_name="lsa_LookupNames3";
13346         offset = lsarpc_dissect_element_lsa_LookupNames3_domains(tvb, offset, pinfo, tree, drep);
13347         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13348
13349         offset = lsarpc_dissect_element_lsa_LookupNames3_sids(tvb, offset, pinfo, tree, drep);
13350         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13351
13352         offset = lsarpc_dissect_element_lsa_LookupNames3_count(tvb, offset, pinfo, tree, drep);
13353         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13354
13355         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13356
13357         if (status != 0)
13358                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13359
13360         return offset;
13361 }
13362
13363 static int
13364 lsarpc_dissect_lsa_LookupNames3_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13365 {
13366         pinfo->dcerpc_procedure_name="lsa_LookupNames3";
13367         offset = lsarpc_dissect_element_lsa_LookupNames3_handle(tvb, offset, pinfo, tree, drep);
13368         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13369         offset = lsarpc_dissect_element_lsa_LookupNames3_num_names(tvb, offset, pinfo, tree, drep);
13370         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13371         offset = lsarpc_dissect_element_lsa_LookupNames3_names(tvb, offset, pinfo, tree, drep);
13372         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13373         offset = lsarpc_dissect_element_lsa_LookupNames3_sids(tvb, offset, pinfo, tree, drep);
13374         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13375         offset = lsarpc_dissect_element_lsa_LookupNames3_level(tvb, offset, pinfo, tree, drep);
13376         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13377         offset = lsarpc_dissect_element_lsa_LookupNames3_count(tvb, offset, pinfo, tree, drep);
13378         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13379         offset = lsarpc_dissect_element_lsa_LookupNames3_lookup_options(tvb, offset, pinfo, tree, drep);
13380         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13381         offset = lsarpc_dissect_element_lsa_LookupNames3_client_revision(tvb, offset, pinfo, tree, drep);
13382         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13383         return offset;
13384 }
13385
13386 /* IDL: NTSTATUS lsa_CREDRGETSESSIONTYPES( */
13387 /* IDL:  */
13388 /* IDL: ); */
13389
13390 static int
13391 lsarpc_dissect_lsa_CREDRGETSESSIONTYPES_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13392 {
13393         guint32 status;
13394
13395         pinfo->dcerpc_procedure_name="lsa_CREDRGETSESSIONTYPES";
13396         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13397
13398         if (status != 0)
13399                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13400
13401         return offset;
13402 }
13403
13404 static int
13405 lsarpc_dissect_lsa_CREDRGETSESSIONTYPES_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13406 {
13407         pinfo->dcerpc_procedure_name="lsa_CREDRGETSESSIONTYPES";
13408         return offset;
13409 }
13410
13411 /* IDL: NTSTATUS lsa_LSARREGISTERAUDITEVENT( */
13412 /* IDL:  */
13413 /* IDL: ); */
13414
13415 static int
13416 lsarpc_dissect_lsa_LSARREGISTERAUDITEVENT_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13417 {
13418         guint32 status;
13419
13420         pinfo->dcerpc_procedure_name="lsa_LSARREGISTERAUDITEVENT";
13421         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13422
13423         if (status != 0)
13424                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13425
13426         return offset;
13427 }
13428
13429 static int
13430 lsarpc_dissect_lsa_LSARREGISTERAUDITEVENT_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13431 {
13432         pinfo->dcerpc_procedure_name="lsa_LSARREGISTERAUDITEVENT";
13433         return offset;
13434 }
13435
13436 /* IDL: NTSTATUS lsa_LSARGENAUDITEVENT( */
13437 /* IDL:  */
13438 /* IDL: ); */
13439
13440 static int
13441 lsarpc_dissect_lsa_LSARGENAUDITEVENT_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13442 {
13443         guint32 status;
13444
13445         pinfo->dcerpc_procedure_name="lsa_LSARGENAUDITEVENT";
13446         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13447
13448         if (status != 0)
13449                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13450
13451         return offset;
13452 }
13453
13454 static int
13455 lsarpc_dissect_lsa_LSARGENAUDITEVENT_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13456 {
13457         pinfo->dcerpc_procedure_name="lsa_LSARGENAUDITEVENT";
13458         return offset;
13459 }
13460
13461 /* IDL: NTSTATUS lsa_LSARUNREGISTERAUDITEVENT( */
13462 /* IDL:  */
13463 /* IDL: ); */
13464
13465 static int
13466 lsarpc_dissect_lsa_LSARUNREGISTERAUDITEVENT_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13467 {
13468         guint32 status;
13469
13470         pinfo->dcerpc_procedure_name="lsa_LSARUNREGISTERAUDITEVENT";
13471         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13472
13473         if (status != 0)
13474                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13475
13476         return offset;
13477 }
13478
13479 static int
13480 lsarpc_dissect_lsa_LSARUNREGISTERAUDITEVENT_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13481 {
13482         pinfo->dcerpc_procedure_name="lsa_LSARUNREGISTERAUDITEVENT";
13483         return offset;
13484 }
13485
13486 static int
13487 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13488 {
13489         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_lsaRQueryForestTrustInformation_handle);
13490
13491         return offset;
13492 }
13493
13494 static int
13495 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13496 {
13497         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_lsaRQueryForestTrustInformation_handle, 0);
13498
13499         return offset;
13500 }
13501
13502 static int
13503 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_trusted_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13504 {
13505         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_trusted_domain_name_, NDR_POINTER_REF, "Pointer to Trusted Domain Name (lsa_String)",hf_lsarpc_lsa_lsaRQueryForestTrustInformation_trusted_domain_name);
13506
13507         return offset;
13508 }
13509
13510 static int
13511 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_trusted_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13512 {
13513         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_lsaRQueryForestTrustInformation_trusted_domain_name,0);
13514
13515         return offset;
13516 }
13517
13518 static int
13519 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_unknown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13520 {
13521         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_lsaRQueryForestTrustInformation_unknown, 0);
13522
13523         return offset;
13524 }
13525
13526 static int
13527 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13528 {
13529         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info_, NDR_POINTER_REF, "Pointer to Forest Trust Info (lsa_ForestTrustInformation)",hf_lsarpc_lsa_lsaRQueryForestTrustInformation_forest_trust_info);
13530
13531         return offset;
13532 }
13533
13534 static int
13535 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13536 {
13537         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info__, NDR_POINTER_UNIQUE, "Pointer to Forest Trust Info (lsa_ForestTrustInformation)",hf_lsarpc_lsa_lsaRQueryForestTrustInformation_forest_trust_info);
13538
13539         return offset;
13540 }
13541
13542 static int
13543 lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13544 {
13545         offset = lsarpc_dissect_struct_lsa_ForestTrustInformation(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_lsaRQueryForestTrustInformation_forest_trust_info,0);
13546
13547         return offset;
13548 }
13549
13550 /* IDL: NTSTATUS lsa_lsaRQueryForestTrustInformation( */
13551 /* IDL: [ref] [in] policy_handle *handle, */
13552 /* IDL: [in] [ref] lsa_String *trusted_domain_name, */
13553 /* IDL: [in] uint16 unknown, */
13554 /* IDL: [out] [ref] lsa_ForestTrustInformation **forest_trust_info */
13555 /* IDL: ); */
13556
13557 static int
13558 lsarpc_dissect_lsa_lsaRQueryForestTrustInformation_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13559 {
13560         guint32 status;
13561
13562         pinfo->dcerpc_procedure_name="lsa_lsaRQueryForestTrustInformation";
13563         offset = lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_forest_trust_info(tvb, offset, pinfo, tree, drep);
13564         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13565
13566         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13567
13568         if (status != 0)
13569                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13570
13571         return offset;
13572 }
13573
13574 static int
13575 lsarpc_dissect_lsa_lsaRQueryForestTrustInformation_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13576 {
13577         pinfo->dcerpc_procedure_name="lsa_lsaRQueryForestTrustInformation";
13578         offset = lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_handle(tvb, offset, pinfo, tree, drep);
13579         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13580         offset = lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_trusted_domain_name(tvb, offset, pinfo, tree, drep);
13581         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13582         offset = lsarpc_dissect_element_lsa_lsaRQueryForestTrustInformation_unknown(tvb, offset, pinfo, tree, drep);
13583         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13584         return offset;
13585 }
13586
13587 static int
13588 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13589 {
13590         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_handle_, NDR_POINTER_REF, "Pointer to Handle (policy_handle)",hf_lsarpc_lsa_lsaRSetForestTrustInformation_handle);
13591
13592         return offset;
13593 }
13594
13595 static int
13596 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13597 {
13598         offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_lsaRSetForestTrustInformation_handle, 0);
13599
13600         return offset;
13601 }
13602
13603 static int
13604 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_trusted_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13605 {
13606         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_trusted_domain_name_, NDR_POINTER_REF, "Pointer to Trusted Domain Name (lsa_StringLarge)",hf_lsarpc_lsa_lsaRSetForestTrustInformation_trusted_domain_name);
13607
13608         return offset;
13609 }
13610
13611 static int
13612 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_trusted_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13613 {
13614         offset = lsarpc_dissect_struct_lsa_StringLarge(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_lsaRSetForestTrustInformation_trusted_domain_name,0);
13615
13616         return offset;
13617 }
13618
13619 static int
13620 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_highest_record_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13621 {
13622         offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_lsaRSetForestTrustInformation_highest_record_type, 0);
13623
13624         return offset;
13625 }
13626
13627 static int
13628 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_forest_trust_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13629 {
13630         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_forest_trust_info_, NDR_POINTER_REF, "Pointer to Forest Trust Info (lsa_ForestTrustInformation)",hf_lsarpc_lsa_lsaRSetForestTrustInformation_forest_trust_info);
13631
13632         return offset;
13633 }
13634
13635 static int
13636 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_forest_trust_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13637 {
13638         offset = lsarpc_dissect_struct_lsa_ForestTrustInformation(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_lsaRSetForestTrustInformation_forest_trust_info,0);
13639
13640         return offset;
13641 }
13642
13643 static int
13644 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_check_only(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13645 {
13646         offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_lsaRSetForestTrustInformation_check_only, 0);
13647
13648         return offset;
13649 }
13650
13651 static int
13652 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13653 {
13654         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info_, NDR_POINTER_REF, "Pointer to Collision Info (lsa_ForestTrustCollisionInfo)",hf_lsarpc_lsa_lsaRSetForestTrustInformation_collision_info);
13655
13656         return offset;
13657 }
13658
13659 static int
13660 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13661 {
13662         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info__, NDR_POINTER_UNIQUE, "Pointer to Collision Info (lsa_ForestTrustCollisionInfo)",hf_lsarpc_lsa_lsaRSetForestTrustInformation_collision_info);
13663
13664         return offset;
13665 }
13666
13667 static int
13668 lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13669 {
13670         offset = lsarpc_dissect_struct_lsa_ForestTrustCollisionInfo(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_lsaRSetForestTrustInformation_collision_info,0);
13671
13672         return offset;
13673 }
13674
13675 /* IDL: NTSTATUS lsa_lsaRSetForestTrustInformation( */
13676 /* IDL: [ref] [in] policy_handle *handle, */
13677 /* IDL: [in] [ref] lsa_StringLarge *trusted_domain_name, */
13678 /* IDL: [in] uint16 highest_record_type, */
13679 /* IDL: [in] [ref] lsa_ForestTrustInformation *forest_trust_info, */
13680 /* IDL: [in] uint8 check_only, */
13681 /* IDL: [out] [ref] lsa_ForestTrustCollisionInfo **collision_info */
13682 /* IDL: ); */
13683
13684 static int
13685 lsarpc_dissect_lsa_lsaRSetForestTrustInformation_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13686 {
13687         guint32 status;
13688
13689         pinfo->dcerpc_procedure_name="lsa_lsaRSetForestTrustInformation";
13690         offset = lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_collision_info(tvb, offset, pinfo, tree, drep);
13691         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13692
13693         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13694
13695         if (status != 0)
13696                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13697
13698         return offset;
13699 }
13700
13701 static int
13702 lsarpc_dissect_lsa_lsaRSetForestTrustInformation_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13703 {
13704         pinfo->dcerpc_procedure_name="lsa_lsaRSetForestTrustInformation";
13705         offset = lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_handle(tvb, offset, pinfo, tree, drep);
13706         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13707         offset = lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_trusted_domain_name(tvb, offset, pinfo, tree, drep);
13708         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13709         offset = lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_highest_record_type(tvb, offset, pinfo, tree, drep);
13710         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13711         offset = lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_forest_trust_info(tvb, offset, pinfo, tree, drep);
13712         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13713         offset = lsarpc_dissect_element_lsa_lsaRSetForestTrustInformation_check_only(tvb, offset, pinfo, tree, drep);
13714         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13715         return offset;
13716 }
13717
13718 /* IDL: NTSTATUS lsa_CREDRRENAME( */
13719 /* IDL:  */
13720 /* IDL: ); */
13721
13722 static int
13723 lsarpc_dissect_lsa_CREDRRENAME_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13724 {
13725         guint32 status;
13726
13727         pinfo->dcerpc_procedure_name="lsa_CREDRRENAME";
13728         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13729
13730         if (status != 0)
13731                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13732
13733         return offset;
13734 }
13735
13736 static int
13737 lsarpc_dissect_lsa_CREDRRENAME_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13738 {
13739         pinfo->dcerpc_procedure_name="lsa_CREDRRENAME";
13740         return offset;
13741 }
13742
13743 static int
13744 lsarpc_dissect_element_lsa_LookupSids3_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13745 {
13746         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids3_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_SidArray)",hf_lsarpc_lsa_LookupSids3_sids);
13747
13748         return offset;
13749 }
13750
13751 static int
13752 lsarpc_dissect_element_lsa_LookupSids3_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13753 {
13754         offset = lsarpc_dissect_struct_lsa_SidArray(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids3_sids,0);
13755
13756         return offset;
13757 }
13758
13759 static int
13760 lsarpc_dissect_element_lsa_LookupSids3_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13761 {
13762         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids3_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupSids3_domains);
13763
13764         return offset;
13765 }
13766
13767 static int
13768 lsarpc_dissect_element_lsa_LookupSids3_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13769 {
13770         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids3_domains__, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupSids3_domains);
13771
13772         return offset;
13773 }
13774
13775 static int
13776 lsarpc_dissect_element_lsa_LookupSids3_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13777 {
13778         offset = lsarpc_dissect_struct_lsa_RefDomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids3_domains,0);
13779
13780         return offset;
13781 }
13782
13783 static int
13784 lsarpc_dissect_element_lsa_LookupSids3_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13785 {
13786         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids3_names_, NDR_POINTER_REF, "Pointer to Names (lsa_TransNameArray2)",hf_lsarpc_lsa_LookupSids3_names);
13787
13788         return offset;
13789 }
13790
13791 static int
13792 lsarpc_dissect_element_lsa_LookupSids3_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13793 {
13794         offset = lsarpc_dissect_struct_lsa_TransNameArray2(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupSids3_names,0);
13795
13796         return offset;
13797 }
13798
13799 static int
13800 lsarpc_dissect_element_lsa_LookupSids3_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13801 {
13802         offset = lsarpc_dissect_enum_lsa_LookupNamesLevel(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids3_level, 0);
13803
13804         return offset;
13805 }
13806
13807 static int
13808 lsarpc_dissect_element_lsa_LookupSids3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13809 {
13810         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupSids3_count_, NDR_POINTER_REF, "Pointer to Count (uint32)",hf_lsarpc_lsa_LookupSids3_count);
13811
13812         return offset;
13813 }
13814
13815 static int
13816 lsarpc_dissect_element_lsa_LookupSids3_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13817 {
13818         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids3_count, 0);
13819
13820         return offset;
13821 }
13822
13823 static int
13824 lsarpc_dissect_element_lsa_LookupSids3_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13825 {
13826         offset = lsarpc_dissect_enum_lsa_LookupOptions(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids3_lookup_options, 0);
13827
13828         return offset;
13829 }
13830
13831 static int
13832 lsarpc_dissect_element_lsa_LookupSids3_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13833 {
13834         offset = lsarpc_dissect_enum_lsa_ClientRevision(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupSids3_client_revision, 0);
13835
13836         return offset;
13837 }
13838
13839 /* IDL: NTSTATUS lsa_LookupSids3( */
13840 /* IDL: [in] [ref] lsa_SidArray *sids, */
13841 /* IDL: [out] [ref] lsa_RefDomainList **domains, */
13842 /* IDL: [out] [in] [ref] lsa_TransNameArray2 *names, */
13843 /* IDL: [in] lsa_LookupNamesLevel level, */
13844 /* IDL: [out] [in] [ref] uint32 *count, */
13845 /* IDL: [in] lsa_LookupOptions lookup_options, */
13846 /* IDL: [in] lsa_ClientRevision client_revision */
13847 /* IDL: ); */
13848
13849 static int
13850 lsarpc_dissect_lsa_LookupSids3_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13851 {
13852         guint32 status;
13853
13854         pinfo->dcerpc_procedure_name="lsa_LookupSids3";
13855         offset = lsarpc_dissect_element_lsa_LookupSids3_domains(tvb, offset, pinfo, tree, drep);
13856         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13857
13858         offset = lsarpc_dissect_element_lsa_LookupSids3_names(tvb, offset, pinfo, tree, drep);
13859         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13860
13861         offset = lsarpc_dissect_element_lsa_LookupSids3_count(tvb, offset, pinfo, tree, drep);
13862         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13863
13864         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
13865
13866         if (status != 0)
13867                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
13868
13869         return offset;
13870 }
13871
13872 static int
13873 lsarpc_dissect_lsa_LookupSids3_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13874 {
13875         pinfo->dcerpc_procedure_name="lsa_LookupSids3";
13876         offset = lsarpc_dissect_element_lsa_LookupSids3_sids(tvb, offset, pinfo, tree, drep);
13877         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13878         offset = lsarpc_dissect_element_lsa_LookupSids3_names(tvb, offset, pinfo, tree, drep);
13879         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13880         offset = lsarpc_dissect_element_lsa_LookupSids3_level(tvb, offset, pinfo, tree, drep);
13881         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13882         offset = lsarpc_dissect_element_lsa_LookupSids3_count(tvb, offset, pinfo, tree, drep);
13883         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13884         offset = lsarpc_dissect_element_lsa_LookupSids3_lookup_options(tvb, offset, pinfo, tree, drep);
13885         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13886         offset = lsarpc_dissect_element_lsa_LookupSids3_client_revision(tvb, offset, pinfo, tree, drep);
13887         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
13888         return offset;
13889 }
13890
13891 static int
13892 lsarpc_dissect_element_lsa_LookupNames4_num_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13893 {
13894         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames4_num_names, 0);
13895
13896         return offset;
13897 }
13898
13899 static int
13900 lsarpc_dissect_element_lsa_LookupNames4_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13901 {
13902         offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames4_names_);
13903
13904         return offset;
13905 }
13906
13907 static int
13908 lsarpc_dissect_element_lsa_LookupNames4_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13909 {
13910         offset = lsarpc_dissect_struct_lsa_String(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames4_names,0);
13911
13912         return offset;
13913 }
13914
13915 static int
13916 lsarpc_dissect_element_lsa_LookupNames4_domains(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13917 {
13918         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames4_domains_, NDR_POINTER_REF, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames4_domains);
13919
13920         return offset;
13921 }
13922
13923 static int
13924 lsarpc_dissect_element_lsa_LookupNames4_domains_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13925 {
13926         offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames4_domains__, NDR_POINTER_UNIQUE, "Pointer to Domains (lsa_RefDomainList)",hf_lsarpc_lsa_LookupNames4_domains);
13927
13928         return offset;
13929 }
13930
13931 static int
13932 lsarpc_dissect_element_lsa_LookupNames4_domains__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13933 {
13934         offset = lsarpc_dissect_struct_lsa_RefDomainList(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames4_domains,0);
13935
13936         return offset;
13937 }
13938
13939 static int
13940 lsarpc_dissect_element_lsa_LookupNames4_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13941 {
13942         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames4_sids_, NDR_POINTER_REF, "Pointer to Sids (lsa_TransSidArray3)",hf_lsarpc_lsa_LookupNames4_sids);
13943
13944         return offset;
13945 }
13946
13947 static int
13948 lsarpc_dissect_element_lsa_LookupNames4_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13949 {
13950         offset = lsarpc_dissect_struct_lsa_TransSidArray3(tvb,offset,pinfo,tree,drep,hf_lsarpc_lsa_LookupNames4_sids,0);
13951
13952         return offset;
13953 }
13954
13955 static int
13956 lsarpc_dissect_element_lsa_LookupNames4_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13957 {
13958         offset = lsarpc_dissect_enum_lsa_LookupNamesLevel(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames4_level, 0);
13959
13960         return offset;
13961 }
13962
13963 static int
13964 lsarpc_dissect_element_lsa_LookupNames4_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13965 {
13966         offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, lsarpc_dissect_element_lsa_LookupNames4_count_, NDR_POINTER_REF, "Pointer to Count (uint32)",hf_lsarpc_lsa_LookupNames4_count);
13967
13968         return offset;
13969 }
13970
13971 static int
13972 lsarpc_dissect_element_lsa_LookupNames4_count_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13973 {
13974         offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames4_count, 0);
13975
13976         return offset;
13977 }
13978
13979 static int
13980 lsarpc_dissect_element_lsa_LookupNames4_lookup_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13981 {
13982         offset = lsarpc_dissect_enum_lsa_LookupOptions(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames4_lookup_options, 0);
13983
13984         return offset;
13985 }
13986
13987 static int
13988 lsarpc_dissect_element_lsa_LookupNames4_client_revision(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
13989 {
13990         offset = lsarpc_dissect_enum_lsa_ClientRevision(tvb, offset, pinfo, tree, drep, hf_lsarpc_lsa_LookupNames4_client_revision, 0);
13991
13992         return offset;
13993 }
13994
13995 /* IDL: NTSTATUS lsa_LookupNames4( */
13996 /* IDL: [in] [range(0,1000)] uint32 num_names, */
13997 /* IDL: [in] [size_is(num_names)] lsa_String names[*], */
13998 /* IDL: [out] [ref] lsa_RefDomainList **domains, */
13999 /* IDL: [out] [in] [ref] lsa_TransSidArray3 *sids, */
14000 /* IDL: [in] lsa_LookupNamesLevel level, */
14001 /* IDL: [out] [in] [ref] uint32 *count, */
14002 /* IDL: [in] lsa_LookupOptions lookup_options, */
14003 /* IDL: [in] lsa_ClientRevision client_revision */
14004 /* IDL: ); */
14005
14006 static int
14007 lsarpc_dissect_lsa_LookupNames4_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14008 {
14009         guint32 status;
14010
14011         pinfo->dcerpc_procedure_name="lsa_LookupNames4";
14012         offset = lsarpc_dissect_element_lsa_LookupNames4_domains(tvb, offset, pinfo, tree, drep);
14013         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14014
14015         offset = lsarpc_dissect_element_lsa_LookupNames4_sids(tvb, offset, pinfo, tree, drep);
14016         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14017
14018         offset = lsarpc_dissect_element_lsa_LookupNames4_count(tvb, offset, pinfo, tree, drep);
14019         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14020
14021         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
14022
14023         if (status != 0)
14024                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
14025
14026         return offset;
14027 }
14028
14029 static int
14030 lsarpc_dissect_lsa_LookupNames4_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14031 {
14032         pinfo->dcerpc_procedure_name="lsa_LookupNames4";
14033         offset = lsarpc_dissect_element_lsa_LookupNames4_num_names(tvb, offset, pinfo, tree, drep);
14034         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14035         offset = lsarpc_dissect_element_lsa_LookupNames4_names(tvb, offset, pinfo, tree, drep);
14036         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14037         offset = lsarpc_dissect_element_lsa_LookupNames4_sids(tvb, offset, pinfo, tree, drep);
14038         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14039         offset = lsarpc_dissect_element_lsa_LookupNames4_level(tvb, offset, pinfo, tree, drep);
14040         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14041         offset = lsarpc_dissect_element_lsa_LookupNames4_count(tvb, offset, pinfo, tree, drep);
14042         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14043         offset = lsarpc_dissect_element_lsa_LookupNames4_lookup_options(tvb, offset, pinfo, tree, drep);
14044         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14045         offset = lsarpc_dissect_element_lsa_LookupNames4_client_revision(tvb, offset, pinfo, tree, drep);
14046         offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
14047         return offset;
14048 }
14049
14050 /* IDL: NTSTATUS lsa_LSAROPENPOLICYSCE( */
14051 /* IDL:  */
14052 /* IDL: ); */
14053
14054 static int
14055 lsarpc_dissect_lsa_LSAROPENPOLICYSCE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14056 {
14057         guint32 status;
14058
14059         pinfo->dcerpc_procedure_name="lsa_LSAROPENPOLICYSCE";
14060         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
14061
14062         if (status != 0)
14063                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
14064
14065         return offset;
14066 }
14067
14068 static int
14069 lsarpc_dissect_lsa_LSAROPENPOLICYSCE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14070 {
14071         pinfo->dcerpc_procedure_name="lsa_LSAROPENPOLICYSCE";
14072         return offset;
14073 }
14074
14075 /* IDL: NTSTATUS lsa_LSARADTREGISTERSECURITYEVENTSOURCE( */
14076 /* IDL:  */
14077 /* IDL: ); */
14078
14079 static int
14080 lsarpc_dissect_lsa_LSARADTREGISTERSECURITYEVENTSOURCE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14081 {
14082         guint32 status;
14083
14084         pinfo->dcerpc_procedure_name="lsa_LSARADTREGISTERSECURITYEVENTSOURCE";
14085         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
14086
14087         if (status != 0)
14088                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
14089
14090         return offset;
14091 }
14092
14093 static int
14094 lsarpc_dissect_lsa_LSARADTREGISTERSECURITYEVENTSOURCE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14095 {
14096         pinfo->dcerpc_procedure_name="lsa_LSARADTREGISTERSECURITYEVENTSOURCE";
14097         return offset;
14098 }
14099
14100 /* IDL: NTSTATUS lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE( */
14101 /* IDL:  */
14102 /* IDL: ); */
14103
14104 static int
14105 lsarpc_dissect_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14106 {
14107         guint32 status;
14108
14109         pinfo->dcerpc_procedure_name="lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE";
14110         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
14111
14112         if (status != 0)
14113                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
14114
14115         return offset;
14116 }
14117
14118 static int
14119 lsarpc_dissect_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14120 {
14121         pinfo->dcerpc_procedure_name="lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE";
14122         return offset;
14123 }
14124
14125 /* IDL: NTSTATUS lsa_LSARADTREPORTSECURITYEVENT( */
14126 /* IDL:  */
14127 /* IDL: ); */
14128
14129 static int
14130 lsarpc_dissect_lsa_LSARADTREPORTSECURITYEVENT_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14131 {
14132         guint32 status;
14133
14134         pinfo->dcerpc_procedure_name="lsa_LSARADTREPORTSECURITYEVENT";
14135         offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf_lsarpc_status, &status);
14136
14137         if (status != 0)
14138                 col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, NT_errors, "Unknown NT status 0x%08x"));
14139
14140         return offset;
14141 }
14142
14143 static int
14144 lsarpc_dissect_lsa_LSARADTREPORTSECURITYEVENT_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
14145 {
14146         pinfo->dcerpc_procedure_name="lsa_LSARADTREPORTSECURITYEVENT";
14147         return offset;
14148 }
14149
14150
14151 static dcerpc_sub_dissector lsarpc_dissectors[] = {
14152         { 0, "lsa_Close",
14153            lsarpc_dissect_lsa_Close_request, lsarpc_dissect_lsa_Close_response},
14154         { 1, "lsa_Delete",
14155            lsarpc_dissect_lsa_Delete_request, lsarpc_dissect_lsa_Delete_response},
14156         { 2, "lsa_EnumPrivs",
14157            lsarpc_dissect_lsa_EnumPrivs_request, lsarpc_dissect_lsa_EnumPrivs_response},
14158         { 3, "lsa_QuerySecurity",
14159            lsarpc_dissect_lsa_QuerySecurity_request, lsarpc_dissect_lsa_QuerySecurity_response},
14160         { 4, "lsa_SetSecObj",
14161            lsarpc_dissect_lsa_SetSecObj_request, lsarpc_dissect_lsa_SetSecObj_response},
14162         { 5, "lsa_ChangePassword",
14163            lsarpc_dissect_lsa_ChangePassword_request, lsarpc_dissect_lsa_ChangePassword_response},
14164         { 6, "lsa_OpenPolicy",
14165            lsarpc_dissect_lsa_OpenPolicy_request, lsarpc_dissect_lsa_OpenPolicy_response},
14166         { 7, "lsa_QueryInfoPolicy",
14167            lsarpc_dissect_lsa_QueryInfoPolicy_request, lsarpc_dissect_lsa_QueryInfoPolicy_response},
14168         { 8, "lsa_SetInfoPolicy",
14169            lsarpc_dissect_lsa_SetInfoPolicy_request, lsarpc_dissect_lsa_SetInfoPolicy_response},
14170         { 9, "lsa_ClearAuditLog",
14171            lsarpc_dissect_lsa_ClearAuditLog_request, lsarpc_dissect_lsa_ClearAuditLog_response},
14172         { 10, "lsa_CreateAccount",
14173            lsarpc_dissect_lsa_CreateAccount_request, lsarpc_dissect_lsa_CreateAccount_response},
14174         { 11, "lsa_EnumAccounts",
14175            lsarpc_dissect_lsa_EnumAccounts_request, lsarpc_dissect_lsa_EnumAccounts_response},
14176         { 12, "lsa_CreateTrustedDomain",
14177            lsarpc_dissect_lsa_CreateTrustedDomain_request, lsarpc_dissect_lsa_CreateTrustedDomain_response},
14178         { 13, "lsa_EnumTrustDom",
14179            lsarpc_dissect_lsa_EnumTrustDom_request, lsarpc_dissect_lsa_EnumTrustDom_response},
14180         { 14, "lsa_LookupNames",
14181            lsarpc_dissect_lsa_LookupNames_request, lsarpc_dissect_lsa_LookupNames_response},
14182         { 15, "lsa_LookupSids",
14183            lsarpc_dissect_lsa_LookupSids_request, lsarpc_dissect_lsa_LookupSids_response},
14184         { 16, "lsa_CreateSecret",
14185            lsarpc_dissect_lsa_CreateSecret_request, lsarpc_dissect_lsa_CreateSecret_response},
14186         { 17, "lsa_OpenAccount",
14187            lsarpc_dissect_lsa_OpenAccount_request, lsarpc_dissect_lsa_OpenAccount_response},
14188         { 18, "lsa_EnumPrivsAccount",
14189            lsarpc_dissect_lsa_EnumPrivsAccount_request, lsarpc_dissect_lsa_EnumPrivsAccount_response},
14190         { 19, "lsa_AddPrivilegesToAccount",
14191            lsarpc_dissect_lsa_AddPrivilegesToAccount_request, lsarpc_dissect_lsa_AddPrivilegesToAccount_response},
14192         { 20, "lsa_RemovePrivilegesFromAccount",
14193            lsarpc_dissect_lsa_RemovePrivilegesFromAccount_request, lsarpc_dissect_lsa_RemovePrivilegesFromAccount_response},
14194         { 21, "lsa_GetQuotasForAccount",
14195            lsarpc_dissect_lsa_GetQuotasForAccount_request, lsarpc_dissect_lsa_GetQuotasForAccount_response},
14196         { 22, "lsa_SetQuotasForAccount",
14197            lsarpc_dissect_lsa_SetQuotasForAccount_request, lsarpc_dissect_lsa_SetQuotasForAccount_response},
14198         { 23, "lsa_GetSystemAccessAccount",
14199            lsarpc_dissect_lsa_GetSystemAccessAccount_request, lsarpc_dissect_lsa_GetSystemAccessAccount_response},
14200         { 24, "lsa_SetSystemAccessAccount",
14201            lsarpc_dissect_lsa_SetSystemAccessAccount_request, lsarpc_dissect_lsa_SetSystemAccessAccount_response},
14202         { 25, "lsa_OpenTrustedDomain",
14203            lsarpc_dissect_lsa_OpenTrustedDomain_request, lsarpc_dissect_lsa_OpenTrustedDomain_response},
14204         { 26, "lsa_QueryTrustedDomainInfo",
14205            lsarpc_dissect_lsa_QueryTrustedDomainInfo_request, lsarpc_dissect_lsa_QueryTrustedDomainInfo_response},
14206         { 27, "lsa_SetInformationTrustedDomain",
14207            lsarpc_dissect_lsa_SetInformationTrustedDomain_request, lsarpc_dissect_lsa_SetInformationTrustedDomain_response},
14208         { 28, "lsa_OpenSecret",
14209            lsarpc_dissect_lsa_OpenSecret_request, lsarpc_dissect_lsa_OpenSecret_response},
14210         { 29, "lsa_SetSecret",
14211            lsarpc_dissect_lsa_SetSecret_request, lsarpc_dissect_lsa_SetSecret_response},
14212         { 30, "lsa_QuerySecret",
14213            lsarpc_dissect_lsa_QuerySecret_request, lsarpc_dissect_lsa_QuerySecret_response},
14214         { 31, "lsa_LookupPrivValue",
14215            lsarpc_dissect_lsa_LookupPrivValue_request, lsarpc_dissect_lsa_LookupPrivValue_response},
14216         { 32, "lsa_LookupPrivName",
14217            lsarpc_dissect_lsa_LookupPrivName_request, lsarpc_dissect_lsa_LookupPrivName_response},
14218         { 33, "lsa_LookupPrivDisplayName",
14219            lsarpc_dissect_lsa_LookupPrivDisplayName_request, lsarpc_dissect_lsa_LookupPrivDisplayName_response},
14220         { 34, "lsa_DeleteObject",
14221            lsarpc_dissect_lsa_DeleteObject_request, lsarpc_dissect_lsa_DeleteObject_response},
14222         { 35, "lsa_EnumAccountsWithUserRight",
14223            lsarpc_dissect_lsa_EnumAccountsWithUserRight_request, lsarpc_dissect_lsa_EnumAccountsWithUserRight_response},
14224         { 36, "lsa_EnumAccountRights",
14225            lsarpc_dissect_lsa_EnumAccountRights_request, lsarpc_dissect_lsa_EnumAccountRights_response},
14226         { 37, "lsa_AddAccountRights",
14227            lsarpc_dissect_lsa_AddAccountRights_request, lsarpc_dissect_lsa_AddAccountRights_response},
14228         { 38, "lsa_RemoveAccountRights",
14229            lsarpc_dissect_lsa_RemoveAccountRights_request, lsarpc_dissect_lsa_RemoveAccountRights_response},
14230         { 39, "lsa_QueryTrustedDomainInfoBySid",
14231            lsarpc_dissect_lsa_QueryTrustedDomainInfoBySid_request, lsarpc_dissect_lsa_QueryTrustedDomainInfoBySid_response},
14232         { 40, "lsa_SetTrustedDomainInfo",
14233            lsarpc_dissect_lsa_SetTrustedDomainInfo_request, lsarpc_dissect_lsa_SetTrustedDomainInfo_response},
14234         { 41, "lsa_DeleteTrustedDomain",
14235            lsarpc_dissect_lsa_DeleteTrustedDomain_request, lsarpc_dissect_lsa_DeleteTrustedDomain_response},
14236         { 42, "lsa_StorePrivateData",
14237            lsarpc_dissect_lsa_StorePrivateData_request, lsarpc_dissect_lsa_StorePrivateData_response},
14238         { 43, "lsa_RetrievePrivateData",
14239            lsarpc_dissect_lsa_RetrievePrivateData_request, lsarpc_dissect_lsa_RetrievePrivateData_response},
14240         { 44, "lsa_OpenPolicy2",
14241            lsarpc_dissect_lsa_OpenPolicy2_request, lsarpc_dissect_lsa_OpenPolicy2_response},
14242         { 45, "lsa_GetUserName",
14243            lsarpc_dissect_lsa_GetUserName_request, lsarpc_dissect_lsa_GetUserName_response},
14244         { 46, "lsa_QueryInfoPolicy2",
14245            lsarpc_dissect_lsa_QueryInfoPolicy2_request, lsarpc_dissect_lsa_QueryInfoPolicy2_response},
14246         { 47, "lsa_SetInfoPolicy2",
14247            lsarpc_dissect_lsa_SetInfoPolicy2_request, lsarpc_dissect_lsa_SetInfoPolicy2_response},
14248         { 48, "lsa_QueryTrustedDomainInfoByName",
14249            lsarpc_dissect_lsa_QueryTrustedDomainInfoByName_request, lsarpc_dissect_lsa_QueryTrustedDomainInfoByName_response},
14250         { 49, "lsa_SetTrustedDomainInfoByName",
14251            lsarpc_dissect_lsa_SetTrustedDomainInfoByName_request, lsarpc_dissect_lsa_SetTrustedDomainInfoByName_response},
14252         { 50, "lsa_EnumTrustedDomainsEx",
14253            lsarpc_dissect_lsa_EnumTrustedDomainsEx_request, lsarpc_dissect_lsa_EnumTrustedDomainsEx_response},
14254         { 51, "lsa_CreateTrustedDomainEx",
14255            lsarpc_dissect_lsa_CreateTrustedDomainEx_request, lsarpc_dissect_lsa_CreateTrustedDomainEx_response},
14256         { 52, "lsa_CloseTrustedDomainEx",
14257            lsarpc_dissect_lsa_CloseTrustedDomainEx_request, lsarpc_dissect_lsa_CloseTrustedDomainEx_response},
14258         { 53, "lsa_QueryDomainInformationPolicy",
14259            lsarpc_dissect_lsa_QueryDomainInformationPolicy_request, lsarpc_dissect_lsa_QueryDomainInformationPolicy_response},
14260         { 54, "lsa_SetDomainInformationPolicy",
14261            lsarpc_dissect_lsa_SetDomainInformationPolicy_request, lsarpc_dissect_lsa_SetDomainInformationPolicy_response},
14262         { 55, "lsa_OpenTrustedDomainByName",
14263            lsarpc_dissect_lsa_OpenTrustedDomainByName_request, lsarpc_dissect_lsa_OpenTrustedDomainByName_response},
14264         { 56, "lsa_TestCall",
14265            lsarpc_dissect_lsa_TestCall_request, lsarpc_dissect_lsa_TestCall_response},
14266         { 57, "lsa_LookupSids2",
14267            lsarpc_dissect_lsa_LookupSids2_request, lsarpc_dissect_lsa_LookupSids2_response},
14268         { 58, "lsa_LookupNames2",
14269            lsarpc_dissect_lsa_LookupNames2_request, lsarpc_dissect_lsa_LookupNames2_response},
14270         { 59, "lsa_CreateTrustedDomainEx2",
14271            lsarpc_dissect_lsa_CreateTrustedDomainEx2_request, lsarpc_dissect_lsa_CreateTrustedDomainEx2_response},
14272         { 60, "lsa_CREDRWRITE",
14273            lsarpc_dissect_lsa_CREDRWRITE_request, lsarpc_dissect_lsa_CREDRWRITE_response},
14274         { 61, "lsa_CREDRREAD",
14275            lsarpc_dissect_lsa_CREDRREAD_request, lsarpc_dissect_lsa_CREDRREAD_response},
14276         { 62, "lsa_CREDRENUMERATE",
14277            lsarpc_dissect_lsa_CREDRENUMERATE_request, lsarpc_dissect_lsa_CREDRENUMERATE_response},
14278         { 63, "lsa_CREDRWRITEDOMAINCREDENTIALS",
14279            lsarpc_dissect_lsa_CREDRWRITEDOMAINCREDENTIALS_request, lsarpc_dissect_lsa_CREDRWRITEDOMAINCREDENTIALS_response},
14280         { 64, "lsa_CREDRREADDOMAINCREDENTIALS",
14281            lsarpc_dissect_lsa_CREDRREADDOMAINCREDENTIALS_request, lsarpc_dissect_lsa_CREDRREADDOMAINCREDENTIALS_response},
14282         { 65, "lsa_CREDRDELETE",
14283            lsarpc_dissect_lsa_CREDRDELETE_request, lsarpc_dissect_lsa_CREDRDELETE_response},
14284         { 66, "lsa_CREDRGETTARGETINFO",
14285            lsarpc_dissect_lsa_CREDRGETTARGETINFO_request, lsarpc_dissect_lsa_CREDRGETTARGETINFO_response},
14286         { 67, "lsa_CREDRPROFILELOADED",
14287            lsarpc_dissect_lsa_CREDRPROFILELOADED_request, lsarpc_dissect_lsa_CREDRPROFILELOADED_response},
14288         { 68, "lsa_LookupNames3",
14289            lsarpc_dissect_lsa_LookupNames3_request, lsarpc_dissect_lsa_LookupNames3_response},
14290         { 69, "lsa_CREDRGETSESSIONTYPES",
14291            lsarpc_dissect_lsa_CREDRGETSESSIONTYPES_request, lsarpc_dissect_lsa_CREDRGETSESSIONTYPES_response},
14292         { 70, "lsa_LSARREGISTERAUDITEVENT",
14293            lsarpc_dissect_lsa_LSARREGISTERAUDITEVENT_request, lsarpc_dissect_lsa_LSARREGISTERAUDITEVENT_response},
14294         { 71, "lsa_LSARGENAUDITEVENT",
14295            lsarpc_dissect_lsa_LSARGENAUDITEVENT_request, lsarpc_dissect_lsa_LSARGENAUDITEVENT_response},
14296         { 72, "lsa_LSARUNREGISTERAUDITEVENT",
14297            lsarpc_dissect_lsa_LSARUNREGISTERAUDITEVENT_request, lsarpc_dissect_lsa_LSARUNREGISTERAUDITEVENT_response},
14298         { 73, "lsa_lsaRQueryForestTrustInformation",
14299            lsarpc_dissect_lsa_lsaRQueryForestTrustInformation_request, lsarpc_dissect_lsa_lsaRQueryForestTrustInformation_response},
14300         { 74, "lsa_lsaRSetForestTrustInformation",
14301            lsarpc_dissect_lsa_lsaRSetForestTrustInformation_request, lsarpc_dissect_lsa_lsaRSetForestTrustInformation_response},
14302         { 75, "lsa_CREDRRENAME",
14303            lsarpc_dissect_lsa_CREDRRENAME_request, lsarpc_dissect_lsa_CREDRRENAME_response},
14304         { 76, "lsa_LookupSids3",
14305            lsarpc_dissect_lsa_LookupSids3_request, lsarpc_dissect_lsa_LookupSids3_response},
14306         { 77, "lsa_LookupNames4",
14307            lsarpc_dissect_lsa_LookupNames4_request, lsarpc_dissect_lsa_LookupNames4_response},
14308         { 78, "lsa_LSAROPENPOLICYSCE",
14309            lsarpc_dissect_lsa_LSAROPENPOLICYSCE_request, lsarpc_dissect_lsa_LSAROPENPOLICYSCE_response},
14310         { 79, "lsa_LSARADTREGISTERSECURITYEVENTSOURCE",
14311            lsarpc_dissect_lsa_LSARADTREGISTERSECURITYEVENTSOURCE_request, lsarpc_dissect_lsa_LSARADTREGISTERSECURITYEVENTSOURCE_response},
14312         { 80, "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE",
14313            lsarpc_dissect_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE_request, lsarpc_dissect_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE_response},
14314         { 81, "lsa_LSARADTREPORTSECURITYEVENT",
14315            lsarpc_dissect_lsa_LSARADTREPORTSECURITYEVENT_request, lsarpc_dissect_lsa_LSARADTREPORTSECURITYEVENT_response},
14316         { 0, NULL, NULL, NULL }
14317 };
14318
14319 void proto_register_dcerpc_lsarpc(void)
14320 {
14321         static hf_register_info hf[] = {
14322         { &hf_lsarpc_lsa_TrustedDomainInfo_enc_types,
14323           { "Enc Types", "lsarpc.lsa_TrustedDomainInfo.enc_types", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14324         { &hf_lsarpc_lsa_SetSystemAccessAccount_handle,
14325           { "Handle", "lsarpc.lsa_SetSystemAccessAccount.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14326         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE,
14327           { "Lsa Trust Attribute Forest Transitive", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE_tfs), ( 0x00000008 ), NULL, HFILL }},
14328         { &hf_lsarpc_lsa_AsciiStringLarge_size,
14329           { "Size", "lsarpc.lsa_AsciiStringLarge.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14330         { &hf_lsarpc_lsa_LookupPrivName_luid,
14331           { "Luid", "lsarpc.lsa_LookupPrivName.luid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14332         { &hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_count,
14333           { "Outgoing Count", "lsarpc.lsa_TrustDomainInfoAuthInfo.outgoing_count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14334         { &hf_lsarpc_lsa_lsaRSetForestTrustInformation_trusted_domain_name,
14335           { "Trusted Domain Name", "lsarpc.lsa_lsaRSetForestTrustInformation.trusted_domain_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14336         { &hf_lsarpc_lsa_CreateTrustedDomainEx2_auth_info_internal,
14337           { "Auth Info Internal", "lsarpc.lsa_CreateTrustedDomainEx2.auth_info_internal", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14338         { &hf_lsarpc_lsa_Delete_handle,
14339           { "Handle", "lsarpc.lsa_Delete.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14340         { &hf_lsarpc_lsa_PolicyInformation_account_domain,
14341           { "Account Domain", "lsarpc.lsa_PolicyInformation.account_domain", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14342         { &hf_lsarpc_lsa_DomainInfoKerberos_clock_skew,
14343           { "Clock Skew", "lsarpc.lsa_DomainInfoKerberos.clock_skew", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
14344         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL,
14345           { "Lsa Trust Attribute Treat As External", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL_tfs), ( 0x00000040 ), NULL, HFILL }},
14346         { &hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_ADMIN,
14347           { "Lsa Nb Disabled Admin", "lsarpc.lsa_ForestTrustCollisionXrefFlags.LSA_NB_DISABLED_ADMIN", FT_BOOLEAN, 32, TFS(&lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_ADMIN_tfs), ( 0x00000004 ), NULL, HFILL }},
14348         { &hf_lsarpc_lsa_ForestTrustData_domain_info,
14349           { "Domain Info", "lsarpc.lsa_ForestTrustData.domain_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14350         { &hf_lsarpc_lsa_AddPrivilegesToAccount_handle,
14351           { "Handle", "lsarpc.lsa_AddPrivilegesToAccount.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14352         { &hf_lsarpc_lsa_ObjectAttribute_sec_qos,
14353           { "Sec Qos", "lsarpc.lsa_ObjectAttribute.sec_qos", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14354         { &hf_lsarpc_lsa_LookupNames3_handle,
14355           { "Handle", "lsarpc.lsa_LookupNames3.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14356         { &hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_level,
14357           { "Level", "lsarpc.lsa_QueryTrustedDomainInfoBySid.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_TrustDomInfoEnum_vals), 0, NULL, HFILL }},
14358         { &hf_lsarpc_lsa_OpenTrustedDomain_sid,
14359           { "Sid", "lsarpc.lsa_OpenTrustedDomain.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14360         { &hf_lsarpc_lsa_EnumAccounts_handle,
14361           { "Handle", "lsarpc.lsa_EnumAccounts.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14362         { &hf_lsarpc_lsa_CreateAccount_sid,
14363           { "Sid", "lsarpc.lsa_CreateAccount.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14364         { &hf_lsarpc_lsa_ReplicaSourceInfo_account,
14365           { "Account", "lsarpc.lsa_ReplicaSourceInfo.account", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14366         { &hf_lsarpc_lsa_QueryDomainInformationPolicy_handle,
14367           { "Handle", "lsarpc.lsa_QueryDomainInformationPolicy.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14368         { &hf_lsarpc_lsa_CreateTrustedDomain_info,
14369           { "Info", "lsarpc.lsa_CreateTrustedDomain.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14370         { &hf_lsarpc_lsa_TrustDomainInfoControllers_netbios_names,
14371           { "Netbios Names", "lsarpc.lsa_TrustDomainInfoControllers.netbios_names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14372         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS,
14373           { "Lsa Policy Set Default Quota Limits", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS_tfs), ( 0x00000080 ), NULL, HFILL }},
14374         { &hf_lsarpc_lsa_PrivilegeSet_set,
14375           { "Set", "lsarpc.lsa_PrivilegeSet.set", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14376         { &hf_lsarpc_lsa_QuerySecret_new_val,
14377           { "New Val", "lsarpc.lsa_QuerySecret.new_val", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14378         { &hf_lsarpc_lsa_TranslatedSid2_unknown,
14379           { "Unknown", "lsarpc.lsa_TranslatedSid2.unknown", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14380         { &hf_lsarpc_lsa_LookupSids2_handle,
14381           { "Handle", "lsarpc.lsa_LookupSids2.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14382         { &hf_lsarpc_lsa_DomainListEx_domains,
14383           { "Domains", "lsarpc.lsa_DomainListEx.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14384         { &hf_lsarpc_lsa_lsaRSetForestTrustInformation_check_only,
14385           { "Check Only", "lsarpc.lsa_lsaRSetForestTrustInformation.check_only", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14386         { &hf_lsarpc_lsa_LookupNames3_num_names,
14387           { "Num Names", "lsarpc.lsa_LookupNames3.num_names", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14388         { &hf_lsarpc_lsa_EnumTrustedDomainsEx_max_size,
14389           { "Max Size", "lsarpc.lsa_EnumTrustedDomainsEx.max_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14390         { &hf_lsarpc_lsa_LookupPrivName_handle,
14391           { "Handle", "lsarpc.lsa_LookupPrivName.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14392         { &hf_lsarpc_lsa_ForestTrustCollisionFlags_flags,
14393           { "Flags", "lsarpc.lsa_ForestTrustCollisionFlags.flags", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14394         { &hf_lsarpc_lsa_OpenAccount_handle,
14395           { "Handle", "lsarpc.lsa_OpenAccount.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14396         { &hf_lsarpc_lsa_OpenSecret_access_mask,
14397           { "Access Mask", "lsarpc.lsa_OpenSecret.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14398         { &hf_lsarpc_lsa_QuerySecurity_sdbuf,
14399           { "Sdbuf", "lsarpc.lsa_QuerySecurity.sdbuf", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14400         { &hf_lsarpc_lsa_SetTrustedDomainInfoByName_trusted_domain,
14401           { "Trusted Domain", "lsarpc.lsa_SetTrustedDomainInfoByName.trusted_domain", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14402         { &hf_lsarpc_lsa_CreateTrustedDomain_trustdom_handle,
14403           { "Trustdom Handle", "lsarpc.lsa_CreateTrustedDomain.trustdom_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14404         { &hf_lsarpc_lsa_EnumPrivs_handle,
14405           { "Handle", "lsarpc.lsa_EnumPrivs.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14406         { &hf_lsarpc_lsa_LUID_high,
14407           { "High", "lsarpc.lsa_LUID.high", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14408         { &hf_lsarpc_lsa_QueryInfoPolicy_handle,
14409           { "Handle", "lsarpc.lsa_QueryInfoPolicy.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14410         { &hf_lsarpc_lsa_PolicyInformation_audit_events,
14411           { "Audit Events", "lsarpc.lsa_PolicyInformation.audit_events", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14412         { &hf_lsarpc_lsa_TrustedDomainInfo_auth_info,
14413           { "Auth Info", "lsarpc.lsa_TrustedDomainInfo.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14414         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_PRIVILEGE,
14415           { "Lsa Policy Create Privilege", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_CREATE_PRIVILEGE", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_CREATE_PRIVILEGE_tfs), ( 0x00000040 ), NULL, HFILL }},
14416         { &hf_lsarpc_lsa_DomainInfoKerberos_service_tkt_lifetime,
14417           { "Service Tkt Lifetime", "lsarpc.lsa_DomainInfoKerberos.service_tkt_lifetime", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
14418         { &hf_lsarpc_lsa_CreateSecret_access_mask,
14419           { "Access Mask", "lsarpc.lsa_CreateSecret.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14420         { &hf_lsarpc_lsa_GetUserName_authority_name,
14421           { "Authority Name", "lsarpc.lsa_GetUserName.authority_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14422         { &hf_lsarpc_lsa_SetTrustedDomainInfo_dom_sid,
14423           { "Dom Sid", "lsarpc.lsa_SetTrustedDomainInfo.dom_sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14424         { &hf_lsarpc_lsa_AuditFullSetInfo_shutdown_on_full,
14425           { "Shutdown On Full", "lsarpc.lsa_AuditFullSetInfo.shutdown_on_full", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14426         { &hf_lsarpc_lsa_DeleteTrustedDomain_dom_sid,
14427           { "Dom Sid", "lsarpc.lsa_DeleteTrustedDomain.dom_sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14428         { &hf_lsarpc_lsa_LookupNames4_names,
14429           { "Names", "lsarpc.lsa_LookupNames4.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14430         { &hf_lsarpc_lsa_ForestTrustRecord_forest_trust_data,
14431           { "Forest Trust Data", "lsarpc.lsa_ForestTrustRecord.forest_trust_data", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14432         { &hf_lsarpc_lsa_TrustDirection_LSA_TRUST_DIRECTION_OUTBOUND,
14433           { "Lsa Trust Direction Outbound", "lsarpc.lsa_TrustDirection.LSA_TRUST_DIRECTION_OUTBOUND", FT_BOOLEAN, 32, TFS(&lsa_TrustDirection_LSA_TRUST_DIRECTION_OUTBOUND_tfs), ( 0x00000002 ), NULL, HFILL }},
14434         { &hf_lsarpc_lsa_PolicyInformation_role,
14435           { "Role", "lsarpc.lsa_PolicyInformation.role", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14436         { &hf_lsarpc_lsa_PolicyInformation_audit_log,
14437           { "Audit Log", "lsarpc.lsa_PolicyInformation.audit_log", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14438         { &hf_lsarpc_lsa_LookupNames2_client_revision,
14439           { "Client Revision", "lsarpc.lsa_LookupNames2.client_revision", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_ClientRevision_vals), 0, NULL, HFILL }},
14440         { &hf_lsarpc_lsa_PolicyInformation_dns,
14441           { "Dns", "lsarpc.lsa_PolicyInformation.dns", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14442         { &hf_lsarpc_lsa_lsaRSetForestTrustInformation_handle,
14443           { "Handle", "lsarpc.lsa_lsaRSetForestTrustInformation.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14444         { &hf_lsarpc_lsa_lsaRQueryForestTrustInformation_trusted_domain_name,
14445           { "Trusted Domain Name", "lsarpc.lsa_lsaRQueryForestTrustInformation.trusted_domain_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14446         { &hf_lsarpc_lsa_QueryTrustedDomainInfoByName_trusted_domain,
14447           { "Trusted Domain", "lsarpc.lsa_QueryTrustedDomainInfoByName.trusted_domain", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14448         { &hf_lsarpc_lsa_OpenPolicy2_handle,
14449           { "Handle", "lsarpc.lsa_OpenPolicy2.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14450         { &hf_lsarpc_lsa_EnumAccountsWithUserRight_handle,
14451           { "Handle", "lsarpc.lsa_EnumAccountsWithUserRight.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14452         { &hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_count,
14453           { "Incoming Count", "lsarpc.lsa_TrustDomainInfoAuthInfo.incoming_count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14454         { &hf_lsarpc_lsa_PolicyInformation_mod,
14455           { "Mod", "lsarpc.lsa_PolicyInformation.mod", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14456         { &hf_lsarpc_lsa_LookupSids3_client_revision,
14457           { "Client Revision", "lsarpc.lsa_LookupSids3.client_revision", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_ClientRevision_vals), 0, NULL, HFILL }},
14458         { &hf_lsarpc_lsa_RemoveAccountRights_rights,
14459           { "Rights", "lsarpc.lsa_RemoveAccountRights.rights", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14460         { &hf_lsarpc_lsa_SetSecret_sec_handle,
14461           { "Sec Handle", "lsarpc.lsa_SetSecret.sec_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14462         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_SECRET,
14463           { "Lsa Policy Create Secret", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_CREATE_SECRET", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_CREATE_SECRET_tfs), ( 0x00000020 ), NULL, HFILL }},
14464         { &hf_lsarpc_lsa_OpenTrustedDomainByName_access_mask,
14465           { "Access Mask", "lsarpc.lsa_OpenTrustedDomainByName.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14466         { &hf_lsarpc_lsa_RightAttribute_name,
14467           { "Name", "lsarpc.lsa_RightAttribute.name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
14468         { &hf_lsarpc_lsa_TrustDomainInfoPassword_old_password,
14469           { "Old Password", "lsarpc.lsa_TrustDomainInfoPassword.old_password", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14470         { &hf_lsarpc_lsa_DomainInfoKerberos_user_tkt_renewaltime,
14471           { "User Tkt Renewaltime", "lsarpc.lsa_DomainInfoKerberos.user_tkt_renewaltime", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
14472         { &hf_lsarpc_lsa_LUID_low,
14473           { "Low", "lsarpc.lsa_LUID.low", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14474         { &hf_lsarpc_lsa_LookupNames3_names,
14475           { "Names", "lsarpc.lsa_LookupNames3.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14476         { &hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_dom_sid,
14477           { "Dom Sid", "lsarpc.lsa_QueryTrustedDomainInfoBySid.dom_sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14478         { &hf_lsarpc_lsa_SetSecObj_sdbuf,
14479           { "Sdbuf", "lsarpc.lsa_SetSecObj.sdbuf", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14480         { &hf_lsarpc_lsa_RemoveAccountRights_remove_all,
14481           { "Remove All", "lsarpc.lsa_RemoveAccountRights.remove_all", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14482         { &hf_lsarpc_lsa_LookupSids_names,
14483           { "Names", "lsarpc.lsa_LookupSids.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14484         { &hf_lsarpc_lsa_OpenTrustedDomain_access_mask,
14485           { "Access Mask", "lsarpc.lsa_OpenTrustedDomain.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14486         { &hf_lsarpc_lsa_RetrievePrivateData_handle,
14487           { "Handle", "lsarpc.lsa_RetrievePrivateData.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14488         { &hf_lsarpc_lsa_RefDomainList_max_size,
14489           { "Max Size", "lsarpc.lsa_RefDomainList.max_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14490         { &hf_lsarpc_lsa_TransSidArray_sids,
14491           { "Sids", "lsarpc.lsa_TransSidArray.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14492         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_attributes,
14493           { "Trust Attributes", "lsarpc.lsa_TrustDomainInfoInfoEx.trust_attributes", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14494         { &hf_lsarpc_lsa_CreateSecret_sec_handle,
14495           { "Sec Handle", "lsarpc.lsa_CreateSecret.sec_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14496         { &hf_lsarpc_lsa_SetSecret_old_val,
14497           { "Old Val", "lsarpc.lsa_SetSecret.old_val", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14498         { &hf_lsarpc_lsa_SetSecObj_sec_info,
14499           { "Sec Info", "lsarpc.lsa_SetSecObj.sec_info", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14500         { &hf_lsarpc_lsa_TrustDomainInfoBuffer_last_update_time,
14501           { "Last Update Time", "lsarpc.lsa_TrustDomainInfoBuffer.last_update_time", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, NULL, HFILL }},
14502         { &hf_lsarpc_lsa_LookupSids2_client_revision,
14503           { "Client Revision", "lsarpc.lsa_LookupSids2.client_revision", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_ClientRevision_vals), 0, NULL, HFILL }},
14504         { &hf_lsarpc_lsa_DnsDomainInfo_dns_forest,
14505           { "Dns Forest", "lsarpc.lsa_DnsDomainInfo.dns_forest", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14506         { &hf_lsarpc_lsa_QueryDomainInformationPolicy_info,
14507           { "Info", "lsarpc.lsa_QueryDomainInformationPolicy.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14508         { &hf_lsarpc_lsa_ForestTrustDomainInfo_netbios_domain_name,
14509           { "Netbios Domain Name", "lsarpc.lsa_ForestTrustDomainInfo.netbios_domain_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14510         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_direction,
14511           { "Trust Direction", "lsarpc.lsa_TrustDomainInfoInfoEx.trust_direction", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14512         { &hf_lsarpc_lsa_LookupNames3_sids,
14513           { "Sids", "lsarpc.lsa_LookupNames3.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14514         { &hf_lsarpc_lsa_ObjectAttribute_sec_desc,
14515           { "Sec Desc", "lsarpc.lsa_ObjectAttribute.sec_desc", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14516         { &hf_lsarpc_lsa_AuditLogInfo_retention_time,
14517           { "Retention Time", "lsarpc.lsa_AuditLogInfo.retention_time", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
14518         { &hf_lsarpc_lsa_DnsDomainInfo_name,
14519           { "Name", "lsarpc.lsa_DnsDomainInfo.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14520         { &hf_lsarpc_lsa_TranslatedSid2_sid_index,
14521           { "Sid Index", "lsarpc.lsa_TranslatedSid2.sid_index", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14522         { &hf_lsarpc_lsa_QuerySecret_old_mtime,
14523           { "Old Mtime", "lsarpc.lsa_QuerySecret.old_mtime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, NULL, HFILL }},
14524         { &hf_lsarpc_lsa_OpenTrustedDomain_handle,
14525           { "Handle", "lsarpc.lsa_OpenTrustedDomain.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14526         { &hf_lsarpc_lsa_TransNameArray_names,
14527           { "Names", "lsarpc.lsa_TransNameArray.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14528         { &hf_lsarpc_lsa_RefDomainList_count,
14529           { "Count", "lsarpc.lsa_RefDomainList.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14530         { &hf_lsarpc_lsa_QueryInfoPolicy2_info,
14531           { "Info", "lsarpc.lsa_QueryInfoPolicy2.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14532         { &hf_lsarpc_lsa_GetSystemAccessAccount_access_mask,
14533           { "Access Mask", "lsarpc.lsa_GetSystemAccessAccount.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14534         { &hf_lsarpc_lsa_DomainInformationPolicy_kerberos_info,
14535           { "Kerberos Info", "lsarpc.lsa_DomainInformationPolicy.kerberos_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14536         { &hf_lsarpc_lsa_QueryInfoPolicy_info,
14537           { "Info", "lsarpc.lsa_QueryInfoPolicy.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14538         { &hf_lsarpc_lsa_CreateAccount_acct_handle,
14539           { "Acct Handle", "lsarpc.lsa_CreateAccount.acct_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14540         { &hf_lsarpc_lsa_AuditLogInfo_maximum_log_size,
14541           { "Maximum Log Size", "lsarpc.lsa_AuditLogInfo.maximum_log_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14542         { &hf_lsarpc_lsa_AuditLogInfo_shutdown_in_progress,
14543           { "Shutdown In Progress", "lsarpc.lsa_AuditLogInfo.shutdown_in_progress", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14544         { &hf_lsarpc_lsa_OpenSecret_handle,
14545           { "Handle", "lsarpc.lsa_OpenSecret.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14546         { &hf_lsarpc_lsa_TrustDomainInfoName_netbios_name,
14547           { "Netbios Name", "lsarpc.lsa_TrustDomainInfoName.netbios_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14548         { &hf_lsarpc_lsa_SetInformationTrustedDomain_info,
14549           { "Info", "lsarpc.lsa_SetInformationTrustedDomain.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14550         { &hf_lsarpc_lsa_LookupNames_handle,
14551           { "Handle", "lsarpc.lsa_LookupNames.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14552         { &hf_lsarpc_lsa_EnumTrustDom_max_size,
14553           { "Max Size", "lsarpc.lsa_EnumTrustDom.max_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14554         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE,
14555           { "Lsa Trust Attribute Non Transitive", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE_tfs), ( 0x00000001 ), NULL, HFILL }},
14556         { &hf_lsarpc_lsa_TrustDomainInfoPassword_password,
14557           { "Password", "lsarpc.lsa_TrustDomainInfoPassword.password", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14558         { &hf_lsarpc_lsa_ObjectAttribute_object_name,
14559           { "Object Name", "lsarpc.lsa_ObjectAttribute.object_name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
14560         { &hf_lsarpc_lsa_lsaRSetForestTrustInformation_highest_record_type,
14561           { "Highest Record Type", "lsarpc.lsa_lsaRSetForestTrustInformation.highest_record_type", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14562         { &hf_lsarpc_lsa_EnumTrustDom_resume_handle,
14563           { "Resume Handle", "lsarpc.lsa_EnumTrustDom.resume_handle", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14564         { &hf_lsarpc_lsa_QosInfo_impersonation_level,
14565           { "Impersonation Level", "lsarpc.lsa_QosInfo.impersonation_level", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14566         { &hf_lsarpc_lsa_QueryInfoPolicy2_level,
14567           { "Level", "lsarpc.lsa_QueryInfoPolicy2.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_PolicyInfo_vals), 0, NULL, HFILL }},
14568         { &hf_lsarpc_lsa_TranslatedSid3_sid,
14569           { "Sid", "lsarpc.lsa_TranslatedSid3.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14570         { &hf_lsarpc_lsa_TrustDomainInfoBasic_netbios_name,
14571           { "Netbios Name", "lsarpc.lsa_TrustDomainInfoBasic.netbios_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14572         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_AUDIT_LOG_ADMIN,
14573           { "Lsa Policy Audit Log Admin", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_AUDIT_LOG_ADMIN", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_AUDIT_LOG_ADMIN_tfs), ( 0x00000200 ), NULL, HFILL }},
14574         { &hf_lsarpc_lsa_ForestTrustInformation_entries,
14575           { "Entries", "lsarpc.lsa_ForestTrustInformation.entries", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14576         { &hf_lsarpc_lsa_ForestTrustData_top_level_name_ex,
14577           { "Top Level Name Ex", "lsarpc.lsa_ForestTrustData.top_level_name_ex", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14578         { &hf_lsarpc_lsa_DefaultQuotaInfo_non_paged_pool,
14579           { "Non Paged Pool", "lsarpc.lsa_DefaultQuotaInfo.non_paged_pool", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14580         { &hf_lsarpc_lsa_ForestTrustBinaryData_length,
14581           { "Length", "lsarpc.lsa_ForestTrustBinaryData.length", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14582         { &hf_lsarpc_lsa_DefaultQuotaInfo_unknown,
14583           { "Unknown", "lsarpc.lsa_DefaultQuotaInfo.unknown", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
14584         { &hf_lsarpc_lsa_QosInfo_len,
14585           { "Len", "lsarpc.lsa_QosInfo.len", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14586         { &hf_lsarpc_lsa_LookupNames3_level,
14587           { "Level", "lsarpc.lsa_LookupNames3.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_LookupNamesLevel_vals), 0, NULL, HFILL }},
14588         { &hf_lsarpc_lsa_LookupPrivDisplayName_disp_name,
14589           { "Disp Name", "lsarpc.lsa_LookupPrivDisplayName.disp_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14590         { &hf_lsarpc_lsa_LookupNames_level,
14591           { "Level", "lsarpc.lsa_LookupNames.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_LookupNamesLevel_vals), 0, NULL, HFILL }},
14592         { &hf_lsarpc_lsa_LookupNames4_count,
14593           { "Count", "lsarpc.lsa_LookupNames4.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14594         { &hf_lsarpc_lsa_LookupNames_names,
14595           { "Names", "lsarpc.lsa_LookupNames.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14596         { &hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_POSIX,
14597           { "Lsa Trusted Set Posix", "lsarpc.lsa_TrustedAccessMask.LSA_TRUSTED_SET_POSIX", FT_BOOLEAN, 32, TFS(&lsa_TrustedAccessMask_LSA_TRUSTED_SET_POSIX_tfs), ( 0x00000010 ), NULL, HFILL }},
14598         { &hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_PRIVILEGES,
14599           { "Lsa Account Adjust Privileges", "lsarpc.lsa_AccountAccessMask.LSA_ACCOUNT_ADJUST_PRIVILEGES", FT_BOOLEAN, 32, TFS(&lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_PRIVILEGES_tfs), ( 0x00000002 ), NULL, HFILL }},
14600         { &hf_lsarpc_lsa_PrivEntry_luid,
14601           { "Luid", "lsarpc.lsa_PrivEntry.luid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14602         { &hf_lsarpc_lsa_EnumAccounts_resume_handle,
14603           { "Resume Handle", "lsarpc.lsa_EnumAccounts.resume_handle", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14604         { &hf_lsarpc_lsa_LookupSids3_level,
14605           { "Level", "lsarpc.lsa_LookupSids3.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_LookupNamesLevel_vals), 0, NULL, HFILL }},
14606         { &hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_CONFLICT,
14607           { "Lsa Nb Disabled Conflict", "lsarpc.lsa_ForestTrustCollisionXrefFlags.LSA_NB_DISABLED_CONFLICT", FT_BOOLEAN, 32, TFS(&lsa_ForestTrustCollisionXrefFlags_LSA_NB_DISABLED_CONFLICT_tfs), ( 0x00000008 ), NULL, HFILL }},
14608         { &hf_lsarpc_lsa_DATA_BUF_data,
14609           { "Data", "lsarpc.lsa_DATA_BUF.data", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14610         { &hf_lsarpc_lsa_OpenTrustedDomainByName_name,
14611           { "Name", "lsarpc.lsa_OpenTrustedDomainByName.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14612         { &hf_lsarpc_lsa_DomainListEx_count,
14613           { "Count", "lsarpc.lsa_DomainListEx.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14614         { &hf_lsarpc_lsa_DeleteObject_handle,
14615           { "Handle", "lsarpc.lsa_DeleteObject.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14616         { &hf_lsarpc_lsa_DefaultQuotaInfo_pagefile,
14617           { "Pagefile", "lsarpc.lsa_DefaultQuotaInfo.pagefile", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14618         { &hf_lsarpc_lsa_DefaultQuotaInfo_min_wss,
14619           { "Min Wss", "lsarpc.lsa_DefaultQuotaInfo.min_wss", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14620         { &hf_lsarpc_lsa_ForestTrustData_top_level_name,
14621           { "Top Level Name", "lsarpc.lsa_ForestTrustData.top_level_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14622         { &hf_lsarpc_lsa_TranslatedName2_sid_type,
14623           { "Sid Type", "lsarpc.lsa_TranslatedName2.sid_type", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_SidType_vals), 0, NULL, HFILL }},
14624         { &hf_lsarpc_lsa_LookupPrivDisplayName_returned_language_id,
14625           { "Returned Language Id", "lsarpc.lsa_LookupPrivDisplayName.returned_language_id", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14626         { &hf_lsarpc_lsa_SetSystemAccessAccount_access_mask,
14627           { "Access Mask", "lsarpc.lsa_SetSystemAccessAccount.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14628         { &hf_lsarpc_lsa_OpenTrustedDomain_trustdom_handle,
14629           { "Trustdom Handle", "lsarpc.lsa_OpenTrustedDomain.trustdom_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14630         { &hf_lsarpc_lsa_TrustDomainInfoFullInfo_info_ex,
14631           { "Info Ex", "lsarpc.lsa_TrustDomainInfoFullInfo.info_ex", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14632         { &hf_lsarpc_lsa_ForestTrustRecord_type,
14633           { "Type", "lsarpc.lsa_ForestTrustRecord.type", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_ForestTrustRecordType_vals), 0, NULL, HFILL }},
14634         { &hf_lsarpc_lsa_DATA_BUF2_data,
14635           { "Data", "lsarpc.lsa_DATA_BUF2.data", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14636         { &hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_AUTH,
14637           { "Lsa Trusted Set Auth", "lsarpc.lsa_TrustedAccessMask.LSA_TRUSTED_SET_AUTH", FT_BOOLEAN, 32, TFS(&lsa_TrustedAccessMask_LSA_TRUSTED_SET_AUTH_tfs), ( 0x00000020 ), NULL, HFILL }},
14638         { &hf_lsarpc_lsa_RemoveAccountRights_handle,
14639           { "Handle", "lsarpc.lsa_RemoveAccountRights.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14640         { &hf_lsarpc_lsa_TrustedDomainInfo_full_info_internal,
14641           { "Full Info Internal", "lsarpc.lsa_TrustedDomainInfo.full_info_internal", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14642         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION,
14643           { "Lsa Trust Attribute Cross Organization", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION_tfs), ( 0x00000010 ), NULL, HFILL }},
14644         { &hf_lsarpc_lsa_LookupNames3_count,
14645           { "Count", "lsarpc.lsa_LookupNames3.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14646         { &hf_lsarpc_lsa_LookupNames3_client_revision,
14647           { "Client Revision", "lsarpc.lsa_LookupNames3.client_revision", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_ClientRevision_vals), 0, NULL, HFILL }},
14648         { &hf_lsarpc_lsa_lsaRSetForestTrustInformation_forest_trust_info,
14649           { "Forest Trust Info", "lsarpc.lsa_lsaRSetForestTrustInformation.forest_trust_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14650         { &hf_lsarpc_lsa_EnumTrustedDomainsEx_resume_handle,
14651           { "Resume Handle", "lsarpc.lsa_EnumTrustedDomainsEx.resume_handle", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14652         { &hf_lsarpc_lsa_TransNameArray2_count,
14653           { "Count", "lsarpc.lsa_TransNameArray2.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14654         { &hf_lsarpc_lsa_DomainInfo_sid,
14655           { "Sid", "lsarpc.lsa_DomainInfo.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14656         { &hf_lsarpc_lsa_QueryTrustedDomainInfoByName_level,
14657           { "Level", "lsarpc.lsa_QueryTrustedDomainInfoByName.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_TrustDomInfoEnum_vals), 0, NULL, HFILL }},
14658         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx_sid,
14659           { "Sid", "lsarpc.lsa_TrustDomainInfoInfoEx.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14660         { &hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_previous_auth_info,
14661           { "Incoming Previous Auth Info", "lsarpc.lsa_TrustDomainInfoAuthInfo.incoming_previous_auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14662         { &hf_lsarpc_lsa_LookupNames3_domains,
14663           { "Domains", "lsarpc.lsa_LookupNames3.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14664         { &hf_lsarpc_lsa_CreateTrustedDomainEx2_access_mask,
14665           { "Access Mask", "lsarpc.lsa_CreateTrustedDomainEx2.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14666         { &hf_lsarpc_lsa_SetTrustedDomainInfo_info,
14667           { "Info", "lsarpc.lsa_SetTrustedDomainInfo.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14668         { &hf_lsarpc_lsa_SetSecret_new_val,
14669           { "New Val", "lsarpc.lsa_SetSecret.new_val", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14670         { &hf_lsarpc_lsa_String_string,
14671           { "String", "lsarpc.lsa_String.string", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14672         { &hf_lsarpc_lsa_PrivArray_count,
14673           { "Count", "lsarpc.lsa_PrivArray.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14674         { &hf_lsarpc_lsa_QueryTrustedDomainInfo_level,
14675           { "Level", "lsarpc.lsa_QueryTrustedDomainInfo.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_TrustDomInfoEnum_vals), 0, NULL, HFILL }},
14676         { &hf_lsarpc_lsa_DATA_BUF_size,
14677           { "Size", "lsarpc.lsa_DATA_BUF.size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14678         { &hf_lsarpc_lsa_QueryDomainInformationPolicy_level,
14679           { "Level", "lsarpc.lsa_QueryDomainInformationPolicy.level", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14680         { &hf_lsarpc_lsa_StorePrivateData_val,
14681           { "Val", "lsarpc.lsa_StorePrivateData.val", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14682         { &hf_lsarpc_lsa_ForestTrustCollisionRecord_index,
14683           { "Index", "lsarpc.lsa_ForestTrustCollisionRecord.index", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14684         { &hf_lsarpc_lsa_StringLarge_string,
14685           { "String", "lsarpc.lsa_StringLarge.string", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14686         { &hf_lsarpc_lsa_DomainInfo_name,
14687           { "Name", "lsarpc.lsa_DomainInfo.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14688         { &hf_lsarpc_lsa_AsciiString_size,
14689           { "Size", "lsarpc.lsa_AsciiString.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14690         { &hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_ADMIN,
14691           { "Lsa Tln Disabled Admin", "lsarpc.lsa_ForestTrustCollisionTDOFlags.LSA_TLN_DISABLED_ADMIN", FT_BOOLEAN, 32, TFS(&lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_ADMIN_tfs), ( 0x00000002 ), NULL, HFILL }},
14692         { &hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_NEW,
14693           { "Lsa Tln Disabled New", "lsarpc.lsa_ForestTrustCollisionTDOFlags.LSA_TLN_DISABLED_NEW", FT_BOOLEAN, 32, TFS(&lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_NEW_tfs), ( 0x00000001 ), NULL, HFILL }},
14694         { &hf_lsarpc_lsa_LookupNames2_sids,
14695           { "Sids", "lsarpc.lsa_LookupNames2.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14696         { &hf_lsarpc_lsa_SetDomainInformationPolicy_level,
14697           { "Level", "lsarpc.lsa_SetDomainInformationPolicy.level", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14698         { &hf_lsarpc_lsa_krbAuthenticationOptions_LSA_POLICY_KERBEROS_VALIDATE_CLIENT,
14699           { "Lsa Policy Kerberos Validate Client", "lsarpc.lsa_krbAuthenticationOptions.LSA_POLICY_KERBEROS_VALIDATE_CLIENT", FT_BOOLEAN, 32, TFS(&lsa_krbAuthenticationOptions_LSA_POLICY_KERBEROS_VALIDATE_CLIENT_tfs), ( 0x00000080 ), NULL, HFILL }},
14700         { &hf_lsarpc_lsa_SetInfoPolicy2_info,
14701           { "Info", "lsarpc.lsa_SetInfoPolicy2.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14702         { &hf_lsarpc_lsa_TrustDirection_LSA_TRUST_DIRECTION_INBOUND,
14703           { "Lsa Trust Direction Inbound", "lsarpc.lsa_TrustDirection.LSA_TRUST_DIRECTION_INBOUND", FT_BOOLEAN, 32, TFS(&lsa_TrustDirection_LSA_TRUST_DIRECTION_INBOUND_tfs), ( 0x00000001 ), NULL, HFILL }},
14704         { &hf_lsarpc_lsa_AsciiStringLarge_string,
14705           { "String", "lsarpc.lsa_AsciiStringLarge.string", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14706         { &hf_lsarpc_lsa_LookupSids2_level,
14707           { "Level", "lsarpc.lsa_LookupSids2.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_LookupNamesLevel_vals), 0, NULL, HFILL }},
14708         { &hf_lsarpc_lsa_OpenSecret_sec_handle,
14709           { "Sec Handle", "lsarpc.lsa_OpenSecret.sec_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14710         { &hf_lsarpc_lsa_TrustDomainInfoAuthInfo_incoming_current_auth_info,
14711           { "Incoming Current Auth Info", "lsarpc.lsa_TrustDomainInfoAuthInfo.incoming_current_auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14712         { &hf_lsarpc_lsa_DomainInformationPolicy_efs_info,
14713           { "Efs Info", "lsarpc.lsa_DomainInformationPolicy.efs_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14714         { &hf_lsarpc_lsa_EnumAccounts_sids,
14715           { "Sids", "lsarpc.lsa_EnumAccounts.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14716         { &hf_lsarpc_lsa_ReplicaSourceInfo_source,
14717           { "Source", "lsarpc.lsa_ReplicaSourceInfo.source", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14718         { &hf_lsarpc_lsa_QuerySecurity_sec_info,
14719           { "Sec Info", "lsarpc.lsa_QuerySecurity.sec_info", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14720         { &hf_lsarpc_lsa_ForestTrustCollisionRecord_name,
14721           { "Name", "lsarpc.lsa_ForestTrustCollisionRecord.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14722         { &hf_lsarpc_lsa_TrustedDomainInfo_info_ex2_internal,
14723           { "Info Ex2 Internal", "lsarpc.lsa_TrustedDomainInfo.info_ex2_internal", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14724         { &hf_lsarpc_lsa_LookupSids2_domains,
14725           { "Domains", "lsarpc.lsa_LookupSids2.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14726         { &hf_lsarpc_lsa_EnumTrustedDomainsEx_domains,
14727           { "Domains", "lsarpc.lsa_EnumTrustedDomainsEx.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14728         { &hf_lsarpc_lsa_EnumAccounts_num_entries,
14729           { "Num Entries", "lsarpc.lsa_EnumAccounts.num_entries", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14730         { &hf_lsarpc_lsa_TrustDomainInfoFullInfo_posix_offset,
14731           { "Posix Offset", "lsarpc.lsa_TrustDomainInfoFullInfo.posix_offset", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14732         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx_trust_type,
14733           { "Trust Type", "lsarpc.lsa_TrustDomainInfoInfoEx.trust_type", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_TrustType_vals), 0, NULL, HFILL }},
14734         { &hf_lsarpc_lsa_DnsDomainInfo_sid,
14735           { "Sid", "lsarpc.lsa_DnsDomainInfo.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14736         { &hf_lsarpc_lsa_LookupNames_num_names,
14737           { "Num Names", "lsarpc.lsa_LookupNames.num_names", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14738         { &hf_lsarpc_lsa_ForestTrustDomainInfo_domain_sid,
14739           { "Domain Sid", "lsarpc.lsa_ForestTrustDomainInfo.domain_sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14740         { &hf_lsarpc_lsa_LookupSids_handle,
14741           { "Handle", "lsarpc.lsa_LookupSids.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14742         { &hf_lsarpc_lsa_AsciiString_string,
14743           { "String", "lsarpc.lsa_AsciiString.string", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14744         { &hf_lsarpc_lsa_TrustedDomainInfo_info_ex,
14745           { "Info Ex", "lsarpc.lsa_TrustedDomainInfo.info_ex", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14746         { &hf_lsarpc_lsa_CreateTrustedDomainEx2_trustdom_handle,
14747           { "Trustdom Handle", "lsarpc.lsa_CreateTrustedDomainEx2.trustdom_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14748         { &hf_lsarpc_lsa_RemovePrivilegesFromAccount_handle,
14749           { "Handle", "lsarpc.lsa_RemovePrivilegesFromAccount.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14750         { &hf_lsarpc_lsa_CreateAccount_handle,
14751           { "Handle", "lsarpc.lsa_CreateAccount.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14752         { &hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_DOMAIN_NAME,
14753           { "Lsa Trusted Query Domain Name", "lsarpc.lsa_TrustedAccessMask.LSA_TRUSTED_QUERY_DOMAIN_NAME", FT_BOOLEAN, 32, TFS(&lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_DOMAIN_NAME_tfs), ( 0x00000001 ), NULL, HFILL }},
14754         { &hf_lsarpc_lsa_TrustedDomainInfo_name,
14755           { "Name", "lsarpc.lsa_TrustedDomainInfo.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14756         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_length,
14757           { "Forest Trust Length", "lsarpc.lsa_TrustDomainInfoInfoEx2Internal.forest_trust_length", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14758         { &hf_lsarpc_lsa_EnumAccountRights_rights,
14759           { "Rights", "lsarpc.lsa_EnumAccountRights.rights", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14760         { &hf_lsarpc_lsa_SetSecObj_handle,
14761           { "Handle", "lsarpc.lsa_SetSecObj.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14762         { &hf_lsarpc_lsa_LookupPrivDisplayName_name,
14763           { "Name", "lsarpc.lsa_LookupPrivDisplayName.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14764         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_GET_PRIVATE_INFORMATION,
14765           { "Lsa Policy Get Private Information", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_GET_PRIVATE_INFORMATION", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_GET_PRIVATE_INFORMATION_tfs), ( 0x00000004 ), NULL, HFILL }},
14766         { &hf_lsarpc_lsa_OpenPolicy2_access_mask,
14767           { "Access Mask", "lsarpc.lsa_OpenPolicy2.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14768         { &hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_auth_info,
14769           { "Auth Info", "lsarpc.lsa_TrustDomainInfoFullInfo2Internal.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14770         { &hf_lsarpc_lsa_SetInfoPolicy2_handle,
14771           { "Handle", "lsarpc.lsa_SetInfoPolicy2.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14772         { &hf_lsarpc_lsa_LookupNames2_num_names,
14773           { "Num Names", "lsarpc.lsa_LookupNames2.num_names", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14774         { &hf_lsarpc_lsa_SetInfoPolicy2_level,
14775           { "Level", "lsarpc.lsa_SetInfoPolicy2.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_PolicyInfo_vals), 0, NULL, HFILL }},
14776         { &hf_lsarpc_lsa_EnumPrivsAccount_privs,
14777           { "Privs", "lsarpc.lsa_EnumPrivsAccount.privs", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14778         { &hf_lsarpc_lsa_TrustedDomainInfo_controllers,
14779           { "Controllers", "lsarpc.lsa_TrustedDomainInfo.controllers", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14780         { &hf_lsarpc_lsa_OpenAccount_access_mask,
14781           { "Access Mask", "lsarpc.lsa_OpenAccount.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14782         { &hf_lsarpc_lsa_EnumPrivs_privs,
14783           { "Privs", "lsarpc.lsa_EnumPrivs.privs", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14784         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_TRUST_ADMIN,
14785           { "Lsa Policy Trust Admin", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_TRUST_ADMIN", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_TRUST_ADMIN_tfs), ( 0x00000008 ), NULL, HFILL }},
14786         { &hf_lsarpc_lsa_AuditLogInfo_percent_full,
14787           { "Percent Full", "lsarpc.lsa_AuditLogInfo.percent_full", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14788         { &hf_lsarpc_lsa_PolicyInformation_quota,
14789           { "Quota", "lsarpc.lsa_PolicyInformation.quota", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14790         { &hf_lsarpc_lsa_RemovePrivilegesFromAccount_privs,
14791           { "Privs", "lsarpc.lsa_RemovePrivilegesFromAccount.privs", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14792         { &hf_lsarpc_lsa_TrustDomainInfoBuffer_AuthType,
14793           { "Authtype", "lsarpc.lsa_TrustDomainInfoBuffer.AuthType", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_TrustAuthType_vals), 0, NULL, HFILL }},
14794         { &hf_lsarpc_lsa_TranslatedName_sid_type,
14795           { "Sid Type", "lsarpc.lsa_TranslatedName.sid_type", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_SidType_vals), 0, NULL, HFILL }},
14796         { &hf_lsarpc_lsa_LookupSids2_names,
14797           { "Names", "lsarpc.lsa_LookupSids2.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14798         { &hf_lsarpc_lsa_EnumPrivsAccount_handle,
14799           { "Handle", "lsarpc.lsa_EnumPrivsAccount.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14800         { &hf_lsarpc_lsa_SidArray_sids,
14801           { "Sids", "lsarpc.lsa_SidArray.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14802         { &hf_lsarpc_lsa_RemoveAccountRights_sid,
14803           { "Sid", "lsarpc.lsa_RemoveAccountRights.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14804         { &hf_lsarpc_lsa_QueryTrustedDomainInfo_info,
14805           { "Info", "lsarpc.lsa_QueryTrustedDomainInfo.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14806         { &hf_lsarpc_lsa_String_length,
14807           { "Length", "lsarpc.lsa_String.length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14808         { &hf_lsarpc_opnum,
14809           { "Operation", "lsarpc.opnum", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14810         { &hf_lsarpc_lsa_CreateTrustedDomainEx_info,
14811           { "Info", "lsarpc.lsa_CreateTrustedDomainEx.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14812         { &hf_lsarpc_lsa_PrivilegeSet_count,
14813           { "Count", "lsarpc.lsa_PrivilegeSet.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14814         { &hf_lsarpc_lsa_SetTrustedDomainInfoByName_level,
14815           { "Level", "lsarpc.lsa_SetTrustedDomainInfoByName.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_TrustDomInfoEnum_vals), 0, NULL, HFILL }},
14816         { &hf_lsarpc_lsa_lsaRSetForestTrustInformation_collision_info,
14817           { "Collision Info", "lsarpc.lsa_lsaRSetForestTrustInformation.collision_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14818         { &hf_lsarpc_lsa_LookupPrivDisplayName_language_id,
14819           { "Language Id", "lsarpc.lsa_LookupPrivDisplayName.language_id", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14820         { &hf_lsarpc_lsa_TransSidArray3_sids,
14821           { "Sids", "lsarpc.lsa_TransSidArray3.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14822         { &hf_lsarpc_status,
14823           { "NT Error", "lsarpc.status", FT_UINT32, BASE_HEX, VALS(NT_errors), 0, NULL, HFILL }},
14824         { &hf_lsarpc_lsa_LookupNames_count,
14825           { "Count", "lsarpc.lsa_LookupNames.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14826         { &hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_info,
14827           { "Info", "lsarpc.lsa_TrustDomainInfoFullInfo2Internal.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14828         { &hf_lsarpc_lsa_SetTrustedDomainInfo_handle,
14829           { "Handle", "lsarpc.lsa_SetTrustedDomainInfo.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14830         { &hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_previous_auth_info,
14831           { "Outgoing Previous Auth Info", "lsarpc.lsa_TrustDomainInfoAuthInfo.outgoing_previous_auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14832         { &hf_lsarpc_lsa_LookupPrivValue_name,
14833           { "Name", "lsarpc.lsa_LookupPrivValue.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14834         { &hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_CONTROLLERS,
14835           { "Lsa Trusted Query Controllers", "lsarpc.lsa_TrustedAccessMask.LSA_TRUSTED_QUERY_CONTROLLERS", FT_BOOLEAN, 32, TFS(&lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_CONTROLLERS_tfs), ( 0x00000002 ), NULL, HFILL }},
14836         { &hf_lsarpc_lsa_ForestTrustBinaryData_data,
14837           { "Data", "lsarpc.lsa_ForestTrustBinaryData.data", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14838         { &hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS,
14839           { "Lsa Account Adjust System Access", "lsarpc.lsa_AccountAccessMask.LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS", FT_BOOLEAN, 32, TFS(&lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS_tfs), ( 0x00000008 ), NULL, HFILL }},
14840         { &hf_lsarpc_lsa_TranslatedSid_sid_index,
14841           { "Sid Index", "lsarpc.lsa_TranslatedSid.sid_index", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14842         { &hf_lsarpc_lsa_AsciiStringLarge_length,
14843           { "Length", "lsarpc.lsa_AsciiStringLarge.length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14844         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_ACCOUNT,
14845           { "Lsa Policy Create Account", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_CREATE_ACCOUNT", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_CREATE_ACCOUNT_tfs), ( 0x00000010 ), NULL, HFILL }},
14846         { &hf_lsarpc_lsa_TrustDomainInfoAuthInfoInternal_auth_blob,
14847           { "Auth Blob", "lsarpc.lsa_TrustDomainInfoAuthInfoInternal.auth_blob", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14848         { &hf_lsarpc_lsa_OpenTrustedDomainByName_trustdom_handle,
14849           { "Trustdom Handle", "lsarpc.lsa_OpenTrustedDomainByName.trustdom_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14850         { &hf_lsarpc_lsa_TransNameArray2_names,
14851           { "Names", "lsarpc.lsa_TransNameArray2.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14852         { &hf_lsarpc_lsa_EnumTrustDom_handle,
14853           { "Handle", "lsarpc.lsa_EnumTrustDom.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14854         { &hf_lsarpc_lsa_ForestTrustCollisionInfo_count,
14855           { "Count", "lsarpc.lsa_ForestTrustCollisionInfo.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14856         { &hf_lsarpc_lsa_CreateAccount_access_mask,
14857           { "Access Mask", "lsarpc.lsa_CreateAccount.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14858         { &hf_lsarpc_lsa_OpenPolicy2_attr,
14859           { "Attr", "lsarpc.lsa_OpenPolicy2.attr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14860         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx_netbios_name,
14861           { "Netbios Name", "lsarpc.lsa_TrustDomainInfoInfoEx.netbios_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14862         { &hf_lsarpc_lsa_OpenPolicy_system_name,
14863           { "System Name", "lsarpc.lsa_OpenPolicy.system_name", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
14864         { &hf_lsarpc_lsa_ForestTrustRecord_flags,
14865           { "Flags", "lsarpc.lsa_ForestTrustRecord.flags", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14866         { &hf_lsarpc_lsa_LookupSids2_sids,
14867           { "Sids", "lsarpc.lsa_LookupSids2.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14868         { &hf_lsarpc_lsa_CreateTrustedDomainEx_auth_info,
14869           { "Auth Info", "lsarpc.lsa_CreateTrustedDomainEx.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14870         { &hf_lsarpc_lsa_TranslatedName_sid_index,
14871           { "Sid Index", "lsarpc.lsa_TranslatedName.sid_index", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14872         { &hf_lsarpc_lsa_TrustedDomainInfo_password,
14873           { "Password", "lsarpc.lsa_TrustedDomainInfo.password", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14874         { &hf_lsarpc_lsa_ModificationInfo_db_create_time,
14875           { "Db Create Time", "lsarpc.lsa_ModificationInfo.db_create_time", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, NULL, HFILL }},
14876         { &hf_lsarpc_lsa_RetrievePrivateData_name,
14877           { "Name", "lsarpc.lsa_RetrievePrivateData.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14878         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_NOTIFICATION,
14879           { "Lsa Policy Notification", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_NOTIFICATION", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_NOTIFICATION_tfs), ( 0x00001000 ), NULL, HFILL }},
14880         { &hf_lsarpc_lsa_PolicyInformation_domain,
14881           { "Domain", "lsarpc.lsa_PolicyInformation.domain", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14882         { &hf_lsarpc_lsa_DATA_BUF2_size,
14883           { "Size", "lsarpc.lsa_DATA_BUF2.size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14884         { &hf_lsarpc_lsa_QueryTrustedDomainInfoByName_handle,
14885           { "Handle", "lsarpc.lsa_QueryTrustedDomainInfoByName.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14886         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_AUDIT_REQUIREMENTS,
14887           { "Lsa Policy Set Audit Requirements", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_SET_AUDIT_REQUIREMENTS", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_SET_AUDIT_REQUIREMENTS_tfs), ( 0x00000100 ), NULL, HFILL }},
14888         { &hf_lsarpc_lsa_LookupNames4_domains,
14889           { "Domains", "lsarpc.lsa_LookupNames4.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14890         { &hf_lsarpc_lsa_TranslatedSid_sid_type,
14891           { "Sid Type", "lsarpc.lsa_TranslatedSid.sid_type", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_SidType_vals), 0, NULL, HFILL }},
14892         { &hf_lsarpc_lsa_LookupNames2_count,
14893           { "Count", "lsarpc.lsa_LookupNames2.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14894         { &hf_lsarpc_lsa_LookupSids2_lookup_options,
14895           { "Lookup Options", "lsarpc.lsa_LookupSids2.lookup_options", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_LookupOptions_vals), 0, NULL, HFILL }},
14896         { &hf_lsarpc_lsa_ForestTrustDomainInfo_dns_domain_name,
14897           { "Dns Domain Name", "lsarpc.lsa_ForestTrustDomainInfo.dns_domain_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14898         { &hf_lsarpc_lsa_AuditLogInfo_next_audit_record,
14899           { "Next Audit Record", "lsarpc.lsa_AuditLogInfo.next_audit_record", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14900         { &hf_lsarpc_lsa_PrivArray_privs,
14901           { "Privs", "lsarpc.lsa_PrivArray.privs", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14902         { &hf_lsarpc_lsa_TrustDomainInfoFullInfo2Internal_posix_offset,
14903           { "Posix Offset", "lsarpc.lsa_TrustDomainInfoFullInfo2Internal.posix_offset", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14904         { &hf_lsarpc_lsa_TransSidArray2_sids,
14905           { "Sids", "lsarpc.lsa_TransSidArray2.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14906         { &hf_lsarpc_lsa_TransSidArray3_count,
14907           { "Count", "lsarpc.lsa_TransSidArray3.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14908         { &hf_lsarpc_lsa_lsaRQueryForestTrustInformation_handle,
14909           { "Handle", "lsarpc.lsa_lsaRQueryForestTrustInformation.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14910         { &hf_lsarpc_lsa_CreateTrustedDomainEx_policy_handle,
14911           { "Policy Handle", "lsarpc.lsa_CreateTrustedDomainEx.policy_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14912         { &hf_lsarpc_lsa_PolicyInformation_l_account_domain,
14913           { "L Account Domain", "lsarpc.lsa_PolicyInformation.l_account_domain", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14914         { &hf_lsarpc_lsa_StorePrivateData_handle,
14915           { "Handle", "lsarpc.lsa_StorePrivateData.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14916         { &hf_lsarpc_lsa_DomainList_count,
14917           { "Count", "lsarpc.lsa_DomainList.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14918         { &hf_lsarpc_lsa_QuerySecret_sec_handle,
14919           { "Sec Handle", "lsarpc.lsa_QuerySecret.sec_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14920         { &hf_lsarpc_lsa_AuditFullQueryInfo_shutdown_on_full,
14921           { "Shutdown On Full", "lsarpc.lsa_AuditFullQueryInfo.shutdown_on_full", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
14922         { &hf_lsarpc_lsa_GetUserName_system_name,
14923           { "System Name", "lsarpc.lsa_GetUserName.system_name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
14924         { &hf_lsarpc_lsa_SidArray_num_sids,
14925           { "Num Sids", "lsarpc.lsa_SidArray.num_sids", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14926         { &hf_lsarpc_lsa_CreateTrustedDomainEx_trustdom_handle,
14927           { "Trustdom Handle", "lsarpc.lsa_CreateTrustedDomainEx.trustdom_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14928         { &hf_lsarpc_lsa_LookupNames4_level,
14929           { "Level", "lsarpc.lsa_LookupNames4.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_LookupNamesLevel_vals), 0, NULL, HFILL }},
14930         { &hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_handle,
14931           { "Handle", "lsarpc.lsa_QueryTrustedDomainInfoBySid.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14932         { &hf_lsarpc_lsa_RightSet_names,
14933           { "Names", "lsarpc.lsa_RightSet.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14934         { &hf_lsarpc_lsa_LookupNames_domains,
14935           { "Domains", "lsarpc.lsa_LookupNames.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14936         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION,
14937           { "Lsa Trust Attribute Uses Rc4 Encryption", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION_tfs), ( 0x00000080 ), NULL, HFILL }},
14938         { &hf_lsarpc_lsa_LookupNames_sids,
14939           { "Sids", "lsarpc.lsa_LookupNames.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14940         { &hf_lsarpc_lsa_EnumAccountsWithUserRight_name,
14941           { "Name", "lsarpc.lsa_EnumAccountsWithUserRight.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14942         { &hf_lsarpc_lsa_LookupPrivName_name,
14943           { "Name", "lsarpc.lsa_LookupPrivName.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14944         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_LOCAL_INFORMATION,
14945           { "Lsa Policy View Local Information", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_VIEW_LOCAL_INFORMATION", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_VIEW_LOCAL_INFORMATION_tfs), ( 0x00000001 ), NULL, HFILL }},
14946         { &hf_lsarpc_lsa_LookupNames4_sids,
14947           { "Sids", "lsarpc.lsa_LookupNames4.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14948         { &hf_lsarpc_lsa_SetInformationTrustedDomain_level,
14949           { "Level", "lsarpc.lsa_SetInformationTrustedDomain.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_TrustDomInfoEnum_vals), 0, NULL, HFILL }},
14950         { &hf_lsarpc_lsa_RefDomainList_domains,
14951           { "Domains", "lsarpc.lsa_RefDomainList.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14952         { &hf_lsarpc_lsa_SetDomainInformationPolicy_info,
14953           { "Info", "lsarpc.lsa_SetDomainInformationPolicy.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14954         { &hf_lsarpc_lsa_SetDomainInformationPolicy_handle,
14955           { "Handle", "lsarpc.lsa_SetDomainInformationPolicy.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14956         { &hf_lsarpc_lsa_PolicyInformation_replica,
14957           { "Replica", "lsarpc.lsa_PolicyInformation.replica", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14958         { &hf_lsarpc_lsa_TransSidArray_count,
14959           { "Count", "lsarpc.lsa_TransSidArray.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14960         { &hf_lsarpc_lsa_SetTrustedDomainInfo_level,
14961           { "Level", "lsarpc.lsa_SetTrustedDomainInfo.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_TrustDomInfoEnum_vals), 0, NULL, HFILL }},
14962         { &hf_lsarpc_lsa_TrustDomainInfoFullInfo_auth_info,
14963           { "Auth Info", "lsarpc.lsa_TrustDomainInfoFullInfo.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14964         { &hf_lsarpc_lsa_StorePrivateData_name,
14965           { "Name", "lsarpc.lsa_StorePrivateData.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14966         { &hf_lsarpc_lsa_EnumAccountRights_handle,
14967           { "Handle", "lsarpc.lsa_EnumAccountRights.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14968         { &hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_AUTH,
14969           { "Lsa Trusted Query Auth", "lsarpc.lsa_TrustedAccessMask.LSA_TRUSTED_QUERY_AUTH", FT_BOOLEAN, 32, TFS(&lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_AUTH_tfs), ( 0x00000040 ), NULL, HFILL }},
14970         { &hf_lsarpc_lsa_AuditLogInfo_time_to_shutdown,
14971           { "Time To Shutdown", "lsarpc.lsa_AuditLogInfo.time_to_shutdown", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
14972         { &hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_VIEW,
14973           { "Lsa Account View", "lsarpc.lsa_AccountAccessMask.LSA_ACCOUNT_VIEW", FT_BOOLEAN, 32, TFS(&lsa_AccountAccessMask_LSA_ACCOUNT_VIEW_tfs), ( 0x00000001 ), NULL, HFILL }},
14974         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx_domain_name,
14975           { "Domain Name", "lsarpc.lsa_TrustDomainInfoInfoEx.domain_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14976         { &hf_lsarpc_lsa_LookupSids2_count,
14977           { "Count", "lsarpc.lsa_LookupSids2.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14978         { &hf_lsarpc_lsa_TrustedDomainInfo_info_basic,
14979           { "Info Basic", "lsarpc.lsa_TrustedDomainInfo.info_basic", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14980         { &hf_lsarpc_lsa_TrustDomainInfoPosixOffset_posix_offset,
14981           { "Posix Offset", "lsarpc.lsa_TrustDomainInfoPosixOffset.posix_offset", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14982         { &hf_lsarpc_lsa_TrustedDomainInfo_full_info2_internal,
14983           { "Full Info2 Internal", "lsarpc.lsa_TrustedDomainInfo.full_info2_internal", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14984         { &hf_lsarpc_lsa_CreateTrustedDomainEx2_policy_handle,
14985           { "Policy Handle", "lsarpc.lsa_CreateTrustedDomainEx2.policy_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
14986         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_WITHIN_FOREST,
14987           { "Lsa Trust Attribute Within Forest", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_WITHIN_FOREST", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_WITHIN_FOREST_tfs), ( 0x00000020 ), NULL, HFILL }},
14988         { &hf_lsarpc_lsa_OpenSecret_name,
14989           { "Name", "lsarpc.lsa_OpenSecret.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14990         { &hf_lsarpc_lsa_CreateTrustedDomainEx2_info,
14991           { "Info", "lsarpc.lsa_CreateTrustedDomainEx2.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14992         { &hf_lsarpc_lsa_GetUserName_account_name,
14993           { "Account Name", "lsarpc.lsa_GetUserName.account_name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
14994         { &hf_lsarpc_lsa_LUIDAttribute_attribute,
14995           { "Attribute", "lsarpc.lsa_LUIDAttribute.attribute", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
14996         { &hf_lsarpc_lsa_OpenPolicy_access_mask,
14997           { "Access Mask", "lsarpc.lsa_OpenPolicy.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
14998         { &hf_lsarpc_lsa_DATA_BUF_PTR_buf,
14999           { "Buf", "lsarpc.lsa_DATA_BUF_PTR.buf", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15000         { &hf_lsarpc_lsa_LookupSids3_sids,
15001           { "Sids", "lsarpc.lsa_LookupSids3.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15002         { &hf_lsarpc_lsa_String_size,
15003           { "Size", "lsarpc.lsa_String.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15004         { &hf_lsarpc_lsa_TrustDomainInfoAuthInfo_outgoing_current_auth_info,
15005           { "Outgoing Current Auth Info", "lsarpc.lsa_TrustDomainInfoAuthInfo.outgoing_current_auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15006         { &hf_lsarpc_lsa_TrustedDomainInfo_posix_offset,
15007           { "Posix Offset", "lsarpc.lsa_TrustedDomainInfo.posix_offset", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15008         { &hf_lsarpc_lsa_LookupSids3_lookup_options,
15009           { "Lookup Options", "lsarpc.lsa_LookupSids3.lookup_options", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_LookupOptions_vals), 0, NULL, HFILL }},
15010         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_info_ex,
15011           { "Info Ex", "lsarpc.lsa_TrustDomainInfoInfoEx2Internal.info_ex", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15012         { &hf_lsarpc_lsa_OpenAccount_sid,
15013           { "Sid", "lsarpc.lsa_OpenAccount.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15014         { &hf_lsarpc_lsa_ForestTrustCollisionRecord_type,
15015           { "Type", "lsarpc.lsa_ForestTrustCollisionRecord.type", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_ForestTrustCollisionRecordType_vals), 0, NULL, HFILL }},
15016         { &hf_lsarpc_lsa_SetTrustedDomainInfoByName_handle,
15017           { "Handle", "lsarpc.lsa_SetTrustedDomainInfoByName.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15018         { &hf_lsarpc_lsa_DnsDomainInfo_domain_guid,
15019           { "Domain Guid", "lsarpc.lsa_DnsDomainInfo.domain_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
15020         { &hf_lsarpc_lsa_ForestTrustRecord_time,
15021           { "Time", "lsarpc.lsa_ForestTrustRecord.time", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
15022         { &hf_lsarpc_lsa_LUIDAttribute_luid,
15023           { "Luid", "lsarpc.lsa_LUIDAttribute.luid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15024         { &hf_lsarpc_lsa_DomainInfoKerberos_user_tkt_lifetime,
15025           { "User Tkt Lifetime", "lsarpc.lsa_DomainInfoKerberos.user_tkt_lifetime", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
15026         { &hf_lsarpc_lsa_AddAccountRights_rights,
15027           { "Rights", "lsarpc.lsa_AddAccountRights.rights", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15028         { &hf_lsarpc_lsa_TrustDomainInfoSupportedEncTypes_enc_types,
15029           { "Enc Types", "lsarpc.lsa_TrustDomainInfoSupportedEncTypes.enc_types", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
15030         { &hf_lsarpc_lsa_PrivilegeSet_unknown,
15031           { "Unknown", "lsarpc.lsa_PrivilegeSet.unknown", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15032         { &hf_lsarpc_lsa_ObjectAttribute_root_dir,
15033           { "Root Dir", "lsarpc.lsa_ObjectAttribute.root_dir", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
15034         { &hf_lsarpc_lsa_LookupSids3_names,
15035           { "Names", "lsarpc.lsa_LookupSids3.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15036         { &hf_lsarpc_lsa_CreateSecret_handle,
15037           { "Handle", "lsarpc.lsa_CreateSecret.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15038         { &hf_lsarpc_lsa_SetInformationTrustedDomain_trustdom_handle,
15039           { "Trustdom Handle", "lsarpc.lsa_SetInformationTrustedDomain.trustdom_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15040         { &hf_lsarpc_lsa_StringLarge_length,
15041           { "Length", "lsarpc.lsa_StringLarge.length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15042         { &hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_QUOTAS,
15043           { "Lsa Account Adjust Quotas", "lsarpc.lsa_AccountAccessMask.LSA_ACCOUNT_ADJUST_QUOTAS", FT_BOOLEAN, 32, TFS(&lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_QUOTAS_tfs), ( 0x00000004 ), NULL, HFILL }},
15044         { &hf_lsarpc_lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_CONFLICT,
15045           { "Lsa Tln Disabled Conflict", "lsarpc.lsa_ForestTrustCollisionTDOFlags.LSA_TLN_DISABLED_CONFLICT", FT_BOOLEAN, 32, TFS(&lsa_ForestTrustCollisionTDOFlags_LSA_TLN_DISABLED_CONFLICT_tfs), ( 0x00000004 ), NULL, HFILL }},
15046         { &hf_lsarpc_lsa_BinaryString_length,
15047           { "Length", "lsarpc.lsa_BinaryString.length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15048         { &hf_lsarpc_lsa_LookupNames2_lookup_options,
15049           { "Lookup Options", "lsarpc.lsa_LookupNames2.lookup_options", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_LookupOptions_vals), 0, NULL, HFILL }},
15050         { &hf_lsarpc_lsa_LookupNames2_names,
15051           { "Names", "lsarpc.lsa_LookupNames2.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15052         { &hf_lsarpc_lsa_OpenAccount_acct_handle,
15053           { "Acct Handle", "lsarpc.lsa_OpenAccount.acct_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15054         { &hf_lsarpc_lsa_ForestTrustCollisionInfo_entries,
15055           { "Entries", "lsarpc.lsa_ForestTrustCollisionInfo.entries", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15056         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SERVER_ADMIN,
15057           { "Lsa Policy Server Admin", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_SERVER_ADMIN", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_SERVER_ADMIN_tfs), ( 0x00000400 ), NULL, HFILL }},
15058         { &hf_lsarpc_lsa_QuerySecret_old_val,
15059           { "Old Val", "lsarpc.lsa_QuerySecret.old_val", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15060         { &hf_lsarpc_lsa_DeleteTrustedDomain_handle,
15061           { "Handle", "lsarpc.lsa_DeleteTrustedDomain.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15062         { &hf_lsarpc_lsa_LookupPrivDisplayName_handle,
15063           { "Handle", "lsarpc.lsa_LookupPrivDisplayName.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15064         { &hf_lsarpc_lsa_LookupNames2_domains,
15065           { "Domains", "lsarpc.lsa_LookupNames2.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15066         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN,
15067           { "Lsa Trust Attribute Quarantined Domain", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN_tfs), ( 0x00000004 ), NULL, HFILL }},
15068         { &hf_lsarpc_lsa_LookupNames4_lookup_options,
15069           { "Lookup Options", "lsarpc.lsa_LookupNames4.lookup_options", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_LookupOptions_vals), 0, NULL, HFILL }},
15070         { &hf_lsarpc_lsa_EnumPrivs_resume_handle,
15071           { "Resume Handle", "lsarpc.lsa_EnumPrivs.resume_handle", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15072         { &hf_lsarpc_lsa_TrustDomainInfoControllers_entries,
15073           { "Entries", "lsarpc.lsa_TrustDomainInfoControllers.entries", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15074         { &hf_lsarpc_lsa_LookupNames2_handle,
15075           { "Handle", "lsarpc.lsa_LookupNames2.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15076         { &hf_lsarpc_lsa_LookupPrivDisplayName_language_id_sys,
15077           { "Language Id Sys", "lsarpc.lsa_LookupPrivDisplayName.language_id_sys", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15078         { &hf_lsarpc_lsa_SetTrustedDomainInfoByName_info,
15079           { "Info", "lsarpc.lsa_SetTrustedDomainInfoByName.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15080         { &hf_lsarpc_lsa_AddPrivilegesToAccount_privs,
15081           { "Privs", "lsarpc.lsa_AddPrivilegesToAccount.privs", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15082         { &hf_lsarpc_lsa_Close_handle,
15083           { "Handle", "lsarpc.lsa_Close.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15084         { &hf_lsarpc_lsa_TranslatedName2_name,
15085           { "Name", "lsarpc.lsa_TranslatedName2.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15086         { &hf_lsarpc_lsa_AddAccountRights_sid,
15087           { "Sid", "lsarpc.lsa_AddAccountRights.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15088         { &hf_lsarpc_lsa_LookupPrivValue_luid,
15089           { "Luid", "lsarpc.lsa_LookupPrivValue.luid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15090         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_LOOKUP_NAMES,
15091           { "Lsa Policy Lookup Names", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_LOOKUP_NAMES", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_LOOKUP_NAMES_tfs), ( 0x00000800 ), NULL, HFILL }},
15092         { &hf_lsarpc_lsa_TranslatedName2_unknown,
15093           { "Unknown", "lsarpc.lsa_TranslatedName2.unknown", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15094         { &hf_lsarpc_lsa_TrustDomainInfoInfoEx2Internal_forest_trust_data,
15095           { "Forest Trust Data", "lsarpc.lsa_TrustDomainInfoInfoEx2Internal.forest_trust_data", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
15096         { &hf_lsarpc_lsa_CreateTrustedDomain_access_mask,
15097           { "Access Mask", "lsarpc.lsa_CreateTrustedDomain.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
15098         { &hf_lsarpc_lsa_DomainInfoKerberos_reserved,
15099           { "Reserved", "lsarpc.lsa_DomainInfoKerberos.reserved", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
15100         { &hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_SET_CONTROLLERS,
15101           { "Lsa Trusted Set Controllers", "lsarpc.lsa_TrustedAccessMask.LSA_TRUSTED_SET_CONTROLLERS", FT_BOOLEAN, 32, TFS(&lsa_TrustedAccessMask_LSA_TRUSTED_SET_CONTROLLERS_tfs), ( 0x00000004 ), NULL, HFILL }},
15102         { &hf_lsarpc_lsa_DomainList_domains,
15103           { "Domains", "lsarpc.lsa_DomainList.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15104         { &hf_lsarpc_lsa_CreateSecret_name,
15105           { "Name", "lsarpc.lsa_CreateSecret.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15106         { &hf_lsarpc_lsa_AuditEventsInfo_auditing_mode,
15107           { "Auditing Mode", "lsarpc.lsa_AuditEventsInfo.auditing_mode", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15108         { &hf_lsarpc_lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_POSIX,
15109           { "Lsa Trusted Query Posix", "lsarpc.lsa_TrustedAccessMask.LSA_TRUSTED_QUERY_POSIX", FT_BOOLEAN, 32, TFS(&lsa_TrustedAccessMask_LSA_TRUSTED_QUERY_POSIX_tfs), ( 0x00000008 ), NULL, HFILL }},
15110         { &hf_lsarpc_lsa_QueryTrustedDomainInfoBySid_info,
15111           { "Info", "lsarpc.lsa_QueryTrustedDomainInfoBySid.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15112         { &hf_lsarpc_lsa_EnumAccountsWithUserRight_sids,
15113           { "Sids", "lsarpc.lsa_EnumAccountsWithUserRight.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15114         { &hf_lsarpc_lsa_SetInfoPolicy_info,
15115           { "Info", "lsarpc.lsa_SetInfoPolicy.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15116         { &hf_lsarpc_lsa_SidPtr_sid,
15117           { "Sid", "lsarpc.lsa_SidPtr.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15118         { &hf_lsarpc_lsa_QueryTrustedDomainInfoByName_info,
15119           { "Info", "lsarpc.lsa_QueryTrustedDomainInfoByName.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15120         { &hf_lsarpc_lsa_DomainInfoKerberos_authentication_options,
15121           { "Authentication Options", "lsarpc.lsa_DomainInfoKerberos.authentication_options", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
15122         { &hf_lsarpc_lsa_LookupNames4_client_revision,
15123           { "Client Revision", "lsarpc.lsa_LookupNames4.client_revision", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_ClientRevision_vals), 0, NULL, HFILL }},
15124         { &hf_lsarpc_lsa_QuerySecurity_handle,
15125           { "Handle", "lsarpc.lsa_QuerySecurity.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15126         { &hf_lsarpc_lsa_PDAccountInfo_name,
15127           { "Name", "lsarpc.lsa_PDAccountInfo.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15128         { &hf_lsarpc_lsa_ForestTrustInformation_count,
15129           { "Count", "lsarpc.lsa_ForestTrustInformation.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15130         { &hf_lsarpc_lsa_TranslatedSid3_flags,
15131           { "Flags", "lsarpc.lsa_TranslatedSid3.flags", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15132         { &hf_lsarpc_lsa_lsaRQueryForestTrustInformation_unknown,
15133           { "Unknown", "lsarpc.lsa_lsaRQueryForestTrustInformation.unknown", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15134         { &hf_lsarpc_lsa_LookupSids3_domains,
15135           { "Domains", "lsarpc.lsa_LookupSids3.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15136         { &hf_lsarpc_lsa_Strings_count,
15137           { "Count", "lsarpc.lsa_Strings.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15138         { &hf_lsarpc_lsa_QueryInfoPolicy2_handle,
15139           { "Handle", "lsarpc.lsa_QueryInfoPolicy2.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15140         { &hf_lsarpc_lsa_QueryTrustedDomainInfo_trustdom_handle,
15141           { "Trustdom Handle", "lsarpc.lsa_QueryTrustedDomainInfo.trustdom_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15142         { &hf_lsarpc_lsa_TrustDomainInfoBuffer_data,
15143           { "Data", "lsarpc.lsa_TrustDomainInfoBuffer.data", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15144         { &hf_lsarpc_lsa_LookupNames3_lookup_options,
15145           { "Lookup Options", "lsarpc.lsa_LookupNames3.lookup_options", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_LookupOptions_vals), 0, NULL, HFILL }},
15146         { &hf_lsarpc_lsa_StringLarge_size,
15147           { "Size", "lsarpc.lsa_StringLarge.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15148         { &hf_lsarpc_lsa_ObjectAttribute_attributes,
15149           { "Attributes", "lsarpc.lsa_ObjectAttribute.attributes", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15150         { &hf_lsarpc_lsa_TrustedDomainInfo_auth_info_internal,
15151           { "Auth Info Internal", "lsarpc.lsa_TrustedDomainInfo.auth_info_internal", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15152         { &hf_lsarpc_lsa_QosInfo_effective_only,
15153           { "Effective Only", "lsarpc.lsa_QosInfo.effective_only", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
15154         { &hf_lsarpc_lsa_OpenPolicy_attr,
15155           { "Attr", "lsarpc.lsa_OpenPolicy.attr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15156         { &hf_lsarpc_lsa_ObjectAttribute_len,
15157           { "Len", "lsarpc.lsa_ObjectAttribute.len", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15158         { &hf_lsarpc_lsa_TrustDomainInfoBasic_sid,
15159           { "Sid", "lsarpc.lsa_TrustDomainInfoBasic.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15160         { &hf_lsarpc_lsa_PrivEntry_name,
15161           { "Name", "lsarpc.lsa_PrivEntry.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15162         { &hf_lsarpc_lsa_ServerRole_role,
15163           { "Role", "lsarpc.lsa_ServerRole.role", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_Role_vals), 0, NULL, HFILL }},
15164         { &hf_lsarpc_lsa_BinaryString_array,
15165           { "Array", "lsarpc.lsa_BinaryString.array", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15166         { &hf_lsarpc_lsa_TranslatedSid3_sid_type,
15167           { "Sid Type", "lsarpc.lsa_TranslatedSid3.sid_type", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_SidType_vals), 0, NULL, HFILL }},
15168         { &hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_CONFLICT,
15169           { "Lsa Sid Disabled Conflict", "lsarpc.lsa_ForestTrustCollisionXrefFlags.LSA_SID_DISABLED_CONFLICT", FT_BOOLEAN, 32, TFS(&lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_CONFLICT_tfs), ( 0x00000002 ), NULL, HFILL }},
15170         { &hf_lsarpc_lsa_LookupNames4_num_names,
15171           { "Num Names", "lsarpc.lsa_LookupNames4.num_names", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15172         { &hf_lsarpc_lsa_GetSystemAccessAccount_handle,
15173           { "Handle", "lsarpc.lsa_GetSystemAccessAccount.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15174         { &hf_lsarpc_lsa_EnumPrivs_max_count,
15175           { "Max Count", "lsarpc.lsa_EnumPrivs.max_count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15176         { &hf_lsarpc_lsa_LookupNames2_level,
15177           { "Level", "lsarpc.lsa_LookupNames2.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_LookupNamesLevel_vals), 0, NULL, HFILL }},
15178         { &hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_info_ex,
15179           { "Info Ex", "lsarpc.lsa_TrustDomainInfoFullInfoInternal.info_ex", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15180         { &hf_lsarpc_lsa_DATA_BUF_length,
15181           { "Length", "lsarpc.lsa_DATA_BUF.length", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15182         { &hf_lsarpc_lsa_Strings_names,
15183           { "Names", "lsarpc.lsa_Strings.names", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15184         { &hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_posix_offset,
15185           { "Posix Offset", "lsarpc.lsa_TrustDomainInfoFullInfoInternal.posix_offset", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15186         { &hf_lsarpc_lsa_PolicyInformation_auditfullset,
15187           { "Auditfullset", "lsarpc.lsa_PolicyInformation.auditfullset", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15188         { &hf_lsarpc_lsa_OpenPolicy_handle,
15189           { "Handle", "lsarpc.lsa_OpenPolicy.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15190         { &hf_lsarpc_lsa_ForestTrustData_data,
15191           { "Data", "lsarpc.lsa_ForestTrustData.data", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15192         { &hf_lsarpc_lsa_ForestTrustCollisionRecord_flags,
15193           { "Flags", "lsarpc.lsa_ForestTrustCollisionRecord.flags", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15194         { &hf_lsarpc_lsa_LookupSids_count,
15195           { "Count", "lsarpc.lsa_LookupSids.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15196         { &hf_lsarpc_lsa_DnsDomainInfo_dns_domain,
15197           { "Dns Domain", "lsarpc.lsa_DnsDomainInfo.dns_domain", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15198         { &hf_lsarpc_lsa_QueryInfoPolicy_level,
15199           { "Level", "lsarpc.lsa_QueryInfoPolicy.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_PolicyInfo_vals), 0, NULL, HFILL }},
15200         { &hf_lsarpc_lsa_TranslatedName_name,
15201           { "Name", "lsarpc.lsa_TranslatedName.name", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15202         { &hf_lsarpc_lsa_LookupSids_domains,
15203           { "Domains", "lsarpc.lsa_LookupSids.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15204         { &hf_lsarpc_lsa_TranslatedSid_rid,
15205           { "Rid", "lsarpc.lsa_TranslatedSid.rid", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15206         { &hf_lsarpc_lsa_DomainInfoEfs_efs_blob,
15207           { "Efs Blob", "lsarpc.lsa_DomainInfoEfs.efs_blob", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
15208         { &hf_lsarpc_lsa_RemovePrivilegesFromAccount_remove_all,
15209           { "Remove All", "lsarpc.lsa_RemovePrivilegesFromAccount.remove_all", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
15210         { &hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_QUERY_VALUE,
15211           { "Lsa Secret Query Value", "lsarpc.lsa_SecretAccessMask.LSA_SECRET_QUERY_VALUE", FT_BOOLEAN, 32, TFS(&lsa_SecretAccessMask_LSA_SECRET_QUERY_VALUE_tfs), ( 0x00000002 ), NULL, HFILL }},
15212         { &hf_lsarpc_lsa_AddAccountRights_handle,
15213           { "Handle", "lsarpc.lsa_AddAccountRights.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15214         { &hf_lsarpc_lsa_DomainInfoEfs_blob_size,
15215           { "Blob Size", "lsarpc.lsa_DomainInfoEfs.blob_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15216         { &hf_lsarpc_lsa_OpenPolicy2_system_name,
15217           { "System Name", "lsarpc.lsa_OpenPolicy2.system_name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
15218         { &hf_lsarpc_lsa_lsaRQueryForestTrustInformation_forest_trust_info,
15219           { "Forest Trust Info", "lsarpc.lsa_lsaRQueryForestTrustInformation.forest_trust_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15220         { &hf_lsarpc_lsa_CreateTrustedDomain_policy_handle,
15221           { "Policy Handle", "lsarpc.lsa_CreateTrustedDomain.policy_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15222         { &hf_lsarpc_lsa_TrustDomainInfoFullInfoInternal_auth_info,
15223           { "Auth Info", "lsarpc.lsa_TrustDomainInfoFullInfoInternal.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15224         { &hf_lsarpc_lsa_DefaultQuotaInfo_max_wss,
15225           { "Max Wss", "lsarpc.lsa_DefaultQuotaInfo.max_wss", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15226         { &hf_lsarpc_lsa_DefaultQuotaInfo_paged_pool,
15227           { "Paged Pool", "lsarpc.lsa_DefaultQuotaInfo.paged_pool", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15228         { &hf_lsarpc_lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY,
15229           { "Lsa Trust Attribute Uplevel Only", "lsarpc.lsa_TrustAttributes.LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY", FT_BOOLEAN, 32, TFS(&lsa_TrustAttributes_LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY_tfs), ( 0x00000002 ), NULL, HFILL }},
15230         { &hf_lsarpc_lsa_LookupSids_level,
15231           { "Level", "lsarpc.lsa_LookupSids.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_LookupNamesLevel_vals), 0, NULL, HFILL }},
15232         { &hf_lsarpc_lsa_AuditFullQueryInfo_log_is_full,
15233           { "Log Is Full", "lsarpc.lsa_AuditFullQueryInfo.log_is_full", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
15234         { &hf_lsarpc_lsa_RightSet_count,
15235           { "Count", "lsarpc.lsa_RightSet.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15236         { &hf_lsarpc_lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_ADMIN,
15237           { "Lsa Sid Disabled Admin", "lsarpc.lsa_ForestTrustCollisionXrefFlags.LSA_SID_DISABLED_ADMIN", FT_BOOLEAN, 32, TFS(&lsa_ForestTrustCollisionXrefFlags_LSA_SID_DISABLED_ADMIN_tfs), ( 0x00000001 ), NULL, HFILL }},
15238         { &hf_lsarpc_lsa_AuditEventsInfo_settings,
15239           { "Settings", "lsarpc.lsa_AuditEventsInfo.settings", FT_UINT32, BASE_DEC, VALS(lsarpc_lsa_PolicyAuditPolicy_vals), 0, NULL, HFILL }},
15240         { &hf_lsarpc_lsa_TranslatedSid2_rid,
15241           { "Rid", "lsarpc.lsa_TranslatedSid2.rid", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15242         { &hf_lsarpc_lsa_TranslatedSid2_sid_type,
15243           { "Sid Type", "lsarpc.lsa_TranslatedSid2.sid_type", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_SidType_vals), 0, NULL, HFILL }},
15244         { &hf_lsarpc_lsa_OpenTrustedDomainByName_handle,
15245           { "Handle", "lsarpc.lsa_OpenTrustedDomainByName.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15246         { &hf_lsarpc_lsa_EnumTrustedDomainsEx_handle,
15247           { "Handle", "lsarpc.lsa_EnumTrustedDomainsEx.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15248         { &hf_lsarpc_lsa_AsciiString_length,
15249           { "Length", "lsarpc.lsa_AsciiString.length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15250         { &hf_lsarpc_lsa_EnumAccountRights_sid,
15251           { "Sid", "lsarpc.lsa_EnumAccountRights.sid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15252         { &hf_lsarpc_lsa_LookupSids_sids,
15253           { "Sids", "lsarpc.lsa_LookupSids.sids", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15254         { &hf_lsarpc_lsa_CloseTrustedDomainEx_handle,
15255           { "Handle", "lsarpc.lsa_CloseTrustedDomainEx.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15256         { &hf_lsarpc_lsa_QosInfo_context_mode,
15257           { "Context Mode", "lsarpc.lsa_QosInfo.context_mode", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
15258         { &hf_lsarpc_lsa_BinaryString_size,
15259           { "Size", "lsarpc.lsa_BinaryString.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
15260         { &hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_AUDIT_INFORMATION,
15261           { "Lsa Policy View Audit Information", "lsarpc.lsa_PolicyAccessMask.LSA_POLICY_VIEW_AUDIT_INFORMATION", FT_BOOLEAN, 32, TFS(&lsa_PolicyAccessMask_LSA_POLICY_VIEW_AUDIT_INFORMATION_tfs), ( 0x00000002 ), NULL, HFILL }},
15262         { &hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_SET_VALUE,
15263           { "Lsa Secret Set Value", "lsarpc.lsa_SecretAccessMask.LSA_SECRET_SET_VALUE", FT_BOOLEAN, 32, TFS(&lsa_SecretAccessMask_LSA_SECRET_SET_VALUE_tfs), ( 0x00000001 ), NULL, HFILL }},
15264         { &hf_lsarpc_lsa_EnumTrustDom_domains,
15265           { "Domains", "lsarpc.lsa_EnumTrustDom.domains", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15266         { &hf_lsarpc_lsa_TransNameArray_count,
15267           { "Count", "lsarpc.lsa_TransNameArray.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15268         { &hf_lsarpc_lsa_RetrievePrivateData_val,
15269           { "Val", "lsarpc.lsa_RetrievePrivateData.val", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15270         { &hf_lsarpc_lsa_PolicyInformation_pd,
15271           { "Pd", "lsarpc.lsa_PolicyInformation.pd", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15272         { &hf_lsarpc_lsa_TranslatedName2_sid_index,
15273           { "Sid Index", "lsarpc.lsa_TranslatedName2.sid_index", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15274         { &hf_lsarpc_lsa_PolicyInformation_auditfullquery,
15275           { "Auditfullquery", "lsarpc.lsa_PolicyInformation.auditfullquery", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15276         { &hf_lsarpc_lsa_ModificationInfo_modified_id,
15277           { "Modified Id", "lsarpc.lsa_ModificationInfo.modified_id", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
15278         { &hf_lsarpc_lsa_QuerySecret_new_mtime,
15279           { "New Mtime", "lsarpc.lsa_QuerySecret.new_mtime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0, NULL, HFILL }},
15280         { &hf_lsarpc_lsa_LookupPrivValue_handle,
15281           { "Handle", "lsarpc.lsa_LookupPrivValue.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15282         { &hf_lsarpc_lsa_TransSidArray2_count,
15283           { "Count", "lsarpc.lsa_TransSidArray2.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15284         { &hf_lsarpc_lsa_AuditEventsInfo_count,
15285           { "Count", "lsarpc.lsa_AuditEventsInfo.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15286         { &hf_lsarpc_lsa_SetInfoPolicy_level,
15287           { "Level", "lsarpc.lsa_SetInfoPolicy.level", FT_UINT1632, BASE_DEC, VALS(lsarpc_lsa_PolicyInfo_vals), 0, NULL, HFILL }},
15288         { &hf_lsarpc_lsa_TrustedDomainInfo_full_info,
15289           { "Full Info", "lsarpc.lsa_TrustedDomainInfo.full_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
15290         { &hf_lsarpc_lsa_CreateTrustedDomainEx_access_mask,
15291           { "Access Mask", "lsarpc.lsa_CreateTrustedDomainEx.access_mask", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
15292         { &hf_lsarpc_lsa_LookupSids3_count,
15293           { "Count", "lsarpc.lsa_LookupSids3.count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15294         { &hf_lsarpc_lsa_SetInfoPolicy_handle,
15295           { "Handle", "lsarpc.lsa_SetInfoPolicy.handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
15296         { &hf_lsarpc_lsa_TranslatedSid3_sid_index,
15297           { "Sid Index", "lsarpc.lsa_TranslatedSid3.sid_index", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
15298         };
15299
15300
15301         static gint *ett[] = {
15302                 &ett_dcerpc_lsarpc,
15303                 &ett_lsarpc_security_secinfo,
15304                 &ett_lsarpc_kerb_EncTypes,
15305                 &ett_lsarpc_lsa_String,
15306                 &ett_lsarpc_lsa_StringLarge,
15307                 &ett_lsarpc_lsa_Strings,
15308                 &ett_lsarpc_lsa_AsciiString,
15309                 &ett_lsarpc_lsa_AsciiStringLarge,
15310                 &ett_lsarpc_lsa_BinaryString,
15311                 &ett_lsarpc_lsa_LUID,
15312                 &ett_lsarpc_lsa_PrivEntry,
15313                 &ett_lsarpc_lsa_PrivArray,
15314                 &ett_lsarpc_lsa_QosInfo,
15315                 &ett_lsarpc_lsa_ObjectAttribute,
15316                 &ett_lsarpc_lsa_PolicyAccessMask,
15317                 &ett_lsarpc_lsa_AccountAccessMask,
15318                 &ett_lsarpc_lsa_SecretAccessMask,
15319                 &ett_lsarpc_lsa_TrustedAccessMask,
15320                 &ett_lsarpc_lsa_AuditLogInfo,
15321                 &ett_lsarpc_lsa_AuditEventsInfo,
15322                 &ett_lsarpc_lsa_DomainInfo,
15323                 &ett_lsarpc_lsa_PDAccountInfo,
15324                 &ett_lsarpc_lsa_ServerRole,
15325                 &ett_lsarpc_lsa_ReplicaSourceInfo,
15326                 &ett_lsarpc_lsa_DefaultQuotaInfo,
15327                 &ett_lsarpc_lsa_ModificationInfo,
15328                 &ett_lsarpc_lsa_AuditFullSetInfo,
15329                 &ett_lsarpc_lsa_AuditFullQueryInfo,
15330                 &ett_lsarpc_lsa_DnsDomainInfo,
15331                 &ett_lsarpc_lsa_PolicyInformation,
15332                 &ett_lsarpc_lsa_SidPtr,
15333                 &ett_lsarpc_lsa_SidArray,
15334                 &ett_lsarpc_lsa_DomainList,
15335                 &ett_lsarpc_lsa_TranslatedSid,
15336                 &ett_lsarpc_lsa_TransSidArray,
15337                 &ett_lsarpc_lsa_RefDomainList,
15338                 &ett_lsarpc_lsa_TranslatedName,
15339                 &ett_lsarpc_lsa_TransNameArray,
15340                 &ett_lsarpc_lsa_LUIDAttribute,
15341                 &ett_lsarpc_lsa_PrivilegeSet,
15342                 &ett_lsarpc_lsa_DATA_BUF,
15343                 &ett_lsarpc_lsa_DATA_BUF2,
15344                 &ett_lsarpc_lsa_TrustDirection,
15345                 &ett_lsarpc_lsa_TrustAttributes,
15346                 &ett_lsarpc_lsa_TrustDomainInfoName,
15347                 &ett_lsarpc_lsa_TrustDomainInfoControllers,
15348                 &ett_lsarpc_lsa_TrustDomainInfoPosixOffset,
15349                 &ett_lsarpc_lsa_TrustDomainInfoPassword,
15350                 &ett_lsarpc_lsa_TrustDomainInfoBasic,
15351                 &ett_lsarpc_lsa_TrustDomainInfoInfoEx,
15352                 &ett_lsarpc_lsa_TrustDomainInfoBuffer,
15353                 &ett_lsarpc_lsa_TrustDomainInfoAuthInfo,
15354                 &ett_lsarpc_lsa_TrustDomainInfoFullInfo,
15355                 &ett_lsarpc_lsa_TrustDomainInfoAuthInfoInternal,
15356                 &ett_lsarpc_lsa_TrustDomainInfoFullInfoInternal,
15357                 &ett_lsarpc_lsa_TrustDomainInfoInfoEx2Internal,
15358                 &ett_lsarpc_lsa_TrustDomainInfoFullInfo2Internal,
15359                 &ett_lsarpc_lsa_TrustDomainInfoSupportedEncTypes,
15360                 &ett_lsarpc_lsa_TrustedDomainInfo,
15361                 &ett_lsarpc_lsa_DATA_BUF_PTR,
15362                 &ett_lsarpc_lsa_RightAttribute,
15363                 &ett_lsarpc_lsa_RightSet,
15364                 &ett_lsarpc_lsa_DomainListEx,
15365                 &ett_lsarpc_lsa_krbAuthenticationOptions,
15366                 &ett_lsarpc_lsa_DomainInfoKerberos,
15367                 &ett_lsarpc_lsa_DomainInfoEfs,
15368                 &ett_lsarpc_lsa_DomainInformationPolicy,
15369                 &ett_lsarpc_lsa_TranslatedName2,
15370                 &ett_lsarpc_lsa_TransNameArray2,
15371                 &ett_lsarpc_lsa_TranslatedSid2,
15372                 &ett_lsarpc_lsa_TransSidArray2,
15373                 &ett_lsarpc_lsa_TranslatedSid3,
15374                 &ett_lsarpc_lsa_TransSidArray3,
15375                 &ett_lsarpc_lsa_ForestTrustBinaryData,
15376                 &ett_lsarpc_lsa_ForestTrustDomainInfo,
15377                 &ett_lsarpc_lsa_ForestTrustData,
15378                 &ett_lsarpc_lsa_ForestTrustRecord,
15379                 &ett_lsarpc_lsa_ForestTrustInformation,
15380                 &ett_lsarpc_lsa_ForestTrustCollisionTDOFlags,
15381                 &ett_lsarpc_lsa_ForestTrustCollisionXrefFlags,
15382                 &ett_lsarpc_lsa_ForestTrustCollisionFlags,
15383                 &ett_lsarpc_lsa_ForestTrustCollisionRecord,
15384                 &ett_lsarpc_lsa_ForestTrustCollisionInfo,
15385         };
15386
15387         proto_dcerpc_lsarpc = proto_register_protocol("Local Security Authority", "LSARPC", "lsarpc");
15388         proto_register_field_array(proto_dcerpc_lsarpc, hf, array_length (hf));
15389         proto_register_subtree_array(ett, array_length(ett));
15390 }
15391
15392 void proto_reg_handoff_dcerpc_lsarpc(void)
15393 {
15394         dcerpc_init_uuid(proto_dcerpc_lsarpc, ett_dcerpc_lsarpc,
15395                 &uuid_dcerpc_lsarpc, ver_dcerpc_lsarpc,
15396                 lsarpc_dissectors, hf_lsarpc_opnum);
15397 }