1 /* Do not modify this file. */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler */
4 /* ../../tools/asn2wrs.py -b -e -p dap -c dap.cnf -s packet-dap-template dap.asn */
6 /* Input file: packet-dap-template.c */
8 #line 1 "packet-dap-template.c"
10 * Routines for X.511 (X.500 Directory Asbtract Service) and X.519 DAP packet dissection
15 * Wireshark - Network traffic analyzer
16 * By Gerald Combs <gerald@wireshark.org>
17 * Copyright 1998 Gerald Combs
19 * This program is free software; you can redistribute it and/or
20 * modify it under the terms of the GNU General Public License
21 * as published by the Free Software Foundation; either version 2
22 * of the License, or (at your option) any later version.
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU General Public License for more details.
29 * You should have received a copy of the GNU General Public License
30 * along with this program; if not, write to the Free Software
31 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
39 #include <epan/packet.h>
40 #include <epan/prefs.h>
41 #include <epan/conversation.h>
42 #include <epan/oid_resolv.h>
47 #include "packet-ber.h"
48 #include "packet-acse.h"
49 #include "packet-ros.h"
51 #include "packet-x509if.h"
52 #include "packet-x509af.h"
53 #include "packet-x509sat.h"
54 #include "packet-crmf.h"
56 #include "packet-dsp.h"
57 #include "packet-disp.h"
58 #include "packet-dap.h"
59 #include <epan/strutil.h>
61 /* we don't have a separate dissector for X519 -
62 most of DAP is defined in X511 */
63 #define PNAME "X.519 Directory Access Protocol"
67 static guint global_dap_tcp_port = 102;
68 static guint tcp_port = 0;
69 static dissector_handle_t tpkt_handle = NULL;
70 void prefs_register_dap(void); /* forwad declaration for use in preferences registration */
73 /* Initialize the protocol and registered fields */
76 static struct SESSION_DATA_STRUCTURE* session = NULL;
79 /*--- Included file: packet-dap-hf.c ---*/
80 #line 1 "packet-dap-hf.c"
81 static int hf_dap_securityParameters = -1; /* SecurityParameters */
82 static int hf_dap_performer = -1; /* DistinguishedName */
83 static int hf_dap_aliasDereferenced = -1; /* BOOLEAN */
84 static int hf_dap_notification = -1; /* SEQUENCE_OF_Attribute */
85 static int hf_dap_notification_item = -1; /* Attribute */
86 static int hf_dap_options = -1; /* ServiceControlOptions */
87 static int hf_dap_priority = -1; /* T_priority */
88 static int hf_dap_timeLimit = -1; /* INTEGER */
89 static int hf_dap_sizeLimit = -1; /* INTEGER */
90 static int hf_dap_scopeOfReferral = -1; /* T_scopeOfReferral */
91 static int hf_dap_attributeSizeLimit = -1; /* INTEGER */
92 static int hf_dap_manageDSAITPlaneRef = -1; /* T_manageDSAITPlaneRef */
93 static int hf_dap_dsaName = -1; /* Name */
94 static int hf_dap_agreementID = -1; /* AgreementID */
95 static int hf_dap_serviceType = -1; /* OBJECT_IDENTIFIER */
96 static int hf_dap_userClass = -1; /* INTEGER */
97 static int hf_dap_attributes = -1; /* T_attributes */
98 static int hf_dap_allUserAttributes = -1; /* NULL */
99 static int hf_dap_select = -1; /* SET_OF_AttributeType */
100 static int hf_dap_select_item = -1; /* AttributeType */
101 static int hf_dap_infoTypes = -1; /* T_infoTypes */
102 static int hf_dap_extraAttributes = -1; /* T_extraAttributes */
103 static int hf_dap_allOperationalAttributes = -1; /* NULL */
104 static int hf_dap_contextSelection = -1; /* ContextSelection */
105 static int hf_dap_returnContexts = -1; /* BOOLEAN */
106 static int hf_dap_familyReturn = -1; /* FamilyReturn */
107 static int hf_dap_allContexts = -1; /* NULL */
108 static int hf_dap_selectedContexts = -1; /* SET_OF_TypeAndContextAssertion */
109 static int hf_dap_selectedContexts_item = -1; /* TypeAndContextAssertion */
110 static int hf_dap_type = -1; /* AttributeType */
111 static int hf_dap_contextAssertions = -1; /* T_contextAssertions */
112 static int hf_dap_preference = -1; /* SEQUENCE_OF_ContextAssertion */
113 static int hf_dap_preference_item = -1; /* ContextAssertion */
114 static int hf_dap_all = -1; /* SET_OF_ContextAssertion */
115 static int hf_dap_all_item = -1; /* ContextAssertion */
116 static int hf_dap_memberSelect = -1; /* T_memberSelect */
117 static int hf_dap_familySelect = -1; /* T_familySelect */
118 static int hf_dap_familySelect_item = -1; /* OBJECT_IDENTIFIER */
119 static int hf_dap_name = -1; /* Name */
120 static int hf_dap_fromEntry = -1; /* BOOLEAN */
121 static int hf_dap_entry_information = -1; /* T_entry_information */
122 static int hf_dap_entry_information_item = -1; /* EntryInformationItem */
123 static int hf_dap_attributeType = -1; /* AttributeType */
124 static int hf_dap_attribute = -1; /* Attribute */
125 static int hf_dap_incompleteEntry = -1; /* BOOLEAN */
126 static int hf_dap_partialName = -1; /* BOOLEAN */
127 static int hf_dap_derivedEntry = -1; /* BOOLEAN */
128 static int hf_dap_family_class = -1; /* OBJECT_IDENTIFIER */
129 static int hf_dap_familyEntries = -1; /* SEQUENCE_OF_FamilyEntry */
130 static int hf_dap_familyEntries_item = -1; /* FamilyEntry */
131 static int hf_dap_rdn = -1; /* RelativeDistinguishedName */
132 static int hf_dap_family_information = -1; /* FamilyInformation */
133 static int hf_dap_family_information_item = -1; /* T_family_information_item */
134 static int hf_dap_family_info = -1; /* SEQUENCE_OF_FamilyEntries */
135 static int hf_dap_family_info_item = -1; /* FamilyEntries */
136 static int hf_dap_filter_item = -1; /* FilterItem */
137 static int hf_dap_and = -1; /* SetOfFilter */
138 static int hf_dap_or = -1; /* SetOfFilter */
139 static int hf_dap_not = -1; /* Filter */
140 static int hf_dap_SetOfFilter_item = -1; /* Filter */
141 static int hf_dap_equality = -1; /* AttributeValueAssertion */
142 static int hf_dap_substrings = -1; /* T_substrings */
143 static int hf_dap_sunstringType = -1; /* OBJECT_IDENTIFIER */
144 static int hf_dap_strings = -1; /* T_strings */
145 static int hf_dap_strings_item = -1; /* T_strings_item */
146 static int hf_dap_initial = -1; /* T_initial */
147 static int hf_dap_any = -1; /* T_any */
148 static int hf_dap_final = -1; /* T_final */
149 static int hf_dap_control = -1; /* Attribute */
150 static int hf_dap_greaterOrEqual = -1; /* AttributeValueAssertion */
151 static int hf_dap_lessOrEqual = -1; /* AttributeValueAssertion */
152 static int hf_dap_present = -1; /* AttributeType */
153 static int hf_dap_approximateMatch = -1; /* AttributeValueAssertion */
154 static int hf_dap_extensibleMatch = -1; /* MatchingRuleAssertion */
155 static int hf_dap_contextPresent = -1; /* AttributeTypeAssertion */
156 static int hf_dap_matchingRule = -1; /* T_matchingRule */
157 static int hf_dap_matchingRule_item = -1; /* OBJECT_IDENTIFIER */
158 static int hf_dap_matchValue = -1; /* T_matchValue */
159 static int hf_dap_dnAttributes = -1; /* BOOLEAN */
160 static int hf_dap_newRequest = -1; /* T_newRequest */
161 static int hf_dap_pageSize = -1; /* INTEGER */
162 static int hf_dap_sortKeys = -1; /* SEQUENCE_OF_SortKey */
163 static int hf_dap_sortKeys_item = -1; /* SortKey */
164 static int hf_dap_reverse = -1; /* BOOLEAN */
165 static int hf_dap_unmerged = -1; /* BOOLEAN */
166 static int hf_dap_queryReference = -1; /* OCTET_STRING */
167 static int hf_dap_orderingRule = -1; /* OBJECT_IDENTIFIER */
168 static int hf_dap_certification_path = -1; /* CertificationPath */
169 static int hf_dap_distinguished_name = -1; /* DistinguishedName */
170 static int hf_dap_time = -1; /* Time */
171 static int hf_dap_random = -1; /* BIT_STRING */
172 static int hf_dap_target = -1; /* ProtectionRequest */
173 static int hf_dap_response = -1; /* BIT_STRING */
174 static int hf_dap_operationCode = -1; /* Code */
175 static int hf_dap_attributeCertificationPath = -1; /* AttributeCertificationPath */
176 static int hf_dap_errorProtection = -1; /* ErrorProtectionRequest */
177 static int hf_dap_errorCode = -1; /* Code */
178 static int hf_dap_utcTime = -1; /* UTCTime */
179 static int hf_dap_generalizedTime = -1; /* GeneralizedTime */
180 static int hf_dap_credentials = -1; /* Credentials */
181 static int hf_dap_versions = -1; /* Versions */
182 static int hf_dap_simple = -1; /* SimpleCredentials */
183 static int hf_dap_strong = -1; /* StrongCredentials */
184 static int hf_dap_externalProcedure = -1; /* EXTERNALt */
185 static int hf_dap_spkm = -1; /* SpkmCredentials */
186 static int hf_dap_validity = -1; /* T_validity */
187 static int hf_dap_time1 = -1; /* T_time1 */
188 static int hf_dap_utc = -1; /* UTCTime */
189 static int hf_dap_gt = -1; /* GeneralizedTime */
190 static int hf_dap_time2 = -1; /* T_time2 */
191 static int hf_dap_random1 = -1; /* BIT_STRING */
192 static int hf_dap_random2 = -1; /* BIT_STRING */
193 static int hf_dap_password = -1; /* T_password */
194 static int hf_dap_unprotected = -1; /* OCTET_STRING */
195 static int hf_dap_protected = -1; /* T_protected */
196 static int hf_dap_protectedPassword = -1; /* OCTET_STRING */
197 static int hf_dap_algorithmIdentifier = -1; /* AlgorithmIdentifier */
198 static int hf_dap_encrypted = -1; /* BIT_STRING */
199 static int hf_dap_bind_token = -1; /* Token */
200 static int hf_dap_req = -1; /* T_req */
201 static int hf_dap_rep = -1; /* T_rep */
202 static int hf_dap_algorithm = -1; /* AlgorithmIdentifier */
203 static int hf_dap_utctime = -1; /* UTCTime */
204 static int hf_dap_bindIntAlgorithm = -1; /* SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier */
205 static int hf_dap_bindIntAlgorithm_item = -1; /* AlgorithmIdentifier */
206 static int hf_dap_bindIntKeyInfo = -1; /* BindKeyInfo */
207 static int hf_dap_bindConfAlgorithm = -1; /* SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier */
208 static int hf_dap_bindConfAlgorithm_item = -1; /* AlgorithmIdentifier */
209 static int hf_dap_bindConfKeyInfo = -1; /* BindKeyInfo */
210 static int hf_dap_token_data = -1; /* TokenData */
211 static int hf_dap_algorithm_identifier = -1; /* AlgorithmIdentifier */
212 static int hf_dap_error = -1; /* T_error */
213 static int hf_dap_serviceProblem = -1; /* ServiceProblem */
214 static int hf_dap_securityProblem = -1; /* SecurityProblem */
215 static int hf_dap_unsignedDirectoryBindError = -1; /* DirectoryBindErrorData */
216 static int hf_dap_signedDirectoryBindError = -1; /* T_signedDirectoryBindError */
217 static int hf_dap_directoryBindError = -1; /* DirectoryBindErrorData */
218 static int hf_dap_object = -1; /* Name */
219 static int hf_dap_selection = -1; /* EntryInformationSelection */
220 static int hf_dap_modifyRightsRequest = -1; /* BOOLEAN */
221 static int hf_dap_serviceControls = -1; /* ServiceControls */
222 static int hf_dap_requestor = -1; /* DistinguishedName */
223 static int hf_dap_operationProgress = -1; /* OperationProgress */
224 static int hf_dap_aliasedRDNs = -1; /* INTEGER */
225 static int hf_dap_criticalExtensions = -1; /* BIT_STRING */
226 static int hf_dap_referenceType = -1; /* ReferenceType */
227 static int hf_dap_entryOnly = -1; /* BOOLEAN */
228 static int hf_dap_nameResolveOnMaster = -1; /* BOOLEAN */
229 static int hf_dap_operationContexts = -1; /* ContextSelection */
230 static int hf_dap_familyGrouping = -1; /* FamilyGrouping */
231 static int hf_dap_rdnSequence = -1; /* RDNSequence */
232 static int hf_dap_unsignedReadArgument = -1; /* ReadArgumentData */
233 static int hf_dap_signedReadArgument = -1; /* T_signedReadArgument */
234 static int hf_dap_readArgument = -1; /* ReadArgumentData */
235 static int hf_dap_entry = -1; /* EntryInformation */
236 static int hf_dap_modifyRights = -1; /* ModifyRights */
237 static int hf_dap_unsignedReadResult = -1; /* ReadResultData */
238 static int hf_dap_signedReadResult = -1; /* T_signedReadResult */
239 static int hf_dap_readResult = -1; /* ReadResultData */
240 static int hf_dap_ModifyRights_item = -1; /* ModifyRights_item */
241 static int hf_dap_item = -1; /* T_item */
242 static int hf_dap_item_entry = -1; /* NULL */
243 static int hf_dap_attribute_type = -1; /* AttributeType */
244 static int hf_dap_value_assertion = -1; /* AttributeValueAssertion */
245 static int hf_dap_permission = -1; /* T_permission */
246 static int hf_dap_purported = -1; /* AttributeValueAssertion */
247 static int hf_dap_unsignedCompareArgument = -1; /* CompareArgumentData */
248 static int hf_dap_signedCompareArgument = -1; /* T_signedCompareArgument */
249 static int hf_dap_compareArgument = -1; /* CompareArgumentData */
250 static int hf_dap_matched = -1; /* BOOLEAN */
251 static int hf_dap_matchedSubtype = -1; /* AttributeType */
252 static int hf_dap_unsignedCompareResult = -1; /* CompareResultData */
253 static int hf_dap_signedCompareResult = -1; /* T_signedCompareResult */
254 static int hf_dap_compareResult = -1; /* CompareResultData */
255 static int hf_dap_invokeID = -1; /* InvokeId */
256 static int hf_dap_unsignedAbandonArgument = -1; /* AbandonArgumentData */
257 static int hf_dap_signedAbandonArgument = -1; /* T_signedAbandonArgument */
258 static int hf_dap_abandonArgument = -1; /* AbandonArgumentData */
259 static int hf_dap_null = -1; /* NULL */
260 static int hf_dap_abandon_information = -1; /* AbandonInformation */
261 static int hf_dap_unsignedAbandonResult = -1; /* AbandonResultData */
262 static int hf_dap_signedAbandonResult = -1; /* T_signedAbandonResult */
263 static int hf_dap_abandonResult = -1; /* AbandonResultData */
264 static int hf_dap_pagedResults = -1; /* PagedResultsRequest */
265 static int hf_dap_listFamily = -1; /* BOOLEAN */
266 static int hf_dap_unsignedListArgument = -1; /* ListArgumentData */
267 static int hf_dap_signedListArgument = -1; /* T_signedListArgument */
268 static int hf_dap_listArgument = -1; /* ListArgumentData */
269 static int hf_dap_listInfo = -1; /* T_listInfo */
270 static int hf_dap_subordinates = -1; /* T_subordinates */
271 static int hf_dap_subordinates_item = -1; /* T_subordinates_item */
272 static int hf_dap_aliasEntry = -1; /* BOOLEAN */
273 static int hf_dap_partialOutcomeQualifier = -1; /* PartialOutcomeQualifier */
274 static int hf_dap_uncorrelatedListInfo = -1; /* SET_OF_ListResult */
275 static int hf_dap_uncorrelatedListInfo_item = -1; /* ListResult */
276 static int hf_dap_unsignedListResult = -1; /* ListResultData */
277 static int hf_dap_signedListResult = -1; /* T_signedListResult */
278 static int hf_dap_listResult = -1; /* ListResultData */
279 static int hf_dap_limitProblem = -1; /* LimitProblem */
280 static int hf_dap_unexplored = -1; /* SET_OF_ContinuationReference */
281 static int hf_dap_unexplored_item = -1; /* ContinuationReference */
282 static int hf_dap_unavailableCriticalExtensions = -1; /* BOOLEAN */
283 static int hf_dap_unknownErrors = -1; /* T_unknownErrors */
284 static int hf_dap_unknownErrors_item = -1; /* OBJECT_IDENTIFIER */
285 static int hf_dap_overspecFilter = -1; /* Filter */
286 static int hf_dap_entryCount = -1; /* T_entryCount */
287 static int hf_dap_bestEstimate = -1; /* INTEGER */
288 static int hf_dap_lowEstimate = -1; /* INTEGER */
289 static int hf_dap_baseObject = -1; /* Name */
290 static int hf_dap_subset = -1; /* T_subset */
291 static int hf_dap_filter = -1; /* Filter */
292 static int hf_dap_searchAliases = -1; /* BOOLEAN */
293 static int hf_dap_matchedValuesOnly = -1; /* BOOLEAN */
294 static int hf_dap_extendedFilter = -1; /* Filter */
295 static int hf_dap_checkOverspecified = -1; /* BOOLEAN */
296 static int hf_dap_relaxation = -1; /* RelaxationPolicy */
297 static int hf_dap_extendedArea = -1; /* INTEGER */
298 static int hf_dap_hierarchySelections = -1; /* HierarchySelections */
299 static int hf_dap_searchControlOptions = -1; /* SearchControlOptions */
300 static int hf_dap_joinArguments = -1; /* SEQUENCE_SIZE_1_MAX_OF_JoinArgument */
301 static int hf_dap_joinArguments_item = -1; /* JoinArgument */
302 static int hf_dap_joinType = -1; /* T_joinType */
303 static int hf_dap_unsignedSearchArgument = -1; /* SearchArgumentData */
304 static int hf_dap_signedSearchArgument = -1; /* T_signedSearchArgument */
305 static int hf_dap_searchArgument = -1; /* SearchArgumentData */
306 static int hf_dap_joinBaseObject = -1; /* Name */
307 static int hf_dap_domainLocalID = -1; /* DomainLocalID */
308 static int hf_dap_joinSubset = -1; /* T_joinSubset */
309 static int hf_dap_joinFilter = -1; /* Filter */
310 static int hf_dap_joinAttributes = -1; /* SEQUENCE_OF_JoinAttPair */
311 static int hf_dap_joinAttributes_item = -1; /* JoinAttPair */
312 static int hf_dap_joinSelection = -1; /* EntryInformationSelection */
313 static int hf_dap_baseAtt = -1; /* AttributeType */
314 static int hf_dap_joinAtt = -1; /* AttributeType */
315 static int hf_dap_joinContext = -1; /* SEQUENCE_OF_JoinContextType */
316 static int hf_dap_joinContext_item = -1; /* JoinContextType */
317 static int hf_dap_searchInfo = -1; /* T_searchInfo */
318 static int hf_dap_entries = -1; /* SET_OF_EntryInformation */
319 static int hf_dap_entries_item = -1; /* EntryInformation */
320 static int hf_dap_altMatching = -1; /* BOOLEAN */
321 static int hf_dap_uncorrelatedSearchInfo = -1; /* SET_OF_SearchResult */
322 static int hf_dap_uncorrelatedSearchInfo_item = -1; /* SearchResult */
323 static int hf_dap_unsignedSearchResult = -1; /* SearchResultData */
324 static int hf_dap_signedSearchResult = -1; /* T_signedSearchResult */
325 static int hf_dap_searchResult = -1; /* SearchResultData */
326 static int hf_dap_add_entry = -1; /* SET_OF_Attribute */
327 static int hf_dap_add_entry_item = -1; /* Attribute */
328 static int hf_dap_targetSystem = -1; /* AccessPoint */
329 static int hf_dap_unsignedAddEntryArgument = -1; /* AddEntryArgumentData */
330 static int hf_dap_signedAddEntryArgument = -1; /* T_signedAddEntryArgument */
331 static int hf_dap_addEntryArgument = -1; /* AddEntryArgumentData */
332 static int hf_dap_add_entry_information = -1; /* AddEntryInformation */
333 static int hf_dap_unsignedAddEntryResult = -1; /* AddEntryResultData */
334 static int hf_dap_signedAddEntryResult = -1; /* T_signedAddEntryResult */
335 static int hf_dap_addEntryResult = -1; /* AddEntryResultData */
336 static int hf_dap_unsignedRemoveEntryArgument = -1; /* RemoveEntryArgumentData */
337 static int hf_dap_signedRemoveEntryArgument = -1; /* T_signedRemoveEntryArgument */
338 static int hf_dap_removeEntryArgument = -1; /* RemoveEntryArgumentData */
339 static int hf_dap_remove_entry_information = -1; /* RemoveEntryInformation */
340 static int hf_dap_unsignedRemoveEntryResult = -1; /* RemoveEntryResultData */
341 static int hf_dap_signedRemoveEntryResult = -1; /* T_signedRemoveEntryResult */
342 static int hf_dap_removeEntryResult = -1; /* RemoveEntryResultData */
343 static int hf_dap_changes = -1; /* SEQUENCE_OF_EntryModification */
344 static int hf_dap_changes_item = -1; /* EntryModification */
345 static int hf_dap_unsignedModifyEntryArgument = -1; /* ModifyEntryArgumentData */
346 static int hf_dap_signedModifyEntryArgument = -1; /* T_signedModifyEntryArgument */
347 static int hf_dap_modifyEntryArgument = -1; /* ModifyEntryArgumentData */
348 static int hf_dap_modify_entry_information = -1; /* ModifyEntryInformation */
349 static int hf_dap_unsignedModifyEntryResult = -1; /* ModifyEntryResultData */
350 static int hf_dap_signedModifyEntryResult = -1; /* T_signedModifyEntryResult */
351 static int hf_dap_modifyEntryResult = -1; /* ModifyEntryResultData */
352 static int hf_dap_addAttribute = -1; /* Attribute */
353 static int hf_dap_removeAttribute = -1; /* AttributeType */
354 static int hf_dap_addValues = -1; /* Attribute */
355 static int hf_dap_removeValues = -1; /* Attribute */
356 static int hf_dap_alterValues = -1; /* AttributeTypeAndValue */
357 static int hf_dap_resetValue = -1; /* AttributeType */
358 static int hf_dap_newRDN = -1; /* RelativeDistinguishedName */
359 static int hf_dap_deleteOldRDN = -1; /* BOOLEAN */
360 static int hf_dap_newSuperior = -1; /* DistinguishedName */
361 static int hf_dap_modify_dn_information = -1; /* ModifyDNInformation */
362 static int hf_dap_unsignedModifyDNResult = -1; /* ModifyDNResultData */
363 static int hf_dap_signedModifyDNResult = -1; /* T_signedModifyDNResult */
364 static int hf_dap_modifyDNResult = -1; /* ModifyDNResultData */
365 static int hf_dap_unsignedAbandoned = -1; /* AbandonedData */
366 static int hf_dap_signedAbandoned = -1; /* T_signedAbandoned */
367 static int hf_dap_abandoned = -1; /* AbandonedData */
368 static int hf_dap_abandon_failed_problem = -1; /* AbandonProblem */
369 static int hf_dap_operation = -1; /* InvokeId */
370 static int hf_dap_unsignedAbandonFailedError = -1; /* AbandonFailedErrorData */
371 static int hf_dap_signedAbandonFailedError = -1; /* T_signedAbandonFailedError */
372 static int hf_dap_abandonFailedError = -1; /* AbandonFailedErrorData */
373 static int hf_dap_problems = -1; /* T_problems */
374 static int hf_dap_problems_item = -1; /* T_problems_item */
375 static int hf_dap_attribute_error_problem = -1; /* AttributeProblem */
376 static int hf_dap_value = -1; /* AttributeValue */
377 static int hf_dap_unsignedAttributeError = -1; /* AttributeErrorData */
378 static int hf_dap_signedAttributeError = -1; /* T_signedAttributeError */
379 static int hf_dap_attributeError = -1; /* AttributeErrorData */
380 static int hf_dap_name_error_problem = -1; /* NameProblem */
381 static int hf_dap_matched_name = -1; /* Name */
382 static int hf_dap_unsignedNameError = -1; /* NameErrorData */
383 static int hf_dap_signedNameError = -1; /* T_signedNameError */
384 static int hf_dap_nameError = -1; /* NameErrorData */
385 static int hf_dap_candidate = -1; /* ContinuationReference */
386 static int hf_dap_unsignedReferral = -1; /* ReferralData */
387 static int hf_dap_signedReferral = -1; /* T_signedReferral */
388 static int hf_dap_referral = -1; /* ReferralData */
389 static int hf_dap_security_error_problem = -1; /* SecurityProblem */
390 static int hf_dap_spkmInfo = -1; /* T_spkmInfo */
391 static int hf_dap_unsignedSecurityError = -1; /* SecurityErrorData */
392 static int hf_dap_signedSecurityError = -1; /* T_signedSecurityError */
393 static int hf_dap_securityErrorData = -1; /* SecurityErrorData */
394 static int hf_dap_service_error_problem = -1; /* ServiceProblem */
395 static int hf_dap_unsignedServiceError = -1; /* ServiceErrorData */
396 static int hf_dap_signedServiceError = -1; /* T_signedServiceError */
397 static int hf_dap_serviceError = -1; /* ServiceErrorData */
398 static int hf_dap_update_error_problem = -1; /* UpdateProblem */
399 static int hf_dap_attributeInfo = -1; /* T_attributeInfo */
400 static int hf_dap_attributeInfo_item = -1; /* T_attributeInfo_item */
401 static int hf_dap_unsignedUpdateError = -1; /* UpdateErrorData */
402 static int hf_dap_signedUpdateError = -1; /* T_signedUpdateError */
403 static int hf_dap_updateError = -1; /* UpdateErrorData */
405 static int hf_dap_ServiceControlOptions_preferChaining = -1;
406 static int hf_dap_ServiceControlOptions_chainingProhibited = -1;
407 static int hf_dap_ServiceControlOptions_localScope = -1;
408 static int hf_dap_ServiceControlOptions_dontUseCopy = -1;
409 static int hf_dap_ServiceControlOptions_dontDereferenceAliases = -1;
410 static int hf_dap_ServiceControlOptions_subentries = -1;
411 static int hf_dap_ServiceControlOptions_copyShallDo = -1;
412 static int hf_dap_ServiceControlOptions_partialNameResolution = -1;
413 static int hf_dap_ServiceControlOptions_manageDSAIT = -1;
414 static int hf_dap_ServiceControlOptions_noSubtypeMatch = -1;
415 static int hf_dap_ServiceControlOptions_noSubtypeSelection = -1;
416 static int hf_dap_ServiceControlOptions_countFamily = -1;
417 static int hf_dap_Versions_v1 = -1;
418 static int hf_dap_Versions_v2 = -1;
419 static int hf_dap_T_permission_add = -1;
420 static int hf_dap_T_permission_remove = -1;
421 static int hf_dap_T_permission_rename = -1;
422 static int hf_dap_T_permission_move = -1;
423 static int hf_dap_HierarchySelections_self = -1;
424 static int hf_dap_HierarchySelections_children = -1;
425 static int hf_dap_HierarchySelections_parent = -1;
426 static int hf_dap_HierarchySelections_hierarchy = -1;
427 static int hf_dap_HierarchySelections_top = -1;
428 static int hf_dap_HierarchySelections_subtree = -1;
429 static int hf_dap_HierarchySelections_siblings = -1;
430 static int hf_dap_HierarchySelections_siblingChildren = -1;
431 static int hf_dap_HierarchySelections_siblingSubtree = -1;
432 static int hf_dap_HierarchySelections_all = -1;
433 static int hf_dap_SearchControlOptions_searchAliases = -1;
434 static int hf_dap_SearchControlOptions_matchedValuesOnly = -1;
435 static int hf_dap_SearchControlOptions_checkOverspecified = -1;
436 static int hf_dap_SearchControlOptions_performExactly = -1;
437 static int hf_dap_SearchControlOptions_includeAllAreas = -1;
438 static int hf_dap_SearchControlOptions_noSystemRelaxation = -1;
439 static int hf_dap_SearchControlOptions_dnAttribute = -1;
440 static int hf_dap_SearchControlOptions_matchOnResidualName = -1;
441 static int hf_dap_SearchControlOptions_entryCount = -1;
442 static int hf_dap_SearchControlOptions_useSubset = -1;
443 static int hf_dap_SearchControlOptions_separateFamilyMembers = -1;
444 static int hf_dap_SearchControlOptions_searchFamily = -1;
446 /*--- End of included file: packet-dap-hf.c ---*/
447 #line 71 "packet-dap-template.c"
449 /* Initialize the subtree pointers */
450 static gint ett_dap = -1;
452 /*--- Included file: packet-dap-ett.c ---*/
453 #line 1 "packet-dap-ett.c"
454 static gint ett_dap_CommonResults = -1;
455 static gint ett_dap_SEQUENCE_OF_Attribute = -1;
456 static gint ett_dap_ServiceControls = -1;
457 static gint ett_dap_T_manageDSAITPlaneRef = -1;
458 static gint ett_dap_ServiceControlOptions = -1;
459 static gint ett_dap_EntryInformationSelection = -1;
460 static gint ett_dap_T_attributes = -1;
461 static gint ett_dap_SET_OF_AttributeType = -1;
462 static gint ett_dap_T_extraAttributes = -1;
463 static gint ett_dap_ContextSelection = -1;
464 static gint ett_dap_SET_OF_TypeAndContextAssertion = -1;
465 static gint ett_dap_TypeAndContextAssertion = -1;
466 static gint ett_dap_T_contextAssertions = -1;
467 static gint ett_dap_SEQUENCE_OF_ContextAssertion = -1;
468 static gint ett_dap_SET_OF_ContextAssertion = -1;
469 static gint ett_dap_FamilyReturn = -1;
470 static gint ett_dap_T_familySelect = -1;
471 static gint ett_dap_EntryInformation = -1;
472 static gint ett_dap_T_entry_information = -1;
473 static gint ett_dap_EntryInformationItem = -1;
474 static gint ett_dap_FamilyEntries = -1;
475 static gint ett_dap_SEQUENCE_OF_FamilyEntry = -1;
476 static gint ett_dap_FamilyEntry = -1;
477 static gint ett_dap_FamilyInformation = -1;
478 static gint ett_dap_T_family_information_item = -1;
479 static gint ett_dap_SEQUENCE_OF_FamilyEntries = -1;
480 static gint ett_dap_Filter = -1;
481 static gint ett_dap_SetOfFilter = -1;
482 static gint ett_dap_FilterItem = -1;
483 static gint ett_dap_T_substrings = -1;
484 static gint ett_dap_T_strings = -1;
485 static gint ett_dap_T_strings_item = -1;
486 static gint ett_dap_MatchingRuleAssertion = -1;
487 static gint ett_dap_T_matchingRule = -1;
488 static gint ett_dap_PagedResultsRequest = -1;
489 static gint ett_dap_T_newRequest = -1;
490 static gint ett_dap_SEQUENCE_OF_SortKey = -1;
491 static gint ett_dap_SortKey = -1;
492 static gint ett_dap_SecurityParameters = -1;
493 static gint ett_dap_Time = -1;
494 static gint ett_dap_DirectoryBindArgument = -1;
495 static gint ett_dap_Credentials = -1;
496 static gint ett_dap_SimpleCredentials = -1;
497 static gint ett_dap_T_validity = -1;
498 static gint ett_dap_T_time1 = -1;
499 static gint ett_dap_T_time2 = -1;
500 static gint ett_dap_T_password = -1;
501 static gint ett_dap_T_protected = -1;
502 static gint ett_dap_StrongCredentials = -1;
503 static gint ett_dap_SpkmCredentials = -1;
504 static gint ett_dap_TokenData = -1;
505 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier = -1;
506 static gint ett_dap_Token = -1;
507 static gint ett_dap_Versions = -1;
508 static gint ett_dap_DirectoryBindErrorData = -1;
509 static gint ett_dap_T_error = -1;
510 static gint ett_dap_DirectoryBindError = -1;
511 static gint ett_dap_T_signedDirectoryBindError = -1;
512 static gint ett_dap_ReadArgumentData = -1;
513 static gint ett_dap_Name = -1;
514 static gint ett_dap_ReadArgument = -1;
515 static gint ett_dap_T_signedReadArgument = -1;
516 static gint ett_dap_ReadResultData = -1;
517 static gint ett_dap_ReadResult = -1;
518 static gint ett_dap_T_signedReadResult = -1;
519 static gint ett_dap_ModifyRights = -1;
520 static gint ett_dap_ModifyRights_item = -1;
521 static gint ett_dap_T_item = -1;
522 static gint ett_dap_T_permission = -1;
523 static gint ett_dap_CompareArgumentData = -1;
524 static gint ett_dap_CompareArgument = -1;
525 static gint ett_dap_T_signedCompareArgument = -1;
526 static gint ett_dap_CompareResultData = -1;
527 static gint ett_dap_CompareResult = -1;
528 static gint ett_dap_T_signedCompareResult = -1;
529 static gint ett_dap_AbandonArgumentData = -1;
530 static gint ett_dap_AbandonArgument = -1;
531 static gint ett_dap_T_signedAbandonArgument = -1;
532 static gint ett_dap_AbandonResultData = -1;
533 static gint ett_dap_AbandonResult = -1;
534 static gint ett_dap_AbandonInformation = -1;
535 static gint ett_dap_T_signedAbandonResult = -1;
536 static gint ett_dap_ListArgumentData = -1;
537 static gint ett_dap_ListArgument = -1;
538 static gint ett_dap_T_signedListArgument = -1;
539 static gint ett_dap_ListResultData = -1;
540 static gint ett_dap_T_listInfo = -1;
541 static gint ett_dap_T_subordinates = -1;
542 static gint ett_dap_T_subordinates_item = -1;
543 static gint ett_dap_SET_OF_ListResult = -1;
544 static gint ett_dap_ListResult = -1;
545 static gint ett_dap_T_signedListResult = -1;
546 static gint ett_dap_PartialOutcomeQualifier = -1;
547 static gint ett_dap_SET_OF_ContinuationReference = -1;
548 static gint ett_dap_T_unknownErrors = -1;
549 static gint ett_dap_T_entryCount = -1;
550 static gint ett_dap_SearchArgumentData = -1;
551 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument = -1;
552 static gint ett_dap_SearchArgument = -1;
553 static gint ett_dap_T_signedSearchArgument = -1;
554 static gint ett_dap_HierarchySelections = -1;
555 static gint ett_dap_SearchControlOptions = -1;
556 static gint ett_dap_JoinArgument = -1;
557 static gint ett_dap_SEQUENCE_OF_JoinAttPair = -1;
558 static gint ett_dap_JoinAttPair = -1;
559 static gint ett_dap_SEQUENCE_OF_JoinContextType = -1;
560 static gint ett_dap_SearchResultData = -1;
561 static gint ett_dap_T_searchInfo = -1;
562 static gint ett_dap_SET_OF_EntryInformation = -1;
563 static gint ett_dap_SET_OF_SearchResult = -1;
564 static gint ett_dap_SearchResult = -1;
565 static gint ett_dap_T_signedSearchResult = -1;
566 static gint ett_dap_AddEntryArgumentData = -1;
567 static gint ett_dap_SET_OF_Attribute = -1;
568 static gint ett_dap_AddEntryArgument = -1;
569 static gint ett_dap_T_signedAddEntryArgument = -1;
570 static gint ett_dap_AddEntryResultData = -1;
571 static gint ett_dap_AddEntryResult = -1;
572 static gint ett_dap_AddEntryInformation = -1;
573 static gint ett_dap_T_signedAddEntryResult = -1;
574 static gint ett_dap_RemoveEntryArgumentData = -1;
575 static gint ett_dap_RemoveEntryArgument = -1;
576 static gint ett_dap_T_signedRemoveEntryArgument = -1;
577 static gint ett_dap_RemoveEntryResultData = -1;
578 static gint ett_dap_RemoveEntryResult = -1;
579 static gint ett_dap_RemoveEntryInformation = -1;
580 static gint ett_dap_T_signedRemoveEntryResult = -1;
581 static gint ett_dap_ModifyEntryArgumentData = -1;
582 static gint ett_dap_SEQUENCE_OF_EntryModification = -1;
583 static gint ett_dap_ModifyEntryArgument = -1;
584 static gint ett_dap_T_signedModifyEntryArgument = -1;
585 static gint ett_dap_ModifyEntryResultData = -1;
586 static gint ett_dap_ModifyEntryResult = -1;
587 static gint ett_dap_ModifyEntryInformation = -1;
588 static gint ett_dap_T_signedModifyEntryResult = -1;
589 static gint ett_dap_EntryModification = -1;
590 static gint ett_dap_ModifyDNArgument = -1;
591 static gint ett_dap_ModifyDNResultData = -1;
592 static gint ett_dap_ModifyDNResult = -1;
593 static gint ett_dap_ModifyDNInformation = -1;
594 static gint ett_dap_T_signedModifyDNResult = -1;
595 static gint ett_dap_AbandonedData = -1;
596 static gint ett_dap_Abandoned = -1;
597 static gint ett_dap_T_signedAbandoned = -1;
598 static gint ett_dap_AbandonFailedErrorData = -1;
599 static gint ett_dap_AbandonFailedError = -1;
600 static gint ett_dap_T_signedAbandonFailedError = -1;
601 static gint ett_dap_AttributeErrorData = -1;
602 static gint ett_dap_T_problems = -1;
603 static gint ett_dap_T_problems_item = -1;
604 static gint ett_dap_AttributeError = -1;
605 static gint ett_dap_T_signedAttributeError = -1;
606 static gint ett_dap_NameErrorData = -1;
607 static gint ett_dap_NameError = -1;
608 static gint ett_dap_T_signedNameError = -1;
609 static gint ett_dap_ReferralData = -1;
610 static gint ett_dap_Referral = -1;
611 static gint ett_dap_T_signedReferral = -1;
612 static gint ett_dap_SecurityErrorData = -1;
613 static gint ett_dap_SecurityError = -1;
614 static gint ett_dap_T_signedSecurityError = -1;
615 static gint ett_dap_ServiceErrorData = -1;
616 static gint ett_dap_ServiceError = -1;
617 static gint ett_dap_T_signedServiceError = -1;
618 static gint ett_dap_UpdateErrorData = -1;
619 static gint ett_dap_T_attributeInfo = -1;
620 static gint ett_dap_T_attributeInfo_item = -1;
621 static gint ett_dap_UpdateError = -1;
622 static gint ett_dap_T_signedUpdateError = -1;
624 /*--- End of included file: packet-dap-ett.c ---*/
625 #line 75 "packet-dap-template.c"
628 /*--- Included file: packet-dap-fn.c ---*/
629 #line 1 "packet-dap-fn.c"
630 /*--- Cyclic dependencies ---*/
632 /* FamilyEntries -> FamilyEntries/familyEntries -> FamilyEntry -> FamilyEntry/family-info -> FamilyEntries */
633 static int dissect_dap_FamilyEntries(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_);
635 static int dissect_family_info_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
636 return dissect_dap_FamilyEntries(FALSE, tvb, offset, pinfo, tree, hf_dap_family_info_item);
639 /* Filter -> SetOfFilter -> Filter */
640 /* Filter -> Filter */
641 int dissect_dap_Filter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_);
643 static int dissect_not(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
644 return dissect_dap_Filter(FALSE, tvb, offset, pinfo, tree, hf_dap_not);
646 static int dissect_SetOfFilter_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
647 return dissect_dap_Filter(FALSE, tvb, offset, pinfo, tree, hf_dap_SetOfFilter_item);
649 static int dissect_overspecFilter(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
650 return dissect_dap_Filter(FALSE, tvb, offset, pinfo, tree, hf_dap_overspecFilter);
652 static int dissect_filter(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
653 return dissect_dap_Filter(FALSE, tvb, offset, pinfo, tree, hf_dap_filter);
655 static int dissect_extendedFilter(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
656 return dissect_dap_Filter(FALSE, tvb, offset, pinfo, tree, hf_dap_extendedFilter);
658 static int dissect_joinFilter(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
659 return dissect_dap_Filter(FALSE, tvb, offset, pinfo, tree, hf_dap_joinFilter);
662 /* ListResultData -> ListResultData/uncorrelatedListInfo -> ListResult -> ListResultData */
663 /* ListResultData -> ListResultData/uncorrelatedListInfo -> ListResult -> ListResult/signedListResult -> ListResultData */
664 static int dissect_dap_ListResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_);
666 static int dissect_unsignedListResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
667 return dissect_dap_ListResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedListResult);
669 static int dissect_listResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
670 return dissect_dap_ListResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_listResult);
673 /* SearchResultData -> SearchResultData/uncorrelatedSearchInfo -> SearchResult -> SearchResultData */
674 /* SearchResultData -> SearchResultData/uncorrelatedSearchInfo -> SearchResult -> SearchResult/signedSearchResult -> SearchResultData */
675 static int dissect_dap_SearchResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_);
677 static int dissect_unsignedSearchResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
678 return dissect_dap_SearchResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedSearchResult);
680 static int dissect_searchResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
681 return dissect_dap_SearchResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_searchResult);
685 /*--- Fields for imported types ---*/
687 static int dissect_performer(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
688 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dap_performer);
690 static int dissect_notification_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
691 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_notification_item);
693 static int dissect_agreementID(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
694 return dissect_disp_AgreementID(FALSE, tvb, offset, pinfo, tree, hf_dap_agreementID);
696 static int dissect_select_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
697 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_select_item);
699 static int dissect_type(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
700 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_type);
702 static int dissect_preference_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
703 return dissect_x509if_ContextAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_preference_item);
705 static int dissect_all_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
706 return dissect_x509if_ContextAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_all_item);
708 static int dissect_attributeType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
709 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_attributeType);
711 static int dissect_attribute(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
712 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_attribute);
714 static int dissect_rdn(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
715 return dissect_x509if_RelativeDistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dap_rdn);
717 static int dissect_equality(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
718 return dissect_x509if_AttributeValueAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_equality);
720 static int dissect_control(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
721 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_control);
723 static int dissect_greaterOrEqual(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
724 return dissect_x509if_AttributeValueAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_greaterOrEqual);
726 static int dissect_lessOrEqual(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
727 return dissect_x509if_AttributeValueAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_lessOrEqual);
729 static int dissect_present(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
730 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_present);
732 static int dissect_approximateMatch(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
733 return dissect_x509if_AttributeValueAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_approximateMatch);
735 static int dissect_contextPresent(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
736 return dissect_x509if_AttributeTypeAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_contextPresent);
738 static int dissect_certification_path(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
739 return dissect_x509af_CertificationPath(FALSE, tvb, offset, pinfo, tree, hf_dap_certification_path);
741 static int dissect_distinguished_name(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
742 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dap_distinguished_name);
744 static int dissect_operationCode(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
745 return dissect_ros_Code(FALSE, tvb, offset, pinfo, tree, hf_dap_operationCode);
747 static int dissect_attributeCertificationPath(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
748 return dissect_x509af_AttributeCertificationPath(FALSE, tvb, offset, pinfo, tree, hf_dap_attributeCertificationPath);
750 static int dissect_errorCode(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
751 return dissect_ros_Code(FALSE, tvb, offset, pinfo, tree, hf_dap_errorCode);
753 static int dissect_externalProcedure(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
754 return dissect_acse_EXTERNALt(FALSE, tvb, offset, pinfo, tree, hf_dap_externalProcedure);
756 static int dissect_algorithmIdentifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
757 return dissect_x509af_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dap_algorithmIdentifier);
759 static int dissect_algorithm(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
760 return dissect_x509af_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dap_algorithm);
762 static int dissect_bindIntAlgorithm_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
763 return dissect_x509af_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dap_bindIntAlgorithm_item);
765 static int dissect_bindConfAlgorithm_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
766 return dissect_x509af_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dap_bindConfAlgorithm_item);
768 static int dissect_algorithm_identifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
769 return dissect_x509af_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dap_algorithm_identifier);
771 static int dissect_requestor(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
772 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dap_requestor);
774 static int dissect_operationProgress(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
775 return dissect_dsp_OperationProgress(FALSE, tvb, offset, pinfo, tree, hf_dap_operationProgress);
777 static int dissect_referenceType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
778 return dissect_dsp_ReferenceType(FALSE, tvb, offset, pinfo, tree, hf_dap_referenceType);
780 static int dissect_rdnSequence(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
781 return dissect_x509if_RDNSequence(FALSE, tvb, offset, pinfo, tree, hf_dap_rdnSequence);
783 static int dissect_attribute_type(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
784 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_attribute_type);
786 static int dissect_value_assertion(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
787 return dissect_x509if_AttributeValueAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_value_assertion);
789 static int dissect_purported(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
790 return dissect_x509if_AttributeValueAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_purported);
792 static int dissect_matchedSubtype(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
793 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_matchedSubtype);
795 static int dissect_invokeID(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
796 return dissect_ros_InvokeId(FALSE, tvb, offset, pinfo, tree, hf_dap_invokeID);
798 static int dissect_unexplored_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
799 return dissect_dsp_ContinuationReference(FALSE, tvb, offset, pinfo, tree, hf_dap_unexplored_item);
801 static int dissect_relaxation(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
802 return dissect_x509if_RelaxationPolicy(FALSE, tvb, offset, pinfo, tree, hf_dap_relaxation);
804 static int dissect_baseAtt(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
805 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_baseAtt);
807 static int dissect_joinAtt(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
808 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_joinAtt);
810 static int dissect_add_entry_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
811 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_add_entry_item);
813 static int dissect_targetSystem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
814 return dissect_dsp_AccessPoint(FALSE, tvb, offset, pinfo, tree, hf_dap_targetSystem);
816 static int dissect_addAttribute(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
817 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_addAttribute);
819 static int dissect_removeAttribute(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
820 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_removeAttribute);
822 static int dissect_addValues(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
823 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_addValues);
825 static int dissect_removeValues(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
826 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_removeValues);
828 static int dissect_alterValues(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
829 return dissect_crmf_AttributeTypeAndValue(FALSE, tvb, offset, pinfo, tree, hf_dap_alterValues);
831 static int dissect_resetValue(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
832 return dissect_x509if_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_resetValue);
834 static int dissect_newRDN(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
835 return dissect_x509if_RelativeDistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dap_newRDN);
837 static int dissect_newSuperior(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
838 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dap_newSuperior);
840 static int dissect_operation(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
841 return dissect_ros_InvokeId(FALSE, tvb, offset, pinfo, tree, hf_dap_operation);
843 static int dissect_value(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
844 return dissect_x509if_AttributeValue(FALSE, tvb, offset, pinfo, tree, hf_dap_value);
846 static int dissect_candidate(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
847 return dissect_dsp_ContinuationReference(FALSE, tvb, offset, pinfo, tree, hf_dap_candidate);
851 static const value_string dap_FamilyGrouping_vals[] = {
853 { 2, "compoundEntry" },
855 { 4, "multiStrand" },
861 dissect_dap_FamilyGrouping(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
862 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
867 static int dissect_familyGrouping(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
868 return dissect_dap_FamilyGrouping(FALSE, tvb, offset, pinfo, tree, hf_dap_familyGrouping);
874 dissect_dap_UTCTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
875 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTCTime,
876 pinfo, tree, tvb, offset, hf_index,
881 static int dissect_utcTime(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
882 return dissect_dap_UTCTime(FALSE, tvb, offset, pinfo, tree, hf_dap_utcTime);
884 static int dissect_utc(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
885 return dissect_dap_UTCTime(FALSE, tvb, offset, pinfo, tree, hf_dap_utc);
887 static int dissect_utctime(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
888 return dissect_dap_UTCTime(FALSE, tvb, offset, pinfo, tree, hf_dap_utctime);
894 dissect_dap_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
895 offset = dissect_ber_GeneralizedTime(implicit_tag, pinfo, tree, tvb, offset, hf_index);
899 static int dissect_generalizedTime(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
900 return dissect_dap_GeneralizedTime(FALSE, tvb, offset, pinfo, tree, hf_dap_generalizedTime);
902 static int dissect_gt(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
903 return dissect_dap_GeneralizedTime(FALSE, tvb, offset, pinfo, tree, hf_dap_gt);
907 static const value_string dap_Time_vals[] = {
909 { 1, "generalizedTime" },
913 static const ber_choice_t Time_choice[] = {
914 { 0, BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_utcTime },
915 { 1, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_generalizedTime },
920 dissect_dap_Time(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
921 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
922 Time_choice, hf_index, ett_dap_Time,
927 static int dissect_time(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
928 return dissect_dap_Time(FALSE, tvb, offset, pinfo, tree, hf_dap_time);
934 dissect_dap_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
935 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
941 static int dissect_random(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
942 return dissect_dap_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_random);
944 static int dissect_response(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
945 return dissect_dap_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_response);
947 static int dissect_random1(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
948 return dissect_dap_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_random1);
950 static int dissect_random2(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
951 return dissect_dap_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_random2);
953 static int dissect_encrypted(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
954 return dissect_dap_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_encrypted);
956 static int dissect_criticalExtensions(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
957 return dissect_dap_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_criticalExtensions);
961 static const value_string dap_ProtectionRequest_vals[] = {
965 { 3, "signed-encrypted" },
971 dissect_dap_ProtectionRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
972 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
977 static int dissect_target(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
978 return dissect_dap_ProtectionRequest(FALSE, tvb, offset, pinfo, tree, hf_dap_target);
982 static const value_string dap_ErrorProtectionRequest_vals[] = {
986 { 3, "signed-encrypted" },
992 dissect_dap_ErrorProtectionRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
993 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
998 static int dissect_errorProtection(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
999 return dissect_dap_ErrorProtectionRequest(FALSE, tvb, offset, pinfo, tree, hf_dap_errorProtection);
1003 static const ber_sequence_t SecurityParameters_set[] = {
1004 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_certification_path },
1005 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_distinguished_name },
1006 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_time },
1007 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_random },
1008 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_target },
1009 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_response },
1010 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_operationCode },
1011 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_attributeCertificationPath },
1012 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_errorProtection },
1013 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_errorCode },
1018 dissect_dap_SecurityParameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1019 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1020 SecurityParameters_set, hf_index, ett_dap_SecurityParameters);
1024 static int dissect_securityParameters(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1025 return dissect_dap_SecurityParameters(FALSE, tvb, offset, pinfo, tree, hf_dap_securityParameters);
1031 dissect_dap_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1032 offset = dissect_ber_boolean(implicit_tag, pinfo, tree, tvb, offset, hf_index);
1036 static int dissect_aliasDereferenced(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1037 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_aliasDereferenced);
1039 static int dissect_returnContexts(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1040 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_returnContexts);
1042 static int dissect_fromEntry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1043 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_fromEntry);
1045 static int dissect_incompleteEntry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1046 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_incompleteEntry);
1048 static int dissect_partialName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1049 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_partialName);
1051 static int dissect_derivedEntry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1052 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_derivedEntry);
1054 static int dissect_dnAttributes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1055 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_dnAttributes);
1057 static int dissect_reverse(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1058 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_reverse);
1060 static int dissect_unmerged(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1061 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_unmerged);
1063 static int dissect_modifyRightsRequest(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1064 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_modifyRightsRequest);
1066 static int dissect_entryOnly(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1067 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_entryOnly);
1069 static int dissect_nameResolveOnMaster(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1070 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_nameResolveOnMaster);
1072 static int dissect_matched(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1073 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_matched);
1075 static int dissect_listFamily(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1076 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_listFamily);
1078 static int dissect_aliasEntry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1079 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_aliasEntry);
1081 static int dissect_unavailableCriticalExtensions(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1082 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_unavailableCriticalExtensions);
1084 static int dissect_searchAliases(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1085 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_searchAliases);
1087 static int dissect_matchedValuesOnly(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1088 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_matchedValuesOnly);
1090 static int dissect_checkOverspecified(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1091 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_checkOverspecified);
1093 static int dissect_altMatching(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1094 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_altMatching);
1096 static int dissect_deleteOldRDN(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1097 return dissect_dap_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dap_deleteOldRDN);
1101 static const ber_sequence_t SEQUENCE_OF_Attribute_sequence_of[1] = {
1102 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_notification_item },
1106 dissect_dap_SEQUENCE_OF_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1107 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1108 SEQUENCE_OF_Attribute_sequence_of, hf_index, ett_dap_SEQUENCE_OF_Attribute);
1112 static int dissect_notification(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1113 return dissect_dap_SEQUENCE_OF_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_notification);
1117 static const ber_sequence_t CommonResults_set[] = {
1118 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
1119 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
1120 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
1121 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
1126 dissect_dap_CommonResults(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1127 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1128 CommonResults_set, hf_index, ett_dap_CommonResults);
1134 static const asn_namedbit ServiceControlOptions_bits[] = {
1135 { 0, &hf_dap_ServiceControlOptions_preferChaining, -1, -1, "preferChaining", NULL },
1136 { 1, &hf_dap_ServiceControlOptions_chainingProhibited, -1, -1, "chainingProhibited", NULL },
1137 { 2, &hf_dap_ServiceControlOptions_localScope, -1, -1, "localScope", NULL },
1138 { 3, &hf_dap_ServiceControlOptions_dontUseCopy, -1, -1, "dontUseCopy", NULL },
1139 { 4, &hf_dap_ServiceControlOptions_dontDereferenceAliases, -1, -1, "dontDereferenceAliases", NULL },
1140 { 5, &hf_dap_ServiceControlOptions_subentries, -1, -1, "subentries", NULL },
1141 { 6, &hf_dap_ServiceControlOptions_copyShallDo, -1, -1, "copyShallDo", NULL },
1142 { 7, &hf_dap_ServiceControlOptions_partialNameResolution, -1, -1, "partialNameResolution", NULL },
1143 { 8, &hf_dap_ServiceControlOptions_manageDSAIT, -1, -1, "manageDSAIT", NULL },
1144 { 9, &hf_dap_ServiceControlOptions_noSubtypeMatch, -1, -1, "noSubtypeMatch", NULL },
1145 { 10, &hf_dap_ServiceControlOptions_noSubtypeSelection, -1, -1, "noSubtypeSelection", NULL },
1146 { 11, &hf_dap_ServiceControlOptions_countFamily, -1, -1, "countFamily", NULL },
1147 { 0, NULL, 0, 0, NULL, NULL }
1151 dissect_dap_ServiceControlOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1152 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
1153 ServiceControlOptions_bits, hf_index, ett_dap_ServiceControlOptions,
1158 static int dissect_options(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1159 return dissect_dap_ServiceControlOptions(FALSE, tvb, offset, pinfo, tree, hf_dap_options);
1163 static const value_string dap_T_priority_vals[] = {
1172 dissect_dap_T_priority(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1173 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1178 static int dissect_priority(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1179 return dissect_dap_T_priority(FALSE, tvb, offset, pinfo, tree, hf_dap_priority);
1185 dissect_dap_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1186 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1191 static int dissect_timeLimit(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1192 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_timeLimit);
1194 static int dissect_sizeLimit(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1195 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_sizeLimit);
1197 static int dissect_attributeSizeLimit(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1198 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_attributeSizeLimit);
1200 static int dissect_userClass(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1201 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_userClass);
1203 static int dissect_pageSize(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1204 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_pageSize);
1206 static int dissect_aliasedRDNs(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1207 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_aliasedRDNs);
1209 static int dissect_bestEstimate(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1210 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_bestEstimate);
1212 static int dissect_lowEstimate(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1213 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_lowEstimate);
1215 static int dissect_extendedArea(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1216 return dissect_dap_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dap_extendedArea);
1220 static const value_string dap_T_scopeOfReferral_vals[] = {
1228 dissect_dap_T_scopeOfReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1229 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1234 static int dissect_scopeOfReferral(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1235 return dissect_dap_T_scopeOfReferral(FALSE, tvb, offset, pinfo, tree, hf_dap_scopeOfReferral);
1239 static const value_string dap_Name_vals[] = {
1240 { 0, "rdnSequence" },
1244 static const ber_choice_t Name_choice[] = {
1245 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_rdnSequence },
1246 { 0, 0, 0, 0, NULL }
1250 dissect_dap_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1254 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1255 Name_choice, hf_index, ett_dap_Name,
1259 if(check_col(pinfo->cinfo, COL_INFO)) {
1260 dn = x509if_get_last_dn();
1261 col_append_fstr(pinfo->cinfo, COL_INFO, " %s", (dn && *dn) ? dn : "(root)");
1268 static int dissect_dsaName(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1269 return dissect_dap_Name(FALSE, tvb, offset, pinfo, tree, hf_dap_dsaName);
1271 static int dissect_name(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1272 return dissect_dap_Name(FALSE, tvb, offset, pinfo, tree, hf_dap_name);
1274 static int dissect_object(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1275 return dissect_dap_Name(FALSE, tvb, offset, pinfo, tree, hf_dap_object);
1277 static int dissect_baseObject(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1278 return dissect_dap_Name(FALSE, tvb, offset, pinfo, tree, hf_dap_baseObject);
1280 static int dissect_joinBaseObject(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1281 return dissect_dap_Name(FALSE, tvb, offset, pinfo, tree, hf_dap_joinBaseObject);
1283 static int dissect_matched_name(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1284 return dissect_dap_Name(FALSE, tvb, offset, pinfo, tree, hf_dap_matched_name);
1288 static const ber_sequence_t T_manageDSAITPlaneRef_sequence[] = {
1289 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dsaName },
1290 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_agreementID },
1295 dissect_dap_T_manageDSAITPlaneRef(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1296 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1297 T_manageDSAITPlaneRef_sequence, hf_index, ett_dap_T_manageDSAITPlaneRef);
1301 static int dissect_manageDSAITPlaneRef(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1302 return dissect_dap_T_manageDSAITPlaneRef(FALSE, tvb, offset, pinfo, tree, hf_dap_manageDSAITPlaneRef);
1308 dissect_dap_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1309 offset = dissect_ber_object_identifier(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL);
1313 static int dissect_serviceType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1314 return dissect_dap_OBJECT_IDENTIFIER(FALSE, tvb, offset, pinfo, tree, hf_dap_serviceType);
1316 static int dissect_familySelect_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1317 return dissect_dap_OBJECT_IDENTIFIER(FALSE, tvb, offset, pinfo, tree, hf_dap_familySelect_item);
1319 static int dissect_family_class(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1320 return dissect_dap_OBJECT_IDENTIFIER(FALSE, tvb, offset, pinfo, tree, hf_dap_family_class);
1322 static int dissect_sunstringType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1323 return dissect_dap_OBJECT_IDENTIFIER(FALSE, tvb, offset, pinfo, tree, hf_dap_sunstringType);
1325 static int dissect_matchingRule_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1326 return dissect_dap_OBJECT_IDENTIFIER(FALSE, tvb, offset, pinfo, tree, hf_dap_matchingRule_item);
1328 static int dissect_orderingRule(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1329 return dissect_dap_OBJECT_IDENTIFIER(FALSE, tvb, offset, pinfo, tree, hf_dap_orderingRule);
1331 static int dissect_unknownErrors_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1332 return dissect_dap_OBJECT_IDENTIFIER(FALSE, tvb, offset, pinfo, tree, hf_dap_unknownErrors_item);
1336 static const ber_sequence_t ServiceControls_set[] = {
1337 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_options },
1338 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_priority },
1339 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_timeLimit },
1340 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_sizeLimit },
1341 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_scopeOfReferral },
1342 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_attributeSizeLimit },
1343 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_manageDSAITPlaneRef },
1344 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_serviceType },
1345 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_userClass },
1350 dissect_dap_ServiceControls(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1351 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1352 ServiceControls_set, hf_index, ett_dap_ServiceControls);
1356 static int dissect_serviceControls(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1357 return dissect_dap_ServiceControls(FALSE, tvb, offset, pinfo, tree, hf_dap_serviceControls);
1363 dissect_dap_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1364 offset = dissect_ber_null(implicit_tag, pinfo, tree, tvb, offset, hf_index);
1368 static int dissect_allUserAttributes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1369 return dissect_dap_NULL(FALSE, tvb, offset, pinfo, tree, hf_dap_allUserAttributes);
1371 static int dissect_allOperationalAttributes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1372 return dissect_dap_NULL(FALSE, tvb, offset, pinfo, tree, hf_dap_allOperationalAttributes);
1374 static int dissect_allContexts(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1375 return dissect_dap_NULL(FALSE, tvb, offset, pinfo, tree, hf_dap_allContexts);
1377 static int dissect_item_entry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1378 return dissect_dap_NULL(FALSE, tvb, offset, pinfo, tree, hf_dap_item_entry);
1380 static int dissect_null(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1381 return dissect_dap_NULL(FALSE, tvb, offset, pinfo, tree, hf_dap_null);
1385 static const ber_sequence_t SET_OF_AttributeType_set_of[1] = {
1386 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_select_item },
1390 dissect_dap_SET_OF_AttributeType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1391 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
1392 SET_OF_AttributeType_set_of, hf_index, ett_dap_SET_OF_AttributeType);
1396 static int dissect_select(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1397 return dissect_dap_SET_OF_AttributeType(FALSE, tvb, offset, pinfo, tree, hf_dap_select);
1401 static const value_string dap_T_attributes_vals[] = {
1402 { 0, "allUserAttributes" },
1407 static const ber_choice_t T_attributes_choice[] = {
1408 { 0, BER_CLASS_CON, 0, 0, dissect_allUserAttributes },
1409 { 1, BER_CLASS_CON, 1, 0, dissect_select },
1410 { 0, 0, 0, 0, NULL }
1414 dissect_dap_T_attributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1415 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1416 T_attributes_choice, hf_index, ett_dap_T_attributes,
1421 static int dissect_attributes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1422 return dissect_dap_T_attributes(FALSE, tvb, offset, pinfo, tree, hf_dap_attributes);
1426 static const value_string dap_T_infoTypes_vals[] = {
1427 { 0, "attributeTypesOnly" },
1428 { 1, "attributeTypesAndValues" },
1434 dissect_dap_T_infoTypes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1435 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1440 static int dissect_infoTypes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1441 return dissect_dap_T_infoTypes(FALSE, tvb, offset, pinfo, tree, hf_dap_infoTypes);
1445 static const value_string dap_T_extraAttributes_vals[] = {
1446 { 3, "allOperationalAttributes" },
1451 static const ber_choice_t T_extraAttributes_choice[] = {
1452 { 3, BER_CLASS_CON, 3, 0, dissect_allOperationalAttributes },
1453 { 4, BER_CLASS_CON, 4, 0, dissect_select },
1454 { 0, 0, 0, 0, NULL }
1458 dissect_dap_T_extraAttributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1459 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1460 T_extraAttributes_choice, hf_index, ett_dap_T_extraAttributes,
1465 static int dissect_extraAttributes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1466 return dissect_dap_T_extraAttributes(FALSE, tvb, offset, pinfo, tree, hf_dap_extraAttributes);
1470 static const ber_sequence_t SEQUENCE_OF_ContextAssertion_sequence_of[1] = {
1471 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_preference_item },
1475 dissect_dap_SEQUENCE_OF_ContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1476 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1477 SEQUENCE_OF_ContextAssertion_sequence_of, hf_index, ett_dap_SEQUENCE_OF_ContextAssertion);
1481 static int dissect_preference(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1482 return dissect_dap_SEQUENCE_OF_ContextAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_preference);
1486 static const ber_sequence_t SET_OF_ContextAssertion_set_of[1] = {
1487 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_all_item },
1491 dissect_dap_SET_OF_ContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1492 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
1493 SET_OF_ContextAssertion_set_of, hf_index, ett_dap_SET_OF_ContextAssertion);
1497 static int dissect_all(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1498 return dissect_dap_SET_OF_ContextAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_all);
1502 static const value_string dap_T_contextAssertions_vals[] = {
1503 { 0, "preference" },
1508 static const ber_choice_t T_contextAssertions_choice[] = {
1509 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_preference },
1510 { 1, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_all },
1511 { 0, 0, 0, 0, NULL }
1515 dissect_dap_T_contextAssertions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1516 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1517 T_contextAssertions_choice, hf_index, ett_dap_T_contextAssertions,
1522 static int dissect_contextAssertions(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1523 return dissect_dap_T_contextAssertions(FALSE, tvb, offset, pinfo, tree, hf_dap_contextAssertions);
1527 static const ber_sequence_t TypeAndContextAssertion_sequence[] = {
1528 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_type },
1529 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_contextAssertions },
1534 dissect_dap_TypeAndContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1535 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1536 TypeAndContextAssertion_sequence, hf_index, ett_dap_TypeAndContextAssertion);
1540 static int dissect_selectedContexts_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1541 return dissect_dap_TypeAndContextAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_selectedContexts_item);
1545 static const ber_sequence_t SET_OF_TypeAndContextAssertion_set_of[1] = {
1546 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_selectedContexts_item },
1550 dissect_dap_SET_OF_TypeAndContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1551 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
1552 SET_OF_TypeAndContextAssertion_set_of, hf_index, ett_dap_SET_OF_TypeAndContextAssertion);
1556 static int dissect_selectedContexts(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1557 return dissect_dap_SET_OF_TypeAndContextAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_selectedContexts);
1561 const value_string dap_ContextSelection_vals[] = {
1562 { 0, "allContexts" },
1563 { 1, "selectedContexts" },
1567 static const ber_choice_t ContextSelection_choice[] = {
1568 { 0, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_allContexts },
1569 { 1, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_selectedContexts },
1570 { 0, 0, 0, 0, NULL }
1574 dissect_dap_ContextSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1575 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1576 ContextSelection_choice, hf_index, ett_dap_ContextSelection,
1581 static int dissect_contextSelection(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1582 return dissect_dap_ContextSelection(FALSE, tvb, offset, pinfo, tree, hf_dap_contextSelection);
1584 static int dissect_operationContexts(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1585 return dissect_dap_ContextSelection(FALSE, tvb, offset, pinfo, tree, hf_dap_operationContexts);
1589 static const value_string dap_T_memberSelect_vals[] = {
1590 { 1, "contributingEntriesOnly" },
1591 { 2, "participatingEntriesOnly" },
1592 { 3, "compoundEntry" },
1598 dissect_dap_T_memberSelect(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1599 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
1604 static int dissect_memberSelect(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1605 return dissect_dap_T_memberSelect(FALSE, tvb, offset, pinfo, tree, hf_dap_memberSelect);
1609 static const ber_sequence_t T_familySelect_sequence_of[1] = {
1610 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_familySelect_item },
1614 dissect_dap_T_familySelect(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1615 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1616 T_familySelect_sequence_of, hf_index, ett_dap_T_familySelect);
1620 static int dissect_familySelect(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1621 return dissect_dap_T_familySelect(FALSE, tvb, offset, pinfo, tree, hf_dap_familySelect);
1625 static const ber_sequence_t FamilyReturn_sequence[] = {
1626 { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_memberSelect },
1627 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_familySelect },
1632 dissect_dap_FamilyReturn(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1633 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1634 FamilyReturn_sequence, hf_index, ett_dap_FamilyReturn);
1638 static int dissect_familyReturn(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1639 return dissect_dap_FamilyReturn(FALSE, tvb, offset, pinfo, tree, hf_dap_familyReturn);
1643 static const ber_sequence_t EntryInformationSelection_set[] = {
1644 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_attributes },
1645 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_infoTypes },
1646 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_extraAttributes },
1647 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_contextSelection },
1648 { BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_returnContexts },
1649 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_familyReturn },
1654 dissect_dap_EntryInformationSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1655 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1656 EntryInformationSelection_set, hf_index, ett_dap_EntryInformationSelection);
1660 static int dissect_selection(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1661 return dissect_dap_EntryInformationSelection(FALSE, tvb, offset, pinfo, tree, hf_dap_selection);
1663 static int dissect_joinSelection(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1664 return dissect_dap_EntryInformationSelection(FALSE, tvb, offset, pinfo, tree, hf_dap_joinSelection);
1668 static const value_string dap_EntryInformationItem_vals[] = {
1669 { 0, "attributeType" },
1674 static const ber_choice_t EntryInformationItem_choice[] = {
1675 { 0, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_attributeType },
1676 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_attribute },
1677 { 0, 0, 0, 0, NULL }
1681 dissect_dap_EntryInformationItem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1682 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1683 EntryInformationItem_choice, hf_index, ett_dap_EntryInformationItem,
1688 static int dissect_entry_information_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1689 return dissect_dap_EntryInformationItem(FALSE, tvb, offset, pinfo, tree, hf_dap_entry_information_item);
1693 static const ber_sequence_t T_entry_information_set_of[1] = {
1694 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_entry_information_item },
1698 dissect_dap_T_entry_information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1699 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
1700 T_entry_information_set_of, hf_index, ett_dap_T_entry_information);
1704 static int dissect_entry_information(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1705 return dissect_dap_T_entry_information(FALSE, tvb, offset, pinfo, tree, hf_dap_entry_information);
1709 static const ber_sequence_t EntryInformation_sequence[] = {
1710 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_name },
1711 { BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_fromEntry },
1712 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_entry_information },
1713 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_incompleteEntry },
1714 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_partialName },
1715 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_derivedEntry },
1720 dissect_dap_EntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1721 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1722 EntryInformation_sequence, hf_index, ett_dap_EntryInformation);
1726 static int dissect_entry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1727 return dissect_dap_EntryInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_entry);
1729 static int dissect_entries_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1730 return dissect_dap_EntryInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_entries_item);
1734 static const value_string dap_T_family_information_item_vals[] = {
1735 { 0, "attributeType" },
1740 static const ber_choice_t T_family_information_item_choice[] = {
1741 { 0, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_attributeType },
1742 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_attribute },
1743 { 0, 0, 0, 0, NULL }
1747 dissect_dap_T_family_information_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1748 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1749 T_family_information_item_choice, hf_index, ett_dap_T_family_information_item,
1754 static int dissect_family_information_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1755 return dissect_dap_T_family_information_item(FALSE, tvb, offset, pinfo, tree, hf_dap_family_information_item);
1759 static const ber_sequence_t FamilyInformation_sequence_of[1] = {
1760 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_family_information_item },
1764 dissect_dap_FamilyInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1765 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1766 FamilyInformation_sequence_of, hf_index, ett_dap_FamilyInformation);
1770 static int dissect_family_information(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1771 return dissect_dap_FamilyInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_family_information);
1775 static const ber_sequence_t SEQUENCE_OF_FamilyEntries_sequence_of[1] = {
1776 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_family_info_item },
1780 dissect_dap_SEQUENCE_OF_FamilyEntries(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1781 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1782 SEQUENCE_OF_FamilyEntries_sequence_of, hf_index, ett_dap_SEQUENCE_OF_FamilyEntries);
1786 static int dissect_family_info(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1787 return dissect_dap_SEQUENCE_OF_FamilyEntries(FALSE, tvb, offset, pinfo, tree, hf_dap_family_info);
1791 static const ber_sequence_t FamilyEntry_sequence[] = {
1792 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_rdn },
1793 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_family_information },
1794 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_family_info },
1799 dissect_dap_FamilyEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1800 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1801 FamilyEntry_sequence, hf_index, ett_dap_FamilyEntry);
1805 static int dissect_familyEntries_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1806 return dissect_dap_FamilyEntry(FALSE, tvb, offset, pinfo, tree, hf_dap_familyEntries_item);
1810 static const ber_sequence_t SEQUENCE_OF_FamilyEntry_sequence_of[1] = {
1811 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_familyEntries_item },
1815 dissect_dap_SEQUENCE_OF_FamilyEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1816 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1817 SEQUENCE_OF_FamilyEntry_sequence_of, hf_index, ett_dap_SEQUENCE_OF_FamilyEntry);
1821 static int dissect_familyEntries(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1822 return dissect_dap_SEQUENCE_OF_FamilyEntry(FALSE, tvb, offset, pinfo, tree, hf_dap_familyEntries);
1826 static const ber_sequence_t FamilyEntries_sequence[] = {
1827 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_family_class },
1828 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_familyEntries },
1833 dissect_dap_FamilyEntries(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1834 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1835 FamilyEntries_sequence, hf_index, ett_dap_FamilyEntries);
1843 dissect_dap_T_initial(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1846 it = proto_tree_add_item(tree, hf_index, tvb, offset, -1, FALSE);
1847 proto_item_append_text(it," XXX: Not yet implemented!");
1853 static int dissect_initial(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1854 return dissect_dap_T_initial(FALSE, tvb, offset, pinfo, tree, hf_dap_initial);
1860 dissect_dap_T_any(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1862 /* XXX: not yet implemented */
1868 static int dissect_any(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1869 return dissect_dap_T_any(FALSE, tvb, offset, pinfo, tree, hf_dap_any);
1875 dissect_dap_T_final(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1877 /* XXX: not yet implemented */
1883 static int dissect_final(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1884 return dissect_dap_T_final(FALSE, tvb, offset, pinfo, tree, hf_dap_final);
1888 static const value_string dap_T_strings_item_vals[] = {
1896 static const ber_choice_t T_strings_item_choice[] = {
1897 { 0, BER_CLASS_CON, 0, 0, dissect_initial },
1898 { 1, BER_CLASS_CON, 1, 0, dissect_any },
1899 { 2, BER_CLASS_CON, 2, 0, dissect_final },
1900 { 3, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_control },
1901 { 0, 0, 0, 0, NULL }
1905 dissect_dap_T_strings_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1906 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1907 T_strings_item_choice, hf_index, ett_dap_T_strings_item,
1912 static int dissect_strings_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1913 return dissect_dap_T_strings_item(FALSE, tvb, offset, pinfo, tree, hf_dap_strings_item);
1917 static const ber_sequence_t T_strings_sequence_of[1] = {
1918 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_strings_item },
1922 dissect_dap_T_strings(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1923 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
1924 T_strings_sequence_of, hf_index, ett_dap_T_strings);
1928 static int dissect_strings(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1929 return dissect_dap_T_strings(FALSE, tvb, offset, pinfo, tree, hf_dap_strings);
1933 static const ber_sequence_t T_substrings_sequence[] = {
1934 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_sunstringType },
1935 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_strings },
1940 dissect_dap_T_substrings(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1941 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1942 T_substrings_sequence, hf_index, ett_dap_T_substrings);
1946 static int dissect_substrings(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1947 return dissect_dap_T_substrings(FALSE, tvb, offset, pinfo, tree, hf_dap_substrings);
1951 static const ber_sequence_t T_matchingRule_set_of[1] = {
1952 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_matchingRule_item },
1956 dissect_dap_T_matchingRule(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1957 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
1958 T_matchingRule_set_of, hf_index, ett_dap_T_matchingRule);
1962 static int dissect_matchingRule(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1963 return dissect_dap_T_matchingRule(FALSE, tvb, offset, pinfo, tree, hf_dap_matchingRule);
1969 dissect_dap_T_matchValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1971 /* XXX: not yet implemented */
1977 static int dissect_matchValue(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1978 return dissect_dap_T_matchValue(FALSE, tvb, offset, pinfo, tree, hf_dap_matchValue);
1982 static const ber_sequence_t MatchingRuleAssertion_sequence[] = {
1983 { BER_CLASS_CON, 1, 0, dissect_matchingRule },
1984 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_type },
1985 { BER_CLASS_CON, 3, 0, dissect_matchValue },
1986 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dnAttributes },
1991 dissect_dap_MatchingRuleAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1992 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1993 MatchingRuleAssertion_sequence, hf_index, ett_dap_MatchingRuleAssertion);
1997 static int dissect_extensibleMatch(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
1998 return dissect_dap_MatchingRuleAssertion(FALSE, tvb, offset, pinfo, tree, hf_dap_extensibleMatch);
2002 static const value_string dap_FilterItem_vals[] = {
2004 { 1, "substrings" },
2005 { 2, "greaterOrEqual" },
2006 { 3, "lessOrEqual" },
2008 { 5, "approximateMatch" },
2009 { 6, "extensibleMatch" },
2010 { 7, "contextPresent" },
2014 static const ber_choice_t FilterItem_choice[] = {
2015 { 0, BER_CLASS_CON, 0, 0, dissect_equality },
2016 { 1, BER_CLASS_CON, 1, 0, dissect_substrings },
2017 { 2, BER_CLASS_CON, 2, 0, dissect_greaterOrEqual },
2018 { 3, BER_CLASS_CON, 3, 0, dissect_lessOrEqual },
2019 { 4, BER_CLASS_CON, 4, 0, dissect_present },
2020 { 5, BER_CLASS_CON, 5, 0, dissect_approximateMatch },
2021 { 6, BER_CLASS_CON, 6, 0, dissect_extensibleMatch },
2022 { 7, BER_CLASS_CON, 7, 0, dissect_contextPresent },
2023 { 0, 0, 0, 0, NULL }
2027 dissect_dap_FilterItem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2028 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2029 FilterItem_choice, hf_index, ett_dap_FilterItem,
2034 static int dissect_filter_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2035 return dissect_dap_FilterItem(FALSE, tvb, offset, pinfo, tree, hf_dap_filter_item);
2039 static const ber_sequence_t SetOfFilter_set_of[1] = {
2040 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_SetOfFilter_item },
2044 dissect_dap_SetOfFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2045 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
2046 SetOfFilter_set_of, hf_index, ett_dap_SetOfFilter);
2050 static int dissect_and(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2051 return dissect_dap_SetOfFilter(FALSE, tvb, offset, pinfo, tree, hf_dap_and);
2053 static int dissect_or(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2054 return dissect_dap_SetOfFilter(FALSE, tvb, offset, pinfo, tree, hf_dap_or);
2058 const value_string dap_Filter_vals[] = {
2066 static const ber_choice_t Filter_choice[] = {
2067 { 0, BER_CLASS_CON, 0, 0, dissect_filter_item },
2068 { 1, BER_CLASS_CON, 1, 0, dissect_and },
2069 { 2, BER_CLASS_CON, 2, 0, dissect_or },
2070 { 3, BER_CLASS_CON, 3, 0, dissect_not },
2071 { 0, 0, 0, 0, NULL }
2075 dissect_dap_Filter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2076 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2077 Filter_choice, hf_index, ett_dap_Filter,
2084 static const ber_sequence_t SortKey_sequence[] = {
2085 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_type },
2086 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_orderingRule },
2091 dissect_dap_SortKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2092 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2093 SortKey_sequence, hf_index, ett_dap_SortKey);
2097 static int dissect_sortKeys_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2098 return dissect_dap_SortKey(FALSE, tvb, offset, pinfo, tree, hf_dap_sortKeys_item);
2102 static const ber_sequence_t SEQUENCE_OF_SortKey_sequence_of[1] = {
2103 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_sortKeys_item },
2107 dissect_dap_SEQUENCE_OF_SortKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2108 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2109 SEQUENCE_OF_SortKey_sequence_of, hf_index, ett_dap_SEQUENCE_OF_SortKey);
2113 static int dissect_sortKeys(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2114 return dissect_dap_SEQUENCE_OF_SortKey(FALSE, tvb, offset, pinfo, tree, hf_dap_sortKeys);
2118 static const ber_sequence_t T_newRequest_sequence[] = {
2119 { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_pageSize },
2120 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_sortKeys },
2121 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_reverse },
2122 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_unmerged },
2127 dissect_dap_T_newRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2128 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2129 T_newRequest_sequence, hf_index, ett_dap_T_newRequest);
2133 static int dissect_newRequest(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2134 return dissect_dap_T_newRequest(FALSE, tvb, offset, pinfo, tree, hf_dap_newRequest);
2140 dissect_dap_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2145 proto_item *oct_item;
2147 offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2152 len = tvb_length(out_tvb);
2153 /* now see if we can add a string representation */
2154 for(i=0; i<len; i++)
2155 if(!g_ascii_isprint(tvb_get_guint8(out_tvb, i)))
2159 if((oct_item = get_ber_last_created_item())) {
2161 proto_item_append_text(oct_item," (");
2162 for(i=0; i<len; i++)
2163 proto_item_append_text(oct_item,"%c",tvb_get_guint8(out_tvb,i));
2164 proto_item_append_text(oct_item,")");
2173 static int dissect_queryReference(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2174 return dissect_dap_OCTET_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_queryReference);
2176 static int dissect_unprotected(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2177 return dissect_dap_OCTET_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_unprotected);
2179 static int dissect_protectedPassword(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2180 return dissect_dap_OCTET_STRING(FALSE, tvb, offset, pinfo, tree, hf_dap_protectedPassword);
2184 static const value_string dap_PagedResultsRequest_vals[] = {
2185 { 0, "newRequest" },
2186 { 1, "queryReference" },
2190 static const ber_choice_t PagedResultsRequest_choice[] = {
2191 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_newRequest },
2192 { 1, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_queryReference },
2193 { 0, 0, 0, 0, NULL }
2197 dissect_dap_PagedResultsRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2198 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2199 PagedResultsRequest_choice, hf_index, ett_dap_PagedResultsRequest,
2204 static int dissect_pagedResults(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2205 return dissect_dap_PagedResultsRequest(FALSE, tvb, offset, pinfo, tree, hf_dap_pagedResults);
2209 static const value_string dap_T_time1_vals[] = {
2215 static const ber_choice_t T_time1_choice[] = {
2216 { 0, BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_utc },
2217 { 1, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_gt },
2218 { 0, 0, 0, 0, NULL }
2222 dissect_dap_T_time1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2223 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2224 T_time1_choice, hf_index, ett_dap_T_time1,
2229 static int dissect_time1(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2230 return dissect_dap_T_time1(FALSE, tvb, offset, pinfo, tree, hf_dap_time1);
2234 static const value_string dap_T_time2_vals[] = {
2240 static const ber_choice_t T_time2_choice[] = {
2241 { 0, BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_utc },
2242 { 1, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_gt },
2243 { 0, 0, 0, 0, NULL }
2247 dissect_dap_T_time2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2248 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2249 T_time2_choice, hf_index, ett_dap_T_time2,
2254 static int dissect_time2(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2255 return dissect_dap_T_time2(FALSE, tvb, offset, pinfo, tree, hf_dap_time2);
2259 static const ber_sequence_t T_validity_set[] = {
2260 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_time1 },
2261 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_time2 },
2262 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_random1 },
2263 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_random2 },
2268 dissect_dap_T_validity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2269 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2270 T_validity_set, hf_index, ett_dap_T_validity);
2274 static int dissect_validity(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2275 return dissect_dap_T_validity(FALSE, tvb, offset, pinfo, tree, hf_dap_validity);
2279 static const ber_sequence_t T_protected_sequence[] = {
2280 { BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_protectedPassword },
2281 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
2282 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
2287 dissect_dap_T_protected(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2288 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2289 T_protected_sequence, hf_index, ett_dap_T_protected);
2293 static int dissect_protected(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2294 return dissect_dap_T_protected(FALSE, tvb, offset, pinfo, tree, hf_dap_protected);
2298 static const value_string dap_T_password_vals[] = {
2299 { 0, "unprotected" },
2304 static const ber_choice_t T_password_choice[] = {
2305 { 0, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_unprotected },
2306 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_protected },
2307 { 0, 0, 0, 0, NULL }
2311 dissect_dap_T_password(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2312 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2313 T_password_choice, hf_index, ett_dap_T_password,
2318 static int dissect_password(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2319 return dissect_dap_T_password(FALSE, tvb, offset, pinfo, tree, hf_dap_password);
2323 static const ber_sequence_t SimpleCredentials_sequence[] = {
2324 { BER_CLASS_CON, 0, 0, dissect_distinguished_name },
2325 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_validity },
2326 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_password },
2331 dissect_dap_SimpleCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2334 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2335 SimpleCredentials_sequence, hf_index, ett_dap_SimpleCredentials);
2338 if(check_col(pinfo->cinfo, COL_INFO))
2339 col_append_fstr(pinfo->cinfo, COL_INFO, " %s", x509if_get_last_dn());
2345 static int dissect_simple(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2346 return dissect_dap_SimpleCredentials(FALSE, tvb, offset, pinfo, tree, hf_dap_simple);
2350 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier_sequence_of[1] = {
2351 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_bindIntAlgorithm_item },
2355 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2356 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2357 SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier);
2361 static int dissect_bindIntAlgorithm(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2362 return dissect_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dap_bindIntAlgorithm);
2364 static int dissect_bindConfAlgorithm(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2365 return dissect_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dap_bindConfAlgorithm);
2371 dissect_dap_BindKeyInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2372 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
2378 static int dissect_bindIntKeyInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2379 return dissect_dap_BindKeyInfo(FALSE, tvb, offset, pinfo, tree, hf_dap_bindIntKeyInfo);
2381 static int dissect_bindConfKeyInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2382 return dissect_dap_BindKeyInfo(FALSE, tvb, offset, pinfo, tree, hf_dap_bindConfKeyInfo);
2386 static const ber_sequence_t TokenData_sequence[] = {
2387 { BER_CLASS_CON, 0, 0, dissect_algorithm },
2388 { BER_CLASS_CON, 1, 0, dissect_distinguished_name },
2389 { BER_CLASS_CON, 2, 0, dissect_utctime },
2390 { BER_CLASS_CON, 3, 0, dissect_random },
2391 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_response },
2392 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_bindIntAlgorithm },
2393 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_bindIntKeyInfo },
2394 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_bindConfAlgorithm },
2395 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_bindConfKeyInfo },
2400 dissect_dap_TokenData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2401 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2402 TokenData_sequence, hf_index, ett_dap_TokenData);
2406 static int dissect_token_data(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2407 return dissect_dap_TokenData(FALSE, tvb, offset, pinfo, tree, hf_dap_token_data);
2411 static const ber_sequence_t Token_sequence[] = {
2412 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_token_data },
2413 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithm_identifier },
2414 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
2419 dissect_dap_Token(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2420 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2421 Token_sequence, hf_index, ett_dap_Token);
2425 static int dissect_bind_token(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2426 return dissect_dap_Token(FALSE, tvb, offset, pinfo, tree, hf_dap_bind_token);
2430 static const ber_sequence_t StrongCredentials_set[] = {
2431 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_certification_path },
2432 { BER_CLASS_CON, 1, 0, dissect_bind_token },
2433 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_distinguished_name },
2434 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_attributeCertificationPath },
2439 dissect_dap_StrongCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2440 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2441 StrongCredentials_set, hf_index, ett_dap_StrongCredentials);
2445 static int dissect_strong(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2446 return dissect_dap_StrongCredentials(FALSE, tvb, offset, pinfo, tree, hf_dap_strong);
2452 dissect_dap_T_req(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2454 /* XXX: not yet implemented */
2460 static int dissect_req(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2461 return dissect_dap_T_req(FALSE, tvb, offset, pinfo, tree, hf_dap_req);
2467 dissect_dap_T_rep(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2469 /* XXX: not yet implemented */
2475 static int dissect_rep(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2476 return dissect_dap_T_rep(FALSE, tvb, offset, pinfo, tree, hf_dap_rep);
2480 static const value_string dap_SpkmCredentials_vals[] = {
2486 static const ber_choice_t SpkmCredentials_choice[] = {
2487 { 0, BER_CLASS_CON, 0, 0, dissect_req },
2488 { 1, BER_CLASS_CON, 1, 0, dissect_rep },
2489 { 0, 0, 0, 0, NULL }
2493 dissect_dap_SpkmCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2494 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2495 SpkmCredentials_choice, hf_index, ett_dap_SpkmCredentials,
2500 static int dissect_spkm(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2501 return dissect_dap_SpkmCredentials(FALSE, tvb, offset, pinfo, tree, hf_dap_spkm);
2505 static const value_string dap_Credentials_vals[] = {
2508 { 2, "externalProcedure" },
2513 static const ber_choice_t Credentials_choice[] = {
2514 { 0, BER_CLASS_CON, 0, 0, dissect_simple },
2515 { 1, BER_CLASS_CON, 1, 0, dissect_strong },
2516 { 2, BER_CLASS_CON, 2, 0, dissect_externalProcedure },
2517 { 3, BER_CLASS_CON, 3, 0, dissect_spkm },
2518 { 0, 0, 0, 0, NULL }
2522 dissect_dap_Credentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2523 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2524 Credentials_choice, hf_index, ett_dap_Credentials,
2529 static int dissect_credentials(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2530 return dissect_dap_Credentials(FALSE, tvb, offset, pinfo, tree, hf_dap_credentials);
2534 static const asn_namedbit Versions_bits[] = {
2535 { 0, &hf_dap_Versions_v1, -1, -1, "v1", NULL },
2536 { 1, &hf_dap_Versions_v2, -1, -1, "v2", NULL },
2537 { 0, NULL, 0, 0, NULL, NULL }
2541 dissect_dap_Versions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2542 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
2543 Versions_bits, hf_index, ett_dap_Versions,
2548 static int dissect_versions(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2549 return dissect_dap_Versions(FALSE, tvb, offset, pinfo, tree, hf_dap_versions);
2553 static const ber_sequence_t DirectoryBindArgument_set[] = {
2554 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_credentials },
2555 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_versions },
2560 dissect_dap_DirectoryBindArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2565 /* check and see if this is an empty set */
2566 dissect_ber_length(pinfo, tree, tvb, offset+1, &len, NULL);
2569 /* its an empty set - i.e anonymous (assuming version is DEFAULTed) */
2570 proto_tree_add_text(tree, tvb, offset, -1,"Anonymous");
2572 if(check_col(pinfo->cinfo, COL_INFO))
2573 col_append_fstr(pinfo->cinfo, COL_INFO, " anonymous");
2576 /* do the default thing */
2578 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2579 DirectoryBindArgument_set, hf_index, ett_dap_DirectoryBindArgument);
2590 dissect_dap_DirectoryBindResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2591 offset = dissect_dap_DirectoryBindArgument(implicit_tag, tvb, offset, pinfo, tree, hf_index);
2597 static const value_string dap_ServiceProblem_vals[] = {
2599 { 2, "unavailable" },
2600 { 3, "unwillingToPerform" },
2601 { 4, "chainingRequired" },
2602 { 5, "unableToProceed" },
2603 { 6, "invalidReference" },
2604 { 7, "timeLimitExceeded" },
2605 { 8, "administrativeLimitExceeded" },
2606 { 9, "loopDetected" },
2607 { 10, "unavailableCriticalExtension" },
2608 { 11, "outOfScope" },
2610 { 13, "invalidQueryReference" },
2611 { 14, "requestedServiceNotAvailable" },
2612 { 15, "relaxationNotSupported" },
2613 { 16, "unsupportedMatchingUse" },
2619 dissect_dap_ServiceProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2623 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2627 if (check_col(pinfo->cinfo, COL_INFO)) {
2628 col_append_fstr(pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_ServiceProblem_vals, "ServiceProblem(%d)"));
2635 static int dissect_serviceProblem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2636 return dissect_dap_ServiceProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_serviceProblem);
2638 static int dissect_service_error_problem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2639 return dissect_dap_ServiceProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_service_error_problem);
2643 static const value_string dap_SecurityProblem_vals[] = {
2644 { 1, "inappropriateAuthentication" },
2645 { 2, "invalidCredentials" },
2646 { 3, "insufficientAccessRights" },
2647 { 4, "invalidSignature" },
2648 { 5, "protectionRequired" },
2649 { 6, "noInformation" },
2650 { 7, "blockedCredentials" },
2651 { 8, "invalidQOPMatch" },
2658 dissect_dap_SecurityProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2662 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
2666 if (check_col(pinfo->cinfo, COL_INFO)) {
2667 col_append_fstr(pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_SecurityProblem_vals, "SecurityProblem(%d)"));
2674 static int dissect_securityProblem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2675 return dissect_dap_SecurityProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_securityProblem);
2677 static int dissect_security_error_problem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2678 return dissect_dap_SecurityProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_security_error_problem);
2682 static const value_string dap_T_error_vals[] = {
2683 { 1, "serviceError" },
2684 { 2, "securityError" },
2688 static const ber_choice_t T_error_choice[] = {
2689 { 1, BER_CLASS_CON, 1, 0, dissect_serviceProblem },
2690 { 2, BER_CLASS_CON, 2, 0, dissect_securityProblem },
2691 { 0, 0, 0, 0, NULL }
2695 dissect_dap_T_error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2696 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2697 T_error_choice, hf_index, ett_dap_T_error,
2702 static int dissect_error(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2703 return dissect_dap_T_error(FALSE, tvb, offset, pinfo, tree, hf_dap_error);
2707 static const ber_sequence_t DirectoryBindErrorData_set[] = {
2708 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_versions },
2709 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_error },
2714 dissect_dap_DirectoryBindErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2715 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2716 DirectoryBindErrorData_set, hf_index, ett_dap_DirectoryBindErrorData);
2720 static int dissect_unsignedDirectoryBindError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2721 return dissect_dap_DirectoryBindErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedDirectoryBindError);
2723 static int dissect_directoryBindError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2724 return dissect_dap_DirectoryBindErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_directoryBindError);
2728 static const ber_sequence_t T_signedDirectoryBindError_sequence[] = {
2729 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_directoryBindError },
2730 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
2731 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
2736 dissect_dap_T_signedDirectoryBindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2737 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2738 T_signedDirectoryBindError_sequence, hf_index, ett_dap_T_signedDirectoryBindError);
2742 static int dissect_signedDirectoryBindError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2743 return dissect_dap_T_signedDirectoryBindError(FALSE, tvb, offset, pinfo, tree, hf_dap_signedDirectoryBindError);
2747 const value_string dap_DirectoryBindError_vals[] = {
2748 { 0, "unsignedDirectoryBindError" },
2749 { 1, "signedDirectoryBindError" },
2753 static const ber_choice_t DirectoryBindError_choice[] = {
2754 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedDirectoryBindError },
2755 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedDirectoryBindError },
2756 { 0, 0, 0, 0, NULL }
2760 dissect_dap_DirectoryBindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2761 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2762 DirectoryBindError_choice, hf_index, ett_dap_DirectoryBindError,
2769 static const ber_sequence_t ReadArgumentData_set[] = {
2770 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_object },
2771 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_selection },
2772 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_modifyRightsRequest },
2773 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
2774 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
2775 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
2776 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
2777 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
2778 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
2779 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
2780 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
2781 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
2782 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
2783 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
2788 dissect_dap_ReadArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2789 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2790 ReadArgumentData_set, hf_index, ett_dap_ReadArgumentData);
2794 static int dissect_unsignedReadArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2795 return dissect_dap_ReadArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedReadArgument);
2797 static int dissect_readArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2798 return dissect_dap_ReadArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_readArgument);
2802 static const ber_sequence_t T_signedReadArgument_sequence[] = {
2803 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_readArgument },
2804 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
2805 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
2810 dissect_dap_T_signedReadArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2811 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2812 T_signedReadArgument_sequence, hf_index, ett_dap_T_signedReadArgument);
2816 static int dissect_signedReadArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2817 return dissect_dap_T_signedReadArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedReadArgument);
2821 const value_string dap_ReadArgument_vals[] = {
2822 { 0, "unsignedReadArgument" },
2823 { 1, "signedReadArgument" },
2827 static const ber_choice_t ReadArgument_choice[] = {
2828 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedReadArgument },
2829 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedReadArgument },
2830 { 0, 0, 0, 0, NULL }
2834 dissect_dap_ReadArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2835 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2836 ReadArgument_choice, hf_index, ett_dap_ReadArgument,
2843 static const value_string dap_T_item_vals[] = {
2850 static const ber_choice_t T_item_choice[] = {
2851 { 0, BER_CLASS_CON, 0, 0, dissect_item_entry },
2852 { 1, BER_CLASS_CON, 1, 0, dissect_attribute_type },
2853 { 2, BER_CLASS_CON, 2, 0, dissect_value_assertion },
2854 { 0, 0, 0, 0, NULL }
2858 dissect_dap_T_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2859 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2860 T_item_choice, hf_index, ett_dap_T_item,
2865 static int dissect_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2866 return dissect_dap_T_item(FALSE, tvb, offset, pinfo, tree, hf_dap_item);
2870 static const asn_namedbit T_permission_bits[] = {
2871 { 0, &hf_dap_T_permission_add, -1, -1, "add", NULL },
2872 { 1, &hf_dap_T_permission_remove, -1, -1, "remove", NULL },
2873 { 2, &hf_dap_T_permission_rename, -1, -1, "rename", NULL },
2874 { 3, &hf_dap_T_permission_move, -1, -1, "move", NULL },
2875 { 0, NULL, 0, 0, NULL, NULL }
2879 dissect_dap_T_permission(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2880 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
2881 T_permission_bits, hf_index, ett_dap_T_permission,
2886 static int dissect_permission(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2887 return dissect_dap_T_permission(FALSE, tvb, offset, pinfo, tree, hf_dap_permission);
2891 static const ber_sequence_t ModifyRights_item_sequence[] = {
2892 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_item },
2893 { BER_CLASS_CON, 3, 0, dissect_permission },
2898 dissect_dap_ModifyRights_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2899 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2900 ModifyRights_item_sequence, hf_index, ett_dap_ModifyRights_item);
2904 static int dissect_ModifyRights_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2905 return dissect_dap_ModifyRights_item(FALSE, tvb, offset, pinfo, tree, hf_dap_ModifyRights_item);
2909 static const ber_sequence_t ModifyRights_set_of[1] = {
2910 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ModifyRights_item },
2914 dissect_dap_ModifyRights(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2915 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
2916 ModifyRights_set_of, hf_index, ett_dap_ModifyRights);
2920 static int dissect_modifyRights(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2921 return dissect_dap_ModifyRights(FALSE, tvb, offset, pinfo, tree, hf_dap_modifyRights);
2925 static const ber_sequence_t ReadResultData_set[] = {
2926 { BER_CLASS_CON, 0, 0, dissect_entry },
2927 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_modifyRights },
2928 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
2929 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
2930 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
2931 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
2936 dissect_dap_ReadResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2937 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2938 ReadResultData_set, hf_index, ett_dap_ReadResultData);
2942 static int dissect_unsignedReadResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2943 return dissect_dap_ReadResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedReadResult);
2945 static int dissect_readResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2946 return dissect_dap_ReadResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_readResult);
2950 static const ber_sequence_t T_signedReadResult_sequence[] = {
2951 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_readResult },
2952 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
2953 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
2958 dissect_dap_T_signedReadResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2959 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2960 T_signedReadResult_sequence, hf_index, ett_dap_T_signedReadResult);
2964 static int dissect_signedReadResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
2965 return dissect_dap_T_signedReadResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedReadResult);
2969 const value_string dap_ReadResult_vals[] = {
2970 { 0, "unsignedReadResult" },
2971 { 1, "signedReadResult" },
2975 static const ber_choice_t ReadResult_choice[] = {
2976 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedReadResult },
2977 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedReadResult },
2978 { 0, 0, 0, 0, NULL }
2982 dissect_dap_ReadResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2983 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2984 ReadResult_choice, hf_index, ett_dap_ReadResult,
2991 static const ber_sequence_t CompareArgumentData_set[] = {
2992 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_object },
2993 { BER_CLASS_CON, 1, 0, dissect_purported },
2994 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
2995 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
2996 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
2997 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
2998 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
2999 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
3000 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
3001 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
3002 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
3003 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
3004 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
3009 dissect_dap_CompareArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3010 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
3011 CompareArgumentData_set, hf_index, ett_dap_CompareArgumentData);
3015 static int dissect_unsignedCompareArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3016 return dissect_dap_CompareArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedCompareArgument);
3018 static int dissect_compareArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3019 return dissect_dap_CompareArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_compareArgument);
3023 static const ber_sequence_t T_signedCompareArgument_sequence[] = {
3024 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_compareArgument },
3025 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3026 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3031 dissect_dap_T_signedCompareArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3032 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3033 T_signedCompareArgument_sequence, hf_index, ett_dap_T_signedCompareArgument);
3037 static int dissect_signedCompareArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3038 return dissect_dap_T_signedCompareArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedCompareArgument);
3042 const value_string dap_CompareArgument_vals[] = {
3043 { 0, "unsignedCompareArgument" },
3044 { 1, "signedCompareArgument" },
3048 static const ber_choice_t CompareArgument_choice[] = {
3049 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedCompareArgument },
3050 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedCompareArgument },
3051 { 0, 0, 0, 0, NULL }
3055 dissect_dap_CompareArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3056 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3057 CompareArgument_choice, hf_index, ett_dap_CompareArgument,
3064 static const ber_sequence_t CompareResultData_set[] = {
3065 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_name },
3066 { BER_CLASS_CON, 0, 0, dissect_matched },
3067 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_fromEntry },
3068 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_matchedSubtype },
3069 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
3070 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
3071 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
3072 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
3077 dissect_dap_CompareResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3078 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
3079 CompareResultData_set, hf_index, ett_dap_CompareResultData);
3083 static int dissect_unsignedCompareResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3084 return dissect_dap_CompareResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedCompareResult);
3086 static int dissect_compareResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3087 return dissect_dap_CompareResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_compareResult);
3091 static const ber_sequence_t T_signedCompareResult_sequence[] = {
3092 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_compareResult },
3093 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3094 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3099 dissect_dap_T_signedCompareResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3100 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3101 T_signedCompareResult_sequence, hf_index, ett_dap_T_signedCompareResult);
3105 static int dissect_signedCompareResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3106 return dissect_dap_T_signedCompareResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedCompareResult);
3110 const value_string dap_CompareResult_vals[] = {
3111 { 0, "unsignedCompareResult" },
3112 { 1, "signedCompareResult" },
3116 static const ber_choice_t CompareResult_choice[] = {
3117 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedCompareResult },
3118 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedCompareResult },
3119 { 0, 0, 0, 0, NULL }
3123 dissect_dap_CompareResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3124 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3125 CompareResult_choice, hf_index, ett_dap_CompareResult,
3132 static const ber_sequence_t AbandonArgumentData_sequence[] = {
3133 { BER_CLASS_CON, 0, 0, dissect_invokeID },
3138 dissect_dap_AbandonArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3139 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3140 AbandonArgumentData_sequence, hf_index, ett_dap_AbandonArgumentData);
3144 static int dissect_unsignedAbandonArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3145 return dissect_dap_AbandonArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedAbandonArgument);
3147 static int dissect_abandonArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3148 return dissect_dap_AbandonArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_abandonArgument);
3152 static const ber_sequence_t T_signedAbandonArgument_sequence[] = {
3153 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_abandonArgument },
3154 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3155 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3160 dissect_dap_T_signedAbandonArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3161 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3162 T_signedAbandonArgument_sequence, hf_index, ett_dap_T_signedAbandonArgument);
3166 static int dissect_signedAbandonArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3167 return dissect_dap_T_signedAbandonArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedAbandonArgument);
3171 const value_string dap_AbandonArgument_vals[] = {
3172 { 0, "unsignedAbandonArgument" },
3173 { 1, "signedAbandonArgument" },
3177 static const ber_choice_t AbandonArgument_choice[] = {
3178 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_unsignedAbandonArgument },
3179 { 1, BER_CLASS_CON, 0, 0, dissect_signedAbandonArgument },
3180 { 0, 0, 0, 0, NULL }
3184 dissect_dap_AbandonArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3185 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3186 AbandonArgument_choice, hf_index, ett_dap_AbandonArgument,
3193 static const ber_sequence_t AbandonResultData_sequence[] = {
3194 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_invokeID },
3195 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
3196 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
3197 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
3198 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
3203 dissect_dap_AbandonResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3204 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3205 AbandonResultData_sequence, hf_index, ett_dap_AbandonResultData);
3209 static int dissect_unsignedAbandonResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3210 return dissect_dap_AbandonResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedAbandonResult);
3212 static int dissect_abandonResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3213 return dissect_dap_AbandonResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_abandonResult);
3217 static const ber_sequence_t T_signedAbandonResult_sequence[] = {
3218 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_abandonResult },
3219 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3220 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3225 dissect_dap_T_signedAbandonResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3226 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3227 T_signedAbandonResult_sequence, hf_index, ett_dap_T_signedAbandonResult);
3231 static int dissect_signedAbandonResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3232 return dissect_dap_T_signedAbandonResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedAbandonResult);
3236 static const value_string dap_AbandonInformation_vals[] = {
3237 { 0, "unsignedAbandonResult" },
3238 { 1, "signedAbandonResult" },
3242 static const ber_choice_t AbandonInformation_choice[] = {
3243 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_unsignedAbandonResult },
3244 { 1, BER_CLASS_CON, 0, 0, dissect_signedAbandonResult },
3245 { 0, 0, 0, 0, NULL }
3249 dissect_dap_AbandonInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3250 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3251 AbandonInformation_choice, hf_index, ett_dap_AbandonInformation,
3256 static int dissect_abandon_information(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3257 return dissect_dap_AbandonInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_abandon_information);
3261 const value_string dap_AbandonResult_vals[] = {
3263 { 1, "information" },
3267 static const ber_choice_t AbandonResult_choice[] = {
3268 { 0, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_null },
3269 { 1, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_abandon_information },
3270 { 0, 0, 0, 0, NULL }
3274 dissect_dap_AbandonResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3275 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3276 AbandonResult_choice, hf_index, ett_dap_AbandonResult,
3283 static const ber_sequence_t ListArgumentData_set[] = {
3284 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_object },
3285 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_pagedResults },
3286 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_listFamily },
3287 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
3288 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
3289 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
3290 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
3291 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
3292 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
3293 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
3294 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
3295 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
3296 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
3297 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
3302 dissect_dap_ListArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3303 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
3304 ListArgumentData_set, hf_index, ett_dap_ListArgumentData);
3308 static int dissect_unsignedListArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3309 return dissect_dap_ListArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedListArgument);
3311 static int dissect_listArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3312 return dissect_dap_ListArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_listArgument);
3316 static const ber_sequence_t T_signedListArgument_sequence[] = {
3317 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_listArgument },
3318 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3319 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3324 dissect_dap_T_signedListArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3325 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3326 T_signedListArgument_sequence, hf_index, ett_dap_T_signedListArgument);
3330 static int dissect_signedListArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3331 return dissect_dap_T_signedListArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedListArgument);
3335 const value_string dap_ListArgument_vals[] = {
3336 { 0, "unsignedListArgument" },
3337 { 1, "signedListArgument" },
3341 static const ber_choice_t ListArgument_choice[] = {
3342 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedListArgument },
3343 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedListArgument },
3344 { 0, 0, 0, 0, NULL }
3348 dissect_dap_ListArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3349 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3350 ListArgument_choice, hf_index, ett_dap_ListArgument,
3357 static const ber_sequence_t T_subordinates_item_sequence[] = {
3358 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_rdn },
3359 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_aliasEntry },
3360 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_fromEntry },
3365 dissect_dap_T_subordinates_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3367 proto_item *sub_item;
3369 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3370 T_subordinates_item_sequence, hf_index, ett_dap_T_subordinates_item);
3373 if((sub_item = get_ber_last_created_item())) {
3375 proto_item_append_text(sub_item," (%s)", x509if_get_last_dn());
3382 static int dissect_subordinates_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3383 return dissect_dap_T_subordinates_item(FALSE, tvb, offset, pinfo, tree, hf_dap_subordinates_item);
3387 static const ber_sequence_t T_subordinates_set_of[1] = {
3388 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_subordinates_item },
3392 dissect_dap_T_subordinates(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3393 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
3394 T_subordinates_set_of, hf_index, ett_dap_T_subordinates);
3398 static int dissect_subordinates(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3399 return dissect_dap_T_subordinates(FALSE, tvb, offset, pinfo, tree, hf_dap_subordinates);
3403 static const value_string dap_LimitProblem_vals[] = {
3404 { 0, "timeLimitExceeded" },
3405 { 1, "sizeLimitExceeded" },
3406 { 2, "administrativeLimitExceeded" },
3412 dissect_dap_LimitProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3416 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3420 if (check_col(pinfo->cinfo, COL_INFO)) {
3421 col_append_fstr(pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_LimitProblem_vals, "LimitProblem(%d)"));
3428 static int dissect_limitProblem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3429 return dissect_dap_LimitProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_limitProblem);
3433 static const ber_sequence_t SET_OF_ContinuationReference_set_of[1] = {
3434 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unexplored_item },
3438 dissect_dap_SET_OF_ContinuationReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3439 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
3440 SET_OF_ContinuationReference_set_of, hf_index, ett_dap_SET_OF_ContinuationReference);
3444 static int dissect_unexplored(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3445 return dissect_dap_SET_OF_ContinuationReference(FALSE, tvb, offset, pinfo, tree, hf_dap_unexplored);
3449 static const ber_sequence_t T_unknownErrors_set_of[1] = {
3450 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_unknownErrors_item },
3454 dissect_dap_T_unknownErrors(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3455 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
3456 T_unknownErrors_set_of, hf_index, ett_dap_T_unknownErrors);
3460 static int dissect_unknownErrors(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3461 return dissect_dap_T_unknownErrors(FALSE, tvb, offset, pinfo, tree, hf_dap_unknownErrors);
3465 static const value_string dap_T_entryCount_vals[] = {
3466 { 7, "bestEstimate" },
3467 { 8, "lowEstimate" },
3471 static const ber_choice_t T_entryCount_choice[] = {
3472 { 7, BER_CLASS_CON, 7, 0, dissect_bestEstimate },
3473 { 8, BER_CLASS_CON, 8, 0, dissect_lowEstimate },
3474 { 0, 0, 0, 0, NULL }
3478 dissect_dap_T_entryCount(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3479 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3480 T_entryCount_choice, hf_index, ett_dap_T_entryCount,
3485 static int dissect_entryCount(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3486 return dissect_dap_T_entryCount(FALSE, tvb, offset, pinfo, tree, hf_dap_entryCount);
3490 static const ber_sequence_t PartialOutcomeQualifier_set[] = {
3491 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_limitProblem },
3492 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_unexplored },
3493 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_unavailableCriticalExtensions },
3494 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_unknownErrors },
3495 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_queryReference },
3496 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_overspecFilter },
3497 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_notification },
3498 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_entryCount },
3503 dissect_dap_PartialOutcomeQualifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3504 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
3505 PartialOutcomeQualifier_set, hf_index, ett_dap_PartialOutcomeQualifier);
3509 static int dissect_partialOutcomeQualifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3510 return dissect_dap_PartialOutcomeQualifier(FALSE, tvb, offset, pinfo, tree, hf_dap_partialOutcomeQualifier);
3514 static const ber_sequence_t T_listInfo_set[] = {
3515 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_name },
3516 { BER_CLASS_CON, 1, 0, dissect_subordinates },
3517 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_partialOutcomeQualifier },
3518 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
3519 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
3520 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
3521 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
3526 dissect_dap_T_listInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3527 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
3528 T_listInfo_set, hf_index, ett_dap_T_listInfo);
3532 static int dissect_listInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3533 return dissect_dap_T_listInfo(FALSE, tvb, offset, pinfo, tree, hf_dap_listInfo);
3537 static const ber_sequence_t T_signedListResult_sequence[] = {
3538 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_listResult },
3539 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3540 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3545 dissect_dap_T_signedListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3546 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3547 T_signedListResult_sequence, hf_index, ett_dap_T_signedListResult);
3551 static int dissect_signedListResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3552 return dissect_dap_T_signedListResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedListResult);
3556 const value_string dap_ListResult_vals[] = {
3557 { 0, "unsignedListResult" },
3558 { 1, "signedListResult" },
3562 static const ber_choice_t ListResult_choice[] = {
3563 { 0, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_unsignedListResult },
3564 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedListResult },
3565 { 0, 0, 0, 0, NULL }
3569 dissect_dap_ListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3570 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3571 ListResult_choice, hf_index, ett_dap_ListResult,
3576 static int dissect_uncorrelatedListInfo_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3577 return dissect_dap_ListResult(FALSE, tvb, offset, pinfo, tree, hf_dap_uncorrelatedListInfo_item);
3581 static const ber_sequence_t SET_OF_ListResult_set_of[1] = {
3582 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_uncorrelatedListInfo_item },
3586 dissect_dap_SET_OF_ListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3587 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
3588 SET_OF_ListResult_set_of, hf_index, ett_dap_SET_OF_ListResult);
3592 static int dissect_uncorrelatedListInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3593 return dissect_dap_SET_OF_ListResult(FALSE, tvb, offset, pinfo, tree, hf_dap_uncorrelatedListInfo);
3597 static const value_string dap_ListResultData_vals[] = {
3599 { 1, "uncorrelatedListInfo" },
3603 static const ber_choice_t ListResultData_choice[] = {
3604 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_listInfo },
3605 { 1, BER_CLASS_CON, 0, 0, dissect_uncorrelatedListInfo },
3606 { 0, 0, 0, 0, NULL }
3610 dissect_dap_ListResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3611 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3612 ListResultData_choice, hf_index, ett_dap_ListResultData,
3619 static const value_string dap_T_subset_vals[] = {
3620 { 0, "baseObject" },
3622 { 2, "wholeSubtree" },
3628 dissect_dap_T_subset(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3632 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3636 if (check_col(pinfo->cinfo, COL_INFO)) {
3637 col_append_fstr(pinfo->cinfo, COL_INFO, " %s", val_to_str(subset, dap_T_subset_vals, "Subset(%d)"));
3645 static int dissect_subset(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3646 return dissect_dap_T_subset(FALSE, tvb, offset, pinfo, tree, hf_dap_subset);
3650 static const asn_namedbit HierarchySelections_bits[] = {
3651 { 0, &hf_dap_HierarchySelections_self, -1, -1, "self", NULL },
3652 { 1, &hf_dap_HierarchySelections_children, -1, -1, "children", NULL },
3653 { 2, &hf_dap_HierarchySelections_parent, -1, -1, "parent", NULL },
3654 { 3, &hf_dap_HierarchySelections_hierarchy, -1, -1, "hierarchy", NULL },
3655 { 4, &hf_dap_HierarchySelections_top, -1, -1, "top", NULL },
3656 { 5, &hf_dap_HierarchySelections_subtree, -1, -1, "subtree", NULL },
3657 { 6, &hf_dap_HierarchySelections_siblings, -1, -1, "siblings", NULL },
3658 { 7, &hf_dap_HierarchySelections_siblingChildren, -1, -1, "siblingChildren", NULL },
3659 { 8, &hf_dap_HierarchySelections_siblingSubtree, -1, -1, "siblingSubtree", NULL },
3660 { 9, &hf_dap_HierarchySelections_all, -1, -1, "all", NULL },
3661 { 0, NULL, 0, 0, NULL, NULL }
3665 dissect_dap_HierarchySelections(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3666 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
3667 HierarchySelections_bits, hf_index, ett_dap_HierarchySelections,
3672 static int dissect_hierarchySelections(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3673 return dissect_dap_HierarchySelections(FALSE, tvb, offset, pinfo, tree, hf_dap_hierarchySelections);
3677 static const asn_namedbit SearchControlOptions_bits[] = {
3678 { 0, &hf_dap_SearchControlOptions_searchAliases, -1, -1, "searchAliases", NULL },
3679 { 1, &hf_dap_SearchControlOptions_matchedValuesOnly, -1, -1, "matchedValuesOnly", NULL },
3680 { 2, &hf_dap_SearchControlOptions_checkOverspecified, -1, -1, "checkOverspecified", NULL },
3681 { 3, &hf_dap_SearchControlOptions_performExactly, -1, -1, "performExactly", NULL },
3682 { 4, &hf_dap_SearchControlOptions_includeAllAreas, -1, -1, "includeAllAreas", NULL },
3683 { 5, &hf_dap_SearchControlOptions_noSystemRelaxation, -1, -1, "noSystemRelaxation", NULL },
3684 { 6, &hf_dap_SearchControlOptions_dnAttribute, -1, -1, "dnAttribute", NULL },
3685 { 7, &hf_dap_SearchControlOptions_matchOnResidualName, -1, -1, "matchOnResidualName", NULL },
3686 { 8, &hf_dap_SearchControlOptions_entryCount, -1, -1, "entryCount", NULL },
3687 { 9, &hf_dap_SearchControlOptions_useSubset, -1, -1, "useSubset", NULL },
3688 { 10, &hf_dap_SearchControlOptions_separateFamilyMembers, -1, -1, "separateFamilyMembers", NULL },
3689 { 11, &hf_dap_SearchControlOptions_searchFamily, -1, -1, "searchFamily", NULL },
3690 { 0, NULL, 0, 0, NULL, NULL }
3694 dissect_dap_SearchControlOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3695 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
3696 SearchControlOptions_bits, hf_index, ett_dap_SearchControlOptions,
3701 static int dissect_searchControlOptions(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3702 return dissect_dap_SearchControlOptions(FALSE, tvb, offset, pinfo, tree, hf_dap_searchControlOptions);
3708 dissect_dap_DomainLocalID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3709 offset = dissect_x509sat_DirectoryString(implicit_tag, tvb, offset, pinfo, tree, hf_index);
3713 static int dissect_domainLocalID(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3714 return dissect_dap_DomainLocalID(FALSE, tvb, offset, pinfo, tree, hf_dap_domainLocalID);
3718 static const value_string dap_T_joinSubset_vals[] = {
3719 { 0, "baseObject" },
3721 { 2, "wholeSubtree" },
3727 dissect_dap_T_joinSubset(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3728 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3733 static int dissect_joinSubset(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3734 return dissect_dap_T_joinSubset(FALSE, tvb, offset, pinfo, tree, hf_dap_joinSubset);
3740 dissect_dap_JoinContextType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3741 offset = dissect_ber_object_identifier(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL);
3745 static int dissect_joinContext_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3746 return dissect_dap_JoinContextType(FALSE, tvb, offset, pinfo, tree, hf_dap_joinContext_item);
3750 static const ber_sequence_t SEQUENCE_OF_JoinContextType_sequence_of[1] = {
3751 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_joinContext_item },
3755 dissect_dap_SEQUENCE_OF_JoinContextType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3756 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
3757 SEQUENCE_OF_JoinContextType_sequence_of, hf_index, ett_dap_SEQUENCE_OF_JoinContextType);
3761 static int dissect_joinContext(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3762 return dissect_dap_SEQUENCE_OF_JoinContextType(FALSE, tvb, offset, pinfo, tree, hf_dap_joinContext);
3766 static const ber_sequence_t JoinAttPair_sequence[] = {
3767 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_baseAtt },
3768 { BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_joinAtt },
3769 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_joinContext },
3774 dissect_dap_JoinAttPair(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3775 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3776 JoinAttPair_sequence, hf_index, ett_dap_JoinAttPair);
3780 static int dissect_joinAttributes_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3781 return dissect_dap_JoinAttPair(FALSE, tvb, offset, pinfo, tree, hf_dap_joinAttributes_item);
3785 static const ber_sequence_t SEQUENCE_OF_JoinAttPair_sequence_of[1] = {
3786 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_joinAttributes_item },
3790 dissect_dap_SEQUENCE_OF_JoinAttPair(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3791 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
3792 SEQUENCE_OF_JoinAttPair_sequence_of, hf_index, ett_dap_SEQUENCE_OF_JoinAttPair);
3796 static int dissect_joinAttributes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3797 return dissect_dap_SEQUENCE_OF_JoinAttPair(FALSE, tvb, offset, pinfo, tree, hf_dap_joinAttributes);
3801 static const ber_sequence_t JoinArgument_sequence[] = {
3802 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_joinBaseObject },
3803 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_domainLocalID },
3804 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_joinSubset },
3805 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_joinFilter },
3806 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_joinAttributes },
3807 { BER_CLASS_CON, 5, 0, dissect_joinSelection },
3812 dissect_dap_JoinArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3813 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3814 JoinArgument_sequence, hf_index, ett_dap_JoinArgument);
3818 static int dissect_joinArguments_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3819 return dissect_dap_JoinArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_joinArguments_item);
3823 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_JoinArgument_sequence_of[1] = {
3824 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_joinArguments_item },
3828 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3829 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
3830 SEQUENCE_SIZE_1_MAX_OF_JoinArgument_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument);
3834 static int dissect_joinArguments(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3835 return dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_joinArguments);
3839 static const value_string dap_T_joinType_vals[] = {
3841 { 1, "leftOuterJoin" },
3842 { 2, "fullOuterJoin" },
3848 dissect_dap_T_joinType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3849 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
3854 static int dissect_joinType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3855 return dissect_dap_T_joinType(FALSE, tvb, offset, pinfo, tree, hf_dap_joinType);
3859 static const ber_sequence_t SearchArgumentData_set[] = {
3860 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_baseObject },
3861 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_subset },
3862 { BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_filter },
3863 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_searchAliases },
3864 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_selection },
3865 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_pagedResults },
3866 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_matchedValuesOnly },
3867 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_extendedFilter },
3868 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_checkOverspecified },
3869 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_relaxation },
3870 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_extendedArea },
3871 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_hierarchySelections },
3872 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL, dissect_searchControlOptions },
3873 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL, dissect_joinArguments },
3874 { BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL, dissect_joinType },
3875 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
3876 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
3877 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
3878 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
3879 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
3880 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
3881 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
3882 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
3883 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
3884 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
3885 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
3890 dissect_dap_SearchArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3891 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
3892 SearchArgumentData_set, hf_index, ett_dap_SearchArgumentData);
3896 static int dissect_unsignedSearchArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3897 return dissect_dap_SearchArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedSearchArgument);
3899 static int dissect_searchArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3900 return dissect_dap_SearchArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_searchArgument);
3904 static const ber_sequence_t T_signedSearchArgument_sequence[] = {
3905 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_searchArgument },
3906 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3907 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3912 dissect_dap_T_signedSearchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3913 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3914 T_signedSearchArgument_sequence, hf_index, ett_dap_T_signedSearchArgument);
3918 static int dissect_signedSearchArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3919 return dissect_dap_T_signedSearchArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedSearchArgument);
3923 const value_string dap_SearchArgument_vals[] = {
3924 { 0, "unsignedSearchArgument" },
3925 { 1, "signedSearchArgument" },
3929 static const ber_choice_t SearchArgument_choice[] = {
3930 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedSearchArgument },
3931 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedSearchArgument },
3932 { 0, 0, 0, 0, NULL }
3936 dissect_dap_SearchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3937 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
3938 SearchArgument_choice, hf_index, ett_dap_SearchArgument,
3945 static const ber_sequence_t SET_OF_EntryInformation_set_of[1] = {
3946 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_entries_item },
3950 dissect_dap_SET_OF_EntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3951 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
3952 SET_OF_EntryInformation_set_of, hf_index, ett_dap_SET_OF_EntryInformation);
3956 static int dissect_entries(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3957 return dissect_dap_SET_OF_EntryInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_entries);
3961 static const ber_sequence_t T_searchInfo_set[] = {
3962 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_name },
3963 { BER_CLASS_CON, 0, 0, dissect_entries },
3964 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_partialOutcomeQualifier },
3965 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_altMatching },
3966 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
3967 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
3968 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
3969 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
3974 dissect_dap_T_searchInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3975 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
3976 T_searchInfo_set, hf_index, ett_dap_T_searchInfo);
3980 static int dissect_searchInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
3981 return dissect_dap_T_searchInfo(FALSE, tvb, offset, pinfo, tree, hf_dap_searchInfo);
3985 static const ber_sequence_t T_signedSearchResult_sequence[] = {
3986 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_searchResult },
3987 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
3988 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
3993 dissect_dap_T_signedSearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
3994 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
3995 T_signedSearchResult_sequence, hf_index, ett_dap_T_signedSearchResult);
3999 static int dissect_signedSearchResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4000 return dissect_dap_T_signedSearchResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedSearchResult);
4004 const value_string dap_SearchResult_vals[] = {
4005 { 0, "unsignedSearchResult" },
4006 { 1, "signedSearchResult" },
4010 static const ber_choice_t SearchResult_choice[] = {
4011 { 0, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_unsignedSearchResult },
4012 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedSearchResult },
4013 { 0, 0, 0, 0, NULL }
4017 dissect_dap_SearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4018 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4019 SearchResult_choice, hf_index, ett_dap_SearchResult,
4024 static int dissect_uncorrelatedSearchInfo_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4025 return dissect_dap_SearchResult(FALSE, tvb, offset, pinfo, tree, hf_dap_uncorrelatedSearchInfo_item);
4029 static const ber_sequence_t SET_OF_SearchResult_set_of[1] = {
4030 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_uncorrelatedSearchInfo_item },
4034 dissect_dap_SET_OF_SearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4035 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
4036 SET_OF_SearchResult_set_of, hf_index, ett_dap_SET_OF_SearchResult);
4040 static int dissect_uncorrelatedSearchInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4041 return dissect_dap_SET_OF_SearchResult(FALSE, tvb, offset, pinfo, tree, hf_dap_uncorrelatedSearchInfo);
4045 static const value_string dap_SearchResultData_vals[] = {
4046 { 0, "searchInfo" },
4047 { 1, "uncorrelatedSearchInfo" },
4051 static const ber_choice_t SearchResultData_choice[] = {
4052 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_searchInfo },
4053 { 1, BER_CLASS_CON, 0, 0, dissect_uncorrelatedSearchInfo },
4054 { 0, 0, 0, 0, NULL }
4058 dissect_dap_SearchResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4059 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4060 SearchResultData_choice, hf_index, ett_dap_SearchResultData,
4067 static const ber_sequence_t SET_OF_Attribute_set_of[1] = {
4068 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_add_entry_item },
4072 dissect_dap_SET_OF_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4073 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
4074 SET_OF_Attribute_set_of, hf_index, ett_dap_SET_OF_Attribute);
4078 static int dissect_add_entry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4079 return dissect_dap_SET_OF_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dap_add_entry);
4083 static const ber_sequence_t AddEntryArgumentData_set[] = {
4084 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_object },
4085 { BER_CLASS_CON, 1, 0, dissect_add_entry },
4086 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_targetSystem },
4087 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
4088 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4089 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
4090 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
4091 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
4092 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
4093 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
4094 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
4095 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
4096 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
4097 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
4102 dissect_dap_AddEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4103 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
4104 AddEntryArgumentData_set, hf_index, ett_dap_AddEntryArgumentData);
4108 static int dissect_unsignedAddEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4109 return dissect_dap_AddEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedAddEntryArgument);
4111 static int dissect_addEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4112 return dissect_dap_AddEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_addEntryArgument);
4116 static const ber_sequence_t T_signedAddEntryArgument_sequence[] = {
4117 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_addEntryArgument },
4118 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4119 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4124 dissect_dap_T_signedAddEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4125 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4126 T_signedAddEntryArgument_sequence, hf_index, ett_dap_T_signedAddEntryArgument);
4130 static int dissect_signedAddEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4131 return dissect_dap_T_signedAddEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedAddEntryArgument);
4135 const value_string dap_AddEntryArgument_vals[] = {
4136 { 0, "unsignedAddEntryArgument" },
4137 { 1, "signedAddEntryArgument" },
4141 static const ber_choice_t AddEntryArgument_choice[] = {
4142 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedAddEntryArgument },
4143 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedAddEntryArgument },
4144 { 0, 0, 0, 0, NULL }
4148 dissect_dap_AddEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4149 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4150 AddEntryArgument_choice, hf_index, ett_dap_AddEntryArgument,
4157 static const ber_sequence_t AddEntryResultData_sequence[] = {
4158 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4159 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
4160 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
4161 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
4166 dissect_dap_AddEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4167 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4168 AddEntryResultData_sequence, hf_index, ett_dap_AddEntryResultData);
4172 static int dissect_unsignedAddEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4173 return dissect_dap_AddEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedAddEntryResult);
4175 static int dissect_addEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4176 return dissect_dap_AddEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_addEntryResult);
4180 static const ber_sequence_t T_signedAddEntryResult_sequence[] = {
4181 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_addEntryResult },
4182 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4183 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4188 dissect_dap_T_signedAddEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4189 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4190 T_signedAddEntryResult_sequence, hf_index, ett_dap_T_signedAddEntryResult);
4194 static int dissect_signedAddEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4195 return dissect_dap_T_signedAddEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedAddEntryResult);
4199 static const value_string dap_AddEntryInformation_vals[] = {
4200 { 0, "unsignedAddEntryResult" },
4201 { 1, "signedAddEntryResult" },
4205 static const ber_choice_t AddEntryInformation_choice[] = {
4206 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_unsignedAddEntryResult },
4207 { 1, BER_CLASS_CON, 0, 0, dissect_signedAddEntryResult },
4208 { 0, 0, 0, 0, NULL }
4212 dissect_dap_AddEntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4213 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4214 AddEntryInformation_choice, hf_index, ett_dap_AddEntryInformation,
4219 static int dissect_add_entry_information(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4220 return dissect_dap_AddEntryInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_add_entry_information);
4224 const value_string dap_AddEntryResult_vals[] = {
4226 { 1, "information" },
4230 static const ber_choice_t AddEntryResult_choice[] = {
4231 { 0, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_null },
4232 { 1, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_add_entry_information },
4233 { 0, 0, 0, 0, NULL }
4237 dissect_dap_AddEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4238 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4239 AddEntryResult_choice, hf_index, ett_dap_AddEntryResult,
4246 static const ber_sequence_t RemoveEntryArgumentData_set[] = {
4247 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_object },
4248 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
4249 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4250 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
4251 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
4252 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
4253 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
4254 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
4255 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
4256 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
4257 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
4258 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
4263 dissect_dap_RemoveEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4264 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
4265 RemoveEntryArgumentData_set, hf_index, ett_dap_RemoveEntryArgumentData);
4269 static int dissect_unsignedRemoveEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4270 return dissect_dap_RemoveEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedRemoveEntryArgument);
4272 static int dissect_removeEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4273 return dissect_dap_RemoveEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_removeEntryArgument);
4277 static const ber_sequence_t T_signedRemoveEntryArgument_sequence[] = {
4278 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_removeEntryArgument },
4279 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4280 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4285 dissect_dap_T_signedRemoveEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4286 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4287 T_signedRemoveEntryArgument_sequence, hf_index, ett_dap_T_signedRemoveEntryArgument);
4291 static int dissect_signedRemoveEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4292 return dissect_dap_T_signedRemoveEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedRemoveEntryArgument);
4296 const value_string dap_RemoveEntryArgument_vals[] = {
4297 { 0, "unsignedRemoveEntryArgument" },
4298 { 1, "signedRemoveEntryArgument" },
4302 static const ber_choice_t RemoveEntryArgument_choice[] = {
4303 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedRemoveEntryArgument },
4304 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedRemoveEntryArgument },
4305 { 0, 0, 0, 0, NULL }
4309 dissect_dap_RemoveEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4310 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4311 RemoveEntryArgument_choice, hf_index, ett_dap_RemoveEntryArgument,
4318 static const ber_sequence_t RemoveEntryResultData_sequence[] = {
4319 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4320 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
4321 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
4322 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
4327 dissect_dap_RemoveEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4328 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4329 RemoveEntryResultData_sequence, hf_index, ett_dap_RemoveEntryResultData);
4333 static int dissect_unsignedRemoveEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4334 return dissect_dap_RemoveEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedRemoveEntryResult);
4336 static int dissect_removeEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4337 return dissect_dap_RemoveEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_removeEntryResult);
4341 static const ber_sequence_t T_signedRemoveEntryResult_sequence[] = {
4342 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_removeEntryResult },
4343 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4344 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4349 dissect_dap_T_signedRemoveEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4350 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4351 T_signedRemoveEntryResult_sequence, hf_index, ett_dap_T_signedRemoveEntryResult);
4355 static int dissect_signedRemoveEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4356 return dissect_dap_T_signedRemoveEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedRemoveEntryResult);
4360 static const value_string dap_RemoveEntryInformation_vals[] = {
4361 { 0, "unsignedRemoveEntryResult" },
4362 { 1, "signedRemoveEntryResult" },
4366 static const ber_choice_t RemoveEntryInformation_choice[] = {
4367 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_unsignedRemoveEntryResult },
4368 { 1, BER_CLASS_CON, 0, 0, dissect_signedRemoveEntryResult },
4369 { 0, 0, 0, 0, NULL }
4373 dissect_dap_RemoveEntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4374 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4375 RemoveEntryInformation_choice, hf_index, ett_dap_RemoveEntryInformation,
4380 static int dissect_remove_entry_information(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4381 return dissect_dap_RemoveEntryInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_remove_entry_information);
4385 const value_string dap_RemoveEntryResult_vals[] = {
4387 { 1, "information" },
4391 static const ber_choice_t RemoveEntryResult_choice[] = {
4392 { 0, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_null },
4393 { 1, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_remove_entry_information },
4394 { 0, 0, 0, 0, NULL }
4398 dissect_dap_RemoveEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4399 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4400 RemoveEntryResult_choice, hf_index, ett_dap_RemoveEntryResult,
4407 const value_string dap_EntryModification_vals[] = {
4408 { 0, "addAttribute" },
4409 { 1, "removeAttribute" },
4411 { 3, "removeValues" },
4412 { 4, "alterValues" },
4413 { 5, "resetValue" },
4417 static const ber_choice_t EntryModification_choice[] = {
4418 { 0, BER_CLASS_CON, 0, 0, dissect_addAttribute },
4419 { 1, BER_CLASS_CON, 1, 0, dissect_removeAttribute },
4420 { 2, BER_CLASS_CON, 2, 0, dissect_addValues },
4421 { 3, BER_CLASS_CON, 3, 0, dissect_removeValues },
4422 { 4, BER_CLASS_CON, 4, 0, dissect_alterValues },
4423 { 5, BER_CLASS_CON, 5, 0, dissect_resetValue },
4424 { 0, 0, 0, 0, NULL }
4428 dissect_dap_EntryModification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4429 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4430 EntryModification_choice, hf_index, ett_dap_EntryModification,
4435 static int dissect_changes_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4436 return dissect_dap_EntryModification(FALSE, tvb, offset, pinfo, tree, hf_dap_changes_item);
4440 static const ber_sequence_t SEQUENCE_OF_EntryModification_sequence_of[1] = {
4441 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_changes_item },
4445 dissect_dap_SEQUENCE_OF_EntryModification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4446 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
4447 SEQUENCE_OF_EntryModification_sequence_of, hf_index, ett_dap_SEQUENCE_OF_EntryModification);
4451 static int dissect_changes(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4452 return dissect_dap_SEQUENCE_OF_EntryModification(FALSE, tvb, offset, pinfo, tree, hf_dap_changes);
4456 static const ber_sequence_t ModifyEntryArgumentData_set[] = {
4457 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_object },
4458 { BER_CLASS_CON, 1, 0, dissect_changes },
4459 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_selection },
4460 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
4461 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4462 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
4463 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
4464 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
4465 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
4466 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
4467 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
4468 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
4469 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
4470 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
4475 dissect_dap_ModifyEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4476 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
4477 ModifyEntryArgumentData_set, hf_index, ett_dap_ModifyEntryArgumentData);
4481 static int dissect_unsignedModifyEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4482 return dissect_dap_ModifyEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedModifyEntryArgument);
4484 static int dissect_modifyEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4485 return dissect_dap_ModifyEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dap_modifyEntryArgument);
4489 static const ber_sequence_t T_signedModifyEntryArgument_sequence[] = {
4490 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_modifyEntryArgument },
4491 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4492 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4497 dissect_dap_T_signedModifyEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4498 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4499 T_signedModifyEntryArgument_sequence, hf_index, ett_dap_T_signedModifyEntryArgument);
4503 static int dissect_signedModifyEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4504 return dissect_dap_T_signedModifyEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dap_signedModifyEntryArgument);
4508 const value_string dap_ModifyEntryArgument_vals[] = {
4509 { 0, "unsignedModifyEntryArgument" },
4510 { 1, "signedModifyEntryArgument" },
4514 static const ber_choice_t ModifyEntryArgument_choice[] = {
4515 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedModifyEntryArgument },
4516 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedModifyEntryArgument },
4517 { 0, 0, 0, 0, NULL }
4521 dissect_dap_ModifyEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4522 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4523 ModifyEntryArgument_choice, hf_index, ett_dap_ModifyEntryArgument,
4530 static const ber_sequence_t ModifyEntryResultData_sequence[] = {
4531 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_entry },
4532 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4533 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
4534 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
4535 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
4540 dissect_dap_ModifyEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4541 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4542 ModifyEntryResultData_sequence, hf_index, ett_dap_ModifyEntryResultData);
4546 static int dissect_unsignedModifyEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4547 return dissect_dap_ModifyEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedModifyEntryResult);
4549 static int dissect_modifyEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4550 return dissect_dap_ModifyEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_modifyEntryResult);
4554 static const ber_sequence_t T_signedModifyEntryResult_sequence[] = {
4555 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_modifyEntryResult },
4556 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4557 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4562 dissect_dap_T_signedModifyEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4563 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4564 T_signedModifyEntryResult_sequence, hf_index, ett_dap_T_signedModifyEntryResult);
4568 static int dissect_signedModifyEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4569 return dissect_dap_T_signedModifyEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedModifyEntryResult);
4573 static const value_string dap_ModifyEntryInformation_vals[] = {
4574 { 0, "unsignedModifyEntryResult" },
4575 { 1, "signedModifyEntryResult" },
4579 static const ber_choice_t ModifyEntryInformation_choice[] = {
4580 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_unsignedModifyEntryResult },
4581 { 1, BER_CLASS_CON, 0, 0, dissect_signedModifyEntryResult },
4582 { 0, 0, 0, 0, NULL }
4586 dissect_dap_ModifyEntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4587 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4588 ModifyEntryInformation_choice, hf_index, ett_dap_ModifyEntryInformation,
4593 static int dissect_modify_entry_information(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4594 return dissect_dap_ModifyEntryInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_modify_entry_information);
4598 const value_string dap_ModifyEntryResult_vals[] = {
4600 { 1, "information" },
4604 static const ber_choice_t ModifyEntryResult_choice[] = {
4605 { 0, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_null },
4606 { 1, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_modify_entry_information },
4607 { 0, 0, 0, 0, NULL }
4611 dissect_dap_ModifyEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4612 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4613 ModifyEntryResult_choice, hf_index, ett_dap_ModifyEntryResult,
4620 static const ber_sequence_t ModifyDNArgument_set[] = {
4621 { BER_CLASS_CON, 0, 0, dissect_distinguished_name },
4622 { BER_CLASS_CON, 1, 0, dissect_newRDN },
4623 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_deleteOldRDN },
4624 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_newSuperior },
4625 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_serviceControls },
4626 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4627 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_requestor },
4628 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_operationProgress },
4629 { BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
4630 { BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_criticalExtensions },
4631 { BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_referenceType },
4632 { BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_entryOnly },
4633 { BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
4634 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_operationContexts },
4635 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_familyGrouping },
4640 dissect_dap_ModifyDNArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4641 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
4642 ModifyDNArgument_set, hf_index, ett_dap_ModifyDNArgument);
4648 static const ber_sequence_t ModifyDNResultData_sequence[] = {
4649 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_newRDN },
4650 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4651 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
4652 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
4653 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
4658 dissect_dap_ModifyDNResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4659 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4660 ModifyDNResultData_sequence, hf_index, ett_dap_ModifyDNResultData);
4664 static int dissect_unsignedModifyDNResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4665 return dissect_dap_ModifyDNResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedModifyDNResult);
4667 static int dissect_modifyDNResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4668 return dissect_dap_ModifyDNResultData(FALSE, tvb, offset, pinfo, tree, hf_dap_modifyDNResult);
4672 static const ber_sequence_t T_signedModifyDNResult_sequence[] = {
4673 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_modifyDNResult },
4674 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4675 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4680 dissect_dap_T_signedModifyDNResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4681 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4682 T_signedModifyDNResult_sequence, hf_index, ett_dap_T_signedModifyDNResult);
4686 static int dissect_signedModifyDNResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4687 return dissect_dap_T_signedModifyDNResult(FALSE, tvb, offset, pinfo, tree, hf_dap_signedModifyDNResult);
4691 static const value_string dap_ModifyDNInformation_vals[] = {
4692 { 0, "unsignedModifyDNResult" },
4693 { 1, "signedModifyDNResult" },
4697 static const ber_choice_t ModifyDNInformation_choice[] = {
4698 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_unsignedModifyDNResult },
4699 { 1, BER_CLASS_CON, 0, 0, dissect_signedModifyDNResult },
4700 { 0, 0, 0, 0, NULL }
4704 dissect_dap_ModifyDNInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4705 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4706 ModifyDNInformation_choice, hf_index, ett_dap_ModifyDNInformation,
4711 static int dissect_modify_dn_information(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4712 return dissect_dap_ModifyDNInformation(FALSE, tvb, offset, pinfo, tree, hf_dap_modify_dn_information);
4716 const value_string dap_ModifyDNResult_vals[] = {
4718 { 1, "information" },
4722 static const ber_choice_t ModifyDNResult_choice[] = {
4723 { 0, BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_null },
4724 { 1, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_modify_dn_information },
4725 { 0, 0, 0, 0, NULL }
4729 dissect_dap_ModifyDNResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4730 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4731 ModifyDNResult_choice, hf_index, ett_dap_ModifyDNResult,
4738 static const ber_sequence_t AbandonedData_set[] = {
4739 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4740 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
4741 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
4742 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
4747 dissect_dap_AbandonedData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4748 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
4749 AbandonedData_set, hf_index, ett_dap_AbandonedData);
4753 static int dissect_unsignedAbandoned(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4754 return dissect_dap_AbandonedData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedAbandoned);
4756 static int dissect_abandoned(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4757 return dissect_dap_AbandonedData(FALSE, tvb, offset, pinfo, tree, hf_dap_abandoned);
4761 static const ber_sequence_t T_signedAbandoned_sequence[] = {
4762 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_abandoned },
4763 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4764 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4769 dissect_dap_T_signedAbandoned(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4770 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4771 T_signedAbandoned_sequence, hf_index, ett_dap_T_signedAbandoned);
4775 static int dissect_signedAbandoned(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4776 return dissect_dap_T_signedAbandoned(FALSE, tvb, offset, pinfo, tree, hf_dap_signedAbandoned);
4780 const value_string dap_Abandoned_vals[] = {
4781 { 0, "unsignedAbandoned" },
4782 { 1, "signedAbandoned" },
4786 static const ber_choice_t Abandoned_choice[] = {
4787 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedAbandoned },
4788 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedAbandoned },
4789 { 0, 0, 0, 0, NULL }
4793 dissect_dap_Abandoned(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4794 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4795 Abandoned_choice, hf_index, ett_dap_Abandoned,
4802 static const value_string dap_AbandonProblem_vals[] = {
4803 { 1, "noSuchOperation" },
4805 { 3, "cannotAbandon" },
4811 dissect_dap_AbandonProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4812 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4817 static int dissect_abandon_failed_problem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4818 return dissect_dap_AbandonProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_abandon_failed_problem);
4822 static const ber_sequence_t AbandonFailedErrorData_set[] = {
4823 { BER_CLASS_CON, 0, 0, dissect_abandon_failed_problem },
4824 { BER_CLASS_CON, 1, 0, dissect_operation },
4825 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4826 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
4827 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
4828 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
4833 dissect_dap_AbandonFailedErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4834 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
4835 AbandonFailedErrorData_set, hf_index, ett_dap_AbandonFailedErrorData);
4839 static int dissect_unsignedAbandonFailedError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4840 return dissect_dap_AbandonFailedErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedAbandonFailedError);
4842 static int dissect_abandonFailedError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4843 return dissect_dap_AbandonFailedErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_abandonFailedError);
4847 static const ber_sequence_t T_signedAbandonFailedError_sequence[] = {
4848 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_abandonFailedError },
4849 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4850 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4855 dissect_dap_T_signedAbandonFailedError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4856 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4857 T_signedAbandonFailedError_sequence, hf_index, ett_dap_T_signedAbandonFailedError);
4861 static int dissect_signedAbandonFailedError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4862 return dissect_dap_T_signedAbandonFailedError(FALSE, tvb, offset, pinfo, tree, hf_dap_signedAbandonFailedError);
4866 const value_string dap_AbandonFailedError_vals[] = {
4867 { 0, "unsignedAbandonFailedError" },
4868 { 1, "signedAbandonFailedError" },
4872 static const ber_choice_t AbandonFailedError_choice[] = {
4873 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedAbandonFailedError },
4874 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedAbandonFailedError },
4875 { 0, 0, 0, 0, NULL }
4879 dissect_dap_AbandonFailedError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4880 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
4881 AbandonFailedError_choice, hf_index, ett_dap_AbandonFailedError,
4888 static const value_string dap_AttributeProblem_vals[] = {
4889 { 1, "noSuchAttributeOrValue" },
4890 { 2, "invalidAttributeSyntax" },
4891 { 3, "undefinedAttributeType" },
4892 { 4, "inappropriateMatching" },
4893 { 5, "constraintViolation" },
4894 { 6, "attributeOrValueAlreadyExists" },
4895 { 7, "contextViolation" },
4901 dissect_dap_AttributeProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4902 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
4907 static int dissect_attribute_error_problem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4908 return dissect_dap_AttributeProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_attribute_error_problem);
4912 static const ber_sequence_t T_problems_item_sequence[] = {
4913 { BER_CLASS_CON, 0, 0, dissect_attribute_error_problem },
4914 { BER_CLASS_CON, 1, 0, dissect_type },
4915 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_value },
4920 dissect_dap_T_problems_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4921 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4922 T_problems_item_sequence, hf_index, ett_dap_T_problems_item);
4926 static int dissect_problems_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4927 return dissect_dap_T_problems_item(FALSE, tvb, offset, pinfo, tree, hf_dap_problems_item);
4931 static const ber_sequence_t T_problems_set_of[1] = {
4932 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_problems_item },
4936 dissect_dap_T_problems(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4937 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
4938 T_problems_set_of, hf_index, ett_dap_T_problems);
4942 static int dissect_problems(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4943 return dissect_dap_T_problems(FALSE, tvb, offset, pinfo, tree, hf_dap_problems);
4947 static const ber_sequence_t AttributeErrorData_set[] = {
4948 { BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_object },
4949 { BER_CLASS_CON, 1, 0, dissect_problems },
4950 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
4951 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
4952 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
4953 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
4958 dissect_dap_AttributeErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4959 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
4960 AttributeErrorData_set, hf_index, ett_dap_AttributeErrorData);
4964 static int dissect_unsignedAttributeError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4965 return dissect_dap_AttributeErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedAttributeError);
4967 static int dissect_attributeError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4968 return dissect_dap_AttributeErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_attributeError);
4972 static const ber_sequence_t T_signedAttributeError_sequence[] = {
4973 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_attributeError },
4974 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
4975 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
4980 dissect_dap_T_signedAttributeError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
4981 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
4982 T_signedAttributeError_sequence, hf_index, ett_dap_T_signedAttributeError);
4986 static int dissect_signedAttributeError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
4987 return dissect_dap_T_signedAttributeError(FALSE, tvb, offset, pinfo, tree, hf_dap_signedAttributeError);
4991 const value_string dap_AttributeError_vals[] = {
4992 { 0, "unsignedAttributeError" },
4993 { 1, "signedAttributeError" },
4997 static const ber_choice_t AttributeError_choice[] = {
4998 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedAttributeError },
4999 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedAttributeError },
5000 { 0, 0, 0, 0, NULL }
5004 dissect_dap_AttributeError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5005 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5006 AttributeError_choice, hf_index, ett_dap_AttributeError,
5013 static const value_string dap_NameProblem_vals[] = {
5014 { 1, "noSuchObject" },
5015 { 2, "aliasProblem" },
5016 { 3, "invalidAttributeSyntax" },
5017 { 4, "aliasDereferencingProblem" },
5018 { 5, "contextProblem" },
5024 dissect_dap_NameProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5025 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
5030 static int dissect_name_error_problem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5031 return dissect_dap_NameProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_name_error_problem);
5035 static const ber_sequence_t NameErrorData_set[] = {
5036 { BER_CLASS_CON, 0, 0, dissect_name_error_problem },
5037 { BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_matched_name },
5038 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
5039 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
5040 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
5041 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
5046 dissect_dap_NameErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5047 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
5048 NameErrorData_set, hf_index, ett_dap_NameErrorData);
5052 static int dissect_unsignedNameError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5053 return dissect_dap_NameErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedNameError);
5055 static int dissect_nameError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5056 return dissect_dap_NameErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_nameError);
5060 static const ber_sequence_t T_signedNameError_sequence[] = {
5061 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_nameError },
5062 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
5063 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
5068 dissect_dap_T_signedNameError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5069 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5070 T_signedNameError_sequence, hf_index, ett_dap_T_signedNameError);
5074 static int dissect_signedNameError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5075 return dissect_dap_T_signedNameError(FALSE, tvb, offset, pinfo, tree, hf_dap_signedNameError);
5079 const value_string dap_NameError_vals[] = {
5080 { 0, "unsignedNameError" },
5081 { 1, "signedNameError" },
5085 static const ber_choice_t NameError_choice[] = {
5086 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedNameError },
5087 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedNameError },
5088 { 0, 0, 0, 0, NULL }
5092 dissect_dap_NameError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5093 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5094 NameError_choice, hf_index, ett_dap_NameError,
5101 static const ber_sequence_t ReferralData_set[] = {
5102 { BER_CLASS_CON, 0, 0, dissect_candidate },
5103 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
5104 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
5105 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
5106 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
5111 dissect_dap_ReferralData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5112 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
5113 ReferralData_set, hf_index, ett_dap_ReferralData);
5117 static int dissect_unsignedReferral(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5118 return dissect_dap_ReferralData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedReferral);
5120 static int dissect_referral(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5121 return dissect_dap_ReferralData(FALSE, tvb, offset, pinfo, tree, hf_dap_referral);
5125 static const ber_sequence_t T_signedReferral_sequence[] = {
5126 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_referral },
5127 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
5128 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
5133 dissect_dap_T_signedReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5134 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5135 T_signedReferral_sequence, hf_index, ett_dap_T_signedReferral);
5139 static int dissect_signedReferral(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5140 return dissect_dap_T_signedReferral(FALSE, tvb, offset, pinfo, tree, hf_dap_signedReferral);
5144 const value_string dap_Referral_vals[] = {
5145 { 0, "unsignedReferral" },
5146 { 1, "signedReferral" },
5150 static const ber_choice_t Referral_choice[] = {
5151 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedReferral },
5152 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedReferral },
5153 { 0, 0, 0, 0, NULL }
5157 dissect_dap_Referral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5158 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5159 Referral_choice, hf_index, ett_dap_Referral,
5168 dissect_dap_T_spkmInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5170 /* XXX: not yet implemented */
5176 static int dissect_spkmInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5177 return dissect_dap_T_spkmInfo(FALSE, tvb, offset, pinfo, tree, hf_dap_spkmInfo);
5181 static const ber_sequence_t SecurityErrorData_set[] = {
5182 { BER_CLASS_CON, 0, 0, dissect_security_error_problem },
5183 { BER_CLASS_CON, 1, 0, dissect_spkmInfo },
5184 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
5185 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
5186 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
5187 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
5192 dissect_dap_SecurityErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5193 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
5194 SecurityErrorData_set, hf_index, ett_dap_SecurityErrorData);
5198 static int dissect_unsignedSecurityError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5199 return dissect_dap_SecurityErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedSecurityError);
5201 static int dissect_securityErrorData(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5202 return dissect_dap_SecurityErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_securityErrorData);
5206 static const ber_sequence_t T_signedSecurityError_sequence[] = {
5207 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_securityErrorData },
5208 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
5209 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
5214 dissect_dap_T_signedSecurityError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5215 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5216 T_signedSecurityError_sequence, hf_index, ett_dap_T_signedSecurityError);
5220 static int dissect_signedSecurityError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5221 return dissect_dap_T_signedSecurityError(FALSE, tvb, offset, pinfo, tree, hf_dap_signedSecurityError);
5225 const value_string dap_SecurityError_vals[] = {
5226 { 0, "unsignedSecurityError" },
5227 { 1, "signedSecurityError" },
5231 static const ber_choice_t SecurityError_choice[] = {
5232 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedSecurityError },
5233 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedSecurityError },
5234 { 0, 0, 0, 0, NULL }
5238 dissect_dap_SecurityError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5239 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5240 SecurityError_choice, hf_index, ett_dap_SecurityError,
5247 static const ber_sequence_t ServiceErrorData_set[] = {
5248 { BER_CLASS_CON, 0, 0, dissect_service_error_problem },
5249 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
5250 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
5251 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
5252 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
5257 dissect_dap_ServiceErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5258 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
5259 ServiceErrorData_set, hf_index, ett_dap_ServiceErrorData);
5263 static int dissect_unsignedServiceError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5264 return dissect_dap_ServiceErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedServiceError);
5266 static int dissect_serviceError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5267 return dissect_dap_ServiceErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_serviceError);
5271 static const ber_sequence_t T_signedServiceError_sequence[] = {
5272 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_serviceError },
5273 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
5274 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
5279 dissect_dap_T_signedServiceError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5280 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5281 T_signedServiceError_sequence, hf_index, ett_dap_T_signedServiceError);
5285 static int dissect_signedServiceError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5286 return dissect_dap_T_signedServiceError(FALSE, tvb, offset, pinfo, tree, hf_dap_signedServiceError);
5290 const value_string dap_ServiceError_vals[] = {
5291 { 0, "unsignedServiceError" },
5292 { 1, "signedServiceError" },
5296 static const ber_choice_t ServiceError_choice[] = {
5297 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedServiceError },
5298 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedServiceError },
5299 { 0, 0, 0, 0, NULL }
5303 dissect_dap_ServiceError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5304 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5305 ServiceError_choice, hf_index, ett_dap_ServiceError,
5312 static const value_string dap_UpdateProblem_vals[] = {
5313 { 1, "namingViolation" },
5314 { 2, "objectClassViolation" },
5315 { 3, "notAllowedOnNonLeaf" },
5316 { 4, "notAllowedOnRDN" },
5317 { 5, "entryAlreadyExists" },
5318 { 6, "affectsMultipleDSAs" },
5319 { 7, "objectClassModificationProhibited" },
5320 { 8, "noSuchSuperior" },
5321 { 9, "notAncestor" },
5322 { 10, "parentNotAncestor" },
5323 { 11, "hierarchyRuleViolation" },
5324 { 12, "familyRuleViolation" },
5330 dissect_dap_UpdateProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5334 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
5338 if (check_col(pinfo->cinfo, COL_INFO)) {
5339 col_append_fstr(pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_UpdateProblem_vals, "UpdateProblem(%d)"));
5346 static int dissect_update_error_problem(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5347 return dissect_dap_UpdateProblem(FALSE, tvb, offset, pinfo, tree, hf_dap_update_error_problem);
5351 static const value_string dap_T_attributeInfo_item_vals[] = {
5352 { 0, "attributeType" },
5357 static const ber_choice_t T_attributeInfo_item_choice[] = {
5358 { 0, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_attributeType },
5359 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_attribute },
5360 { 0, 0, 0, 0, NULL }
5364 dissect_dap_T_attributeInfo_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5365 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5366 T_attributeInfo_item_choice, hf_index, ett_dap_T_attributeInfo_item,
5371 static int dissect_attributeInfo_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5372 return dissect_dap_T_attributeInfo_item(FALSE, tvb, offset, pinfo, tree, hf_dap_attributeInfo_item);
5376 static const ber_sequence_t T_attributeInfo_set_of[1] = {
5377 { BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_attributeInfo_item },
5381 dissect_dap_T_attributeInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5382 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
5383 T_attributeInfo_set_of, hf_index, ett_dap_T_attributeInfo);
5387 static int dissect_attributeInfo(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5388 return dissect_dap_T_attributeInfo(FALSE, tvb, offset, pinfo, tree, hf_dap_attributeInfo);
5392 static const ber_sequence_t UpdateErrorData_set[] = {
5393 { BER_CLASS_CON, 0, 0, dissect_update_error_problem },
5394 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_attributeInfo },
5395 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
5396 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
5397 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
5398 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
5403 dissect_dap_UpdateErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5404 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
5405 UpdateErrorData_set, hf_index, ett_dap_UpdateErrorData);
5409 static int dissect_unsignedUpdateError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5410 return dissect_dap_UpdateErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_unsignedUpdateError);
5412 static int dissect_updateError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5413 return dissect_dap_UpdateErrorData(FALSE, tvb, offset, pinfo, tree, hf_dap_updateError);
5417 static const ber_sequence_t T_signedUpdateError_sequence[] = {
5418 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_updateError },
5419 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
5420 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
5425 dissect_dap_T_signedUpdateError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5426 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
5427 T_signedUpdateError_sequence, hf_index, ett_dap_T_signedUpdateError);
5431 static int dissect_signedUpdateError(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_) {
5432 return dissect_dap_T_signedUpdateError(FALSE, tvb, offset, pinfo, tree, hf_dap_signedUpdateError);
5436 const value_string dap_UpdateError_vals[] = {
5437 { 0, "unsignedUpdateError" },
5438 { 1, "signedUpdateError" },
5442 static const ber_choice_t UpdateError_choice[] = {
5443 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedUpdateError },
5444 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedUpdateError },
5445 { 0, 0, 0, 0, NULL }
5449 dissect_dap_UpdateError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
5450 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
5451 UpdateError_choice, hf_index, ett_dap_UpdateError,
5458 /*--- End of included file: packet-dap-fn.c ---*/
5459 #line 77 "packet-dap-template.c"
5462 * Dissect DAP PDUs inside a ROS PDUs
5465 dissect_dap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
5469 proto_item *item=NULL;
5470 proto_tree *tree=NULL;
5471 int (*dap_dissector)(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) = NULL;
5474 /* do we have operation information from the ROS dissector? */
5475 if( !pinfo->private_data ){
5477 proto_tree_add_text(parent_tree, tvb, offset, -1,
5478 "Internal error: can't get operation information from ROS dissector.");
5482 session = ( (struct SESSION_DATA_STRUCTURE*)(pinfo->private_data) );
5486 item = proto_tree_add_item(parent_tree, proto_dap, tvb, 0, -1, FALSE);
5487 tree = proto_item_add_subtree(item, ett_dap);
5489 if (check_col(pinfo->cinfo, COL_PROTOCOL))
5490 col_set_str(pinfo->cinfo, COL_PROTOCOL, "DAP");
5491 if (check_col(pinfo->cinfo, COL_INFO))
5492 col_clear(pinfo->cinfo, COL_INFO);
5494 switch(session->ros_op & ROS_OP_MASK) {
5495 case (ROS_OP_BIND | ROS_OP_ARGUMENT): /* BindInvoke */
5496 dap_dissector = dissect_dap_DirectoryBindArgument;
5497 dap_op_name = "Bind-Argument";
5499 case (ROS_OP_BIND | ROS_OP_RESULT): /* BindResult */
5500 dap_dissector = dissect_dap_DirectoryBindResult;
5501 dap_op_name = "Bind-Result";
5503 case (ROS_OP_BIND | ROS_OP_ERROR): /* BindError */
5504 dap_dissector = dissect_dap_DirectoryBindError;
5505 dap_op_name = "Bind-Error";
5507 case (ROS_OP_INVOKE | ROS_OP_ARGUMENT): /* Invoke Argument */
5508 switch(session->ros_op & ROS_OP_OPCODE_MASK) {
5510 dap_dissector = dissect_dap_ReadArgument;
5511 dap_op_name = "Read-Argument";
5513 case 2: /* compare */
5514 dap_dissector = dissect_dap_CompareArgument;
5515 dap_op_name = "Compare-Argument";
5517 case 3: /* abandon */
5518 dap_dissector = dissect_dap_AbandonArgument;
5519 dap_op_name = "Abandon-Argument";
5522 dap_dissector = dissect_dap_ListArgument;
5523 dap_op_name = "List-Argument";
5525 case 5: /* search */
5526 dap_dissector = dissect_dap_SearchArgument;
5527 dap_op_name = "Search-Argument";
5529 case 6: /* addEntry */
5530 dap_dissector = dissect_dap_AddEntryArgument;
5531 dap_op_name = "Add-Entry-Argument";
5533 case 7: /* removeEntry */
5534 dap_dissector = dissect_dap_RemoveEntryArgument;
5535 dap_op_name = "Remove-Entry-Argument";
5537 case 8: /* modifyEntry */
5538 dap_dissector = dissect_dap_ModifyEntryArgument;
5539 dap_op_name = "Modify-Entry-Argument";
5541 case 9: /* modifyDN */
5542 dap_dissector = dissect_dap_ModifyDNArgument;
5543 dap_op_name = "Modify-DN-Argument";
5546 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DAP opcode (%d)",
5547 session->ros_op & ROS_OP_OPCODE_MASK);
5551 case (ROS_OP_INVOKE | ROS_OP_RESULT): /* Return Result */
5552 switch(session->ros_op & ROS_OP_OPCODE_MASK) {
5554 dap_dissector = dissect_dap_ReadResult;
5555 dap_op_name = "Read-Result";
5557 case 2: /* compare */
5558 dap_dissector = dissect_dap_CompareResult;
5559 dap_op_name = "Compare-Result";
5561 case 3: /* abandon */
5562 dap_dissector = dissect_dap_AbandonResult;
5563 dap_op_name = "Abandon-Result";
5566 dap_dissector = dissect_dap_ListResult;
5567 dap_op_name = "List-Result";
5569 case 5: /* search */
5570 dap_dissector = dissect_dap_SearchResult;
5571 dap_op_name = "Search-Result";
5573 case 6: /* addEntry */
5574 dap_dissector = dissect_dap_AddEntryResult;
5575 dap_op_name = "Add-Entry-Result";
5577 case 7: /* removeEntry */
5578 dap_dissector = dissect_dap_RemoveEntryResult;
5579 dap_op_name = "Remove-Entry-Result";
5581 case 8: /* modifyEntry */
5582 dap_dissector = dissect_dap_ModifyEntryResult;
5583 dap_op_name = "Modify-Entry-Result";
5585 case 9: /* modifyDN */
5586 dap_dissector = dissect_dap_ModifyDNResult;
5587 dap_op_name = "Modify-DN-Result";
5590 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DAP opcode");
5594 case (ROS_OP_INVOKE | ROS_OP_ERROR): /* Return Error */
5595 switch(session->ros_op & ROS_OP_OPCODE_MASK) {
5596 case 1: /* attributeError */
5597 dap_dissector = dissect_dap_AttributeError;
5598 dap_op_name = "Attribute-Error";
5600 case 2: /* nameError */
5601 dap_dissector = dissect_dap_NameError;
5602 dap_op_name = "Name-Error";
5604 case 3: /* serviceError */
5605 dap_dissector = dissect_dap_ServiceError;
5606 dap_op_name = "Service-Error";
5608 case 4: /* referral */
5609 dap_dissector = dissect_dap_Referral;
5610 dap_op_name = "Referral";
5612 case 5: /* abandoned */
5613 dap_dissector = dissect_dap_Abandoned;
5614 dap_op_name = "Abandoned";
5616 case 6: /* securityError */
5617 dap_dissector = dissect_dap_SecurityError;
5618 dap_op_name = "Security-Error";
5620 case 7: /* abandonFailed */
5621 dap_dissector = dissect_dap_AbandonFailedError;
5622 dap_op_name = "Abandon-Failed-Error";
5624 case 8: /* updateError */
5625 dap_dissector = dissect_dap_UpdateError;
5626 dap_op_name = "Update-Error";
5629 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DAP errcode");
5634 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DAP PDU");
5639 if (check_col(pinfo->cinfo, COL_INFO))
5640 col_add_str(pinfo->cinfo, COL_INFO, dap_op_name);
5642 while (tvb_reported_length_remaining(tvb, offset) > 0){
5644 offset=(*dap_dissector)(FALSE, tvb, offset, pinfo , tree, -1);
5645 if(offset == old_offset){
5646 proto_tree_add_text(tree, tvb, offset, -1,"Internal error, zero-byte DAP PDU");
5647 offset = tvb_length(tvb);
5655 /*--- proto_register_dap -------------------------------------------*/
5656 void proto_register_dap(void) {
5658 /* List of fields */
5659 static hf_register_info hf[] =
5662 /*--- Included file: packet-dap-hfarr.c ---*/
5663 #line 1 "packet-dap-hfarr.c"
5664 { &hf_dap_securityParameters,
5665 { "securityParameters", "dap.securityParameters",
5666 FT_NONE, BASE_NONE, NULL, 0,
5667 "dap.SecurityParameters", HFILL }},
5668 { &hf_dap_performer,
5669 { "performer", "dap.performer",
5670 FT_UINT32, BASE_DEC, NULL, 0,
5671 "x509if.DistinguishedName", HFILL }},
5672 { &hf_dap_aliasDereferenced,
5673 { "aliasDereferenced", "dap.aliasDereferenced",
5674 FT_BOOLEAN, 8, NULL, 0,
5675 "dap.BOOLEAN", HFILL }},
5676 { &hf_dap_notification,
5677 { "notification", "dap.notification",
5678 FT_UINT32, BASE_DEC, NULL, 0,
5679 "dap.SEQUENCE_OF_Attribute", HFILL }},
5680 { &hf_dap_notification_item,
5681 { "Item", "dap.notification_item",
5682 FT_NONE, BASE_NONE, NULL, 0,
5683 "x509if.Attribute", HFILL }},
5685 { "options", "dap.options",
5686 FT_BYTES, BASE_HEX, NULL, 0,
5687 "dap.ServiceControlOptions", HFILL }},
5689 { "priority", "dap.priority",
5690 FT_INT32, BASE_DEC, VALS(dap_T_priority_vals), 0,
5691 "dap.T_priority", HFILL }},
5692 { &hf_dap_timeLimit,
5693 { "timeLimit", "dap.timeLimit",
5694 FT_INT32, BASE_DEC, NULL, 0,
5695 "dap.INTEGER", HFILL }},
5696 { &hf_dap_sizeLimit,
5697 { "sizeLimit", "dap.sizeLimit",
5698 FT_INT32, BASE_DEC, NULL, 0,
5699 "dap.INTEGER", HFILL }},
5700 { &hf_dap_scopeOfReferral,
5701 { "scopeOfReferral", "dap.scopeOfReferral",
5702 FT_INT32, BASE_DEC, VALS(dap_T_scopeOfReferral_vals), 0,
5703 "dap.T_scopeOfReferral", HFILL }},
5704 { &hf_dap_attributeSizeLimit,
5705 { "attributeSizeLimit", "dap.attributeSizeLimit",
5706 FT_INT32, BASE_DEC, NULL, 0,
5707 "dap.INTEGER", HFILL }},
5708 { &hf_dap_manageDSAITPlaneRef,
5709 { "manageDSAITPlaneRef", "dap.manageDSAITPlaneRef",
5710 FT_NONE, BASE_NONE, NULL, 0,
5711 "dap.T_manageDSAITPlaneRef", HFILL }},
5713 { "dsaName", "dap.dsaName",
5714 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
5715 "dap.Name", HFILL }},
5716 { &hf_dap_agreementID,
5717 { "agreementID", "dap.agreementID",
5718 FT_NONE, BASE_NONE, NULL, 0,
5719 "disp.AgreementID", HFILL }},
5720 { &hf_dap_serviceType,
5721 { "serviceType", "dap.serviceType",
5722 FT_OID, BASE_NONE, NULL, 0,
5723 "dap.OBJECT_IDENTIFIER", HFILL }},
5724 { &hf_dap_userClass,
5725 { "userClass", "dap.userClass",
5726 FT_INT32, BASE_DEC, NULL, 0,
5727 "dap.INTEGER", HFILL }},
5728 { &hf_dap_attributes,
5729 { "attributes", "dap.attributes",
5730 FT_UINT32, BASE_DEC, VALS(dap_T_attributes_vals), 0,
5731 "dap.T_attributes", HFILL }},
5732 { &hf_dap_allUserAttributes,
5733 { "allUserAttributes", "dap.allUserAttributes",
5734 FT_NONE, BASE_NONE, NULL, 0,
5735 "dap.NULL", HFILL }},
5737 { "select", "dap.select",
5738 FT_UINT32, BASE_DEC, NULL, 0,
5739 "dap.SET_OF_AttributeType", HFILL }},
5740 { &hf_dap_select_item,
5741 { "Item", "dap.select_item",
5742 FT_OID, BASE_NONE, NULL, 0,
5743 "x509if.AttributeType", HFILL }},
5744 { &hf_dap_infoTypes,
5745 { "infoTypes", "dap.infoTypes",
5746 FT_INT32, BASE_DEC, VALS(dap_T_infoTypes_vals), 0,
5747 "dap.T_infoTypes", HFILL }},
5748 { &hf_dap_extraAttributes,
5749 { "extraAttributes", "dap.extraAttributes",
5750 FT_UINT32, BASE_DEC, VALS(dap_T_extraAttributes_vals), 0,
5751 "dap.T_extraAttributes", HFILL }},
5752 { &hf_dap_allOperationalAttributes,
5753 { "allOperationalAttributes", "dap.allOperationalAttributes",
5754 FT_NONE, BASE_NONE, NULL, 0,
5755 "dap.NULL", HFILL }},
5756 { &hf_dap_contextSelection,
5757 { "contextSelection", "dap.contextSelection",
5758 FT_UINT32, BASE_DEC, VALS(dap_ContextSelection_vals), 0,
5759 "dap.ContextSelection", HFILL }},
5760 { &hf_dap_returnContexts,
5761 { "returnContexts", "dap.returnContexts",
5762 FT_BOOLEAN, 8, NULL, 0,
5763 "dap.BOOLEAN", HFILL }},
5764 { &hf_dap_familyReturn,
5765 { "familyReturn", "dap.familyReturn",
5766 FT_NONE, BASE_NONE, NULL, 0,
5767 "dap.FamilyReturn", HFILL }},
5768 { &hf_dap_allContexts,
5769 { "allContexts", "dap.allContexts",
5770 FT_NONE, BASE_NONE, NULL, 0,
5771 "dap.NULL", HFILL }},
5772 { &hf_dap_selectedContexts,
5773 { "selectedContexts", "dap.selectedContexts",
5774 FT_UINT32, BASE_DEC, NULL, 0,
5775 "dap.SET_OF_TypeAndContextAssertion", HFILL }},
5776 { &hf_dap_selectedContexts_item,
5777 { "Item", "dap.selectedContexts_item",
5778 FT_NONE, BASE_NONE, NULL, 0,
5779 "dap.TypeAndContextAssertion", HFILL }},
5781 { "type", "dap.type",
5782 FT_OID, BASE_NONE, NULL, 0,
5783 "x509if.AttributeType", HFILL }},
5784 { &hf_dap_contextAssertions,
5785 { "contextAssertions", "dap.contextAssertions",
5786 FT_UINT32, BASE_DEC, VALS(dap_T_contextAssertions_vals), 0,
5787 "dap.T_contextAssertions", HFILL }},
5788 { &hf_dap_preference,
5789 { "preference", "dap.preference",
5790 FT_UINT32, BASE_DEC, NULL, 0,
5791 "dap.SEQUENCE_OF_ContextAssertion", HFILL }},
5792 { &hf_dap_preference_item,
5793 { "Item", "dap.preference_item",
5794 FT_NONE, BASE_NONE, NULL, 0,
5795 "x509if.ContextAssertion", HFILL }},
5798 FT_UINT32, BASE_DEC, NULL, 0,
5799 "dap.SET_OF_ContextAssertion", HFILL }},
5801 { "Item", "dap.all_item",
5802 FT_NONE, BASE_NONE, NULL, 0,
5803 "x509if.ContextAssertion", HFILL }},
5804 { &hf_dap_memberSelect,
5805 { "memberSelect", "dap.memberSelect",
5806 FT_UINT32, BASE_DEC, VALS(dap_T_memberSelect_vals), 0,
5807 "dap.T_memberSelect", HFILL }},
5808 { &hf_dap_familySelect,
5809 { "familySelect", "dap.familySelect",
5810 FT_UINT32, BASE_DEC, NULL, 0,
5811 "dap.T_familySelect", HFILL }},
5812 { &hf_dap_familySelect_item,
5813 { "Item", "dap.familySelect_item",
5814 FT_OID, BASE_NONE, NULL, 0,
5815 "dap.OBJECT_IDENTIFIER", HFILL }},
5817 { "name", "dap.name",
5818 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
5819 "dap.Name", HFILL }},
5820 { &hf_dap_fromEntry,
5821 { "fromEntry", "dap.fromEntry",
5822 FT_BOOLEAN, 8, NULL, 0,
5823 "dap.BOOLEAN", HFILL }},
5824 { &hf_dap_entry_information,
5825 { "information", "dap.information",
5826 FT_UINT32, BASE_DEC, NULL, 0,
5827 "dap.T_entry_information", HFILL }},
5828 { &hf_dap_entry_information_item,
5829 { "Item", "dap.information_item",
5830 FT_UINT32, BASE_DEC, VALS(dap_EntryInformationItem_vals), 0,
5831 "dap.EntryInformationItem", HFILL }},
5832 { &hf_dap_attributeType,
5833 { "attributeType", "dap.attributeType",
5834 FT_OID, BASE_NONE, NULL, 0,
5835 "x509if.AttributeType", HFILL }},
5836 { &hf_dap_attribute,
5837 { "attribute", "dap.attribute",
5838 FT_NONE, BASE_NONE, NULL, 0,
5839 "x509if.Attribute", HFILL }},
5840 { &hf_dap_incompleteEntry,
5841 { "incompleteEntry", "dap.incompleteEntry",
5842 FT_BOOLEAN, 8, NULL, 0,
5843 "dap.BOOLEAN", HFILL }},
5844 { &hf_dap_partialName,
5845 { "partialName", "dap.partialName",
5846 FT_BOOLEAN, 8, NULL, 0,
5847 "dap.BOOLEAN", HFILL }},
5848 { &hf_dap_derivedEntry,
5849 { "derivedEntry", "dap.derivedEntry",
5850 FT_BOOLEAN, 8, NULL, 0,
5851 "dap.BOOLEAN", HFILL }},
5852 { &hf_dap_family_class,
5853 { "family-class", "dap.family_class",
5854 FT_OID, BASE_NONE, NULL, 0,
5855 "dap.OBJECT_IDENTIFIER", HFILL }},
5856 { &hf_dap_familyEntries,
5857 { "familyEntries", "dap.familyEntries",
5858 FT_UINT32, BASE_DEC, NULL, 0,
5859 "dap.SEQUENCE_OF_FamilyEntry", HFILL }},
5860 { &hf_dap_familyEntries_item,
5861 { "Item", "dap.familyEntries_item",
5862 FT_NONE, BASE_NONE, NULL, 0,
5863 "dap.FamilyEntry", HFILL }},
5866 FT_UINT32, BASE_DEC, NULL, 0,
5867 "x509if.RelativeDistinguishedName", HFILL }},
5868 { &hf_dap_family_information,
5869 { "information", "dap.information",
5870 FT_UINT32, BASE_DEC, NULL, 0,
5871 "dap.FamilyInformation", HFILL }},
5872 { &hf_dap_family_information_item,
5873 { "Item", "dap.information_item",
5874 FT_UINT32, BASE_DEC, VALS(dap_T_family_information_item_vals), 0,
5875 "dap.T_family_information_item", HFILL }},
5876 { &hf_dap_family_info,
5877 { "family-info", "dap.family_info",
5878 FT_UINT32, BASE_DEC, NULL, 0,
5879 "dap.SEQUENCE_OF_FamilyEntries", HFILL }},
5880 { &hf_dap_family_info_item,
5881 { "Item", "dap.family_info_item",
5882 FT_NONE, BASE_NONE, NULL, 0,
5883 "dap.FamilyEntries", HFILL }},
5884 { &hf_dap_filter_item,
5885 { "item", "dap.item",
5886 FT_UINT32, BASE_DEC, VALS(dap_FilterItem_vals), 0,
5887 "dap.FilterItem", HFILL }},
5890 FT_UINT32, BASE_DEC, NULL, 0,
5891 "dap.SetOfFilter", HFILL }},
5894 FT_UINT32, BASE_DEC, NULL, 0,
5895 "dap.SetOfFilter", HFILL }},
5898 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5899 "dap.Filter", HFILL }},
5900 { &hf_dap_SetOfFilter_item,
5901 { "Item", "dap.SetOfFilter_item",
5902 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5903 "dap.Filter", HFILL }},
5905 { "equality", "dap.equality",
5906 FT_NONE, BASE_NONE, NULL, 0,
5907 "x509if.AttributeValueAssertion", HFILL }},
5908 { &hf_dap_substrings,
5909 { "substrings", "dap.substrings",
5910 FT_NONE, BASE_NONE, NULL, 0,
5911 "dap.T_substrings", HFILL }},
5912 { &hf_dap_sunstringType,
5913 { "type", "dap.type",
5914 FT_OID, BASE_NONE, NULL, 0,
5915 "dap.OBJECT_IDENTIFIER", HFILL }},
5917 { "strings", "dap.strings",
5918 FT_UINT32, BASE_DEC, NULL, 0,
5919 "dap.T_strings", HFILL }},
5920 { &hf_dap_strings_item,
5921 { "Item", "dap.strings_item",
5922 FT_UINT32, BASE_DEC, VALS(dap_T_strings_item_vals), 0,
5923 "dap.T_strings_item", HFILL }},
5925 { "initial", "dap.initial",
5926 FT_NONE, BASE_NONE, NULL, 0,
5927 "dap.T_initial", HFILL }},
5930 FT_NONE, BASE_NONE, NULL, 0,
5931 "dap.T_any", HFILL }},
5933 { "final", "dap.final",
5934 FT_NONE, BASE_NONE, NULL, 0,
5935 "dap.T_final", HFILL }},
5937 { "control", "dap.control",
5938 FT_NONE, BASE_NONE, NULL, 0,
5939 "x509if.Attribute", HFILL }},
5940 { &hf_dap_greaterOrEqual,
5941 { "greaterOrEqual", "dap.greaterOrEqual",
5942 FT_NONE, BASE_NONE, NULL, 0,
5943 "x509if.AttributeValueAssertion", HFILL }},
5944 { &hf_dap_lessOrEqual,
5945 { "lessOrEqual", "dap.lessOrEqual",
5946 FT_NONE, BASE_NONE, NULL, 0,
5947 "x509if.AttributeValueAssertion", HFILL }},
5949 { "present", "dap.present",
5950 FT_OID, BASE_NONE, NULL, 0,
5951 "x509if.AttributeType", HFILL }},
5952 { &hf_dap_approximateMatch,
5953 { "approximateMatch", "dap.approximateMatch",
5954 FT_NONE, BASE_NONE, NULL, 0,
5955 "x509if.AttributeValueAssertion", HFILL }},
5956 { &hf_dap_extensibleMatch,
5957 { "extensibleMatch", "dap.extensibleMatch",
5958 FT_NONE, BASE_NONE, NULL, 0,
5959 "dap.MatchingRuleAssertion", HFILL }},
5960 { &hf_dap_contextPresent,
5961 { "contextPresent", "dap.contextPresent",
5962 FT_NONE, BASE_NONE, NULL, 0,
5963 "x509if.AttributeTypeAssertion", HFILL }},
5964 { &hf_dap_matchingRule,
5965 { "matchingRule", "dap.matchingRule",
5966 FT_UINT32, BASE_DEC, NULL, 0,
5967 "dap.T_matchingRule", HFILL }},
5968 { &hf_dap_matchingRule_item,
5969 { "Item", "dap.matchingRule_item",
5970 FT_OID, BASE_NONE, NULL, 0,
5971 "dap.OBJECT_IDENTIFIER", HFILL }},
5972 { &hf_dap_matchValue,
5973 { "matchValue", "dap.matchValue",
5974 FT_NONE, BASE_NONE, NULL, 0,
5975 "dap.T_matchValue", HFILL }},
5976 { &hf_dap_dnAttributes,
5977 { "dnAttributes", "dap.dnAttributes",
5978 FT_BOOLEAN, 8, NULL, 0,
5979 "dap.BOOLEAN", HFILL }},
5980 { &hf_dap_newRequest,
5981 { "newRequest", "dap.newRequest",
5982 FT_NONE, BASE_NONE, NULL, 0,
5983 "dap.T_newRequest", HFILL }},
5985 { "pageSize", "dap.pageSize",
5986 FT_INT32, BASE_DEC, NULL, 0,
5987 "dap.INTEGER", HFILL }},
5989 { "sortKeys", "dap.sortKeys",
5990 FT_UINT32, BASE_DEC, NULL, 0,
5991 "dap.SEQUENCE_OF_SortKey", HFILL }},
5992 { &hf_dap_sortKeys_item,
5993 { "Item", "dap.sortKeys_item",
5994 FT_NONE, BASE_NONE, NULL, 0,
5995 "dap.SortKey", HFILL }},
5997 { "reverse", "dap.reverse",
5998 FT_BOOLEAN, 8, NULL, 0,
5999 "dap.BOOLEAN", HFILL }},
6001 { "unmerged", "dap.unmerged",
6002 FT_BOOLEAN, 8, NULL, 0,
6003 "dap.BOOLEAN", HFILL }},
6004 { &hf_dap_queryReference,
6005 { "queryReference", "dap.queryReference",
6006 FT_BYTES, BASE_HEX, NULL, 0,
6007 "dap.OCTET_STRING", HFILL }},
6008 { &hf_dap_orderingRule,
6009 { "orderingRule", "dap.orderingRule",
6010 FT_OID, BASE_NONE, NULL, 0,
6011 "dap.OBJECT_IDENTIFIER", HFILL }},
6012 { &hf_dap_certification_path,
6013 { "certification-path", "dap.certification_path",
6014 FT_NONE, BASE_NONE, NULL, 0,
6015 "x509af.CertificationPath", HFILL }},
6016 { &hf_dap_distinguished_name,
6017 { "name", "dap.name",
6018 FT_UINT32, BASE_DEC, NULL, 0,
6019 "x509if.DistinguishedName", HFILL }},
6021 { "time", "dap.time",
6022 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
6023 "dap.Time", HFILL }},
6025 { "random", "dap.random",
6026 FT_BYTES, BASE_HEX, NULL, 0,
6027 "dap.BIT_STRING", HFILL }},
6029 { "target", "dap.target",
6030 FT_INT32, BASE_DEC, VALS(dap_ProtectionRequest_vals), 0,
6031 "dap.ProtectionRequest", HFILL }},
6033 { "response", "dap.response",
6034 FT_BYTES, BASE_HEX, NULL, 0,
6035 "dap.BIT_STRING", HFILL }},
6036 { &hf_dap_operationCode,
6037 { "operationCode", "dap.operationCode",
6038 FT_UINT32, BASE_DEC, VALS(ros_Code_vals), 0,
6039 "ros.Code", HFILL }},
6040 { &hf_dap_attributeCertificationPath,
6041 { "attributeCertificationPath", "dap.attributeCertificationPath",
6042 FT_NONE, BASE_NONE, NULL, 0,
6043 "x509af.AttributeCertificationPath", HFILL }},
6044 { &hf_dap_errorProtection,
6045 { "errorProtection", "dap.errorProtection",
6046 FT_INT32, BASE_DEC, VALS(dap_ErrorProtectionRequest_vals), 0,
6047 "dap.ErrorProtectionRequest", HFILL }},
6048 { &hf_dap_errorCode,
6049 { "errorCode", "dap.errorCode",
6050 FT_UINT32, BASE_DEC, VALS(ros_Code_vals), 0,
6051 "ros.Code", HFILL }},
6053 { "utcTime", "dap.utcTime",
6054 FT_STRING, BASE_NONE, NULL, 0,
6055 "dap.UTCTime", HFILL }},
6056 { &hf_dap_generalizedTime,
6057 { "generalizedTime", "dap.generalizedTime",
6058 FT_STRING, BASE_NONE, NULL, 0,
6059 "dap.GeneralizedTime", HFILL }},
6060 { &hf_dap_credentials,
6061 { "credentials", "dap.credentials",
6062 FT_UINT32, BASE_DEC, VALS(dap_Credentials_vals), 0,
6063 "dap.Credentials", HFILL }},
6065 { "versions", "dap.versions",
6066 FT_BYTES, BASE_HEX, NULL, 0,
6067 "dap.Versions", HFILL }},
6069 { "simple", "dap.simple",
6070 FT_NONE, BASE_NONE, NULL, 0,
6071 "dap.SimpleCredentials", HFILL }},
6073 { "strong", "dap.strong",
6074 FT_NONE, BASE_NONE, NULL, 0,
6075 "dap.StrongCredentials", HFILL }},
6076 { &hf_dap_externalProcedure,
6077 { "externalProcedure", "dap.externalProcedure",
6078 FT_NONE, BASE_NONE, NULL, 0,
6079 "acse.EXTERNALt", HFILL }},
6081 { "spkm", "dap.spkm",
6082 FT_UINT32, BASE_DEC, VALS(dap_SpkmCredentials_vals), 0,
6083 "dap.SpkmCredentials", HFILL }},
6085 { "validity", "dap.validity",
6086 FT_NONE, BASE_NONE, NULL, 0,
6087 "dap.T_validity", HFILL }},
6089 { "time1", "dap.time1",
6090 FT_UINT32, BASE_DEC, VALS(dap_T_time1_vals), 0,
6091 "dap.T_time1", HFILL }},
6094 FT_STRING, BASE_NONE, NULL, 0,
6095 "dap.UTCTime", HFILL }},
6098 FT_STRING, BASE_NONE, NULL, 0,
6099 "dap.GeneralizedTime", HFILL }},
6101 { "time2", "dap.time2",
6102 FT_UINT32, BASE_DEC, VALS(dap_T_time2_vals), 0,
6103 "dap.T_time2", HFILL }},
6105 { "random1", "dap.random1",
6106 FT_BYTES, BASE_HEX, NULL, 0,
6107 "dap.BIT_STRING", HFILL }},
6109 { "random2", "dap.random2",
6110 FT_BYTES, BASE_HEX, NULL, 0,
6111 "dap.BIT_STRING", HFILL }},
6113 { "password", "dap.password",
6114 FT_UINT32, BASE_DEC, VALS(dap_T_password_vals), 0,
6115 "dap.T_password", HFILL }},
6116 { &hf_dap_unprotected,
6117 { "unprotected", "dap.unprotected",
6118 FT_BYTES, BASE_HEX, NULL, 0,
6119 "dap.OCTET_STRING", HFILL }},
6120 { &hf_dap_protected,
6121 { "protected", "dap.protected",
6122 FT_NONE, BASE_NONE, NULL, 0,
6123 "dap.T_protected", HFILL }},
6124 { &hf_dap_protectedPassword,
6125 { "protectedPassword", "dap.protectedPassword",
6126 FT_BYTES, BASE_HEX, NULL, 0,
6127 "dap.OCTET_STRING", HFILL }},
6128 { &hf_dap_algorithmIdentifier,
6129 { "algorithmIdentifier", "dap.algorithmIdentifier",
6130 FT_NONE, BASE_NONE, NULL, 0,
6131 "x509af.AlgorithmIdentifier", HFILL }},
6132 { &hf_dap_encrypted,
6133 { "encrypted", "dap.encrypted",
6134 FT_BYTES, BASE_HEX, NULL, 0,
6135 "dap.BIT_STRING", HFILL }},
6136 { &hf_dap_bind_token,
6137 { "bind-token", "dap.bind_token",
6138 FT_NONE, BASE_NONE, NULL, 0,
6139 "dap.Token", HFILL }},
6142 FT_NONE, BASE_NONE, NULL, 0,
6143 "dap.T_req", HFILL }},
6146 FT_NONE, BASE_NONE, NULL, 0,
6147 "dap.T_rep", HFILL }},
6148 { &hf_dap_algorithm,
6149 { "algorithm", "dap.algorithm",
6150 FT_NONE, BASE_NONE, NULL, 0,
6151 "x509af.AlgorithmIdentifier", HFILL }},
6153 { "time", "dap.time",
6154 FT_STRING, BASE_NONE, NULL, 0,
6155 "dap.UTCTime", HFILL }},
6156 { &hf_dap_bindIntAlgorithm,
6157 { "bindIntAlgorithm", "dap.bindIntAlgorithm",
6158 FT_UINT32, BASE_DEC, NULL, 0,
6159 "dap.SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier", HFILL }},
6160 { &hf_dap_bindIntAlgorithm_item,
6161 { "Item", "dap.bindIntAlgorithm_item",
6162 FT_NONE, BASE_NONE, NULL, 0,
6163 "x509af.AlgorithmIdentifier", HFILL }},
6164 { &hf_dap_bindIntKeyInfo,
6165 { "bindIntKeyInfo", "dap.bindIntKeyInfo",
6166 FT_BYTES, BASE_HEX, NULL, 0,
6167 "dap.BindKeyInfo", HFILL }},
6168 { &hf_dap_bindConfAlgorithm,
6169 { "bindConfAlgorithm", "dap.bindConfAlgorithm",
6170 FT_UINT32, BASE_DEC, NULL, 0,
6171 "dap.SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier", HFILL }},
6172 { &hf_dap_bindConfAlgorithm_item,
6173 { "Item", "dap.bindConfAlgorithm_item",
6174 FT_NONE, BASE_NONE, NULL, 0,
6175 "x509af.AlgorithmIdentifier", HFILL }},
6176 { &hf_dap_bindConfKeyInfo,
6177 { "bindConfKeyInfo", "dap.bindConfKeyInfo",
6178 FT_BYTES, BASE_HEX, NULL, 0,
6179 "dap.BindKeyInfo", HFILL }},
6180 { &hf_dap_token_data,
6181 { "token-data", "dap.token_data",
6182 FT_NONE, BASE_NONE, NULL, 0,
6183 "dap.TokenData", HFILL }},
6184 { &hf_dap_algorithm_identifier,
6185 { "algorithm-identifier", "dap.algorithm_identifier",
6186 FT_NONE, BASE_NONE, NULL, 0,
6187 "x509af.AlgorithmIdentifier", HFILL }},
6189 { "error", "dap.error",
6190 FT_UINT32, BASE_DEC, VALS(dap_T_error_vals), 0,
6191 "dap.T_error", HFILL }},
6192 { &hf_dap_serviceProblem,
6193 { "serviceError", "dap.serviceError",
6194 FT_INT32, BASE_DEC, VALS(dap_ServiceProblem_vals), 0,
6195 "dap.ServiceProblem", HFILL }},
6196 { &hf_dap_securityProblem,
6197 { "securityError", "dap.securityError",
6198 FT_INT32, BASE_DEC, VALS(dap_SecurityProblem_vals), 0,
6199 "dap.SecurityProblem", HFILL }},
6200 { &hf_dap_unsignedDirectoryBindError,
6201 { "unsignedDirectoryBindError", "dap.unsignedDirectoryBindError",
6202 FT_NONE, BASE_NONE, NULL, 0,
6203 "dap.DirectoryBindErrorData", HFILL }},
6204 { &hf_dap_signedDirectoryBindError,
6205 { "signedDirectoryBindError", "dap.signedDirectoryBindError",
6206 FT_NONE, BASE_NONE, NULL, 0,
6207 "dap.T_signedDirectoryBindError", HFILL }},
6208 { &hf_dap_directoryBindError,
6209 { "directoryBindError", "dap.directoryBindError",
6210 FT_NONE, BASE_NONE, NULL, 0,
6211 "dap.DirectoryBindErrorData", HFILL }},
6213 { "object", "dap.object",
6214 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
6215 "dap.Name", HFILL }},
6216 { &hf_dap_selection,
6217 { "selection", "dap.selection",
6218 FT_NONE, BASE_NONE, NULL, 0,
6219 "dap.EntryInformationSelection", HFILL }},
6220 { &hf_dap_modifyRightsRequest,
6221 { "modifyRightsRequest", "dap.modifyRightsRequest",
6222 FT_BOOLEAN, 8, NULL, 0,
6223 "dap.BOOLEAN", HFILL }},
6224 { &hf_dap_serviceControls,
6225 { "serviceControls", "dap.serviceControls",
6226 FT_NONE, BASE_NONE, NULL, 0,
6227 "dap.ServiceControls", HFILL }},
6228 { &hf_dap_requestor,
6229 { "requestor", "dap.requestor",
6230 FT_UINT32, BASE_DEC, NULL, 0,
6231 "x509if.DistinguishedName", HFILL }},
6232 { &hf_dap_operationProgress,
6233 { "operationProgress", "dap.operationProgress",
6234 FT_NONE, BASE_NONE, NULL, 0,
6235 "dsp.OperationProgress", HFILL }},
6236 { &hf_dap_aliasedRDNs,
6237 { "aliasedRDNs", "dap.aliasedRDNs",
6238 FT_INT32, BASE_DEC, NULL, 0,
6239 "dap.INTEGER", HFILL }},
6240 { &hf_dap_criticalExtensions,
6241 { "criticalExtensions", "dap.criticalExtensions",
6242 FT_BYTES, BASE_HEX, NULL, 0,
6243 "dap.BIT_STRING", HFILL }},
6244 { &hf_dap_referenceType,
6245 { "referenceType", "dap.referenceType",
6246 FT_UINT32, BASE_DEC, VALS(dsp_ReferenceType_vals), 0,
6247 "dsp.ReferenceType", HFILL }},
6248 { &hf_dap_entryOnly,
6249 { "entryOnly", "dap.entryOnly",
6250 FT_BOOLEAN, 8, NULL, 0,
6251 "dap.BOOLEAN", HFILL }},
6252 { &hf_dap_nameResolveOnMaster,
6253 { "nameResolveOnMaster", "dap.nameResolveOnMaster",
6254 FT_BOOLEAN, 8, NULL, 0,
6255 "dap.BOOLEAN", HFILL }},
6256 { &hf_dap_operationContexts,
6257 { "operationContexts", "dap.operationContexts",
6258 FT_UINT32, BASE_DEC, VALS(dap_ContextSelection_vals), 0,
6259 "dap.ContextSelection", HFILL }},
6260 { &hf_dap_familyGrouping,
6261 { "familyGrouping", "dap.familyGrouping",
6262 FT_UINT32, BASE_DEC, VALS(dap_FamilyGrouping_vals), 0,
6263 "dap.FamilyGrouping", HFILL }},
6264 { &hf_dap_rdnSequence,
6265 { "rdnSequence", "dap.rdnSequence",
6266 FT_UINT32, BASE_DEC, NULL, 0,
6267 "x509if.RDNSequence", HFILL }},
6268 { &hf_dap_unsignedReadArgument,
6269 { "unsignedReadArgument", "dap.unsignedReadArgument",
6270 FT_NONE, BASE_NONE, NULL, 0,
6271 "dap.ReadArgumentData", HFILL }},
6272 { &hf_dap_signedReadArgument,
6273 { "signedReadArgument", "dap.signedReadArgument",
6274 FT_NONE, BASE_NONE, NULL, 0,
6275 "dap.T_signedReadArgument", HFILL }},
6276 { &hf_dap_readArgument,
6277 { "readArgument", "dap.readArgument",
6278 FT_NONE, BASE_NONE, NULL, 0,
6279 "dap.ReadArgumentData", HFILL }},
6281 { "entry", "dap.entry",
6282 FT_NONE, BASE_NONE, NULL, 0,
6283 "dap.EntryInformation", HFILL }},
6284 { &hf_dap_modifyRights,
6285 { "modifyRights", "dap.modifyRights",
6286 FT_UINT32, BASE_DEC, NULL, 0,
6287 "dap.ModifyRights", HFILL }},
6288 { &hf_dap_unsignedReadResult,
6289 { "unsignedReadResult", "dap.unsignedReadResult",
6290 FT_NONE, BASE_NONE, NULL, 0,
6291 "dap.ReadResultData", HFILL }},
6292 { &hf_dap_signedReadResult,
6293 { "signedReadResult", "dap.signedReadResult",
6294 FT_NONE, BASE_NONE, NULL, 0,
6295 "dap.T_signedReadResult", HFILL }},
6296 { &hf_dap_readResult,
6297 { "readResult", "dap.readResult",
6298 FT_NONE, BASE_NONE, NULL, 0,
6299 "dap.ReadResultData", HFILL }},
6300 { &hf_dap_ModifyRights_item,
6301 { "Item", "dap.ModifyRights_item",
6302 FT_NONE, BASE_NONE, NULL, 0,
6303 "dap.ModifyRights_item", HFILL }},
6305 { "item", "dap.item",
6306 FT_UINT32, BASE_DEC, VALS(dap_T_item_vals), 0,
6307 "dap.T_item", HFILL }},
6308 { &hf_dap_item_entry,
6309 { "entry", "dap.entry",
6310 FT_NONE, BASE_NONE, NULL, 0,
6311 "dap.NULL", HFILL }},
6312 { &hf_dap_attribute_type,
6313 { "attribute", "dap.attribute",
6314 FT_OID, BASE_NONE, NULL, 0,
6315 "x509if.AttributeType", HFILL }},
6316 { &hf_dap_value_assertion,
6317 { "value", "dap.value",
6318 FT_NONE, BASE_NONE, NULL, 0,
6319 "x509if.AttributeValueAssertion", HFILL }},
6320 { &hf_dap_permission,
6321 { "permission", "dap.permission",
6322 FT_BYTES, BASE_HEX, NULL, 0,
6323 "dap.T_permission", HFILL }},
6324 { &hf_dap_purported,
6325 { "purported", "dap.purported",
6326 FT_NONE, BASE_NONE, NULL, 0,
6327 "x509if.AttributeValueAssertion", HFILL }},
6328 { &hf_dap_unsignedCompareArgument,
6329 { "unsignedCompareArgument", "dap.unsignedCompareArgument",
6330 FT_NONE, BASE_NONE, NULL, 0,
6331 "dap.CompareArgumentData", HFILL }},
6332 { &hf_dap_signedCompareArgument,
6333 { "signedCompareArgument", "dap.signedCompareArgument",
6334 FT_NONE, BASE_NONE, NULL, 0,
6335 "dap.T_signedCompareArgument", HFILL }},
6336 { &hf_dap_compareArgument,
6337 { "compareArgument", "dap.compareArgument",
6338 FT_NONE, BASE_NONE, NULL, 0,
6339 "dap.CompareArgumentData", HFILL }},
6341 { "matched", "dap.matched",
6342 FT_BOOLEAN, 8, NULL, 0,
6343 "dap.BOOLEAN", HFILL }},
6344 { &hf_dap_matchedSubtype,
6345 { "matchedSubtype", "dap.matchedSubtype",
6346 FT_OID, BASE_NONE, NULL, 0,
6347 "x509if.AttributeType", HFILL }},
6348 { &hf_dap_unsignedCompareResult,
6349 { "unsignedCompareResult", "dap.unsignedCompareResult",
6350 FT_NONE, BASE_NONE, NULL, 0,
6351 "dap.CompareResultData", HFILL }},
6352 { &hf_dap_signedCompareResult,
6353 { "signedCompareResult", "dap.signedCompareResult",
6354 FT_NONE, BASE_NONE, NULL, 0,
6355 "dap.T_signedCompareResult", HFILL }},
6356 { &hf_dap_compareResult,
6357 { "compareResult", "dap.compareResult",
6358 FT_NONE, BASE_NONE, NULL, 0,
6359 "dap.CompareResultData", HFILL }},
6361 { "invokeID", "dap.invokeID",
6362 FT_UINT32, BASE_DEC, VALS(ros_InvokeId_vals), 0,
6363 "ros.InvokeId", HFILL }},
6364 { &hf_dap_unsignedAbandonArgument,
6365 { "unsignedAbandonArgument", "dap.unsignedAbandonArgument",
6366 FT_NONE, BASE_NONE, NULL, 0,
6367 "dap.AbandonArgumentData", HFILL }},
6368 { &hf_dap_signedAbandonArgument,
6369 { "signedAbandonArgument", "dap.signedAbandonArgument",
6370 FT_NONE, BASE_NONE, NULL, 0,
6371 "dap.T_signedAbandonArgument", HFILL }},
6372 { &hf_dap_abandonArgument,
6373 { "abandonArgument", "dap.abandonArgument",
6374 FT_NONE, BASE_NONE, NULL, 0,
6375 "dap.AbandonArgumentData", HFILL }},
6377 { "null", "dap.null",
6378 FT_NONE, BASE_NONE, NULL, 0,
6379 "dap.NULL", HFILL }},
6380 { &hf_dap_abandon_information,
6381 { "information", "dap.information",
6382 FT_UINT32, BASE_DEC, VALS(dap_AbandonInformation_vals), 0,
6383 "dap.AbandonInformation", HFILL }},
6384 { &hf_dap_unsignedAbandonResult,
6385 { "unsignedAbandonResult", "dap.unsignedAbandonResult",
6386 FT_NONE, BASE_NONE, NULL, 0,
6387 "dap.AbandonResultData", HFILL }},
6388 { &hf_dap_signedAbandonResult,
6389 { "signedAbandonResult", "dap.signedAbandonResult",
6390 FT_NONE, BASE_NONE, NULL, 0,
6391 "dap.T_signedAbandonResult", HFILL }},
6392 { &hf_dap_abandonResult,
6393 { "abandonResult", "dap.abandonResult",
6394 FT_NONE, BASE_NONE, NULL, 0,
6395 "dap.AbandonResultData", HFILL }},
6396 { &hf_dap_pagedResults,
6397 { "pagedResults", "dap.pagedResults",
6398 FT_UINT32, BASE_DEC, VALS(dap_PagedResultsRequest_vals), 0,
6399 "dap.PagedResultsRequest", HFILL }},
6400 { &hf_dap_listFamily,
6401 { "listFamily", "dap.listFamily",
6402 FT_BOOLEAN, 8, NULL, 0,
6403 "dap.BOOLEAN", HFILL }},
6404 { &hf_dap_unsignedListArgument,
6405 { "unsignedListArgument", "dap.unsignedListArgument",
6406 FT_NONE, BASE_NONE, NULL, 0,
6407 "dap.ListArgumentData", HFILL }},
6408 { &hf_dap_signedListArgument,
6409 { "signedListArgument", "dap.signedListArgument",
6410 FT_NONE, BASE_NONE, NULL, 0,
6411 "dap.T_signedListArgument", HFILL }},
6412 { &hf_dap_listArgument,
6413 { "listArgument", "dap.listArgument",
6414 FT_NONE, BASE_NONE, NULL, 0,
6415 "dap.ListArgumentData", HFILL }},
6417 { "listInfo", "dap.listInfo",
6418 FT_NONE, BASE_NONE, NULL, 0,
6419 "dap.T_listInfo", HFILL }},
6420 { &hf_dap_subordinates,
6421 { "subordinates", "dap.subordinates",
6422 FT_UINT32, BASE_DEC, NULL, 0,
6423 "dap.T_subordinates", HFILL }},
6424 { &hf_dap_subordinates_item,
6425 { "Item", "dap.subordinates_item",
6426 FT_NONE, BASE_NONE, NULL, 0,
6427 "dap.T_subordinates_item", HFILL }},
6428 { &hf_dap_aliasEntry,
6429 { "aliasEntry", "dap.aliasEntry",
6430 FT_BOOLEAN, 8, NULL, 0,
6431 "dap.BOOLEAN", HFILL }},
6432 { &hf_dap_partialOutcomeQualifier,
6433 { "partialOutcomeQualifier", "dap.partialOutcomeQualifier",
6434 FT_NONE, BASE_NONE, NULL, 0,
6435 "dap.PartialOutcomeQualifier", HFILL }},
6436 { &hf_dap_uncorrelatedListInfo,
6437 { "uncorrelatedListInfo", "dap.uncorrelatedListInfo",
6438 FT_UINT32, BASE_DEC, NULL, 0,
6439 "dap.SET_OF_ListResult", HFILL }},
6440 { &hf_dap_uncorrelatedListInfo_item,
6441 { "Item", "dap.uncorrelatedListInfo_item",
6442 FT_UINT32, BASE_DEC, VALS(dap_ListResult_vals), 0,
6443 "dap.ListResult", HFILL }},
6444 { &hf_dap_unsignedListResult,
6445 { "unsignedListResult", "dap.unsignedListResult",
6446 FT_UINT32, BASE_DEC, VALS(dap_ListResultData_vals), 0,
6447 "dap.ListResultData", HFILL }},
6448 { &hf_dap_signedListResult,
6449 { "signedListResult", "dap.signedListResult",
6450 FT_NONE, BASE_NONE, NULL, 0,
6451 "dap.T_signedListResult", HFILL }},
6452 { &hf_dap_listResult,
6453 { "listResult", "dap.listResult",
6454 FT_UINT32, BASE_DEC, VALS(dap_ListResultData_vals), 0,
6455 "dap.ListResultData", HFILL }},
6456 { &hf_dap_limitProblem,
6457 { "limitProblem", "dap.limitProblem",
6458 FT_INT32, BASE_DEC, VALS(dap_LimitProblem_vals), 0,
6459 "dap.LimitProblem", HFILL }},
6460 { &hf_dap_unexplored,
6461 { "unexplored", "dap.unexplored",
6462 FT_UINT32, BASE_DEC, NULL, 0,
6463 "dap.SET_OF_ContinuationReference", HFILL }},
6464 { &hf_dap_unexplored_item,
6465 { "Item", "dap.unexplored_item",
6466 FT_NONE, BASE_NONE, NULL, 0,
6467 "dsp.ContinuationReference", HFILL }},
6468 { &hf_dap_unavailableCriticalExtensions,
6469 { "unavailableCriticalExtensions", "dap.unavailableCriticalExtensions",
6470 FT_BOOLEAN, 8, NULL, 0,
6471 "dap.BOOLEAN", HFILL }},
6472 { &hf_dap_unknownErrors,
6473 { "unknownErrors", "dap.unknownErrors",
6474 FT_UINT32, BASE_DEC, NULL, 0,
6475 "dap.T_unknownErrors", HFILL }},
6476 { &hf_dap_unknownErrors_item,
6477 { "Item", "dap.unknownErrors_item",
6478 FT_OID, BASE_NONE, NULL, 0,
6479 "dap.OBJECT_IDENTIFIER", HFILL }},
6480 { &hf_dap_overspecFilter,
6481 { "overspecFilter", "dap.overspecFilter",
6482 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
6483 "dap.Filter", HFILL }},
6484 { &hf_dap_entryCount,
6485 { "entryCount", "dap.entryCount",
6486 FT_UINT32, BASE_DEC, VALS(dap_T_entryCount_vals), 0,
6487 "dap.T_entryCount", HFILL }},
6488 { &hf_dap_bestEstimate,
6489 { "bestEstimate", "dap.bestEstimate",
6490 FT_INT32, BASE_DEC, NULL, 0,
6491 "dap.INTEGER", HFILL }},
6492 { &hf_dap_lowEstimate,
6493 { "lowEstimate", "dap.lowEstimate",
6494 FT_INT32, BASE_DEC, NULL, 0,
6495 "dap.INTEGER", HFILL }},
6496 { &hf_dap_baseObject,
6497 { "baseObject", "dap.baseObject",
6498 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
6499 "dap.Name", HFILL }},
6501 { "subset", "dap.subset",
6502 FT_INT32, BASE_DEC, VALS(dap_T_subset_vals), 0,
6503 "dap.T_subset", HFILL }},
6505 { "filter", "dap.filter",
6506 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
6507 "dap.Filter", HFILL }},
6508 { &hf_dap_searchAliases,
6509 { "searchAliases", "dap.searchAliases",
6510 FT_BOOLEAN, 8, NULL, 0,
6511 "dap.BOOLEAN", HFILL }},
6512 { &hf_dap_matchedValuesOnly,
6513 { "matchedValuesOnly", "dap.matchedValuesOnly",
6514 FT_BOOLEAN, 8, NULL, 0,
6515 "dap.BOOLEAN", HFILL }},
6516 { &hf_dap_extendedFilter,
6517 { "extendedFilter", "dap.extendedFilter",
6518 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
6519 "dap.Filter", HFILL }},
6520 { &hf_dap_checkOverspecified,
6521 { "checkOverspecified", "dap.checkOverspecified",
6522 FT_BOOLEAN, 8, NULL, 0,
6523 "dap.BOOLEAN", HFILL }},
6524 { &hf_dap_relaxation,
6525 { "relaxation", "dap.relaxation",
6526 FT_NONE, BASE_NONE, NULL, 0,
6527 "x509if.RelaxationPolicy", HFILL }},
6528 { &hf_dap_extendedArea,
6529 { "extendedArea", "dap.extendedArea",
6530 FT_INT32, BASE_DEC, NULL, 0,
6531 "dap.INTEGER", HFILL }},
6532 { &hf_dap_hierarchySelections,
6533 { "hierarchySelections", "dap.hierarchySelections",
6534 FT_BYTES, BASE_HEX, NULL, 0,
6535 "dap.HierarchySelections", HFILL }},
6536 { &hf_dap_searchControlOptions,
6537 { "searchControlOptions", "dap.searchControlOptions",
6538 FT_BYTES, BASE_HEX, NULL, 0,
6539 "dap.SearchControlOptions", HFILL }},
6540 { &hf_dap_joinArguments,
6541 { "joinArguments", "dap.joinArguments",
6542 FT_UINT32, BASE_DEC, NULL, 0,
6543 "dap.SEQUENCE_SIZE_1_MAX_OF_JoinArgument", HFILL }},
6544 { &hf_dap_joinArguments_item,
6545 { "Item", "dap.joinArguments_item",
6546 FT_NONE, BASE_NONE, NULL, 0,
6547 "dap.JoinArgument", HFILL }},
6549 { "joinType", "dap.joinType",
6550 FT_UINT32, BASE_DEC, VALS(dap_T_joinType_vals), 0,
6551 "dap.T_joinType", HFILL }},
6552 { &hf_dap_unsignedSearchArgument,
6553 { "unsignedSearchArgument", "dap.unsignedSearchArgument",
6554 FT_NONE, BASE_NONE, NULL, 0,
6555 "dap.SearchArgumentData", HFILL }},
6556 { &hf_dap_signedSearchArgument,
6557 { "signedSearchArgument", "dap.signedSearchArgument",
6558 FT_NONE, BASE_NONE, NULL, 0,
6559 "dap.T_signedSearchArgument", HFILL }},
6560 { &hf_dap_searchArgument,
6561 { "searchArgument", "dap.searchArgument",
6562 FT_NONE, BASE_NONE, NULL, 0,
6563 "dap.SearchArgumentData", HFILL }},
6564 { &hf_dap_joinBaseObject,
6565 { "joinBaseObject", "dap.joinBaseObject",
6566 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
6567 "dap.Name", HFILL }},
6568 { &hf_dap_domainLocalID,
6569 { "domainLocalID", "dap.domainLocalID",
6570 FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0,
6571 "dap.DomainLocalID", HFILL }},
6572 { &hf_dap_joinSubset,
6573 { "joinSubset", "dap.joinSubset",
6574 FT_UINT32, BASE_DEC, VALS(dap_T_joinSubset_vals), 0,
6575 "dap.T_joinSubset", HFILL }},
6576 { &hf_dap_joinFilter,
6577 { "joinFilter", "dap.joinFilter",
6578 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
6579 "dap.Filter", HFILL }},
6580 { &hf_dap_joinAttributes,
6581 { "joinAttributes", "dap.joinAttributes",
6582 FT_UINT32, BASE_DEC, NULL, 0,
6583 "dap.SEQUENCE_OF_JoinAttPair", HFILL }},
6584 { &hf_dap_joinAttributes_item,
6585 { "Item", "dap.joinAttributes_item",
6586 FT_NONE, BASE_NONE, NULL, 0,
6587 "dap.JoinAttPair", HFILL }},
6588 { &hf_dap_joinSelection,
6589 { "joinSelection", "dap.joinSelection",
6590 FT_NONE, BASE_NONE, NULL, 0,
6591 "dap.EntryInformationSelection", HFILL }},
6593 { "baseAtt", "dap.baseAtt",
6594 FT_OID, BASE_NONE, NULL, 0,
6595 "x509if.AttributeType", HFILL }},
6597 { "joinAtt", "dap.joinAtt",
6598 FT_OID, BASE_NONE, NULL, 0,
6599 "x509if.AttributeType", HFILL }},
6600 { &hf_dap_joinContext,
6601 { "joinContext", "dap.joinContext",
6602 FT_UINT32, BASE_DEC, NULL, 0,
6603 "dap.SEQUENCE_OF_JoinContextType", HFILL }},
6604 { &hf_dap_joinContext_item,
6605 { "Item", "dap.joinContext_item",
6606 FT_OID, BASE_NONE, NULL, 0,
6607 "dap.JoinContextType", HFILL }},
6608 { &hf_dap_searchInfo,
6609 { "searchInfo", "dap.searchInfo",
6610 FT_NONE, BASE_NONE, NULL, 0,
6611 "dap.T_searchInfo", HFILL }},
6613 { "entries", "dap.entries",
6614 FT_UINT32, BASE_DEC, NULL, 0,
6615 "dap.SET_OF_EntryInformation", HFILL }},
6616 { &hf_dap_entries_item,
6617 { "Item", "dap.entries_item",
6618 FT_NONE, BASE_NONE, NULL, 0,
6619 "dap.EntryInformation", HFILL }},
6620 { &hf_dap_altMatching,
6621 { "altMatching", "dap.altMatching",
6622 FT_BOOLEAN, 8, NULL, 0,
6623 "dap.BOOLEAN", HFILL }},
6624 { &hf_dap_uncorrelatedSearchInfo,
6625 { "uncorrelatedSearchInfo", "dap.uncorrelatedSearchInfo",
6626 FT_UINT32, BASE_DEC, NULL, 0,
6627 "dap.SET_OF_SearchResult", HFILL }},
6628 { &hf_dap_uncorrelatedSearchInfo_item,
6629 { "Item", "dap.uncorrelatedSearchInfo_item",
6630 FT_UINT32, BASE_DEC, VALS(dap_SearchResult_vals), 0,
6631 "dap.SearchResult", HFILL }},
6632 { &hf_dap_unsignedSearchResult,
6633 { "unsignedSearchResult", "dap.unsignedSearchResult",
6634 FT_UINT32, BASE_DEC, VALS(dap_SearchResultData_vals), 0,
6635 "dap.SearchResultData", HFILL }},
6636 { &hf_dap_signedSearchResult,
6637 { "signedSearchResult", "dap.signedSearchResult",
6638 FT_NONE, BASE_NONE, NULL, 0,
6639 "dap.T_signedSearchResult", HFILL }},
6640 { &hf_dap_searchResult,
6641 { "searchResult", "dap.searchResult",
6642 FT_UINT32, BASE_DEC, VALS(dap_SearchResultData_vals), 0,
6643 "dap.SearchResultData", HFILL }},
6644 { &hf_dap_add_entry,
6645 { "entry", "dap.entry",
6646 FT_UINT32, BASE_DEC, NULL, 0,
6647 "dap.SET_OF_Attribute", HFILL }},
6648 { &hf_dap_add_entry_item,
6649 { "Item", "dap.entry_item",
6650 FT_NONE, BASE_NONE, NULL, 0,
6651 "x509if.Attribute", HFILL }},
6652 { &hf_dap_targetSystem,
6653 { "targetSystem", "dap.targetSystem",
6654 FT_NONE, BASE_NONE, NULL, 0,
6655 "dsp.AccessPoint", HFILL }},
6656 { &hf_dap_unsignedAddEntryArgument,
6657 { "unsignedAddEntryArgument", "dap.unsignedAddEntryArgument",
6658 FT_NONE, BASE_NONE, NULL, 0,
6659 "dap.AddEntryArgumentData", HFILL }},
6660 { &hf_dap_signedAddEntryArgument,
6661 { "signedAddEntryArgument", "dap.signedAddEntryArgument",
6662 FT_NONE, BASE_NONE, NULL, 0,
6663 "dap.T_signedAddEntryArgument", HFILL }},
6664 { &hf_dap_addEntryArgument,
6665 { "addEntryArgument", "dap.addEntryArgument",
6666 FT_NONE, BASE_NONE, NULL, 0,
6667 "dap.AddEntryArgumentData", HFILL }},
6668 { &hf_dap_add_entry_information,
6669 { "information", "dap.information",
6670 FT_UINT32, BASE_DEC, VALS(dap_AddEntryInformation_vals), 0,
6671 "dap.AddEntryInformation", HFILL }},
6672 { &hf_dap_unsignedAddEntryResult,
6673 { "unsignedAddEntryResult", "dap.unsignedAddEntryResult",
6674 FT_NONE, BASE_NONE, NULL, 0,
6675 "dap.AddEntryResultData", HFILL }},
6676 { &hf_dap_signedAddEntryResult,
6677 { "signedAddEntryResult", "dap.signedAddEntryResult",
6678 FT_NONE, BASE_NONE, NULL, 0,
6679 "dap.T_signedAddEntryResult", HFILL }},
6680 { &hf_dap_addEntryResult,
6681 { "addEntryResult", "dap.addEntryResult",
6682 FT_NONE, BASE_NONE, NULL, 0,
6683 "dap.AddEntryResultData", HFILL }},
6684 { &hf_dap_unsignedRemoveEntryArgument,
6685 { "unsignedRemoveEntryArgument", "dap.unsignedRemoveEntryArgument",
6686 FT_NONE, BASE_NONE, NULL, 0,
6687 "dap.RemoveEntryArgumentData", HFILL }},
6688 { &hf_dap_signedRemoveEntryArgument,
6689 { "signedRemoveEntryArgument", "dap.signedRemoveEntryArgument",
6690 FT_NONE, BASE_NONE, NULL, 0,
6691 "dap.T_signedRemoveEntryArgument", HFILL }},
6692 { &hf_dap_removeEntryArgument,
6693 { "removeEntryArgument", "dap.removeEntryArgument",
6694 FT_NONE, BASE_NONE, NULL, 0,
6695 "dap.RemoveEntryArgumentData", HFILL }},
6696 { &hf_dap_remove_entry_information,
6697 { "information", "dap.information",
6698 FT_UINT32, BASE_DEC, VALS(dap_RemoveEntryInformation_vals), 0,
6699 "dap.RemoveEntryInformation", HFILL }},
6700 { &hf_dap_unsignedRemoveEntryResult,
6701 { "unsignedRemoveEntryResult", "dap.unsignedRemoveEntryResult",
6702 FT_NONE, BASE_NONE, NULL, 0,
6703 "dap.RemoveEntryResultData", HFILL }},
6704 { &hf_dap_signedRemoveEntryResult,
6705 { "signedRemoveEntryResult", "dap.signedRemoveEntryResult",
6706 FT_NONE, BASE_NONE, NULL, 0,
6707 "dap.T_signedRemoveEntryResult", HFILL }},
6708 { &hf_dap_removeEntryResult,
6709 { "removeEntryResult", "dap.removeEntryResult",
6710 FT_NONE, BASE_NONE, NULL, 0,
6711 "dap.RemoveEntryResultData", HFILL }},
6713 { "changes", "dap.changes",
6714 FT_UINT32, BASE_DEC, NULL, 0,
6715 "dap.SEQUENCE_OF_EntryModification", HFILL }},
6716 { &hf_dap_changes_item,
6717 { "Item", "dap.changes_item",
6718 FT_UINT32, BASE_DEC, VALS(dap_EntryModification_vals), 0,
6719 "dap.EntryModification", HFILL }},
6720 { &hf_dap_unsignedModifyEntryArgument,
6721 { "unsignedModifyEntryArgument", "dap.unsignedModifyEntryArgument",
6722 FT_NONE, BASE_NONE, NULL, 0,
6723 "dap.ModifyEntryArgumentData", HFILL }},
6724 { &hf_dap_signedModifyEntryArgument,
6725 { "signedModifyEntryArgument", "dap.signedModifyEntryArgument",
6726 FT_NONE, BASE_NONE, NULL, 0,
6727 "dap.T_signedModifyEntryArgument", HFILL }},
6728 { &hf_dap_modifyEntryArgument,
6729 { "modifyEntryArgument", "dap.modifyEntryArgument",
6730 FT_NONE, BASE_NONE, NULL, 0,
6731 "dap.ModifyEntryArgumentData", HFILL }},
6732 { &hf_dap_modify_entry_information,
6733 { "information", "dap.information",
6734 FT_UINT32, BASE_DEC, VALS(dap_ModifyEntryInformation_vals), 0,
6735 "dap.ModifyEntryInformation", HFILL }},
6736 { &hf_dap_unsignedModifyEntryResult,
6737 { "unsignedModifyEntryResult", "dap.unsignedModifyEntryResult",
6738 FT_NONE, BASE_NONE, NULL, 0,
6739 "dap.ModifyEntryResultData", HFILL }},
6740 { &hf_dap_signedModifyEntryResult,
6741 { "signedModifyEntryResult", "dap.signedModifyEntryResult",
6742 FT_NONE, BASE_NONE, NULL, 0,
6743 "dap.T_signedModifyEntryResult", HFILL }},
6744 { &hf_dap_modifyEntryResult,
6745 { "modifyEntryResult", "dap.modifyEntryResult",
6746 FT_NONE, BASE_NONE, NULL, 0,
6747 "dap.ModifyEntryResultData", HFILL }},
6748 { &hf_dap_addAttribute,
6749 { "addAttribute", "dap.addAttribute",
6750 FT_NONE, BASE_NONE, NULL, 0,
6751 "x509if.Attribute", HFILL }},
6752 { &hf_dap_removeAttribute,
6753 { "removeAttribute", "dap.removeAttribute",
6754 FT_OID, BASE_NONE, NULL, 0,
6755 "x509if.AttributeType", HFILL }},
6756 { &hf_dap_addValues,
6757 { "addValues", "dap.addValues",
6758 FT_NONE, BASE_NONE, NULL, 0,
6759 "x509if.Attribute", HFILL }},
6760 { &hf_dap_removeValues,
6761 { "removeValues", "dap.removeValues",
6762 FT_NONE, BASE_NONE, NULL, 0,
6763 "x509if.Attribute", HFILL }},
6764 { &hf_dap_alterValues,
6765 { "alterValues", "dap.alterValues",
6766 FT_NONE, BASE_NONE, NULL, 0,
6767 "crmf.AttributeTypeAndValue", HFILL }},
6768 { &hf_dap_resetValue,
6769 { "resetValue", "dap.resetValue",
6770 FT_OID, BASE_NONE, NULL, 0,
6771 "x509if.AttributeType", HFILL }},
6773 { "newRDN", "dap.newRDN",
6774 FT_UINT32, BASE_DEC, NULL, 0,
6775 "x509if.RelativeDistinguishedName", HFILL }},
6776 { &hf_dap_deleteOldRDN,
6777 { "deleteOldRDN", "dap.deleteOldRDN",
6778 FT_BOOLEAN, 8, NULL, 0,
6779 "dap.BOOLEAN", HFILL }},
6780 { &hf_dap_newSuperior,
6781 { "newSuperior", "dap.newSuperior",
6782 FT_UINT32, BASE_DEC, NULL, 0,
6783 "x509if.DistinguishedName", HFILL }},
6784 { &hf_dap_modify_dn_information,
6785 { "information", "dap.information",
6786 FT_UINT32, BASE_DEC, VALS(dap_ModifyDNInformation_vals), 0,
6787 "dap.ModifyDNInformation", HFILL }},
6788 { &hf_dap_unsignedModifyDNResult,
6789 { "unsignedModifyDNResult", "dap.unsignedModifyDNResult",
6790 FT_NONE, BASE_NONE, NULL, 0,
6791 "dap.ModifyDNResultData", HFILL }},
6792 { &hf_dap_signedModifyDNResult,
6793 { "signedModifyDNResult", "dap.signedModifyDNResult",
6794 FT_NONE, BASE_NONE, NULL, 0,
6795 "dap.T_signedModifyDNResult", HFILL }},
6796 { &hf_dap_modifyDNResult,
6797 { "modifyDNResult", "dap.modifyDNResult",
6798 FT_NONE, BASE_NONE, NULL, 0,
6799 "dap.ModifyDNResultData", HFILL }},
6800 { &hf_dap_unsignedAbandoned,
6801 { "unsignedAbandoned", "dap.unsignedAbandoned",
6802 FT_NONE, BASE_NONE, NULL, 0,
6803 "dap.AbandonedData", HFILL }},
6804 { &hf_dap_signedAbandoned,
6805 { "signedAbandoned", "dap.signedAbandoned",
6806 FT_NONE, BASE_NONE, NULL, 0,
6807 "dap.T_signedAbandoned", HFILL }},
6808 { &hf_dap_abandoned,
6809 { "abandoned", "dap.abandoned",
6810 FT_NONE, BASE_NONE, NULL, 0,
6811 "dap.AbandonedData", HFILL }},
6812 { &hf_dap_abandon_failed_problem,
6813 { "problem", "dap.problem",
6814 FT_INT32, BASE_DEC, VALS(dap_AbandonProblem_vals), 0,
6815 "dap.AbandonProblem", HFILL }},
6816 { &hf_dap_operation,
6817 { "operation", "dap.operation",
6818 FT_UINT32, BASE_DEC, VALS(ros_InvokeId_vals), 0,
6819 "ros.InvokeId", HFILL }},
6820 { &hf_dap_unsignedAbandonFailedError,
6821 { "unsignedAbandonFailedError", "dap.unsignedAbandonFailedError",
6822 FT_NONE, BASE_NONE, NULL, 0,
6823 "dap.AbandonFailedErrorData", HFILL }},
6824 { &hf_dap_signedAbandonFailedError,
6825 { "signedAbandonFailedError", "dap.signedAbandonFailedError",
6826 FT_NONE, BASE_NONE, NULL, 0,
6827 "dap.T_signedAbandonFailedError", HFILL }},
6828 { &hf_dap_abandonFailedError,
6829 { "abandonFailedError", "dap.abandonFailedError",
6830 FT_NONE, BASE_NONE, NULL, 0,
6831 "dap.AbandonFailedErrorData", HFILL }},
6833 { "problems", "dap.problems",
6834 FT_UINT32, BASE_DEC, NULL, 0,
6835 "dap.T_problems", HFILL }},
6836 { &hf_dap_problems_item,
6837 { "Item", "dap.problems_item",
6838 FT_NONE, BASE_NONE, NULL, 0,
6839 "dap.T_problems_item", HFILL }},
6840 { &hf_dap_attribute_error_problem,
6841 { "problem", "dap.problem",
6842 FT_INT32, BASE_DEC, VALS(dap_AttributeProblem_vals), 0,
6843 "dap.AttributeProblem", HFILL }},
6845 { "value", "dap.value",
6846 FT_NONE, BASE_NONE, NULL, 0,
6847 "x509if.AttributeValue", HFILL }},
6848 { &hf_dap_unsignedAttributeError,
6849 { "unsignedAttributeError", "dap.unsignedAttributeError",
6850 FT_NONE, BASE_NONE, NULL, 0,
6851 "dap.AttributeErrorData", HFILL }},
6852 { &hf_dap_signedAttributeError,
6853 { "signedAttributeError", "dap.signedAttributeError",
6854 FT_NONE, BASE_NONE, NULL, 0,
6855 "dap.T_signedAttributeError", HFILL }},
6856 { &hf_dap_attributeError,
6857 { "attributeError", "dap.attributeError",
6858 FT_NONE, BASE_NONE, NULL, 0,
6859 "dap.AttributeErrorData", HFILL }},
6860 { &hf_dap_name_error_problem,
6861 { "problem", "dap.problem",
6862 FT_INT32, BASE_DEC, VALS(dap_NameProblem_vals), 0,
6863 "dap.NameProblem", HFILL }},
6864 { &hf_dap_matched_name,
6865 { "matched", "dap.matched",
6866 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
6867 "dap.Name", HFILL }},
6868 { &hf_dap_unsignedNameError,
6869 { "unsignedNameError", "dap.unsignedNameError",
6870 FT_NONE, BASE_NONE, NULL, 0,
6871 "dap.NameErrorData", HFILL }},
6872 { &hf_dap_signedNameError,
6873 { "signedNameError", "dap.signedNameError",
6874 FT_NONE, BASE_NONE, NULL, 0,
6875 "dap.T_signedNameError", HFILL }},
6876 { &hf_dap_nameError,
6877 { "nameError", "dap.nameError",
6878 FT_NONE, BASE_NONE, NULL, 0,
6879 "dap.NameErrorData", HFILL }},
6880 { &hf_dap_candidate,
6881 { "candidate", "dap.candidate",
6882 FT_NONE, BASE_NONE, NULL, 0,
6883 "dsp.ContinuationReference", HFILL }},
6884 { &hf_dap_unsignedReferral,
6885 { "unsignedReferral", "dap.unsignedReferral",
6886 FT_NONE, BASE_NONE, NULL, 0,
6887 "dap.ReferralData", HFILL }},
6888 { &hf_dap_signedReferral,
6889 { "signedReferral", "dap.signedReferral",
6890 FT_NONE, BASE_NONE, NULL, 0,
6891 "dap.T_signedReferral", HFILL }},
6893 { "referral", "dap.referral",
6894 FT_NONE, BASE_NONE, NULL, 0,
6895 "dap.ReferralData", HFILL }},
6896 { &hf_dap_security_error_problem,
6897 { "problem", "dap.problem",
6898 FT_INT32, BASE_DEC, VALS(dap_SecurityProblem_vals), 0,
6899 "dap.SecurityProblem", HFILL }},
6901 { "spkmInfo", "dap.spkmInfo",
6902 FT_NONE, BASE_NONE, NULL, 0,
6903 "dap.T_spkmInfo", HFILL }},
6904 { &hf_dap_unsignedSecurityError,
6905 { "unsignedSecurityError", "dap.unsignedSecurityError",
6906 FT_NONE, BASE_NONE, NULL, 0,
6907 "dap.SecurityErrorData", HFILL }},
6908 { &hf_dap_signedSecurityError,
6909 { "signedSecurityError", "dap.signedSecurityError",
6910 FT_NONE, BASE_NONE, NULL, 0,
6911 "dap.T_signedSecurityError", HFILL }},
6912 { &hf_dap_securityErrorData,
6913 { "securityError", "dap.securityError",
6914 FT_NONE, BASE_NONE, NULL, 0,
6915 "dap.SecurityErrorData", HFILL }},
6916 { &hf_dap_service_error_problem,
6917 { "problem", "dap.problem",
6918 FT_INT32, BASE_DEC, VALS(dap_ServiceProblem_vals), 0,
6919 "dap.ServiceProblem", HFILL }},
6920 { &hf_dap_unsignedServiceError,
6921 { "unsignedServiceError", "dap.unsignedServiceError",
6922 FT_NONE, BASE_NONE, NULL, 0,
6923 "dap.ServiceErrorData", HFILL }},
6924 { &hf_dap_signedServiceError,
6925 { "signedServiceError", "dap.signedServiceError",
6926 FT_NONE, BASE_NONE, NULL, 0,
6927 "dap.T_signedServiceError", HFILL }},
6928 { &hf_dap_serviceError,
6929 { "serviceError", "dap.serviceError",
6930 FT_NONE, BASE_NONE, NULL, 0,
6931 "dap.ServiceErrorData", HFILL }},
6932 { &hf_dap_update_error_problem,
6933 { "problem", "dap.problem",
6934 FT_INT32, BASE_DEC, VALS(dap_UpdateProblem_vals), 0,
6935 "dap.UpdateProblem", HFILL }},
6936 { &hf_dap_attributeInfo,
6937 { "attributeInfo", "dap.attributeInfo",
6938 FT_UINT32, BASE_DEC, NULL, 0,
6939 "dap.T_attributeInfo", HFILL }},
6940 { &hf_dap_attributeInfo_item,
6941 { "Item", "dap.attributeInfo_item",
6942 FT_UINT32, BASE_DEC, VALS(dap_T_attributeInfo_item_vals), 0,
6943 "dap.T_attributeInfo_item", HFILL }},
6944 { &hf_dap_unsignedUpdateError,
6945 { "unsignedUpdateError", "dap.unsignedUpdateError",
6946 FT_NONE, BASE_NONE, NULL, 0,
6947 "dap.UpdateErrorData", HFILL }},
6948 { &hf_dap_signedUpdateError,
6949 { "signedUpdateError", "dap.signedUpdateError",
6950 FT_NONE, BASE_NONE, NULL, 0,
6951 "dap.T_signedUpdateError", HFILL }},
6952 { &hf_dap_updateError,
6953 { "updateError", "dap.updateError",
6954 FT_NONE, BASE_NONE, NULL, 0,
6955 "dap.UpdateErrorData", HFILL }},
6956 { &hf_dap_ServiceControlOptions_preferChaining,
6957 { "preferChaining", "dap.preferChaining",
6958 FT_BOOLEAN, 8, NULL, 0x80,
6960 { &hf_dap_ServiceControlOptions_chainingProhibited,
6961 { "chainingProhibited", "dap.chainingProhibited",
6962 FT_BOOLEAN, 8, NULL, 0x40,
6964 { &hf_dap_ServiceControlOptions_localScope,
6965 { "localScope", "dap.localScope",
6966 FT_BOOLEAN, 8, NULL, 0x20,
6968 { &hf_dap_ServiceControlOptions_dontUseCopy,
6969 { "dontUseCopy", "dap.dontUseCopy",
6970 FT_BOOLEAN, 8, NULL, 0x10,
6972 { &hf_dap_ServiceControlOptions_dontDereferenceAliases,
6973 { "dontDereferenceAliases", "dap.dontDereferenceAliases",
6974 FT_BOOLEAN, 8, NULL, 0x08,
6976 { &hf_dap_ServiceControlOptions_subentries,
6977 { "subentries", "dap.subentries",
6978 FT_BOOLEAN, 8, NULL, 0x04,
6980 { &hf_dap_ServiceControlOptions_copyShallDo,
6981 { "copyShallDo", "dap.copyShallDo",
6982 FT_BOOLEAN, 8, NULL, 0x02,
6984 { &hf_dap_ServiceControlOptions_partialNameResolution,
6985 { "partialNameResolution", "dap.partialNameResolution",
6986 FT_BOOLEAN, 8, NULL, 0x01,
6988 { &hf_dap_ServiceControlOptions_manageDSAIT,
6989 { "manageDSAIT", "dap.manageDSAIT",
6990 FT_BOOLEAN, 8, NULL, 0x80,
6992 { &hf_dap_ServiceControlOptions_noSubtypeMatch,
6993 { "noSubtypeMatch", "dap.noSubtypeMatch",
6994 FT_BOOLEAN, 8, NULL, 0x40,
6996 { &hf_dap_ServiceControlOptions_noSubtypeSelection,
6997 { "noSubtypeSelection", "dap.noSubtypeSelection",
6998 FT_BOOLEAN, 8, NULL, 0x20,
7000 { &hf_dap_ServiceControlOptions_countFamily,
7001 { "countFamily", "dap.countFamily",
7002 FT_BOOLEAN, 8, NULL, 0x10,
7004 { &hf_dap_Versions_v1,
7006 FT_BOOLEAN, 8, NULL, 0x80,
7008 { &hf_dap_Versions_v2,
7010 FT_BOOLEAN, 8, NULL, 0x40,
7012 { &hf_dap_T_permission_add,
7014 FT_BOOLEAN, 8, NULL, 0x80,
7016 { &hf_dap_T_permission_remove,
7017 { "remove", "dap.remove",
7018 FT_BOOLEAN, 8, NULL, 0x40,
7020 { &hf_dap_T_permission_rename,
7021 { "rename", "dap.rename",
7022 FT_BOOLEAN, 8, NULL, 0x20,
7024 { &hf_dap_T_permission_move,
7025 { "move", "dap.move",
7026 FT_BOOLEAN, 8, NULL, 0x10,
7028 { &hf_dap_HierarchySelections_self,
7029 { "self", "dap.self",
7030 FT_BOOLEAN, 8, NULL, 0x80,
7032 { &hf_dap_HierarchySelections_children,
7033 { "children", "dap.children",
7034 FT_BOOLEAN, 8, NULL, 0x40,
7036 { &hf_dap_HierarchySelections_parent,
7037 { "parent", "dap.parent",
7038 FT_BOOLEAN, 8, NULL, 0x20,
7040 { &hf_dap_HierarchySelections_hierarchy,
7041 { "hierarchy", "dap.hierarchy",
7042 FT_BOOLEAN, 8, NULL, 0x10,
7044 { &hf_dap_HierarchySelections_top,
7046 FT_BOOLEAN, 8, NULL, 0x08,
7048 { &hf_dap_HierarchySelections_subtree,
7049 { "subtree", "dap.subtree",
7050 FT_BOOLEAN, 8, NULL, 0x04,
7052 { &hf_dap_HierarchySelections_siblings,
7053 { "siblings", "dap.siblings",
7054 FT_BOOLEAN, 8, NULL, 0x02,
7056 { &hf_dap_HierarchySelections_siblingChildren,
7057 { "siblingChildren", "dap.siblingChildren",
7058 FT_BOOLEAN, 8, NULL, 0x01,
7060 { &hf_dap_HierarchySelections_siblingSubtree,
7061 { "siblingSubtree", "dap.siblingSubtree",
7062 FT_BOOLEAN, 8, NULL, 0x80,
7064 { &hf_dap_HierarchySelections_all,
7066 FT_BOOLEAN, 8, NULL, 0x40,
7068 { &hf_dap_SearchControlOptions_searchAliases,
7069 { "searchAliases", "dap.searchAliases",
7070 FT_BOOLEAN, 8, NULL, 0x80,
7072 { &hf_dap_SearchControlOptions_matchedValuesOnly,
7073 { "matchedValuesOnly", "dap.matchedValuesOnly",
7074 FT_BOOLEAN, 8, NULL, 0x40,
7076 { &hf_dap_SearchControlOptions_checkOverspecified,
7077 { "checkOverspecified", "dap.checkOverspecified",
7078 FT_BOOLEAN, 8, NULL, 0x20,
7080 { &hf_dap_SearchControlOptions_performExactly,
7081 { "performExactly", "dap.performExactly",
7082 FT_BOOLEAN, 8, NULL, 0x10,
7084 { &hf_dap_SearchControlOptions_includeAllAreas,
7085 { "includeAllAreas", "dap.includeAllAreas",
7086 FT_BOOLEAN, 8, NULL, 0x08,
7088 { &hf_dap_SearchControlOptions_noSystemRelaxation,
7089 { "noSystemRelaxation", "dap.noSystemRelaxation",
7090 FT_BOOLEAN, 8, NULL, 0x04,
7092 { &hf_dap_SearchControlOptions_dnAttribute,
7093 { "dnAttribute", "dap.dnAttribute",
7094 FT_BOOLEAN, 8, NULL, 0x02,
7096 { &hf_dap_SearchControlOptions_matchOnResidualName,
7097 { "matchOnResidualName", "dap.matchOnResidualName",
7098 FT_BOOLEAN, 8, NULL, 0x01,
7100 { &hf_dap_SearchControlOptions_entryCount,
7101 { "entryCount", "dap.entryCount",
7102 FT_BOOLEAN, 8, NULL, 0x80,
7104 { &hf_dap_SearchControlOptions_useSubset,
7105 { "useSubset", "dap.useSubset",
7106 FT_BOOLEAN, 8, NULL, 0x40,
7108 { &hf_dap_SearchControlOptions_separateFamilyMembers,
7109 { "separateFamilyMembers", "dap.separateFamilyMembers",
7110 FT_BOOLEAN, 8, NULL, 0x20,
7112 { &hf_dap_SearchControlOptions_searchFamily,
7113 { "searchFamily", "dap.searchFamily",
7114 FT_BOOLEAN, 8, NULL, 0x10,
7117 /*--- End of included file: packet-dap-hfarr.c ---*/
7118 #line 279 "packet-dap-template.c"
7121 /* List of subtrees */
7122 static gint *ett[] = {
7125 /*--- Included file: packet-dap-ettarr.c ---*/
7126 #line 1 "packet-dap-ettarr.c"
7127 &ett_dap_CommonResults,
7128 &ett_dap_SEQUENCE_OF_Attribute,
7129 &ett_dap_ServiceControls,
7130 &ett_dap_T_manageDSAITPlaneRef,
7131 &ett_dap_ServiceControlOptions,
7132 &ett_dap_EntryInformationSelection,
7133 &ett_dap_T_attributes,
7134 &ett_dap_SET_OF_AttributeType,
7135 &ett_dap_T_extraAttributes,
7136 &ett_dap_ContextSelection,
7137 &ett_dap_SET_OF_TypeAndContextAssertion,
7138 &ett_dap_TypeAndContextAssertion,
7139 &ett_dap_T_contextAssertions,
7140 &ett_dap_SEQUENCE_OF_ContextAssertion,
7141 &ett_dap_SET_OF_ContextAssertion,
7142 &ett_dap_FamilyReturn,
7143 &ett_dap_T_familySelect,
7144 &ett_dap_EntryInformation,
7145 &ett_dap_T_entry_information,
7146 &ett_dap_EntryInformationItem,
7147 &ett_dap_FamilyEntries,
7148 &ett_dap_SEQUENCE_OF_FamilyEntry,
7149 &ett_dap_FamilyEntry,
7150 &ett_dap_FamilyInformation,
7151 &ett_dap_T_family_information_item,
7152 &ett_dap_SEQUENCE_OF_FamilyEntries,
7154 &ett_dap_SetOfFilter,
7155 &ett_dap_FilterItem,
7156 &ett_dap_T_substrings,
7158 &ett_dap_T_strings_item,
7159 &ett_dap_MatchingRuleAssertion,
7160 &ett_dap_T_matchingRule,
7161 &ett_dap_PagedResultsRequest,
7162 &ett_dap_T_newRequest,
7163 &ett_dap_SEQUENCE_OF_SortKey,
7165 &ett_dap_SecurityParameters,
7167 &ett_dap_DirectoryBindArgument,
7168 &ett_dap_Credentials,
7169 &ett_dap_SimpleCredentials,
7170 &ett_dap_T_validity,
7173 &ett_dap_T_password,
7174 &ett_dap_T_protected,
7175 &ett_dap_StrongCredentials,
7176 &ett_dap_SpkmCredentials,
7178 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier,
7181 &ett_dap_DirectoryBindErrorData,
7183 &ett_dap_DirectoryBindError,
7184 &ett_dap_T_signedDirectoryBindError,
7185 &ett_dap_ReadArgumentData,
7187 &ett_dap_ReadArgument,
7188 &ett_dap_T_signedReadArgument,
7189 &ett_dap_ReadResultData,
7190 &ett_dap_ReadResult,
7191 &ett_dap_T_signedReadResult,
7192 &ett_dap_ModifyRights,
7193 &ett_dap_ModifyRights_item,
7195 &ett_dap_T_permission,
7196 &ett_dap_CompareArgumentData,
7197 &ett_dap_CompareArgument,
7198 &ett_dap_T_signedCompareArgument,
7199 &ett_dap_CompareResultData,
7200 &ett_dap_CompareResult,
7201 &ett_dap_T_signedCompareResult,
7202 &ett_dap_AbandonArgumentData,
7203 &ett_dap_AbandonArgument,
7204 &ett_dap_T_signedAbandonArgument,
7205 &ett_dap_AbandonResultData,
7206 &ett_dap_AbandonResult,
7207 &ett_dap_AbandonInformation,
7208 &ett_dap_T_signedAbandonResult,
7209 &ett_dap_ListArgumentData,
7210 &ett_dap_ListArgument,
7211 &ett_dap_T_signedListArgument,
7212 &ett_dap_ListResultData,
7213 &ett_dap_T_listInfo,
7214 &ett_dap_T_subordinates,
7215 &ett_dap_T_subordinates_item,
7216 &ett_dap_SET_OF_ListResult,
7217 &ett_dap_ListResult,
7218 &ett_dap_T_signedListResult,
7219 &ett_dap_PartialOutcomeQualifier,
7220 &ett_dap_SET_OF_ContinuationReference,
7221 &ett_dap_T_unknownErrors,
7222 &ett_dap_T_entryCount,
7223 &ett_dap_SearchArgumentData,
7224 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument,
7225 &ett_dap_SearchArgument,
7226 &ett_dap_T_signedSearchArgument,
7227 &ett_dap_HierarchySelections,
7228 &ett_dap_SearchControlOptions,
7229 &ett_dap_JoinArgument,
7230 &ett_dap_SEQUENCE_OF_JoinAttPair,
7231 &ett_dap_JoinAttPair,
7232 &ett_dap_SEQUENCE_OF_JoinContextType,
7233 &ett_dap_SearchResultData,
7234 &ett_dap_T_searchInfo,
7235 &ett_dap_SET_OF_EntryInformation,
7236 &ett_dap_SET_OF_SearchResult,
7237 &ett_dap_SearchResult,
7238 &ett_dap_T_signedSearchResult,
7239 &ett_dap_AddEntryArgumentData,
7240 &ett_dap_SET_OF_Attribute,
7241 &ett_dap_AddEntryArgument,
7242 &ett_dap_T_signedAddEntryArgument,
7243 &ett_dap_AddEntryResultData,
7244 &ett_dap_AddEntryResult,
7245 &ett_dap_AddEntryInformation,
7246 &ett_dap_T_signedAddEntryResult,
7247 &ett_dap_RemoveEntryArgumentData,
7248 &ett_dap_RemoveEntryArgument,
7249 &ett_dap_T_signedRemoveEntryArgument,
7250 &ett_dap_RemoveEntryResultData,
7251 &ett_dap_RemoveEntryResult,
7252 &ett_dap_RemoveEntryInformation,
7253 &ett_dap_T_signedRemoveEntryResult,
7254 &ett_dap_ModifyEntryArgumentData,
7255 &ett_dap_SEQUENCE_OF_EntryModification,
7256 &ett_dap_ModifyEntryArgument,
7257 &ett_dap_T_signedModifyEntryArgument,
7258 &ett_dap_ModifyEntryResultData,
7259 &ett_dap_ModifyEntryResult,
7260 &ett_dap_ModifyEntryInformation,
7261 &ett_dap_T_signedModifyEntryResult,
7262 &ett_dap_EntryModification,
7263 &ett_dap_ModifyDNArgument,
7264 &ett_dap_ModifyDNResultData,
7265 &ett_dap_ModifyDNResult,
7266 &ett_dap_ModifyDNInformation,
7267 &ett_dap_T_signedModifyDNResult,
7268 &ett_dap_AbandonedData,
7270 &ett_dap_T_signedAbandoned,
7271 &ett_dap_AbandonFailedErrorData,
7272 &ett_dap_AbandonFailedError,
7273 &ett_dap_T_signedAbandonFailedError,
7274 &ett_dap_AttributeErrorData,
7275 &ett_dap_T_problems,
7276 &ett_dap_T_problems_item,
7277 &ett_dap_AttributeError,
7278 &ett_dap_T_signedAttributeError,
7279 &ett_dap_NameErrorData,
7281 &ett_dap_T_signedNameError,
7282 &ett_dap_ReferralData,
7284 &ett_dap_T_signedReferral,
7285 &ett_dap_SecurityErrorData,
7286 &ett_dap_SecurityError,
7287 &ett_dap_T_signedSecurityError,
7288 &ett_dap_ServiceErrorData,
7289 &ett_dap_ServiceError,
7290 &ett_dap_T_signedServiceError,
7291 &ett_dap_UpdateErrorData,
7292 &ett_dap_T_attributeInfo,
7293 &ett_dap_T_attributeInfo_item,
7294 &ett_dap_UpdateError,
7295 &ett_dap_T_signedUpdateError,
7297 /*--- End of included file: packet-dap-ettarr.c ---*/
7298 #line 285 "packet-dap-template.c"
7300 module_t *dap_module;
7302 /* Register protocol */
7303 proto_dap = proto_register_protocol(PNAME, PSNAME, PFNAME);
7304 register_dissector("dap", dissect_dap, proto_dap);
7306 /* Register fields and subtrees */
7307 proto_register_field_array(proto_dap, hf, array_length(hf));
7308 proto_register_subtree_array(ett, array_length(ett));
7310 /* Register our configuration options for DAP, particularly our port */
7312 #ifdef PREFERENCE_GROUPING
7313 dap_module = prefs_register_protocol_subtree("OSI/X.500", proto_dap, prefs_register_dap);
7315 dap_module = prefs_register_protocol(proto_dap, prefs_register_dap);
7318 prefs_register_uint_preference(dap_module, "tcp.port", "DAP TCP Port",
7319 "Set the port for DAP operations (if other"
7320 " than the default of 102)",
7321 10, &global_dap_tcp_port);
7326 /*--- proto_reg_handoff_dap --- */
7327 void proto_reg_handoff_dap(void) {
7328 dissector_handle_t handle = NULL;
7330 /* #include "packet-dap-dis-tab.c" */
7332 /* APPLICATION CONTEXT */
7334 add_oid_str_name("2.5.3.1", "id-ac-directory-access");
7336 /* ABSTRACT SYNTAXES */
7338 /* Register DAP with ROS (with no use of RTSE) */
7339 if((handle = find_dissector("dap"))) {
7340 register_ros_oid_dissector_handle("2.5.9.1", handle, 0, "id-as-directory-access", FALSE);
7343 /* remember the tpkt handler for change in preferences */
7344 tpkt_handle = find_dissector("tpkt");
7346 /* AttributeValueAssertions */
7347 x509if_register_fmt(hf_dap_equality, "=");
7348 x509if_register_fmt(hf_dap_greaterOrEqual, ">=");
7349 x509if_register_fmt(hf_dap_lessOrEqual, "<=");
7350 x509if_register_fmt(hf_dap_approximateMatch, "=~");
7351 /* AttributeTypes */
7352 x509if_register_fmt(hf_dap_present, "= *");
7358 void prefs_register_dap(void) {
7360 /* de-register the old port */
7361 /* port 102 is registered by TPKT - don't undo this! */
7362 if((tcp_port != 102) && tpkt_handle)
7363 dissector_delete("tcp.port", tcp_port, tpkt_handle);
7365 /* Set our port number for future use */
7366 tcp_port = global_dap_tcp_port;
7368 if((tcp_port > 0) && (tcp_port != 102) && tpkt_handle)
7369 dissector_add("tcp.port", global_dap_tcp_port, tpkt_handle);