MSWSP: add two more Property Sets
[wireshark-wip.git] / epan / dissectors / packet-dap.c
blobbcdb53858722b6d0db9230bfb422fab667434c74
1 /* Do not modify this file. Changes will be overwritten. */
2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler */
3 /* packet-dap.c */
4 /* ../../tools/asn2wrs.py -b -L -p dap -c ./dap.cnf -s ./packet-dap-template -D . -O ../../epan/dissectors dap.asn DirectoryAccessProtocol.asn */
6 /* Input file: packet-dap-template.c */
8 #line 1 "../../asn1/dap/packet-dap-template.c"
9 /* packet-dap.c
10 * Routines for X.511 (X.500 Directory Asbtract Service) and X.519 DAP packet dissection
11 * Graeme Lunt 2005
13 * $Id$
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
34 #include "config.h"
36 #include <glib.h>
37 #include <epan/packet.h>
38 #include <epan/prefs.h>
39 #include <epan/oids.h>
40 #include <epan/asn1.h>
42 #include "packet-ber.h"
43 #include "packet-acse.h"
44 #include "packet-ros.h"
45 #include "packet-idmp.h"
47 #include "packet-x509if.h"
48 #include "packet-x509af.h"
49 #include "packet-x509sat.h"
50 #include "packet-crmf.h"
52 #include "packet-dsp.h"
53 #include "packet-disp.h"
54 #include "packet-dap.h"
55 #include <epan/strutil.h>
57 /* we don't have a separate dissector for X519 -
58 most of DAP is defined in X511 */
59 #define PNAME "X.519 Directory Access Protocol"
60 #define PSNAME "DAP"
61 #define PFNAME "dap"
63 static guint global_dap_tcp_port = 102;
64 static dissector_handle_t tpkt_handle;
65 static void prefs_register_dap(void); /* forward declaration for use in preferences registration */
68 /* Initialize the protocol and registered fields */
69 static int proto_dap = -1;
73 /*--- Included file: packet-dap-hf.c ---*/
74 #line 1 "../../asn1/dap/packet-dap-hf.c"
75 static int hf_dap_DirectoryBindArgument_PDU = -1; /* DirectoryBindArgument */
76 static int hf_dap_DirectoryBindResult_PDU = -1; /* DirectoryBindResult */
77 static int hf_dap_DirectoryBindError_PDU = -1; /* DirectoryBindError */
78 static int hf_dap_ReadArgument_PDU = -1; /* ReadArgument */
79 static int hf_dap_ReadResult_PDU = -1; /* ReadResult */
80 static int hf_dap_CompareArgument_PDU = -1; /* CompareArgument */
81 static int hf_dap_CompareResult_PDU = -1; /* CompareResult */
82 static int hf_dap_AbandonArgument_PDU = -1; /* AbandonArgument */
83 static int hf_dap_AbandonResult_PDU = -1; /* AbandonResult */
84 static int hf_dap_ListArgument_PDU = -1; /* ListArgument */
85 static int hf_dap_ListResult_PDU = -1; /* ListResult */
86 static int hf_dap_SearchArgument_PDU = -1; /* SearchArgument */
87 static int hf_dap_SearchResult_PDU = -1; /* SearchResult */
88 static int hf_dap_AddEntryArgument_PDU = -1; /* AddEntryArgument */
89 static int hf_dap_AddEntryResult_PDU = -1; /* AddEntryResult */
90 static int hf_dap_RemoveEntryArgument_PDU = -1; /* RemoveEntryArgument */
91 static int hf_dap_RemoveEntryResult_PDU = -1; /* RemoveEntryResult */
92 static int hf_dap_ModifyEntryArgument_PDU = -1; /* ModifyEntryArgument */
93 static int hf_dap_ModifyEntryResult_PDU = -1; /* ModifyEntryResult */
94 static int hf_dap_ModifyDNArgument_PDU = -1; /* ModifyDNArgument */
95 static int hf_dap_ModifyDNResult_PDU = -1; /* ModifyDNResult */
96 static int hf_dap_Abandoned_PDU = -1; /* Abandoned */
97 static int hf_dap_AbandonFailedError_PDU = -1; /* AbandonFailedError */
98 static int hf_dap_AttributeError_PDU = -1; /* AttributeError */
99 static int hf_dap_NameError_PDU = -1; /* NameError */
100 static int hf_dap_Referral_PDU = -1; /* Referral */
101 static int hf_dap_SecurityError_PDU = -1; /* SecurityError */
102 static int hf_dap_ServiceError_PDU = -1; /* ServiceError */
103 static int hf_dap_UpdateError_PDU = -1; /* UpdateError */
104 static int hf_dap_options = -1; /* ServiceControlOptions */
105 static int hf_dap_priority = -1; /* T_priority */
106 static int hf_dap_timeLimit = -1; /* INTEGER */
107 static int hf_dap_sizeLimit = -1; /* INTEGER */
108 static int hf_dap_scopeOfReferral = -1; /* T_scopeOfReferral */
109 static int hf_dap_attributeSizeLimit = -1; /* INTEGER */
110 static int hf_dap_manageDSAITPlaneRef = -1; /* T_manageDSAITPlaneRef */
111 static int hf_dap_dsaName = -1; /* Name */
112 static int hf_dap_agreementID = -1; /* AgreementID */
113 static int hf_dap_serviceType = -1; /* OBJECT_IDENTIFIER */
114 static int hf_dap_userClass = -1; /* INTEGER */
115 static int hf_dap_attributes = -1; /* T_attributes */
116 static int hf_dap_allUserAttributes = -1; /* NULL */
117 static int hf_dap_select = -1; /* SET_OF_AttributeType */
118 static int hf_dap_select_item = -1; /* AttributeType */
119 static int hf_dap_infoTypes = -1; /* T_infoTypes */
120 static int hf_dap_extraAttributes = -1; /* T_extraAttributes */
121 static int hf_dap_allOperationalAttributes = -1; /* NULL */
122 static int hf_dap_extraSelect = -1; /* SET_SIZE_1_MAX_OF_AttributeType */
123 static int hf_dap_extraSelect_item = -1; /* AttributeType */
124 static int hf_dap_contextSelection = -1; /* ContextSelection */
125 static int hf_dap_returnContexts = -1; /* BOOLEAN */
126 static int hf_dap_familyReturn = -1; /* FamilyReturn */
127 static int hf_dap_allContexts = -1; /* NULL */
128 static int hf_dap_selectedContexts = -1; /* SET_SIZE_1_MAX_OF_TypeAndContextAssertion */
129 static int hf_dap_selectedContexts_item = -1; /* TypeAndContextAssertion */
130 static int hf_dap_type = -1; /* AttributeType */
131 static int hf_dap_contextAssertions = -1; /* T_contextAssertions */
132 static int hf_dap_preference = -1; /* SEQUENCE_OF_ContextAssertion */
133 static int hf_dap_preference_item = -1; /* ContextAssertion */
134 static int hf_dap_all = -1; /* SET_OF_ContextAssertion */
135 static int hf_dap_all_item = -1; /* ContextAssertion */
136 static int hf_dap_memberSelect = -1; /* T_memberSelect */
137 static int hf_dap_familySelect = -1; /* T_familySelect */
138 static int hf_dap_familySelect_item = -1; /* OBJECT_IDENTIFIER */
139 static int hf_dap_name = -1; /* Name */
140 static int hf_dap_fromEntry = -1; /* BOOLEAN */
141 static int hf_dap_entry_information = -1; /* T_entry_information */
142 static int hf_dap_entry_information_item = -1; /* EntryInformationItem */
143 static int hf_dap_attributeType = -1; /* AttributeType */
144 static int hf_dap_attribute = -1; /* Attribute */
145 static int hf_dap_incompleteEntry = -1; /* BOOLEAN */
146 static int hf_dap_partialName = -1; /* BOOLEAN */
147 static int hf_dap_derivedEntry = -1; /* BOOLEAN */
148 static int hf_dap_family_class = -1; /* OBJECT_IDENTIFIER */
149 static int hf_dap_familyEntries = -1; /* SEQUENCE_OF_FamilyEntry */
150 static int hf_dap_familyEntries_item = -1; /* FamilyEntry */
151 static int hf_dap_rdn = -1; /* RelativeDistinguishedName */
152 static int hf_dap_family_information = -1; /* FamilyInformation */
153 static int hf_dap_family_information_item = -1; /* T_family_information_item */
154 static int hf_dap_family_info = -1; /* SEQUENCE_SIZE_1_MAX_OF_FamilyEntries */
155 static int hf_dap_family_info_item = -1; /* FamilyEntries */
156 static int hf_dap_filter_item = -1; /* FilterItem */
157 static int hf_dap_and = -1; /* SetOfFilter */
158 static int hf_dap_or = -1; /* SetOfFilter */
159 static int hf_dap_not = -1; /* Filter */
160 static int hf_dap_SetOfFilter_item = -1; /* Filter */
161 static int hf_dap_equality = -1; /* AttributeValueAssertion */
162 static int hf_dap_substrings = -1; /* T_substrings */
163 static int hf_dap_sunstringType = -1; /* OBJECT_IDENTIFIER */
164 static int hf_dap_strings = -1; /* T_strings */
165 static int hf_dap_strings_item = -1; /* T_strings_item */
166 static int hf_dap_initial = -1; /* T_initial */
167 static int hf_dap_any = -1; /* T_any */
168 static int hf_dap_final = -1; /* T_final */
169 static int hf_dap_control = -1; /* Attribute */
170 static int hf_dap_greaterOrEqual = -1; /* AttributeValueAssertion */
171 static int hf_dap_lessOrEqual = -1; /* AttributeValueAssertion */
172 static int hf_dap_present = -1; /* AttributeType */
173 static int hf_dap_approximateMatch = -1; /* AttributeValueAssertion */
174 static int hf_dap_extensibleMatch = -1; /* MatchingRuleAssertion */
175 static int hf_dap_contextPresent = -1; /* AttributeTypeAssertion */
176 static int hf_dap_matchingRule = -1; /* T_matchingRule */
177 static int hf_dap_matchingRule_item = -1; /* OBJECT_IDENTIFIER */
178 static int hf_dap_matchValue = -1; /* T_matchValue */
179 static int hf_dap_dnAttributes = -1; /* BOOLEAN */
180 static int hf_dap_newRequest = -1; /* T_newRequest */
181 static int hf_dap_pageSize = -1; /* INTEGER */
182 static int hf_dap_sortKeys = -1; /* SEQUENCE_SIZE_1_MAX_OF_SortKey */
183 static int hf_dap_sortKeys_item = -1; /* SortKey */
184 static int hf_dap_reverse = -1; /* BOOLEAN */
185 static int hf_dap_unmerged = -1; /* BOOLEAN */
186 static int hf_dap_pagedResultsQueryReference = -1; /* T_pagedResultsQueryReference */
187 static int hf_dap_orderingRule = -1; /* OBJECT_IDENTIFIER */
188 static int hf_dap_certification_path = -1; /* CertificationPath */
189 static int hf_dap_distinguished_name = -1; /* DistinguishedName */
190 static int hf_dap_time = -1; /* Time */
191 static int hf_dap_random = -1; /* BIT_STRING */
192 static int hf_dap_target = -1; /* ProtectionRequest */
193 static int hf_dap_response = -1; /* BIT_STRING */
194 static int hf_dap_operationCode = -1; /* Code */
195 static int hf_dap_attributeCertificationPath = -1; /* AttributeCertificationPath */
196 static int hf_dap_errorProtection = -1; /* ErrorProtectionRequest */
197 static int hf_dap_errorCode = -1; /* Code */
198 static int hf_dap_utcTime = -1; /* UTCTime */
199 static int hf_dap_generalizedTime = -1; /* GeneralizedTime */
200 static int hf_dap_credentials = -1; /* Credentials */
201 static int hf_dap_versions = -1; /* Versions */
202 static int hf_dap_simple = -1; /* SimpleCredentials */
203 static int hf_dap_strong = -1; /* StrongCredentials */
204 static int hf_dap_externalProcedure = -1; /* EXTERNAL */
205 static int hf_dap_spkm = -1; /* SpkmCredentials */
206 static int hf_dap_sasl = -1; /* SaslCredentials */
207 static int hf_dap_validity = -1; /* T_validity */
208 static int hf_dap_time1 = -1; /* T_time1 */
209 static int hf_dap_utc = -1; /* UTCTime */
210 static int hf_dap_gt = -1; /* GeneralizedTime */
211 static int hf_dap_time2 = -1; /* T_time2 */
212 static int hf_dap_random1 = -1; /* BIT_STRING */
213 static int hf_dap_random2 = -1; /* BIT_STRING */
214 static int hf_dap_password = -1; /* T_password */
215 static int hf_dap_unprotected = -1; /* OCTET_STRING */
216 static int hf_dap_protected = -1; /* T_protected */
217 static int hf_dap_protectedPassword = -1; /* OCTET_STRING */
218 static int hf_dap_algorithmIdentifier = -1; /* AlgorithmIdentifier */
219 static int hf_dap_encrypted = -1; /* BIT_STRING */
220 static int hf_dap_bind_token = -1; /* Token */
221 static int hf_dap_req = -1; /* T_req */
222 static int hf_dap_rep = -1; /* T_rep */
223 static int hf_dap_mechanism = -1; /* DirectoryString */
224 static int hf_dap_saslCredentials = -1; /* OCTET_STRING */
225 static int hf_dap_saslAbort = -1; /* BOOLEAN */
226 static int hf_dap_algorithm = -1; /* AlgorithmIdentifier */
227 static int hf_dap_utctime = -1; /* UTCTime */
228 static int hf_dap_bindIntAlgorithm = -1; /* SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier */
229 static int hf_dap_bindIntAlgorithm_item = -1; /* AlgorithmIdentifier */
230 static int hf_dap_bindIntKeyInfo = -1; /* BindKeyInfo */
231 static int hf_dap_bindConfAlgorithm = -1; /* SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier */
232 static int hf_dap_bindConfAlgorithm_item = -1; /* AlgorithmIdentifier */
233 static int hf_dap_bindConfKeyInfo = -1; /* BindKeyInfo */
234 static int hf_dap_token_data = -1; /* TokenData */
235 static int hf_dap_algorithm_identifier = -1; /* AlgorithmIdentifier */
236 static int hf_dap_unsignedDirectoryBindError = -1; /* DirectoryBindErrorData */
237 static int hf_dap_signedDirectoryBindError = -1; /* T_signedDirectoryBindError */
238 static int hf_dap_directoryBindError = -1; /* DirectoryBindErrorData */
239 static int hf_dap_error = -1; /* T_error */
240 static int hf_dap_serviceProblem = -1; /* ServiceProblem */
241 static int hf_dap_securityProblem = -1; /* SecurityProblem */
242 static int hf_dap_securityParameters = -1; /* SecurityParameters */
243 static int hf_dap_object = -1; /* Name */
244 static int hf_dap_selection = -1; /* EntryInformationSelection */
245 static int hf_dap_modifyRightsRequest = -1; /* BOOLEAN */
246 static int hf_dap_serviceControls = -1; /* ServiceControls */
247 static int hf_dap_requestor = -1; /* DistinguishedName */
248 static int hf_dap_operationProgress = -1; /* OperationProgress */
249 static int hf_dap_aliasedRDNs = -1; /* INTEGER */
250 static int hf_dap_criticalExtensions = -1; /* BIT_STRING */
251 static int hf_dap_referenceType = -1; /* ReferenceType */
252 static int hf_dap_entryOnly = -1; /* BOOLEAN */
253 static int hf_dap_exclusions = -1; /* Exclusions */
254 static int hf_dap_nameResolveOnMaster = -1; /* BOOLEAN */
255 static int hf_dap_operationContexts = -1; /* ContextSelection */
256 static int hf_dap_familyGrouping = -1; /* FamilyGrouping */
257 static int hf_dap_rdnSequence = -1; /* RDNSequence */
258 static int hf_dap_unsignedReadArgument = -1; /* ReadArgumentData */
259 static int hf_dap_signedReadArgument = -1; /* T_signedReadArgument */
260 static int hf_dap_readArgument = -1; /* ReadArgumentData */
261 static int hf_dap_entry = -1; /* EntryInformation */
262 static int hf_dap_modifyRights = -1; /* ModifyRights */
263 static int hf_dap_performer = -1; /* DistinguishedName */
264 static int hf_dap_aliasDereferenced = -1; /* BOOLEAN */
265 static int hf_dap_notification = -1; /* SEQUENCE_SIZE_1_MAX_OF_Attribute */
266 static int hf_dap_notification_item = -1; /* Attribute */
267 static int hf_dap_unsignedReadResult = -1; /* ReadResultData */
268 static int hf_dap_signedReadResult = -1; /* T_signedReadResult */
269 static int hf_dap_readResult = -1; /* ReadResultData */
270 static int hf_dap_ModifyRights_item = -1; /* ModifyRights_item */
271 static int hf_dap_item = -1; /* T_item */
272 static int hf_dap_item_entry = -1; /* NULL */
273 static int hf_dap_attribute_type = -1; /* AttributeType */
274 static int hf_dap_value_assertion = -1; /* AttributeValueAssertion */
275 static int hf_dap_permission = -1; /* T_permission */
276 static int hf_dap_purported = -1; /* AttributeValueAssertion */
277 static int hf_dap_unsignedCompareArgument = -1; /* CompareArgumentData */
278 static int hf_dap_signedCompareArgument = -1; /* T_signedCompareArgument */
279 static int hf_dap_compareArgument = -1; /* CompareArgumentData */
280 static int hf_dap_matched = -1; /* BOOLEAN */
281 static int hf_dap_matchedSubtype = -1; /* AttributeType */
282 static int hf_dap_unsignedCompareResult = -1; /* CompareResultData */
283 static int hf_dap_signedCompareResult = -1; /* T_signedCompareResult */
284 static int hf_dap_compareResult = -1; /* CompareResultData */
285 static int hf_dap_invokeID = -1; /* InvokeId */
286 static int hf_dap_unsignedAbandonArgument = -1; /* AbandonArgumentData */
287 static int hf_dap_signedAbandonArgument = -1; /* T_signedAbandonArgument */
288 static int hf_dap_abandonArgument = -1; /* AbandonArgumentData */
289 static int hf_dap_null = -1; /* NULL */
290 static int hf_dap_abandon_information = -1; /* AbandonInformation */
291 static int hf_dap_unsignedAbandonResult = -1; /* AbandonResultData */
292 static int hf_dap_signedAbandonResult = -1; /* T_signedAbandonResult */
293 static int hf_dap_abandonResult = -1; /* AbandonResultData */
294 static int hf_dap_pagedResults = -1; /* PagedResultsRequest */
295 static int hf_dap_listFamily = -1; /* BOOLEAN */
296 static int hf_dap_unsignedListArgument = -1; /* ListArgumentData */
297 static int hf_dap_signedListArgument = -1; /* T_signedListArgument */
298 static int hf_dap_listArgument = -1; /* ListArgumentData */
299 static int hf_dap_listInfo = -1; /* T_listInfo */
300 static int hf_dap_subordinates = -1; /* T_subordinates */
301 static int hf_dap_subordinates_item = -1; /* T_subordinates_item */
302 static int hf_dap_aliasEntry = -1; /* BOOLEAN */
303 static int hf_dap_partialOutcomeQualifier = -1; /* PartialOutcomeQualifier */
304 static int hf_dap_uncorrelatedListInfo = -1; /* SET_OF_ListResult */
305 static int hf_dap_uncorrelatedListInfo_item = -1; /* ListResult */
306 static int hf_dap_unsignedListResult = -1; /* ListResultData */
307 static int hf_dap_signedListResult = -1; /* T_signedListResult */
308 static int hf_dap_listResult = -1; /* ListResultData */
309 static int hf_dap_limitProblem = -1; /* LimitProblem */
310 static int hf_dap_unexplored = -1; /* SET_SIZE_1_MAX_OF_ContinuationReference */
311 static int hf_dap_unexplored_item = -1; /* ContinuationReference */
312 static int hf_dap_unavailableCriticalExtensions = -1; /* BOOLEAN */
313 static int hf_dap_unknownErrors = -1; /* T_unknownErrors */
314 static int hf_dap_unknownErrors_item = -1; /* OBJECT_IDENTIFIER */
315 static int hf_dap_queryReference = -1; /* OCTET_STRING */
316 static int hf_dap_overspecFilter = -1; /* Filter */
317 static int hf_dap_entryCount = -1; /* T_entryCount */
318 static int hf_dap_bestEstimate = -1; /* INTEGER */
319 static int hf_dap_lowEstimate = -1; /* INTEGER */
320 static int hf_dap_exact = -1; /* INTEGER */
321 static int hf_dap_streamedResult = -1; /* BOOLEAN */
322 static int hf_dap_baseObject = -1; /* Name */
323 static int hf_dap_subset = -1; /* T_subset */
324 static int hf_dap_filter = -1; /* Filter */
325 static int hf_dap_searchAliases = -1; /* BOOLEAN */
326 static int hf_dap_matchedValuesOnly = -1; /* BOOLEAN */
327 static int hf_dap_extendedFilter = -1; /* Filter */
328 static int hf_dap_checkOverspecified = -1; /* BOOLEAN */
329 static int hf_dap_relaxation = -1; /* RelaxationPolicy */
330 static int hf_dap_extendedArea = -1; /* INTEGER */
331 static int hf_dap_hierarchySelections = -1; /* HierarchySelections */
332 static int hf_dap_searchControlOptions = -1; /* SearchControlOptions */
333 static int hf_dap_joinArguments = -1; /* SEQUENCE_SIZE_1_MAX_OF_JoinArgument */
334 static int hf_dap_joinArguments_item = -1; /* JoinArgument */
335 static int hf_dap_joinType = -1; /* T_joinType */
336 static int hf_dap_unsignedSearchArgument = -1; /* SearchArgumentData */
337 static int hf_dap_signedSearchArgument = -1; /* T_signedSearchArgument */
338 static int hf_dap_searchArgument = -1; /* SearchArgumentData */
339 static int hf_dap_joinBaseObject = -1; /* Name */
340 static int hf_dap_domainLocalID = -1; /* DomainLocalID */
341 static int hf_dap_joinSubset = -1; /* T_joinSubset */
342 static int hf_dap_joinFilter = -1; /* Filter */
343 static int hf_dap_joinAttributes = -1; /* SEQUENCE_SIZE_1_MAX_OF_JoinAttPair */
344 static int hf_dap_joinAttributes_item = -1; /* JoinAttPair */
345 static int hf_dap_joinSelection = -1; /* EntryInformationSelection */
346 static int hf_dap_baseAtt = -1; /* AttributeType */
347 static int hf_dap_joinAtt = -1; /* AttributeType */
348 static int hf_dap_joinContext = -1; /* SEQUENCE_SIZE_1_MAX_OF_JoinContextType */
349 static int hf_dap_joinContext_item = -1; /* JoinContextType */
350 static int hf_dap_searchInfo = -1; /* T_searchInfo */
351 static int hf_dap_entries = -1; /* SET_OF_EntryInformation */
352 static int hf_dap_entries_item = -1; /* EntryInformation */
353 static int hf_dap_altMatching = -1; /* BOOLEAN */
354 static int hf_dap_uncorrelatedSearchInfo = -1; /* SET_OF_SearchResult */
355 static int hf_dap_uncorrelatedSearchInfo_item = -1; /* SearchResult */
356 static int hf_dap_unsignedSearchResult = -1; /* SearchResultData */
357 static int hf_dap_signedSearchResult = -1; /* T_signedSearchResult */
358 static int hf_dap_searchResult = -1; /* SearchResultData */
359 static int hf_dap_add_entry = -1; /* SET_OF_Attribute */
360 static int hf_dap_add_entry_item = -1; /* Attribute */
361 static int hf_dap_targetSystem = -1; /* AccessPoint */
362 static int hf_dap_unsignedAddEntryArgument = -1; /* AddEntryArgumentData */
363 static int hf_dap_signedAddEntryArgument = -1; /* T_signedAddEntryArgument */
364 static int hf_dap_addEntryArgument = -1; /* AddEntryArgumentData */
365 static int hf_dap_add_entry_information = -1; /* AddEntryInformation */
366 static int hf_dap_unsignedAddEntryResult = -1; /* AddEntryResultData */
367 static int hf_dap_signedAddEntryResult = -1; /* T_signedAddEntryResult */
368 static int hf_dap_addEntryResult = -1; /* AddEntryResultData */
369 static int hf_dap_unsignedRemoveEntryArgument = -1; /* RemoveEntryArgumentData */
370 static int hf_dap_signedRemoveEntryArgument = -1; /* T_signedRemoveEntryArgument */
371 static int hf_dap_removeEntryArgument = -1; /* RemoveEntryArgumentData */
372 static int hf_dap_remove_entry_information = -1; /* RemoveEntryInformation */
373 static int hf_dap_unsignedRemoveEntryResult = -1; /* RemoveEntryResultData */
374 static int hf_dap_signedRemoveEntryResult = -1; /* T_signedRemoveEntryResult */
375 static int hf_dap_removeEntryResult = -1; /* RemoveEntryResultData */
376 static int hf_dap_changes = -1; /* SEQUENCE_OF_EntryModification */
377 static int hf_dap_changes_item = -1; /* EntryModification */
378 static int hf_dap_unsignedModifyEntryArgument = -1; /* ModifyEntryArgumentData */
379 static int hf_dap_signedModifyEntryArgument = -1; /* T_signedModifyEntryArgument */
380 static int hf_dap_modifyEntryArgument = -1; /* ModifyEntryArgumentData */
381 static int hf_dap_modify_entry_information = -1; /* ModifyEntryInformation */
382 static int hf_dap_unsignedModifyEntryResult = -1; /* ModifyEntryResultData */
383 static int hf_dap_signedModifyEntryResult = -1; /* T_signedModifyEntryResult */
384 static int hf_dap_modifyEntryResult = -1; /* ModifyEntryResultData */
385 static int hf_dap_addAttribute = -1; /* Attribute */
386 static int hf_dap_removeAttribute = -1; /* AttributeType */
387 static int hf_dap_addValues = -1; /* Attribute */
388 static int hf_dap_removeValues = -1; /* Attribute */
389 static int hf_dap_alterValues = -1; /* AttributeTypeAndValue */
390 static int hf_dap_resetValue = -1; /* AttributeType */
391 static int hf_dap_newRDN = -1; /* RelativeDistinguishedName */
392 static int hf_dap_deleteOldRDN = -1; /* BOOLEAN */
393 static int hf_dap_newSuperior = -1; /* DistinguishedName */
394 static int hf_dap_modify_dn_information = -1; /* ModifyDNInformation */
395 static int hf_dap_unsignedModifyDNResult = -1; /* ModifyDNResultData */
396 static int hf_dap_signedModifyDNResult = -1; /* T_signedModifyDNResult */
397 static int hf_dap_modifyDNResult = -1; /* ModifyDNResultData */
398 static int hf_dap_unsignedAbandoned = -1; /* AbandonedData */
399 static int hf_dap_signedAbandoned = -1; /* T_signedAbandoned */
400 static int hf_dap_abandoned = -1; /* AbandonedData */
401 static int hf_dap_abandon_failed_problem = -1; /* AbandonProblem */
402 static int hf_dap_operation = -1; /* InvokeId */
403 static int hf_dap_unsignedAbandonFailedError = -1; /* AbandonFailedErrorData */
404 static int hf_dap_signedAbandonFailedError = -1; /* T_signedAbandonFailedError */
405 static int hf_dap_abandonFailedError = -1; /* AbandonFailedErrorData */
406 static int hf_dap_problems = -1; /* T_problems */
407 static int hf_dap_problems_item = -1; /* T_problems_item */
408 static int hf_dap_attribute_error_problem = -1; /* AttributeProblem */
409 static int hf_dap_value = -1; /* AttributeValue */
410 static int hf_dap_unsignedAttributeError = -1; /* AttributeErrorData */
411 static int hf_dap_signedAttributeError = -1; /* T_signedAttributeError */
412 static int hf_dap_attributeError = -1; /* AttributeErrorData */
413 static int hf_dap_name_error_problem = -1; /* NameProblem */
414 static int hf_dap_matched_name = -1; /* Name */
415 static int hf_dap_unsignedNameError = -1; /* NameErrorData */
416 static int hf_dap_signedNameError = -1; /* T_signedNameError */
417 static int hf_dap_nameError = -1; /* NameErrorData */
418 static int hf_dap_candidate = -1; /* ContinuationReference */
419 static int hf_dap_unsignedReferral = -1; /* ReferralData */
420 static int hf_dap_signedReferral = -1; /* T_signedReferral */
421 static int hf_dap_referral = -1; /* ReferralData */
422 static int hf_dap_security_error_problem = -1; /* SecurityProblem */
423 static int hf_dap_spkmInfo = -1; /* T_spkmInfo */
424 static int hf_dap_unsignedSecurityError = -1; /* SecurityErrorData */
425 static int hf_dap_signedSecurityError = -1; /* T_signedSecurityError */
426 static int hf_dap_securityErrorData = -1; /* SecurityErrorData */
427 static int hf_dap_service_error_problem = -1; /* ServiceProblem */
428 static int hf_dap_unsignedServiceError = -1; /* ServiceErrorData */
429 static int hf_dap_signedServiceError = -1; /* T_signedServiceError */
430 static int hf_dap_serviceError = -1; /* ServiceErrorData */
431 static int hf_dap_update_error_problem = -1; /* UpdateProblem */
432 static int hf_dap_attributeInfo = -1; /* T_attributeInfo */
433 static int hf_dap_attributeInfo_item = -1; /* T_attributeInfo_item */
434 static int hf_dap_unsignedUpdateError = -1; /* UpdateErrorData */
435 static int hf_dap_signedUpdateError = -1; /* T_signedUpdateError */
436 static int hf_dap_updateError = -1; /* UpdateErrorData */
437 /* named bits */
438 static int hf_dap_ServiceControlOptions_preferChaining = -1;
439 static int hf_dap_ServiceControlOptions_chainingProhibited = -1;
440 static int hf_dap_ServiceControlOptions_localScope = -1;
441 static int hf_dap_ServiceControlOptions_dontUseCopy = -1;
442 static int hf_dap_ServiceControlOptions_dontDereferenceAliases = -1;
443 static int hf_dap_ServiceControlOptions_subentries = -1;
444 static int hf_dap_ServiceControlOptions_copyShallDo = -1;
445 static int hf_dap_ServiceControlOptions_partialNameResolution = -1;
446 static int hf_dap_ServiceControlOptions_manageDSAIT = -1;
447 static int hf_dap_ServiceControlOptions_noSubtypeMatch = -1;
448 static int hf_dap_ServiceControlOptions_noSubtypeSelection = -1;
449 static int hf_dap_ServiceControlOptions_countFamily = -1;
450 static int hf_dap_ServiceControlOptions_dontSelectFriends = -1;
451 static int hf_dap_ServiceControlOptions_dontMatchFriends = -1;
452 static int hf_dap_Versions_v1 = -1;
453 static int hf_dap_Versions_v2 = -1;
454 static int hf_dap_T_permission_add = -1;
455 static int hf_dap_T_permission_remove = -1;
456 static int hf_dap_T_permission_rename = -1;
457 static int hf_dap_T_permission_move = -1;
458 static int hf_dap_HierarchySelections_self = -1;
459 static int hf_dap_HierarchySelections_children = -1;
460 static int hf_dap_HierarchySelections_parent = -1;
461 static int hf_dap_HierarchySelections_hierarchy = -1;
462 static int hf_dap_HierarchySelections_top = -1;
463 static int hf_dap_HierarchySelections_subtree = -1;
464 static int hf_dap_HierarchySelections_siblings = -1;
465 static int hf_dap_HierarchySelections_siblingChildren = -1;
466 static int hf_dap_HierarchySelections_siblingSubtree = -1;
467 static int hf_dap_HierarchySelections_all = -1;
468 static int hf_dap_SearchControlOptions_searchAliases = -1;
469 static int hf_dap_SearchControlOptions_matchedValuesOnly = -1;
470 static int hf_dap_SearchControlOptions_checkOverspecified = -1;
471 static int hf_dap_SearchControlOptions_performExactly = -1;
472 static int hf_dap_SearchControlOptions_includeAllAreas = -1;
473 static int hf_dap_SearchControlOptions_noSystemRelaxation = -1;
474 static int hf_dap_SearchControlOptions_dnAttribute = -1;
475 static int hf_dap_SearchControlOptions_matchOnResidualName = -1;
476 static int hf_dap_SearchControlOptions_entryCount = -1;
477 static int hf_dap_SearchControlOptions_useSubset = -1;
478 static int hf_dap_SearchControlOptions_separateFamilyMembers = -1;
479 static int hf_dap_SearchControlOptions_searchFamily = -1;
481 /*--- End of included file: packet-dap-hf.c ---*/
482 #line 65 "../../asn1/dap/packet-dap-template.c"
484 /* Initialize the subtree pointers */
485 static gint ett_dap = -1;
487 /*--- Included file: packet-dap-ett.c ---*/
488 #line 1 "../../asn1/dap/packet-dap-ett.c"
489 static gint ett_dap_ServiceControls = -1;
490 static gint ett_dap_T_manageDSAITPlaneRef = -1;
491 static gint ett_dap_ServiceControlOptions = -1;
492 static gint ett_dap_EntryInformationSelection = -1;
493 static gint ett_dap_T_attributes = -1;
494 static gint ett_dap_SET_OF_AttributeType = -1;
495 static gint ett_dap_T_extraAttributes = -1;
496 static gint ett_dap_SET_SIZE_1_MAX_OF_AttributeType = -1;
497 static gint ett_dap_ContextSelection = -1;
498 static gint ett_dap_SET_SIZE_1_MAX_OF_TypeAndContextAssertion = -1;
499 static gint ett_dap_TypeAndContextAssertion = -1;
500 static gint ett_dap_T_contextAssertions = -1;
501 static gint ett_dap_SEQUENCE_OF_ContextAssertion = -1;
502 static gint ett_dap_SET_OF_ContextAssertion = -1;
503 static gint ett_dap_FamilyReturn = -1;
504 static gint ett_dap_T_familySelect = -1;
505 static gint ett_dap_EntryInformation = -1;
506 static gint ett_dap_T_entry_information = -1;
507 static gint ett_dap_EntryInformationItem = -1;
508 static gint ett_dap_FamilyEntries = -1;
509 static gint ett_dap_SEQUENCE_OF_FamilyEntry = -1;
510 static gint ett_dap_FamilyEntry = -1;
511 static gint ett_dap_FamilyInformation = -1;
512 static gint ett_dap_T_family_information_item = -1;
513 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_FamilyEntries = -1;
514 static gint ett_dap_Filter = -1;
515 static gint ett_dap_SetOfFilter = -1;
516 static gint ett_dap_FilterItem = -1;
517 static gint ett_dap_T_substrings = -1;
518 static gint ett_dap_T_strings = -1;
519 static gint ett_dap_T_strings_item = -1;
520 static gint ett_dap_MatchingRuleAssertion = -1;
521 static gint ett_dap_T_matchingRule = -1;
522 static gint ett_dap_PagedResultsRequest = -1;
523 static gint ett_dap_T_newRequest = -1;
524 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_SortKey = -1;
525 static gint ett_dap_SortKey = -1;
526 static gint ett_dap_SecurityParameters = -1;
527 static gint ett_dap_Time = -1;
528 static gint ett_dap_DirectoryBindArgument = -1;
529 static gint ett_dap_Credentials = -1;
530 static gint ett_dap_SimpleCredentials = -1;
531 static gint ett_dap_T_validity = -1;
532 static gint ett_dap_T_time1 = -1;
533 static gint ett_dap_T_time2 = -1;
534 static gint ett_dap_T_password = -1;
535 static gint ett_dap_T_protected = -1;
536 static gint ett_dap_StrongCredentials = -1;
537 static gint ett_dap_SpkmCredentials = -1;
538 static gint ett_dap_SaslCredentials = -1;
539 static gint ett_dap_TokenData = -1;
540 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier = -1;
541 static gint ett_dap_Token = -1;
542 static gint ett_dap_Versions = -1;
543 static gint ett_dap_DirectoryBindError = -1;
544 static gint ett_dap_T_signedDirectoryBindError = -1;
545 static gint ett_dap_DirectoryBindErrorData = -1;
546 static gint ett_dap_T_error = -1;
547 static gint ett_dap_ReadArgumentData = -1;
548 static gint ett_dap_Name = -1;
549 static gint ett_dap_ReadArgument = -1;
550 static gint ett_dap_T_signedReadArgument = -1;
551 static gint ett_dap_ReadResultData = -1;
552 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute = -1;
553 static gint ett_dap_ReadResult = -1;
554 static gint ett_dap_T_signedReadResult = -1;
555 static gint ett_dap_ModifyRights = -1;
556 static gint ett_dap_ModifyRights_item = -1;
557 static gint ett_dap_T_item = -1;
558 static gint ett_dap_T_permission = -1;
559 static gint ett_dap_CompareArgumentData = -1;
560 static gint ett_dap_CompareArgument = -1;
561 static gint ett_dap_T_signedCompareArgument = -1;
562 static gint ett_dap_CompareResultData = -1;
563 static gint ett_dap_CompareResult = -1;
564 static gint ett_dap_T_signedCompareResult = -1;
565 static gint ett_dap_AbandonArgumentData = -1;
566 static gint ett_dap_AbandonArgument = -1;
567 static gint ett_dap_T_signedAbandonArgument = -1;
568 static gint ett_dap_AbandonResultData = -1;
569 static gint ett_dap_AbandonResult = -1;
570 static gint ett_dap_AbandonInformation = -1;
571 static gint ett_dap_T_signedAbandonResult = -1;
572 static gint ett_dap_ListArgumentData = -1;
573 static gint ett_dap_ListArgument = -1;
574 static gint ett_dap_T_signedListArgument = -1;
575 static gint ett_dap_ListResultData = -1;
576 static gint ett_dap_T_listInfo = -1;
577 static gint ett_dap_T_subordinates = -1;
578 static gint ett_dap_T_subordinates_item = -1;
579 static gint ett_dap_SET_OF_ListResult = -1;
580 static gint ett_dap_ListResult = -1;
581 static gint ett_dap_T_signedListResult = -1;
582 static gint ett_dap_PartialOutcomeQualifier = -1;
583 static gint ett_dap_SET_SIZE_1_MAX_OF_ContinuationReference = -1;
584 static gint ett_dap_T_unknownErrors = -1;
585 static gint ett_dap_T_entryCount = -1;
586 static gint ett_dap_SearchArgumentData = -1;
587 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument = -1;
588 static gint ett_dap_SearchArgument = -1;
589 static gint ett_dap_T_signedSearchArgument = -1;
590 static gint ett_dap_HierarchySelections = -1;
591 static gint ett_dap_SearchControlOptions = -1;
592 static gint ett_dap_JoinArgument = -1;
593 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinAttPair = -1;
594 static gint ett_dap_JoinAttPair = -1;
595 static gint ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinContextType = -1;
596 static gint ett_dap_SearchResultData = -1;
597 static gint ett_dap_T_searchInfo = -1;
598 static gint ett_dap_SET_OF_EntryInformation = -1;
599 static gint ett_dap_SET_OF_SearchResult = -1;
600 static gint ett_dap_SearchResult = -1;
601 static gint ett_dap_T_signedSearchResult = -1;
602 static gint ett_dap_AddEntryArgumentData = -1;
603 static gint ett_dap_SET_OF_Attribute = -1;
604 static gint ett_dap_AddEntryArgument = -1;
605 static gint ett_dap_T_signedAddEntryArgument = -1;
606 static gint ett_dap_AddEntryResultData = -1;
607 static gint ett_dap_AddEntryResult = -1;
608 static gint ett_dap_AddEntryInformation = -1;
609 static gint ett_dap_T_signedAddEntryResult = -1;
610 static gint ett_dap_RemoveEntryArgumentData = -1;
611 static gint ett_dap_RemoveEntryArgument = -1;
612 static gint ett_dap_T_signedRemoveEntryArgument = -1;
613 static gint ett_dap_RemoveEntryResultData = -1;
614 static gint ett_dap_RemoveEntryResult = -1;
615 static gint ett_dap_RemoveEntryInformation = -1;
616 static gint ett_dap_T_signedRemoveEntryResult = -1;
617 static gint ett_dap_ModifyEntryArgumentData = -1;
618 static gint ett_dap_SEQUENCE_OF_EntryModification = -1;
619 static gint ett_dap_ModifyEntryArgument = -1;
620 static gint ett_dap_T_signedModifyEntryArgument = -1;
621 static gint ett_dap_ModifyEntryResultData = -1;
622 static gint ett_dap_ModifyEntryResult = -1;
623 static gint ett_dap_ModifyEntryInformation = -1;
624 static gint ett_dap_T_signedModifyEntryResult = -1;
625 static gint ett_dap_EntryModification = -1;
626 static gint ett_dap_ModifyDNArgument = -1;
627 static gint ett_dap_ModifyDNResultData = -1;
628 static gint ett_dap_ModifyDNResult = -1;
629 static gint ett_dap_ModifyDNInformation = -1;
630 static gint ett_dap_T_signedModifyDNResult = -1;
631 static gint ett_dap_AbandonedData = -1;
632 static gint ett_dap_Abandoned = -1;
633 static gint ett_dap_T_signedAbandoned = -1;
634 static gint ett_dap_AbandonFailedErrorData = -1;
635 static gint ett_dap_AbandonFailedError = -1;
636 static gint ett_dap_T_signedAbandonFailedError = -1;
637 static gint ett_dap_AttributeErrorData = -1;
638 static gint ett_dap_T_problems = -1;
639 static gint ett_dap_T_problems_item = -1;
640 static gint ett_dap_AttributeError = -1;
641 static gint ett_dap_T_signedAttributeError = -1;
642 static gint ett_dap_NameErrorData = -1;
643 static gint ett_dap_NameError = -1;
644 static gint ett_dap_T_signedNameError = -1;
645 static gint ett_dap_ReferralData = -1;
646 static gint ett_dap_Referral = -1;
647 static gint ett_dap_T_signedReferral = -1;
648 static gint ett_dap_SecurityErrorData = -1;
649 static gint ett_dap_SecurityError = -1;
650 static gint ett_dap_T_signedSecurityError = -1;
651 static gint ett_dap_ServiceErrorData = -1;
652 static gint ett_dap_ServiceError = -1;
653 static gint ett_dap_T_signedServiceError = -1;
654 static gint ett_dap_UpdateErrorData = -1;
655 static gint ett_dap_T_attributeInfo = -1;
656 static gint ett_dap_T_attributeInfo_item = -1;
657 static gint ett_dap_UpdateError = -1;
658 static gint ett_dap_T_signedUpdateError = -1;
660 /*--- End of included file: packet-dap-ett.c ---*/
661 #line 69 "../../asn1/dap/packet-dap-template.c"
664 /*--- Included file: packet-dap-val.h ---*/
665 #line 1 "../../asn1/dap/packet-dap-val.h"
666 #define id_opcode_read 1
667 #define id_opcode_compare 2
668 #define id_opcode_abandon 3
669 #define id_opcode_list 4
670 #define id_opcode_search 5
671 #define id_opcode_addEntry 6
672 #define id_opcode_removeEntry 7
673 #define id_opcode_modifyEntry 8
674 #define id_opcode_modifyDN 9
675 #define id_errcode_attributeError 1
676 #define id_errcode_nameError 2
677 #define id_errcode_serviceError 3
678 #define id_errcode_referral 4
679 #define id_errcode_abandoned 5
680 #define id_errcode_securityError 6
681 #define id_errcode_abandonFailed 7
682 #define id_errcode_updateError 8
683 #define id_errcode_dsaReferral 9
685 /*--- End of included file: packet-dap-val.h ---*/
686 #line 71 "../../asn1/dap/packet-dap-template.c"
689 /*--- Included file: packet-dap-table.c ---*/
690 #line 1 "../../asn1/dap/packet-dap-table.c"
692 /* DAP OPERATIONS */
693 const value_string dap_opr_code_string_vals[] = {
694 { op_ros_bind, "directoryBind" },
695 { id_opcode_read, "read" },
696 { id_opcode_compare, "compare" },
697 { id_opcode_abandon, "abandon" },
698 { id_opcode_list, "list" },
699 { id_opcode_search, "search" },
700 { id_opcode_addEntry, "addEntry" },
701 { id_opcode_removeEntry, "removeEntry" },
702 { id_opcode_modifyEntry, "modifyEntry" },
703 { id_opcode_modifyDN, "modifyDN" },
704 { 0, NULL }
708 /* DAP ERRORS */
709 static const value_string dap_err_code_string_vals[] = {
710 { err_ros_bind, "directoryBindError" },
711 { id_errcode_abandoned, "abandoned" },
712 { id_errcode_abandonFailed, "abandonFailed" },
713 { id_errcode_attributeError, "attributeError" },
714 { id_errcode_nameError, "nameError" },
715 { id_errcode_referral, "referral" },
716 { id_errcode_securityError, "securityError" },
717 { id_errcode_serviceError, "serviceError" },
718 { id_errcode_updateError, "updateError" },
719 { 0, NULL }
723 /*--- End of included file: packet-dap-table.c ---*/
724 #line 73 "../../asn1/dap/packet-dap-template.c"
727 /*--- Included file: packet-dap-fn.c ---*/
728 #line 1 "../../asn1/dap/packet-dap-fn.c"
729 /*--- Cyclic dependencies ---*/
731 /* FamilyEntries -> FamilyEntries/familyEntries -> FamilyEntry -> FamilyEntry/family-info -> FamilyEntries */
732 static int dissect_dap_FamilyEntries(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
734 /* Filter -> SetOfFilter -> Filter */
735 /* Filter -> Filter */
736 int dissect_dap_Filter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
738 /* ListResultData -> ListResultData/uncorrelatedListInfo -> ListResult -> ListResultData */
739 /* ListResultData -> ListResultData/uncorrelatedListInfo -> ListResult -> ListResult/signedListResult -> ListResultData */
740 static int dissect_dap_ListResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
742 /* SearchResultData -> SearchResultData/uncorrelatedSearchInfo -> SearchResult -> SearchResultData */
743 /* SearchResultData -> SearchResultData/uncorrelatedSearchInfo -> SearchResult -> SearchResult/signedSearchResult -> SearchResultData */
744 static int dissect_dap_SearchResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
748 const value_string dap_FamilyGrouping_vals[] = {
749 { 1, "entryOnly" },
750 { 2, "compoundEntry" },
751 { 3, "strands" },
752 { 4, "multiStrand" },
753 { 0, NULL }
758 dissect_dap_FamilyGrouping(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
759 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
760 NULL);
762 return offset;
766 static const asn_namedbit ServiceControlOptions_bits[] = {
767 { 0, &hf_dap_ServiceControlOptions_preferChaining, -1, -1, "preferChaining", NULL },
768 { 1, &hf_dap_ServiceControlOptions_chainingProhibited, -1, -1, "chainingProhibited", NULL },
769 { 2, &hf_dap_ServiceControlOptions_localScope, -1, -1, "localScope", NULL },
770 { 3, &hf_dap_ServiceControlOptions_dontUseCopy, -1, -1, "dontUseCopy", NULL },
771 { 4, &hf_dap_ServiceControlOptions_dontDereferenceAliases, -1, -1, "dontDereferenceAliases", NULL },
772 { 5, &hf_dap_ServiceControlOptions_subentries, -1, -1, "subentries", NULL },
773 { 6, &hf_dap_ServiceControlOptions_copyShallDo, -1, -1, "copyShallDo", NULL },
774 { 7, &hf_dap_ServiceControlOptions_partialNameResolution, -1, -1, "partialNameResolution", NULL },
775 { 8, &hf_dap_ServiceControlOptions_manageDSAIT, -1, -1, "manageDSAIT", NULL },
776 { 9, &hf_dap_ServiceControlOptions_noSubtypeMatch, -1, -1, "noSubtypeMatch", NULL },
777 { 10, &hf_dap_ServiceControlOptions_noSubtypeSelection, -1, -1, "noSubtypeSelection", NULL },
778 { 11, &hf_dap_ServiceControlOptions_countFamily, -1, -1, "countFamily", NULL },
779 { 12, &hf_dap_ServiceControlOptions_dontSelectFriends, -1, -1, "dontSelectFriends", NULL },
780 { 13, &hf_dap_ServiceControlOptions_dontMatchFriends, -1, -1, "dontMatchFriends", NULL },
781 { 0, NULL, 0, 0, NULL, NULL }
785 dissect_dap_ServiceControlOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
786 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
787 ServiceControlOptions_bits, hf_index, ett_dap_ServiceControlOptions,
788 NULL);
790 return offset;
794 static const value_string dap_T_priority_vals[] = {
795 { 0, "low" },
796 { 1, "medium" },
797 { 2, "high" },
798 { 0, NULL }
802 static int
803 dissect_dap_T_priority(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
804 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
805 NULL);
807 return offset;
812 static int
813 dissect_dap_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
814 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
815 NULL);
817 return offset;
821 static const value_string dap_T_scopeOfReferral_vals[] = {
822 { 0, "dmd" },
823 { 1, "country" },
824 { 0, NULL }
828 static int
829 dissect_dap_T_scopeOfReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
830 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
831 NULL);
833 return offset;
837 static const value_string dap_Name_vals[] = {
838 { 0, "rdnSequence" },
839 { 0, NULL }
842 static const ber_choice_t Name_choice[] = {
843 { 0, &hf_dap_rdnSequence , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_RDNSequence },
844 { 0, NULL, 0, 0, 0, NULL }
847 static int
848 dissect_dap_Name(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
849 const char *dn;
851 offset = dissect_ber_choice(actx, tree, tvb, offset,
852 Name_choice, hf_index, ett_dap_Name,
853 NULL);
856 dn = x509if_get_last_dn();
857 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", (dn && *dn) ? dn : "(root)");
860 return offset;
864 static const ber_sequence_t T_manageDSAITPlaneRef_sequence[] = {
865 { &hf_dap_dsaName , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
866 { &hf_dap_agreementID , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_disp_AgreementID },
867 { NULL, 0, 0, 0, NULL }
870 static int
871 dissect_dap_T_manageDSAITPlaneRef(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
872 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
873 T_manageDSAITPlaneRef_sequence, hf_index, ett_dap_T_manageDSAITPlaneRef);
875 return offset;
880 static int
881 dissect_dap_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
882 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
884 return offset;
888 static const ber_sequence_t ServiceControls_set[] = {
889 { &hf_dap_options , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControlOptions },
890 { &hf_dap_priority , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_T_priority },
891 { &hf_dap_timeLimit , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
892 { &hf_dap_sizeLimit , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
893 { &hf_dap_scopeOfReferral , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_T_scopeOfReferral },
894 { &hf_dap_attributeSizeLimit, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
895 { &hf_dap_manageDSAITPlaneRef, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_dap_T_manageDSAITPlaneRef },
896 { &hf_dap_serviceType , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_dap_OBJECT_IDENTIFIER },
897 { &hf_dap_userClass , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
898 { NULL, 0, 0, 0, NULL }
901 static int
902 dissect_dap_ServiceControls(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
903 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
904 ServiceControls_set, hf_index, ett_dap_ServiceControls);
906 return offset;
911 static int
912 dissect_dap_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
913 offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
915 return offset;
919 static const ber_sequence_t SET_OF_AttributeType_set_of[1] = {
920 { &hf_dap_select_item , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
923 static int
924 dissect_dap_SET_OF_AttributeType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
925 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
926 SET_OF_AttributeType_set_of, hf_index, ett_dap_SET_OF_AttributeType);
928 return offset;
932 static const value_string dap_T_attributes_vals[] = {
933 { 0, "allUserAttributes" },
934 { 1, "select" },
935 { 0, NULL }
938 static const ber_choice_t T_attributes_choice[] = {
939 { 0, &hf_dap_allUserAttributes, BER_CLASS_CON, 0, 0, dissect_dap_NULL },
940 { 1, &hf_dap_select , BER_CLASS_CON, 1, 0, dissect_dap_SET_OF_AttributeType },
941 { 0, NULL, 0, 0, 0, NULL }
944 static int
945 dissect_dap_T_attributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
946 offset = dissect_ber_choice(actx, tree, tvb, offset,
947 T_attributes_choice, hf_index, ett_dap_T_attributes,
948 NULL);
950 return offset;
954 static const value_string dap_T_infoTypes_vals[] = {
955 { 0, "attributeTypesOnly" },
956 { 1, "attributeTypesAndValues" },
957 { 0, NULL }
961 static int
962 dissect_dap_T_infoTypes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
963 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
964 NULL);
966 return offset;
970 static const ber_sequence_t SET_SIZE_1_MAX_OF_AttributeType_set_of[1] = {
971 { &hf_dap_extraSelect_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
974 static int
975 dissect_dap_SET_SIZE_1_MAX_OF_AttributeType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
976 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
977 SET_SIZE_1_MAX_OF_AttributeType_set_of, hf_index, ett_dap_SET_SIZE_1_MAX_OF_AttributeType);
979 return offset;
983 static const value_string dap_T_extraAttributes_vals[] = {
984 { 3, "allOperationalAttributes" },
985 { 4, "select" },
986 { 0, NULL }
989 static const ber_choice_t T_extraAttributes_choice[] = {
990 { 3, &hf_dap_allOperationalAttributes, BER_CLASS_CON, 3, 0, dissect_dap_NULL },
991 { 4, &hf_dap_extraSelect , BER_CLASS_CON, 4, 0, dissect_dap_SET_SIZE_1_MAX_OF_AttributeType },
992 { 0, NULL, 0, 0, 0, NULL }
995 static int
996 dissect_dap_T_extraAttributes(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
997 offset = dissect_ber_choice(actx, tree, tvb, offset,
998 T_extraAttributes_choice, hf_index, ett_dap_T_extraAttributes,
999 NULL);
1001 return offset;
1005 static const ber_sequence_t SEQUENCE_OF_ContextAssertion_sequence_of[1] = {
1006 { &hf_dap_preference_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_ContextAssertion },
1009 static int
1010 dissect_dap_SEQUENCE_OF_ContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1011 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1012 SEQUENCE_OF_ContextAssertion_sequence_of, hf_index, ett_dap_SEQUENCE_OF_ContextAssertion);
1014 return offset;
1018 static const ber_sequence_t SET_OF_ContextAssertion_set_of[1] = {
1019 { &hf_dap_all_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_ContextAssertion },
1022 static int
1023 dissect_dap_SET_OF_ContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1024 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1025 SET_OF_ContextAssertion_set_of, hf_index, ett_dap_SET_OF_ContextAssertion);
1027 return offset;
1031 static const value_string dap_T_contextAssertions_vals[] = {
1032 { 0, "preference" },
1033 { 1, "all" },
1034 { 0, NULL }
1037 static const ber_choice_t T_contextAssertions_choice[] = {
1038 { 0, &hf_dap_preference , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_SEQUENCE_OF_ContextAssertion },
1039 { 1, &hf_dap_all , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_SET_OF_ContextAssertion },
1040 { 0, NULL, 0, 0, 0, NULL }
1043 static int
1044 dissect_dap_T_contextAssertions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1045 offset = dissect_ber_choice(actx, tree, tvb, offset,
1046 T_contextAssertions_choice, hf_index, ett_dap_T_contextAssertions,
1047 NULL);
1049 return offset;
1053 static const ber_sequence_t TypeAndContextAssertion_sequence[] = {
1054 { &hf_dap_type , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
1055 { &hf_dap_contextAssertions, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_contextAssertions },
1056 { NULL, 0, 0, 0, NULL }
1059 static int
1060 dissect_dap_TypeAndContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1061 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1062 TypeAndContextAssertion_sequence, hf_index, ett_dap_TypeAndContextAssertion);
1064 return offset;
1068 static const ber_sequence_t SET_SIZE_1_MAX_OF_TypeAndContextAssertion_set_of[1] = {
1069 { &hf_dap_selectedContexts_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_TypeAndContextAssertion },
1072 static int
1073 dissect_dap_SET_SIZE_1_MAX_OF_TypeAndContextAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1074 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1075 SET_SIZE_1_MAX_OF_TypeAndContextAssertion_set_of, hf_index, ett_dap_SET_SIZE_1_MAX_OF_TypeAndContextAssertion);
1077 return offset;
1081 const value_string dap_ContextSelection_vals[] = {
1082 { 0, "allContexts" },
1083 { 1, "selectedContexts" },
1084 { 0, NULL }
1087 static const ber_choice_t ContextSelection_choice[] = {
1088 { 0, &hf_dap_allContexts , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_dap_NULL },
1089 { 1, &hf_dap_selectedContexts, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_SET_SIZE_1_MAX_OF_TypeAndContextAssertion },
1090 { 0, NULL, 0, 0, 0, NULL }
1094 dissect_dap_ContextSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1095 offset = dissect_ber_choice(actx, tree, tvb, offset,
1096 ContextSelection_choice, hf_index, ett_dap_ContextSelection,
1097 NULL);
1099 return offset;
1104 static int
1105 dissect_dap_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1106 offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
1108 return offset;
1112 static const value_string dap_T_memberSelect_vals[] = {
1113 { 1, "contributingEntriesOnly" },
1114 { 2, "participatingEntriesOnly" },
1115 { 3, "compoundEntry" },
1116 { 0, NULL }
1120 static int
1121 dissect_dap_T_memberSelect(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1122 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1123 NULL);
1125 return offset;
1129 static const ber_sequence_t T_familySelect_sequence_of[1] = {
1130 { &hf_dap_familySelect_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_dap_OBJECT_IDENTIFIER },
1133 static int
1134 dissect_dap_T_familySelect(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1135 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1136 T_familySelect_sequence_of, hf_index, ett_dap_T_familySelect);
1138 return offset;
1142 static const ber_sequence_t FamilyReturn_sequence[] = {
1143 { &hf_dap_memberSelect , BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_dap_T_memberSelect },
1144 { &hf_dap_familySelect , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_T_familySelect },
1145 { NULL, 0, 0, 0, NULL }
1149 dissect_dap_FamilyReturn(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1150 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1151 FamilyReturn_sequence, hf_index, ett_dap_FamilyReturn);
1153 return offset;
1157 static const ber_sequence_t EntryInformationSelection_set[] = {
1158 { &hf_dap_attributes , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_attributes },
1159 { &hf_dap_infoTypes , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_T_infoTypes },
1160 { &hf_dap_extraAttributes , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_extraAttributes },
1161 { &hf_dap_contextSelection, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
1162 { &hf_dap_returnContexts , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_BOOLEAN },
1163 { &hf_dap_familyReturn , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_FamilyReturn },
1164 { NULL, 0, 0, 0, NULL }
1167 static int
1168 dissect_dap_EntryInformationSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1169 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
1170 EntryInformationSelection_set, hf_index, ett_dap_EntryInformationSelection);
1172 return offset;
1176 static const value_string dap_EntryInformationItem_vals[] = {
1177 { 0, "attributeType" },
1178 { 1, "attribute" },
1179 { 0, NULL }
1182 static const ber_choice_t EntryInformationItem_choice[] = {
1183 { 0, &hf_dap_attributeType , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
1184 { 1, &hf_dap_attribute , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
1185 { 0, NULL, 0, 0, 0, NULL }
1188 static int
1189 dissect_dap_EntryInformationItem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1190 offset = dissect_ber_choice(actx, tree, tvb, offset,
1191 EntryInformationItem_choice, hf_index, ett_dap_EntryInformationItem,
1192 NULL);
1194 return offset;
1198 static const ber_sequence_t T_entry_information_set_of[1] = {
1199 { &hf_dap_entry_information_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_EntryInformationItem },
1202 static int
1203 dissect_dap_T_entry_information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1204 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1205 T_entry_information_set_of, hf_index, ett_dap_T_entry_information);
1207 return offset;
1211 static const ber_sequence_t EntryInformation_sequence[] = {
1212 { &hf_dap_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
1213 { &hf_dap_fromEntry , BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_BOOLEAN },
1214 { &hf_dap_entry_information, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_T_entry_information },
1215 { &hf_dap_incompleteEntry , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
1216 { &hf_dap_partialName , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
1217 { &hf_dap_derivedEntry , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
1218 { NULL, 0, 0, 0, NULL }
1221 static int
1222 dissect_dap_EntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1223 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1224 EntryInformation_sequence, hf_index, ett_dap_EntryInformation);
1226 return offset;
1230 static const value_string dap_T_family_information_item_vals[] = {
1231 { 0, "attributeType" },
1232 { 1, "attribute" },
1233 { 0, NULL }
1236 static const ber_choice_t T_family_information_item_choice[] = {
1237 { 0, &hf_dap_attributeType , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
1238 { 1, &hf_dap_attribute , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
1239 { 0, NULL, 0, 0, 0, NULL }
1242 static int
1243 dissect_dap_T_family_information_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1244 offset = dissect_ber_choice(actx, tree, tvb, offset,
1245 T_family_information_item_choice, hf_index, ett_dap_T_family_information_item,
1246 NULL);
1248 return offset;
1252 static const ber_sequence_t FamilyInformation_sequence_of[1] = {
1253 { &hf_dap_family_information_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_family_information_item },
1256 static int
1257 dissect_dap_FamilyInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1258 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1259 FamilyInformation_sequence_of, hf_index, ett_dap_FamilyInformation);
1261 return offset;
1265 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_FamilyEntries_sequence_of[1] = {
1266 { &hf_dap_family_info_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_FamilyEntries },
1269 static int
1270 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_FamilyEntries(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1271 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1272 SEQUENCE_SIZE_1_MAX_OF_FamilyEntries_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_FamilyEntries);
1274 return offset;
1278 static const ber_sequence_t FamilyEntry_sequence[] = {
1279 { &hf_dap_rdn , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x509if_RelativeDistinguishedName },
1280 { &hf_dap_family_information, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_FamilyInformation },
1281 { &hf_dap_family_info , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_FamilyEntries },
1282 { NULL, 0, 0, 0, NULL }
1285 static int
1286 dissect_dap_FamilyEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1287 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1288 FamilyEntry_sequence, hf_index, ett_dap_FamilyEntry);
1290 return offset;
1294 static const ber_sequence_t SEQUENCE_OF_FamilyEntry_sequence_of[1] = {
1295 { &hf_dap_familyEntries_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_FamilyEntry },
1298 static int
1299 dissect_dap_SEQUENCE_OF_FamilyEntry(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1300 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1301 SEQUENCE_OF_FamilyEntry_sequence_of, hf_index, ett_dap_SEQUENCE_OF_FamilyEntry);
1303 return offset;
1307 static const ber_sequence_t FamilyEntries_sequence[] = {
1308 { &hf_dap_family_class , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_dap_OBJECT_IDENTIFIER },
1309 { &hf_dap_familyEntries , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_SEQUENCE_OF_FamilyEntry },
1310 { NULL, 0, 0, 0, NULL }
1313 static int
1314 dissect_dap_FamilyEntries(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1315 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1316 FamilyEntries_sequence, hf_index, ett_dap_FamilyEntries);
1318 return offset;
1323 static int
1324 dissect_dap_T_initial(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1325 proto_item *it;
1326 it = proto_tree_add_item(tree, hf_index, tvb, offset, -1, ENC_BIG_ENDIAN);
1327 proto_item_append_text(it," XXX: Not yet implemented!");
1330 return offset;
1335 static int
1336 dissect_dap_T_any(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1337 /* XXX: not yet implemented */
1340 return offset;
1345 static int
1346 dissect_dap_T_final(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1347 /* XXX: not yet implemented */
1350 return offset;
1354 static const value_string dap_T_strings_item_vals[] = {
1355 { 0, "initial" },
1356 { 1, "any" },
1357 { 2, "final" },
1358 { 3, "control" },
1359 { 0, NULL }
1362 static const ber_choice_t T_strings_item_choice[] = {
1363 { 0, &hf_dap_initial , BER_CLASS_CON, 0, 0, dissect_dap_T_initial },
1364 { 1, &hf_dap_any , BER_CLASS_CON, 1, 0, dissect_dap_T_any },
1365 { 2, &hf_dap_final , BER_CLASS_CON, 2, 0, dissect_dap_T_final },
1366 { 3, &hf_dap_control , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
1367 { 0, NULL, 0, 0, 0, NULL }
1370 static int
1371 dissect_dap_T_strings_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1372 offset = dissect_ber_choice(actx, tree, tvb, offset,
1373 T_strings_item_choice, hf_index, ett_dap_T_strings_item,
1374 NULL);
1376 return offset;
1380 static const ber_sequence_t T_strings_sequence_of[1] = {
1381 { &hf_dap_strings_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_strings_item },
1384 static int
1385 dissect_dap_T_strings(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1386 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1387 T_strings_sequence_of, hf_index, ett_dap_T_strings);
1389 return offset;
1393 static const ber_sequence_t T_substrings_sequence[] = {
1394 { &hf_dap_sunstringType , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_dap_OBJECT_IDENTIFIER },
1395 { &hf_dap_strings , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_strings },
1396 { NULL, 0, 0, 0, NULL }
1399 static int
1400 dissect_dap_T_substrings(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1401 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1402 T_substrings_sequence, hf_index, ett_dap_T_substrings);
1404 return offset;
1408 static const ber_sequence_t T_matchingRule_set_of[1] = {
1409 { &hf_dap_matchingRule_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_dap_OBJECT_IDENTIFIER },
1412 static int
1413 dissect_dap_T_matchingRule(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1414 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1415 T_matchingRule_set_of, hf_index, ett_dap_T_matchingRule);
1417 return offset;
1422 static int
1423 dissect_dap_T_matchValue(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1424 /* XXX: not yet implemented */
1427 return offset;
1431 static const ber_sequence_t MatchingRuleAssertion_sequence[] = {
1432 { &hf_dap_matchingRule , BER_CLASS_CON, 1, 0, dissect_dap_T_matchingRule },
1433 { &hf_dap_type , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_x509if_AttributeType },
1434 { &hf_dap_matchValue , BER_CLASS_CON, 3, 0, dissect_dap_T_matchValue },
1435 { &hf_dap_dnAttributes , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
1436 { NULL, 0, 0, 0, NULL }
1439 static int
1440 dissect_dap_MatchingRuleAssertion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1441 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1442 MatchingRuleAssertion_sequence, hf_index, ett_dap_MatchingRuleAssertion);
1444 return offset;
1448 static const value_string dap_FilterItem_vals[] = {
1449 { 0, "equality" },
1450 { 1, "substrings" },
1451 { 2, "greaterOrEqual" },
1452 { 3, "lessOrEqual" },
1453 { 4, "present" },
1454 { 5, "approximateMatch" },
1455 { 6, "extensibleMatch" },
1456 { 7, "contextPresent" },
1457 { 0, NULL }
1460 static const ber_choice_t FilterItem_choice[] = {
1461 { 0, &hf_dap_equality , BER_CLASS_CON, 0, 0, dissect_x509if_AttributeValueAssertion },
1462 { 1, &hf_dap_substrings , BER_CLASS_CON, 1, 0, dissect_dap_T_substrings },
1463 { 2, &hf_dap_greaterOrEqual , BER_CLASS_CON, 2, 0, dissect_x509if_AttributeValueAssertion },
1464 { 3, &hf_dap_lessOrEqual , BER_CLASS_CON, 3, 0, dissect_x509if_AttributeValueAssertion },
1465 { 4, &hf_dap_present , BER_CLASS_CON, 4, 0, dissect_x509if_AttributeType },
1466 { 5, &hf_dap_approximateMatch, BER_CLASS_CON, 5, 0, dissect_x509if_AttributeValueAssertion },
1467 { 6, &hf_dap_extensibleMatch , BER_CLASS_CON, 6, 0, dissect_dap_MatchingRuleAssertion },
1468 { 7, &hf_dap_contextPresent , BER_CLASS_CON, 7, 0, dissect_x509if_AttributeTypeAssertion },
1469 { 0, NULL, 0, 0, 0, NULL }
1472 static int
1473 dissect_dap_FilterItem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1474 offset = dissect_ber_choice(actx, tree, tvb, offset,
1475 FilterItem_choice, hf_index, ett_dap_FilterItem,
1476 NULL);
1478 return offset;
1482 static const ber_sequence_t SetOfFilter_set_of[1] = {
1483 { &hf_dap_SetOfFilter_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_Filter },
1486 static int
1487 dissect_dap_SetOfFilter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1488 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1489 SetOfFilter_set_of, hf_index, ett_dap_SetOfFilter);
1491 return offset;
1495 const value_string dap_Filter_vals[] = {
1496 { 0, "item" },
1497 { 1, "and" },
1498 { 2, "or" },
1499 { 3, "not" },
1500 { 0, NULL }
1503 static const ber_choice_t Filter_choice[] = {
1504 { 0, &hf_dap_filter_item , BER_CLASS_CON, 0, 0, dissect_dap_FilterItem },
1505 { 1, &hf_dap_and , BER_CLASS_CON, 1, 0, dissect_dap_SetOfFilter },
1506 { 2, &hf_dap_or , BER_CLASS_CON, 2, 0, dissect_dap_SetOfFilter },
1507 { 3, &hf_dap_not , BER_CLASS_CON, 3, 0, dissect_dap_Filter },
1508 { 0, NULL, 0, 0, 0, NULL }
1512 dissect_dap_Filter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1513 offset = dissect_ber_choice(actx, tree, tvb, offset,
1514 Filter_choice, hf_index, ett_dap_Filter,
1515 NULL);
1517 return offset;
1521 static const ber_sequence_t SortKey_sequence[] = {
1522 { &hf_dap_type , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
1523 { &hf_dap_orderingRule , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_OBJECT_IDENTIFIER },
1524 { NULL, 0, 0, 0, NULL }
1527 static int
1528 dissect_dap_SortKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1529 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1530 SortKey_sequence, hf_index, ett_dap_SortKey);
1532 return offset;
1536 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_SortKey_sequence_of[1] = {
1537 { &hf_dap_sortKeys_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_SortKey },
1540 static int
1541 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_SortKey(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1542 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1543 SEQUENCE_SIZE_1_MAX_OF_SortKey_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_SortKey);
1545 return offset;
1549 static const ber_sequence_t T_newRequest_sequence[] = {
1550 { &hf_dap_pageSize , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_dap_INTEGER },
1551 { &hf_dap_sortKeys , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_SortKey },
1552 { &hf_dap_reverse , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
1553 { &hf_dap_unmerged , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
1554 { NULL, 0, 0, 0, NULL }
1557 static int
1558 dissect_dap_T_newRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1559 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1560 T_newRequest_sequence, hf_index, ett_dap_T_newRequest);
1562 return offset;
1567 static int
1568 dissect_dap_T_pagedResultsQueryReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1569 tvbuff_t *out_tvb;
1570 int i;
1571 int len;
1573 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1574 &out_tvb);
1577 if(out_tvb) {
1578 len = tvb_length(out_tvb);
1579 /* now see if we can add a string representation */
1580 for(i=0; i<len; i++)
1581 if(!g_ascii_isprint(tvb_get_guint8(out_tvb, i)))
1582 break;
1584 if(i == len) {
1585 if(actx->created_item) {
1587 proto_item_append_text(actx->created_item," (");
1588 for(i=0; i<len; i++)
1589 proto_item_append_text(actx->created_item,"%c",tvb_get_guint8(out_tvb,i));
1590 proto_item_append_text(actx->created_item,")");
1596 return offset;
1600 static const value_string dap_PagedResultsRequest_vals[] = {
1601 { 0, "newRequest" },
1602 { 1, "queryReference" },
1603 { 0, NULL }
1606 static const ber_choice_t PagedResultsRequest_choice[] = {
1607 { 0, &hf_dap_newRequest , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_newRequest },
1608 { 1, &hf_dap_pagedResultsQueryReference, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_T_pagedResultsQueryReference },
1609 { 0, NULL, 0, 0, 0, NULL }
1612 static int
1613 dissect_dap_PagedResultsRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1614 offset = dissect_ber_choice(actx, tree, tvb, offset,
1615 PagedResultsRequest_choice, hf_index, ett_dap_PagedResultsRequest,
1616 NULL);
1618 return offset;
1623 static int
1624 dissect_dap_UTCTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1625 offset = dissect_ber_UTCTime(implicit_tag, actx, tree, tvb, offset, hf_index);
1627 return offset;
1632 static int
1633 dissect_dap_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1634 offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
1636 return offset;
1640 static const value_string dap_Time_vals[] = {
1641 { 0, "utcTime" },
1642 { 1, "generalizedTime" },
1643 { 0, NULL }
1646 static const ber_choice_t Time_choice[] = {
1647 { 0, &hf_dap_utcTime , BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_dap_UTCTime },
1648 { 1, &hf_dap_generalizedTime , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_dap_GeneralizedTime },
1649 { 0, NULL, 0, 0, 0, NULL }
1652 static int
1653 dissect_dap_Time(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1654 offset = dissect_ber_choice(actx, tree, tvb, offset,
1655 Time_choice, hf_index, ett_dap_Time,
1656 NULL);
1658 return offset;
1663 static int
1664 dissect_dap_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1665 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1666 NULL, hf_index, -1,
1667 NULL);
1669 return offset;
1673 static const value_string dap_ProtectionRequest_vals[] = {
1674 { 0, "none" },
1675 { 1, "signed" },
1676 { 2, "encrypted" },
1677 { 3, "signed-encrypted" },
1678 { 0, NULL }
1682 static int
1683 dissect_dap_ProtectionRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1684 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1685 NULL);
1687 return offset;
1691 static const value_string dap_ErrorProtectionRequest_vals[] = {
1692 { 0, "none" },
1693 { 1, "signed" },
1694 { 2, "encrypted" },
1695 { 3, "signed-encrypted" },
1696 { 0, NULL }
1700 static int
1701 dissect_dap_ErrorProtectionRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1702 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1703 NULL);
1705 return offset;
1709 static const ber_sequence_t SecurityParameters_set[] = {
1710 { &hf_dap_certification_path, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_x509af_CertificationPath },
1711 { &hf_dap_distinguished_name, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
1712 { &hf_dap_time , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_Time },
1713 { &hf_dap_random , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
1714 { &hf_dap_target , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_ProtectionRequest },
1715 { &hf_dap_response , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
1716 { &hf_dap_operationCode , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_ros_Code },
1717 { &hf_dap_attributeCertificationPath, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_x509af_AttributeCertificationPath },
1718 { &hf_dap_errorProtection , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_dap_ErrorProtectionRequest },
1719 { &hf_dap_errorCode , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_ros_Code },
1720 { NULL, 0, 0, 0, NULL }
1724 dissect_dap_SecurityParameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1725 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
1726 SecurityParameters_set, hf_index, ett_dap_SecurityParameters);
1728 return offset;
1732 static const value_string dap_T_time1_vals[] = {
1733 { 0, "utc" },
1734 { 1, "gt" },
1735 { 0, NULL }
1738 static const ber_choice_t T_time1_choice[] = {
1739 { 0, &hf_dap_utc , BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_dap_UTCTime },
1740 { 1, &hf_dap_gt , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_dap_GeneralizedTime },
1741 { 0, NULL, 0, 0, 0, NULL }
1744 static int
1745 dissect_dap_T_time1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1746 offset = dissect_ber_choice(actx, tree, tvb, offset,
1747 T_time1_choice, hf_index, ett_dap_T_time1,
1748 NULL);
1750 return offset;
1754 static const value_string dap_T_time2_vals[] = {
1755 { 0, "utc" },
1756 { 1, "gt" },
1757 { 0, NULL }
1760 static const ber_choice_t T_time2_choice[] = {
1761 { 0, &hf_dap_utc , BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_dap_UTCTime },
1762 { 1, &hf_dap_gt , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_dap_GeneralizedTime },
1763 { 0, NULL, 0, 0, 0, NULL }
1766 static int
1767 dissect_dap_T_time2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1768 offset = dissect_ber_choice(actx, tree, tvb, offset,
1769 T_time2_choice, hf_index, ett_dap_T_time2,
1770 NULL);
1772 return offset;
1776 static const ber_sequence_t T_validity_set[] = {
1777 { &hf_dap_time1 , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_dap_T_time1 },
1778 { &hf_dap_time2 , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_T_time2 },
1779 { &hf_dap_random1 , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
1780 { &hf_dap_random2 , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
1781 { NULL, 0, 0, 0, NULL }
1784 static int
1785 dissect_dap_T_validity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1786 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
1787 T_validity_set, hf_index, ett_dap_T_validity);
1789 return offset;
1794 static int
1795 dissect_dap_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1796 offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1797 NULL);
1799 return offset;
1803 static const ber_sequence_t T_protected_sequence[] = {
1804 { &hf_dap_protectedPassword, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_OCTET_STRING },
1805 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
1806 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
1807 { NULL, 0, 0, 0, NULL }
1810 static int
1811 dissect_dap_T_protected(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1812 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1813 T_protected_sequence, hf_index, ett_dap_T_protected);
1815 return offset;
1819 static const value_string dap_T_password_vals[] = {
1820 { 0, "unprotected" },
1821 { 1, "protected" },
1822 { 0, NULL }
1825 static const ber_choice_t T_password_choice[] = {
1826 { 0, &hf_dap_unprotected , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_OCTET_STRING },
1827 { 1, &hf_dap_protected , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_protected },
1828 { 0, NULL, 0, 0, 0, NULL }
1831 static int
1832 dissect_dap_T_password(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1833 offset = dissect_ber_choice(actx, tree, tvb, offset,
1834 T_password_choice, hf_index, ett_dap_T_password,
1835 NULL);
1837 return offset;
1841 static const ber_sequence_t SimpleCredentials_sequence[] = {
1842 { &hf_dap_distinguished_name, BER_CLASS_CON, 0, 0, dissect_x509if_DistinguishedName },
1843 { &hf_dap_validity , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_T_validity },
1844 { &hf_dap_password , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_T_password },
1845 { NULL, 0, 0, 0, NULL }
1848 static int
1849 dissect_dap_SimpleCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1851 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1852 SimpleCredentials_sequence, hf_index, ett_dap_SimpleCredentials);
1855 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", x509if_get_last_dn());
1861 return offset;
1865 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier_sequence_of[1] = {
1866 { &hf_dap_bindIntAlgorithm_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
1869 static int
1870 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1871 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1872 SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier);
1874 return offset;
1879 static int
1880 dissect_dap_BindKeyInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1881 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
1882 NULL, hf_index, -1,
1883 NULL);
1885 return offset;
1889 static const ber_sequence_t TokenData_sequence[] = {
1890 { &hf_dap_algorithm , BER_CLASS_CON, 0, 0, dissect_x509af_AlgorithmIdentifier },
1891 { &hf_dap_distinguished_name, BER_CLASS_CON, 1, 0, dissect_x509if_DistinguishedName },
1892 { &hf_dap_utctime , BER_CLASS_CON, 2, 0, dissect_dap_UTCTime },
1893 { &hf_dap_random , BER_CLASS_CON, 3, 0, dissect_dap_BIT_STRING },
1894 { &hf_dap_response , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
1895 { &hf_dap_bindIntAlgorithm, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier },
1896 { &hf_dap_bindIntKeyInfo , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_dap_BindKeyInfo },
1897 { &hf_dap_bindConfAlgorithm, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier },
1898 { &hf_dap_bindConfKeyInfo , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_dap_BindKeyInfo },
1899 { NULL, 0, 0, 0, NULL }
1902 static int
1903 dissect_dap_TokenData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1904 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1905 TokenData_sequence, hf_index, ett_dap_TokenData);
1907 return offset;
1911 static const ber_sequence_t Token_sequence[] = {
1912 { &hf_dap_token_data , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_TokenData },
1913 { &hf_dap_algorithm_identifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
1914 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
1915 { NULL, 0, 0, 0, NULL }
1918 static int
1919 dissect_dap_Token(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1920 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1921 Token_sequence, hf_index, ett_dap_Token);
1923 return offset;
1927 static const ber_sequence_t StrongCredentials_set[] = {
1928 { &hf_dap_certification_path, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_x509af_CertificationPath },
1929 { &hf_dap_bind_token , BER_CLASS_CON, 1, 0, dissect_dap_Token },
1930 { &hf_dap_distinguished_name, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
1931 { &hf_dap_attributeCertificationPath, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_x509af_AttributeCertificationPath },
1932 { NULL, 0, 0, 0, NULL }
1935 static int
1936 dissect_dap_StrongCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1937 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
1938 StrongCredentials_set, hf_index, ett_dap_StrongCredentials);
1940 return offset;
1945 static int
1946 dissect_dap_EXTERNAL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1947 offset = dissect_ber_external_type(implicit_tag, tree, tvb, offset, actx, hf_index, NULL);
1949 return offset;
1954 static int
1955 dissect_dap_T_req(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1956 /* XXX: not yet implemented */
1959 return offset;
1964 static int
1965 dissect_dap_T_rep(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1966 /* XXX: not yet implemented */
1969 return offset;
1973 static const value_string dap_SpkmCredentials_vals[] = {
1974 { 0, "req" },
1975 { 1, "rep" },
1976 { 0, NULL }
1979 static const ber_choice_t SpkmCredentials_choice[] = {
1980 { 0, &hf_dap_req , BER_CLASS_CON, 0, 0, dissect_dap_T_req },
1981 { 1, &hf_dap_rep , BER_CLASS_CON, 1, 0, dissect_dap_T_rep },
1982 { 0, NULL, 0, 0, 0, NULL }
1985 static int
1986 dissect_dap_SpkmCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1987 offset = dissect_ber_choice(actx, tree, tvb, offset,
1988 SpkmCredentials_choice, hf_index, ett_dap_SpkmCredentials,
1989 NULL);
1991 return offset;
1995 static const ber_sequence_t SaslCredentials_sequence[] = {
1996 { &hf_dap_mechanism , BER_CLASS_CON, 0, 0, dissect_x509sat_DirectoryString },
1997 { &hf_dap_saslCredentials , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_OCTET_STRING },
1998 { &hf_dap_saslAbort , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
1999 { NULL, 0, 0, 0, NULL }
2002 static int
2003 dissect_dap_SaslCredentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2004 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2005 SaslCredentials_sequence, hf_index, ett_dap_SaslCredentials);
2007 return offset;
2011 static const value_string dap_Credentials_vals[] = {
2012 { 0, "simple" },
2013 { 1, "strong" },
2014 { 2, "externalProcedure" },
2015 { 3, "spkm" },
2016 { 4, "sasl" },
2017 { 0, NULL }
2020 static const ber_choice_t Credentials_choice[] = {
2021 { 0, &hf_dap_simple , BER_CLASS_CON, 0, 0, dissect_dap_SimpleCredentials },
2022 { 1, &hf_dap_strong , BER_CLASS_CON, 1, 0, dissect_dap_StrongCredentials },
2023 { 2, &hf_dap_externalProcedure, BER_CLASS_CON, 2, 0, dissect_dap_EXTERNAL },
2024 { 3, &hf_dap_spkm , BER_CLASS_CON, 3, 0, dissect_dap_SpkmCredentials },
2025 { 4, &hf_dap_sasl , BER_CLASS_CON, 4, 0, dissect_dap_SaslCredentials },
2026 { 0, NULL, 0, 0, 0, NULL }
2029 static int
2030 dissect_dap_Credentials(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2031 offset = dissect_ber_choice(actx, tree, tvb, offset,
2032 Credentials_choice, hf_index, ett_dap_Credentials,
2033 NULL);
2035 return offset;
2039 static const asn_namedbit Versions_bits[] = {
2040 { 0, &hf_dap_Versions_v1, -1, -1, "v1", NULL },
2041 { 1, &hf_dap_Versions_v2, -1, -1, "v2", NULL },
2042 { 0, NULL, 0, 0, NULL, NULL }
2045 static int
2046 dissect_dap_Versions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2047 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
2048 Versions_bits, hf_index, ett_dap_Versions,
2049 NULL);
2051 return offset;
2055 static const ber_sequence_t DirectoryBindArgument_set[] = {
2056 { &hf_dap_credentials , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_Credentials },
2057 { &hf_dap_versions , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_Versions },
2058 { NULL, 0, 0, 0, NULL }
2062 dissect_dap_DirectoryBindArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2064 guint32 len;
2066 /* check and see if this is an empty set */
2067 dissect_ber_length(actx->pinfo, tree, tvb, offset+1, &len, NULL);
2069 if(len == 0) {
2070 /* its an empty set - i.e anonymous (assuming version is DEFAULTed) */
2071 proto_tree_add_text(tree, tvb, offset, -1,"Anonymous");
2073 col_append_str(actx->pinfo->cinfo, COL_INFO, " anonymous");
2076 /* do the default thing */
2078 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2079 DirectoryBindArgument_set, hf_index, ett_dap_DirectoryBindArgument);
2083 return offset;
2088 static int
2089 dissect_dap_DirectoryBindResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2090 offset = dissect_dap_DirectoryBindArgument(implicit_tag, tvb, offset, actx, tree, hf_index);
2092 return offset;
2096 static const value_string dap_ServiceProblem_vals[] = {
2097 { 1, "busy" },
2098 { 2, "unavailable" },
2099 { 3, "unwillingToPerform" },
2100 { 4, "chainingRequired" },
2101 { 5, "unableToProceed" },
2102 { 6, "invalidReference" },
2103 { 7, "timeLimitExceeded" },
2104 { 8, "administrativeLimitExceeded" },
2105 { 9, "loopDetected" },
2106 { 10, "unavailableCriticalExtension" },
2107 { 11, "outOfScope" },
2108 { 12, "ditError" },
2109 { 13, "invalidQueryReference" },
2110 { 14, "requestedServiceNotAvailable" },
2111 { 15, "unsupportedMatchingUse" },
2112 { 16, "ambiguousKeyAttributes" },
2113 { 17, "saslBindInProgress" },
2114 { 0, NULL }
2118 static int
2119 dissect_dap_ServiceProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2120 guint32 problem;
2122 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2123 &problem);
2126 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_ServiceProblem_vals, "ServiceProblem(%d)"));
2129 return offset;
2133 const value_string dap_SecurityProblem_vals[] = {
2134 { 1, "inappropriateAuthentication" },
2135 { 2, "invalidCredentials" },
2136 { 3, "insufficientAccessRights" },
2137 { 4, "invalidSignature" },
2138 { 5, "protectionRequired" },
2139 { 6, "noInformation" },
2140 { 7, "blockedCredentials" },
2141 { 8, "invalidQOPMatch" },
2142 { 9, "spkmError" },
2143 { 0, NULL }
2148 dissect_dap_SecurityProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2149 guint32 problem;
2151 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2152 &problem);
2155 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_SecurityProblem_vals, "SecurityProblem(%d)"));
2158 return offset;
2162 static const value_string dap_T_error_vals[] = {
2163 { 1, "serviceError" },
2164 { 2, "securityError" },
2165 { 0, NULL }
2168 static const ber_choice_t T_error_choice[] = {
2169 { 1, &hf_dap_serviceProblem , BER_CLASS_CON, 1, 0, dissect_dap_ServiceProblem },
2170 { 2, &hf_dap_securityProblem , BER_CLASS_CON, 2, 0, dissect_dap_SecurityProblem },
2171 { 0, NULL, 0, 0, 0, NULL }
2174 static int
2175 dissect_dap_T_error(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2176 offset = dissect_ber_choice(actx, tree, tvb, offset,
2177 T_error_choice, hf_index, ett_dap_T_error,
2178 NULL);
2180 return offset;
2184 static const ber_sequence_t DirectoryBindErrorData_set[] = {
2185 { &hf_dap_versions , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_dap_Versions },
2186 { &hf_dap_error , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_error },
2187 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2188 { NULL, 0, 0, 0, NULL }
2191 static int
2192 dissect_dap_DirectoryBindErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2193 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2194 DirectoryBindErrorData_set, hf_index, ett_dap_DirectoryBindErrorData);
2196 return offset;
2200 static const ber_sequence_t T_signedDirectoryBindError_sequence[] = {
2201 { &hf_dap_directoryBindError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_DirectoryBindErrorData },
2202 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2203 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2204 { NULL, 0, 0, 0, NULL }
2207 static int
2208 dissect_dap_T_signedDirectoryBindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2209 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2210 T_signedDirectoryBindError_sequence, hf_index, ett_dap_T_signedDirectoryBindError);
2212 return offset;
2216 const value_string dap_DirectoryBindError_vals[] = {
2217 { 0, "unsignedDirectoryBindError" },
2218 { 1, "signedDirectoryBindError" },
2219 { 0, NULL }
2222 static const ber_choice_t DirectoryBindError_choice[] = {
2223 { 0, &hf_dap_unsignedDirectoryBindError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_DirectoryBindErrorData },
2224 { 1, &hf_dap_signedDirectoryBindError, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedDirectoryBindError },
2225 { 0, NULL, 0, 0, 0, NULL }
2229 dissect_dap_DirectoryBindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2230 offset = dissect_ber_choice(actx, tree, tvb, offset,
2231 DirectoryBindError_choice, hf_index, ett_dap_DirectoryBindError,
2232 NULL);
2234 return offset;
2238 static const ber_sequence_t ReadArgumentData_set[] = {
2239 { &hf_dap_object , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
2240 { &hf_dap_selection , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_EntryInformationSelection },
2241 { &hf_dap_modifyRightsRequest, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2242 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
2243 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2244 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
2245 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
2246 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
2247 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
2248 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
2249 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2250 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
2251 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2252 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
2253 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
2254 { NULL, 0, 0, 0, NULL }
2257 static int
2258 dissect_dap_ReadArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2259 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2260 ReadArgumentData_set, hf_index, ett_dap_ReadArgumentData);
2262 return offset;
2266 static const ber_sequence_t T_signedReadArgument_sequence[] = {
2267 { &hf_dap_readArgument , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ReadArgumentData },
2268 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2269 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2270 { NULL, 0, 0, 0, NULL }
2273 static int
2274 dissect_dap_T_signedReadArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2275 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2276 T_signedReadArgument_sequence, hf_index, ett_dap_T_signedReadArgument);
2278 return offset;
2282 const value_string dap_ReadArgument_vals[] = {
2283 { 0, "unsignedReadArgument" },
2284 { 1, "signedReadArgument" },
2285 { 0, NULL }
2288 static const ber_choice_t ReadArgument_choice[] = {
2289 { 0, &hf_dap_unsignedReadArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ReadArgumentData },
2290 { 1, &hf_dap_signedReadArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedReadArgument },
2291 { 0, NULL, 0, 0, 0, NULL }
2295 dissect_dap_ReadArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2296 offset = dissect_ber_choice(actx, tree, tvb, offset,
2297 ReadArgument_choice, hf_index, ett_dap_ReadArgument,
2298 NULL);
2300 return offset;
2304 static const value_string dap_T_item_vals[] = {
2305 { 0, "entry" },
2306 { 1, "attribute" },
2307 { 2, "value" },
2308 { 0, NULL }
2311 static const ber_choice_t T_item_choice[] = {
2312 { 0, &hf_dap_item_entry , BER_CLASS_CON, 0, 0, dissect_dap_NULL },
2313 { 1, &hf_dap_attribute_type , BER_CLASS_CON, 1, 0, dissect_x509if_AttributeType },
2314 { 2, &hf_dap_value_assertion , BER_CLASS_CON, 2, 0, dissect_x509if_AttributeValueAssertion },
2315 { 0, NULL, 0, 0, 0, NULL }
2318 static int
2319 dissect_dap_T_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2320 offset = dissect_ber_choice(actx, tree, tvb, offset,
2321 T_item_choice, hf_index, ett_dap_T_item,
2322 NULL);
2324 return offset;
2328 static const asn_namedbit T_permission_bits[] = {
2329 { 0, &hf_dap_T_permission_add, -1, -1, "add", NULL },
2330 { 1, &hf_dap_T_permission_remove, -1, -1, "remove", NULL },
2331 { 2, &hf_dap_T_permission_rename, -1, -1, "rename", NULL },
2332 { 3, &hf_dap_T_permission_move, -1, -1, "move", NULL },
2333 { 0, NULL, 0, 0, NULL, NULL }
2336 static int
2337 dissect_dap_T_permission(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2338 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
2339 T_permission_bits, hf_index, ett_dap_T_permission,
2340 NULL);
2342 return offset;
2346 static const ber_sequence_t ModifyRights_item_sequence[] = {
2347 { &hf_dap_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_item },
2348 { &hf_dap_permission , BER_CLASS_CON, 3, 0, dissect_dap_T_permission },
2349 { NULL, 0, 0, 0, NULL }
2352 static int
2353 dissect_dap_ModifyRights_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2354 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2355 ModifyRights_item_sequence, hf_index, ett_dap_ModifyRights_item);
2357 return offset;
2361 static const ber_sequence_t ModifyRights_set_of[1] = {
2362 { &hf_dap_ModifyRights_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyRights_item },
2365 static int
2366 dissect_dap_ModifyRights(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2367 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2368 ModifyRights_set_of, hf_index, ett_dap_ModifyRights);
2370 return offset;
2374 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_Attribute_sequence_of[1] = {
2375 { &hf_dap_notification_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
2378 static int
2379 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2380 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2381 SEQUENCE_SIZE_1_MAX_OF_Attribute_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute);
2383 return offset;
2387 static const ber_sequence_t ReadResultData_set[] = {
2388 { &hf_dap_entry , BER_CLASS_CON, 0, 0, dissect_dap_EntryInformation },
2389 { &hf_dap_modifyRights , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_ModifyRights },
2390 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2391 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
2392 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2393 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
2394 { NULL, 0, 0, 0, NULL }
2397 static int
2398 dissect_dap_ReadResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2399 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2400 ReadResultData_set, hf_index, ett_dap_ReadResultData);
2402 return offset;
2406 static const ber_sequence_t T_signedReadResult_sequence[] = {
2407 { &hf_dap_readResult , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ReadResultData },
2408 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2409 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2410 { NULL, 0, 0, 0, NULL }
2413 static int
2414 dissect_dap_T_signedReadResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2415 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2416 T_signedReadResult_sequence, hf_index, ett_dap_T_signedReadResult);
2418 return offset;
2422 const value_string dap_ReadResult_vals[] = {
2423 { 0, "unsignedReadResult" },
2424 { 1, "signedReadResult" },
2425 { 0, NULL }
2428 static const ber_choice_t ReadResult_choice[] = {
2429 { 0, &hf_dap_unsignedReadResult, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ReadResultData },
2430 { 1, &hf_dap_signedReadResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedReadResult },
2431 { 0, NULL, 0, 0, 0, NULL }
2435 dissect_dap_ReadResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2436 offset = dissect_ber_choice(actx, tree, tvb, offset,
2437 ReadResult_choice, hf_index, ett_dap_ReadResult,
2438 NULL);
2440 return offset;
2444 static const ber_sequence_t CompareArgumentData_set[] = {
2445 { &hf_dap_object , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
2446 { &hf_dap_purported , BER_CLASS_CON, 1, 0, dissect_x509if_AttributeValueAssertion },
2447 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
2448 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2449 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
2450 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
2451 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
2452 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
2453 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
2454 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2455 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
2456 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2457 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
2458 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
2459 { NULL, 0, 0, 0, NULL }
2462 static int
2463 dissect_dap_CompareArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2464 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2465 CompareArgumentData_set, hf_index, ett_dap_CompareArgumentData);
2467 return offset;
2471 static const ber_sequence_t T_signedCompareArgument_sequence[] = {
2472 { &hf_dap_compareArgument , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_CompareArgumentData },
2473 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2474 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2475 { NULL, 0, 0, 0, NULL }
2478 static int
2479 dissect_dap_T_signedCompareArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2480 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2481 T_signedCompareArgument_sequence, hf_index, ett_dap_T_signedCompareArgument);
2483 return offset;
2487 const value_string dap_CompareArgument_vals[] = {
2488 { 0, "unsignedCompareArgument" },
2489 { 1, "signedCompareArgument" },
2490 { 0, NULL }
2493 static const ber_choice_t CompareArgument_choice[] = {
2494 { 0, &hf_dap_unsignedCompareArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_CompareArgumentData },
2495 { 1, &hf_dap_signedCompareArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedCompareArgument },
2496 { 0, NULL, 0, 0, 0, NULL }
2500 dissect_dap_CompareArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2501 offset = dissect_ber_choice(actx, tree, tvb, offset,
2502 CompareArgument_choice, hf_index, ett_dap_CompareArgument,
2503 NULL);
2505 return offset;
2509 static const ber_sequence_t CompareResultData_set[] = {
2510 { &hf_dap_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
2511 { &hf_dap_matched , BER_CLASS_CON, 0, 0, dissect_dap_BOOLEAN },
2512 { &hf_dap_fromEntry , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2513 { &hf_dap_matchedSubtype , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_x509if_AttributeType },
2514 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2515 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
2516 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2517 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
2518 { NULL, 0, 0, 0, NULL }
2521 static int
2522 dissect_dap_CompareResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2523 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2524 CompareResultData_set, hf_index, ett_dap_CompareResultData);
2526 return offset;
2530 static const ber_sequence_t T_signedCompareResult_sequence[] = {
2531 { &hf_dap_compareResult , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_CompareResultData },
2532 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2533 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2534 { NULL, 0, 0, 0, NULL }
2537 static int
2538 dissect_dap_T_signedCompareResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2539 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2540 T_signedCompareResult_sequence, hf_index, ett_dap_T_signedCompareResult);
2542 return offset;
2546 const value_string dap_CompareResult_vals[] = {
2547 { 0, "unsignedCompareResult" },
2548 { 1, "signedCompareResult" },
2549 { 0, NULL }
2552 static const ber_choice_t CompareResult_choice[] = {
2553 { 0, &hf_dap_unsignedCompareResult, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_CompareResultData },
2554 { 1, &hf_dap_signedCompareResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedCompareResult },
2555 { 0, NULL, 0, 0, 0, NULL }
2559 dissect_dap_CompareResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2560 offset = dissect_ber_choice(actx, tree, tvb, offset,
2561 CompareResult_choice, hf_index, ett_dap_CompareResult,
2562 NULL);
2564 return offset;
2568 static const ber_sequence_t AbandonArgumentData_sequence[] = {
2569 { &hf_dap_invokeID , BER_CLASS_CON, 0, 0, dissect_ros_InvokeId },
2570 { NULL, 0, 0, 0, NULL }
2573 static int
2574 dissect_dap_AbandonArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2575 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2576 AbandonArgumentData_sequence, hf_index, ett_dap_AbandonArgumentData);
2578 return offset;
2582 static const ber_sequence_t T_signedAbandonArgument_sequence[] = {
2583 { &hf_dap_abandonArgument , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonArgumentData },
2584 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2585 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2586 { NULL, 0, 0, 0, NULL }
2589 static int
2590 dissect_dap_T_signedAbandonArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2591 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2592 T_signedAbandonArgument_sequence, hf_index, ett_dap_T_signedAbandonArgument);
2594 return offset;
2598 const value_string dap_AbandonArgument_vals[] = {
2599 { 0, "unsignedAbandonArgument" },
2600 { 1, "signedAbandonArgument" },
2601 { 0, NULL }
2604 static const ber_choice_t AbandonArgument_choice[] = {
2605 { 0, &hf_dap_unsignedAbandonArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonArgumentData },
2606 { 1, &hf_dap_signedAbandonArgument, BER_CLASS_CON, 0, 0, dissect_dap_T_signedAbandonArgument },
2607 { 0, NULL, 0, 0, 0, NULL }
2611 dissect_dap_AbandonArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2612 offset = dissect_ber_choice(actx, tree, tvb, offset,
2613 AbandonArgument_choice, hf_index, ett_dap_AbandonArgument,
2614 NULL);
2616 return offset;
2620 static const ber_sequence_t AbandonResultData_sequence[] = {
2621 { &hf_dap_invokeID , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_ros_InvokeId },
2622 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2623 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
2624 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2625 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
2626 { NULL, 0, 0, 0, NULL }
2629 static int
2630 dissect_dap_AbandonResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2631 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2632 AbandonResultData_sequence, hf_index, ett_dap_AbandonResultData);
2634 return offset;
2638 static const ber_sequence_t T_signedAbandonResult_sequence[] = {
2639 { &hf_dap_abandonResult , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonResultData },
2640 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2641 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2642 { NULL, 0, 0, 0, NULL }
2645 static int
2646 dissect_dap_T_signedAbandonResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2647 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2648 T_signedAbandonResult_sequence, hf_index, ett_dap_T_signedAbandonResult);
2650 return offset;
2654 static const value_string dap_AbandonInformation_vals[] = {
2655 { 0, "unsignedAbandonResult" },
2656 { 1, "signedAbandonResult" },
2657 { 0, NULL }
2660 static const ber_choice_t AbandonInformation_choice[] = {
2661 { 0, &hf_dap_unsignedAbandonResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonResultData },
2662 { 1, &hf_dap_signedAbandonResult, BER_CLASS_CON, 0, 0, dissect_dap_T_signedAbandonResult },
2663 { 0, NULL, 0, 0, 0, NULL }
2666 static int
2667 dissect_dap_AbandonInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2668 offset = dissect_ber_choice(actx, tree, tvb, offset,
2669 AbandonInformation_choice, hf_index, ett_dap_AbandonInformation,
2670 NULL);
2672 return offset;
2676 const value_string dap_AbandonResult_vals[] = {
2677 { 0, "null" },
2678 { 1, "information" },
2679 { 0, NULL }
2682 static const ber_choice_t AbandonResult_choice[] = {
2683 { 0, &hf_dap_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_dap_NULL },
2684 { 1, &hf_dap_abandon_information, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonInformation },
2685 { 0, NULL, 0, 0, 0, NULL }
2689 dissect_dap_AbandonResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2690 offset = dissect_ber_choice(actx, tree, tvb, offset,
2691 AbandonResult_choice, hf_index, ett_dap_AbandonResult,
2692 NULL);
2694 return offset;
2698 static const ber_sequence_t ListArgumentData_set[] = {
2699 { &hf_dap_object , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
2700 { &hf_dap_pagedResults , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_PagedResultsRequest },
2701 { &hf_dap_listFamily , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2702 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
2703 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2704 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
2705 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
2706 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
2707 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
2708 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
2709 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2710 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
2711 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2712 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
2713 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
2714 { NULL, 0, 0, 0, NULL }
2717 static int
2718 dissect_dap_ListArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2719 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2720 ListArgumentData_set, hf_index, ett_dap_ListArgumentData);
2722 return offset;
2726 static const ber_sequence_t T_signedListArgument_sequence[] = {
2727 { &hf_dap_listArgument , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ListArgumentData },
2728 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2729 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2730 { NULL, 0, 0, 0, NULL }
2733 static int
2734 dissect_dap_T_signedListArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2735 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2736 T_signedListArgument_sequence, hf_index, ett_dap_T_signedListArgument);
2738 return offset;
2742 const value_string dap_ListArgument_vals[] = {
2743 { 0, "unsignedListArgument" },
2744 { 1, "signedListArgument" },
2745 { 0, NULL }
2748 static const ber_choice_t ListArgument_choice[] = {
2749 { 0, &hf_dap_unsignedListArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ListArgumentData },
2750 { 1, &hf_dap_signedListArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedListArgument },
2751 { 0, NULL, 0, 0, 0, NULL }
2755 dissect_dap_ListArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2756 offset = dissect_ber_choice(actx, tree, tvb, offset,
2757 ListArgument_choice, hf_index, ett_dap_ListArgument,
2758 NULL);
2760 return offset;
2764 static const ber_sequence_t T_subordinates_item_sequence[] = {
2765 { &hf_dap_rdn , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x509if_RelativeDistinguishedName },
2766 { &hf_dap_aliasEntry , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2767 { &hf_dap_fromEntry , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2768 { NULL, 0, 0, 0, NULL }
2771 static int
2772 dissect_dap_T_subordinates_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2773 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2774 T_subordinates_item_sequence, hf_index, ett_dap_T_subordinates_item);
2776 return offset;
2780 static const ber_sequence_t T_subordinates_set_of[1] = {
2781 { &hf_dap_subordinates_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_subordinates_item },
2784 static int
2785 dissect_dap_T_subordinates(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2786 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2787 T_subordinates_set_of, hf_index, ett_dap_T_subordinates);
2789 return offset;
2793 static const value_string dap_LimitProblem_vals[] = {
2794 { 0, "timeLimitExceeded" },
2795 { 1, "sizeLimitExceeded" },
2796 { 2, "administrativeLimitExceeded" },
2797 { 0, NULL }
2801 static int
2802 dissect_dap_LimitProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2803 guint32 problem;
2805 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2806 &problem);
2809 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_LimitProblem_vals, "LimitProblem(%d)"));
2812 return offset;
2816 static const ber_sequence_t SET_SIZE_1_MAX_OF_ContinuationReference_set_of[1] = {
2817 { &hf_dap_unexplored_item , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dsp_ContinuationReference },
2820 static int
2821 dissect_dap_SET_SIZE_1_MAX_OF_ContinuationReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2822 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2823 SET_SIZE_1_MAX_OF_ContinuationReference_set_of, hf_index, ett_dap_SET_SIZE_1_MAX_OF_ContinuationReference);
2825 return offset;
2829 static const ber_sequence_t T_unknownErrors_set_of[1] = {
2830 { &hf_dap_unknownErrors_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_dap_OBJECT_IDENTIFIER },
2833 static int
2834 dissect_dap_T_unknownErrors(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2835 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2836 T_unknownErrors_set_of, hf_index, ett_dap_T_unknownErrors);
2838 return offset;
2842 static const value_string dap_T_entryCount_vals[] = {
2843 { 7, "bestEstimate" },
2844 { 8, "lowEstimate" },
2845 { 9, "exact" },
2846 { 0, NULL }
2849 static const ber_choice_t T_entryCount_choice[] = {
2850 { 7, &hf_dap_bestEstimate , BER_CLASS_CON, 7, 0, dissect_dap_INTEGER },
2851 { 8, &hf_dap_lowEstimate , BER_CLASS_CON, 8, 0, dissect_dap_INTEGER },
2852 { 9, &hf_dap_exact , BER_CLASS_CON, 9, 0, dissect_dap_INTEGER },
2853 { 0, NULL, 0, 0, 0, NULL }
2856 static int
2857 dissect_dap_T_entryCount(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2858 offset = dissect_ber_choice(actx, tree, tvb, offset,
2859 T_entryCount_choice, hf_index, ett_dap_T_entryCount,
2860 NULL);
2862 return offset;
2866 static const ber_sequence_t PartialOutcomeQualifier_set[] = {
2867 { &hf_dap_limitProblem , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_dap_LimitProblem },
2868 { &hf_dap_unexplored , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_SET_SIZE_1_MAX_OF_ContinuationReference },
2869 { &hf_dap_unavailableCriticalExtensions, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2870 { &hf_dap_unknownErrors , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_dap_T_unknownErrors },
2871 { &hf_dap_queryReference , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_OCTET_STRING },
2872 { &hf_dap_overspecFilter , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_Filter },
2873 { &hf_dap_notification , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
2874 { &hf_dap_entryCount , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_entryCount },
2875 { &hf_dap_streamedResult , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2876 { NULL, 0, 0, 0, NULL }
2879 static int
2880 dissect_dap_PartialOutcomeQualifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2881 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2882 PartialOutcomeQualifier_set, hf_index, ett_dap_PartialOutcomeQualifier);
2884 return offset;
2888 static const ber_sequence_t T_listInfo_set[] = {
2889 { &hf_dap_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
2890 { &hf_dap_subordinates , BER_CLASS_CON, 1, 0, dissect_dap_T_subordinates },
2891 { &hf_dap_partialOutcomeQualifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_PartialOutcomeQualifier },
2892 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
2893 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
2894 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
2895 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
2896 { NULL, 0, 0, 0, NULL }
2899 static int
2900 dissect_dap_T_listInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2901 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
2902 T_listInfo_set, hf_index, ett_dap_T_listInfo);
2904 return offset;
2908 static const ber_sequence_t T_signedListResult_sequence[] = {
2909 { &hf_dap_listResult , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_ListResultData },
2910 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
2911 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
2912 { NULL, 0, 0, 0, NULL }
2915 static int
2916 dissect_dap_T_signedListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2917 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2918 T_signedListResult_sequence, hf_index, ett_dap_T_signedListResult);
2920 return offset;
2924 const value_string dap_ListResult_vals[] = {
2925 { 0, "unsignedListResult" },
2926 { 1, "signedListResult" },
2927 { 0, NULL }
2930 static const ber_choice_t ListResult_choice[] = {
2931 { 0, &hf_dap_unsignedListResult, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_dap_ListResultData },
2932 { 1, &hf_dap_signedListResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedListResult },
2933 { 0, NULL, 0, 0, 0, NULL }
2937 dissect_dap_ListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2938 offset = dissect_ber_choice(actx, tree, tvb, offset,
2939 ListResult_choice, hf_index, ett_dap_ListResult,
2940 NULL);
2942 return offset;
2946 static const ber_sequence_t SET_OF_ListResult_set_of[1] = {
2947 { &hf_dap_uncorrelatedListInfo_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_ListResult },
2950 static int
2951 dissect_dap_SET_OF_ListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2952 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
2953 SET_OF_ListResult_set_of, hf_index, ett_dap_SET_OF_ListResult);
2955 return offset;
2959 static const value_string dap_ListResultData_vals[] = {
2960 { 0, "listInfo" },
2961 { 1, "uncorrelatedListInfo" },
2962 { 0, NULL }
2965 static const ber_choice_t ListResultData_choice[] = {
2966 { 0, &hf_dap_listInfo , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_T_listInfo },
2967 { 1, &hf_dap_uncorrelatedListInfo, BER_CLASS_CON, 0, 0, dissect_dap_SET_OF_ListResult },
2968 { 0, NULL, 0, 0, 0, NULL }
2971 static int
2972 dissect_dap_ListResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2973 offset = dissect_ber_choice(actx, tree, tvb, offset,
2974 ListResultData_choice, hf_index, ett_dap_ListResultData,
2975 NULL);
2977 return offset;
2981 static const value_string dap_T_subset_vals[] = {
2982 { 0, "baseObject" },
2983 { 1, "oneLevel" },
2984 { 2, "wholeSubtree" },
2985 { 0, NULL }
2989 static int
2990 dissect_dap_T_subset(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2991 guint32 subset;
2993 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2994 &subset);
2997 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", val_to_str(subset, dap_T_subset_vals, "Subset(%d)"));
3001 return offset;
3005 static const asn_namedbit HierarchySelections_bits[] = {
3006 { 0, &hf_dap_HierarchySelections_self, -1, -1, "self", NULL },
3007 { 1, &hf_dap_HierarchySelections_children, -1, -1, "children", NULL },
3008 { 2, &hf_dap_HierarchySelections_parent, -1, -1, "parent", NULL },
3009 { 3, &hf_dap_HierarchySelections_hierarchy, -1, -1, "hierarchy", NULL },
3010 { 4, &hf_dap_HierarchySelections_top, -1, -1, "top", NULL },
3011 { 5, &hf_dap_HierarchySelections_subtree, -1, -1, "subtree", NULL },
3012 { 6, &hf_dap_HierarchySelections_siblings, -1, -1, "siblings", NULL },
3013 { 7, &hf_dap_HierarchySelections_siblingChildren, -1, -1, "siblingChildren", NULL },
3014 { 8, &hf_dap_HierarchySelections_siblingSubtree, -1, -1, "siblingSubtree", NULL },
3015 { 9, &hf_dap_HierarchySelections_all, -1, -1, "all", NULL },
3016 { 0, NULL, 0, 0, NULL, NULL }
3020 dissect_dap_HierarchySelections(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3021 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3022 HierarchySelections_bits, hf_index, ett_dap_HierarchySelections,
3023 NULL);
3025 return offset;
3029 static const asn_namedbit SearchControlOptions_bits[] = {
3030 { 0, &hf_dap_SearchControlOptions_searchAliases, -1, -1, "searchAliases", NULL },
3031 { 1, &hf_dap_SearchControlOptions_matchedValuesOnly, -1, -1, "matchedValuesOnly", NULL },
3032 { 2, &hf_dap_SearchControlOptions_checkOverspecified, -1, -1, "checkOverspecified", NULL },
3033 { 3, &hf_dap_SearchControlOptions_performExactly, -1, -1, "performExactly", NULL },
3034 { 4, &hf_dap_SearchControlOptions_includeAllAreas, -1, -1, "includeAllAreas", NULL },
3035 { 5, &hf_dap_SearchControlOptions_noSystemRelaxation, -1, -1, "noSystemRelaxation", NULL },
3036 { 6, &hf_dap_SearchControlOptions_dnAttribute, -1, -1, "dnAttribute", NULL },
3037 { 7, &hf_dap_SearchControlOptions_matchOnResidualName, -1, -1, "matchOnResidualName", NULL },
3038 { 8, &hf_dap_SearchControlOptions_entryCount, -1, -1, "entryCount", NULL },
3039 { 9, &hf_dap_SearchControlOptions_useSubset, -1, -1, "useSubset", NULL },
3040 { 10, &hf_dap_SearchControlOptions_separateFamilyMembers, -1, -1, "separateFamilyMembers", NULL },
3041 { 11, &hf_dap_SearchControlOptions_searchFamily, -1, -1, "searchFamily", NULL },
3042 { 0, NULL, 0, 0, NULL, NULL }
3046 dissect_dap_SearchControlOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3047 offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3048 SearchControlOptions_bits, hf_index, ett_dap_SearchControlOptions,
3049 NULL);
3051 return offset;
3056 static int
3057 dissect_dap_DomainLocalID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3058 offset = dissect_x509sat_DirectoryString(implicit_tag, tvb, offset, actx, tree, hf_index);
3060 return offset;
3064 static const value_string dap_T_joinSubset_vals[] = {
3065 { 0, "baseObject" },
3066 { 1, "oneLevel" },
3067 { 2, "wholeSubtree" },
3068 { 0, NULL }
3072 static int
3073 dissect_dap_T_joinSubset(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3074 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3075 NULL);
3077 return offset;
3082 static int
3083 dissect_dap_JoinContextType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3084 offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
3086 return offset;
3090 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_JoinContextType_sequence_of[1] = {
3091 { &hf_dap_joinContext_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_dap_JoinContextType },
3094 static int
3095 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinContextType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3096 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3097 SEQUENCE_SIZE_1_MAX_OF_JoinContextType_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinContextType);
3099 return offset;
3103 static const ber_sequence_t JoinAttPair_sequence[] = {
3104 { &hf_dap_baseAtt , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
3105 { &hf_dap_joinAtt , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
3106 { &hf_dap_joinContext , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinContextType },
3107 { NULL, 0, 0, 0, NULL }
3110 static int
3111 dissect_dap_JoinAttPair(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3112 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3113 JoinAttPair_sequence, hf_index, ett_dap_JoinAttPair);
3115 return offset;
3119 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_JoinAttPair_sequence_of[1] = {
3120 { &hf_dap_joinAttributes_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_JoinAttPair },
3123 static int
3124 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinAttPair(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3125 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3126 SEQUENCE_SIZE_1_MAX_OF_JoinAttPair_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinAttPair);
3128 return offset;
3132 static const ber_sequence_t JoinArgument_sequence[] = {
3133 { &hf_dap_joinBaseObject , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
3134 { &hf_dap_domainLocalID , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_DomainLocalID },
3135 { &hf_dap_joinSubset , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_T_joinSubset },
3136 { &hf_dap_joinFilter , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_Filter },
3137 { &hf_dap_joinAttributes , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinAttPair },
3138 { &hf_dap_joinSelection , BER_CLASS_CON, 5, 0, dissect_dap_EntryInformationSelection },
3139 { NULL, 0, 0, 0, NULL }
3142 static int
3143 dissect_dap_JoinArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3144 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3145 JoinArgument_sequence, hf_index, ett_dap_JoinArgument);
3147 return offset;
3151 static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_JoinArgument_sequence_of[1] = {
3152 { &hf_dap_joinArguments_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_JoinArgument },
3155 static int
3156 dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3157 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3158 SEQUENCE_SIZE_1_MAX_OF_JoinArgument_sequence_of, hf_index, ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument);
3160 return offset;
3164 static const value_string dap_T_joinType_vals[] = {
3165 { 0, "innerJoin" },
3166 { 1, "leftOuterJoin" },
3167 { 2, "fullOuterJoin" },
3168 { 0, NULL }
3172 static int
3173 dissect_dap_T_joinType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3174 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3175 NULL);
3177 return offset;
3181 static const ber_sequence_t SearchArgumentData_set[] = {
3182 { &hf_dap_baseObject , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
3183 { &hf_dap_subset , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_T_subset },
3184 { &hf_dap_filter , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_Filter },
3185 { &hf_dap_searchAliases , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3186 { &hf_dap_selection , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_dap_EntryInformationSelection },
3187 { &hf_dap_pagedResults , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_PagedResultsRequest },
3188 { &hf_dap_matchedValuesOnly, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3189 { &hf_dap_extendedFilter , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_Filter },
3190 { &hf_dap_checkOverspecified, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3191 { &hf_dap_relaxation , BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_x509if_RelaxationPolicy },
3192 { &hf_dap_extendedArea , BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
3193 { &hf_dap_hierarchySelections, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_dap_HierarchySelections },
3194 { &hf_dap_searchControlOptions, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL, dissect_dap_SearchControlOptions },
3195 { &hf_dap_joinArguments , BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument },
3196 { &hf_dap_joinType , BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL, dissect_dap_T_joinType },
3197 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
3198 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3199 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3200 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
3201 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
3202 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
3203 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
3204 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3205 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
3206 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3207 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
3208 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
3209 { NULL, 0, 0, 0, NULL }
3212 static int
3213 dissect_dap_SearchArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3214 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
3215 SearchArgumentData_set, hf_index, ett_dap_SearchArgumentData);
3217 return offset;
3221 static const ber_sequence_t T_signedSearchArgument_sequence[] = {
3222 { &hf_dap_searchArgument , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_SearchArgumentData },
3223 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3224 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3225 { NULL, 0, 0, 0, NULL }
3228 static int
3229 dissect_dap_T_signedSearchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3230 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3231 T_signedSearchArgument_sequence, hf_index, ett_dap_T_signedSearchArgument);
3233 return offset;
3237 const value_string dap_SearchArgument_vals[] = {
3238 { 0, "unsignedSearchArgument" },
3239 { 1, "signedSearchArgument" },
3240 { 0, NULL }
3243 static const ber_choice_t SearchArgument_choice[] = {
3244 { 0, &hf_dap_unsignedSearchArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_SearchArgumentData },
3245 { 1, &hf_dap_signedSearchArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedSearchArgument },
3246 { 0, NULL, 0, 0, 0, NULL }
3250 dissect_dap_SearchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3251 offset = dissect_ber_choice(actx, tree, tvb, offset,
3252 SearchArgument_choice, hf_index, ett_dap_SearchArgument,
3253 NULL);
3255 return offset;
3259 static const ber_sequence_t SET_OF_EntryInformation_set_of[1] = {
3260 { &hf_dap_entries_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_EntryInformation },
3263 static int
3264 dissect_dap_SET_OF_EntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3265 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3266 SET_OF_EntryInformation_set_of, hf_index, ett_dap_SET_OF_EntryInformation);
3268 return offset;
3272 static const ber_sequence_t T_searchInfo_set[] = {
3273 { &hf_dap_name , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
3274 { &hf_dap_entries , BER_CLASS_CON, 0, 0, dissect_dap_SET_OF_EntryInformation },
3275 { &hf_dap_partialOutcomeQualifier, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_PartialOutcomeQualifier },
3276 { &hf_dap_altMatching , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3277 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3278 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3279 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3280 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
3281 { NULL, 0, 0, 0, NULL }
3284 static int
3285 dissect_dap_T_searchInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3286 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
3287 T_searchInfo_set, hf_index, ett_dap_T_searchInfo);
3289 return offset;
3293 static const ber_sequence_t T_signedSearchResult_sequence[] = {
3294 { &hf_dap_searchResult , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_SearchResultData },
3295 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3296 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3297 { NULL, 0, 0, 0, NULL }
3300 static int
3301 dissect_dap_T_signedSearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3302 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3303 T_signedSearchResult_sequence, hf_index, ett_dap_T_signedSearchResult);
3305 return offset;
3309 const value_string dap_SearchResult_vals[] = {
3310 { 0, "unsignedSearchResult" },
3311 { 1, "signedSearchResult" },
3312 { 0, NULL }
3315 static const ber_choice_t SearchResult_choice[] = {
3316 { 0, &hf_dap_unsignedSearchResult, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_dap_SearchResultData },
3317 { 1, &hf_dap_signedSearchResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedSearchResult },
3318 { 0, NULL, 0, 0, 0, NULL }
3322 dissect_dap_SearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3323 offset = dissect_ber_choice(actx, tree, tvb, offset,
3324 SearchResult_choice, hf_index, ett_dap_SearchResult,
3325 NULL);
3327 return offset;
3331 static const ber_sequence_t SET_OF_SearchResult_set_of[1] = {
3332 { &hf_dap_uncorrelatedSearchInfo_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_SearchResult },
3335 static int
3336 dissect_dap_SET_OF_SearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3337 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3338 SET_OF_SearchResult_set_of, hf_index, ett_dap_SET_OF_SearchResult);
3340 return offset;
3344 static const value_string dap_SearchResultData_vals[] = {
3345 { 0, "searchInfo" },
3346 { 1, "uncorrelatedSearchInfo" },
3347 { 0, NULL }
3350 static const ber_choice_t SearchResultData_choice[] = {
3351 { 0, &hf_dap_searchInfo , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_T_searchInfo },
3352 { 1, &hf_dap_uncorrelatedSearchInfo, BER_CLASS_CON, 0, 0, dissect_dap_SET_OF_SearchResult },
3353 { 0, NULL, 0, 0, 0, NULL }
3356 static int
3357 dissect_dap_SearchResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3358 offset = dissect_ber_choice(actx, tree, tvb, offset,
3359 SearchResultData_choice, hf_index, ett_dap_SearchResultData,
3360 NULL);
3362 return offset;
3366 static const ber_sequence_t SET_OF_Attribute_set_of[1] = {
3367 { &hf_dap_add_entry_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
3370 static int
3371 dissect_dap_SET_OF_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3372 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3373 SET_OF_Attribute_set_of, hf_index, ett_dap_SET_OF_Attribute);
3375 return offset;
3379 static const ber_sequence_t AddEntryArgumentData_set[] = {
3380 { &hf_dap_object , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
3381 { &hf_dap_add_entry , BER_CLASS_CON, 1, 0, dissect_dap_SET_OF_Attribute },
3382 { &hf_dap_targetSystem , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dsp_AccessPoint },
3383 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
3384 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3385 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3386 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
3387 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
3388 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
3389 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
3390 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3391 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
3392 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3393 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
3394 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
3395 { NULL, 0, 0, 0, NULL }
3398 static int
3399 dissect_dap_AddEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3400 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
3401 AddEntryArgumentData_set, hf_index, ett_dap_AddEntryArgumentData);
3403 return offset;
3407 static const ber_sequence_t T_signedAddEntryArgument_sequence[] = {
3408 { &hf_dap_addEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AddEntryArgumentData },
3409 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3410 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3411 { NULL, 0, 0, 0, NULL }
3414 static int
3415 dissect_dap_T_signedAddEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3416 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3417 T_signedAddEntryArgument_sequence, hf_index, ett_dap_T_signedAddEntryArgument);
3419 return offset;
3423 const value_string dap_AddEntryArgument_vals[] = {
3424 { 0, "unsignedAddEntryArgument" },
3425 { 1, "signedAddEntryArgument" },
3426 { 0, NULL }
3429 static const ber_choice_t AddEntryArgument_choice[] = {
3430 { 0, &hf_dap_unsignedAddEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AddEntryArgumentData },
3431 { 1, &hf_dap_signedAddEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedAddEntryArgument },
3432 { 0, NULL, 0, 0, 0, NULL }
3436 dissect_dap_AddEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3437 offset = dissect_ber_choice(actx, tree, tvb, offset,
3438 AddEntryArgument_choice, hf_index, ett_dap_AddEntryArgument,
3439 NULL);
3441 return offset;
3445 static const ber_sequence_t AddEntryResultData_sequence[] = {
3446 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3447 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3448 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3449 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
3450 { NULL, 0, 0, 0, NULL }
3453 static int
3454 dissect_dap_AddEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3455 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3456 AddEntryResultData_sequence, hf_index, ett_dap_AddEntryResultData);
3458 return offset;
3462 static const ber_sequence_t T_signedAddEntryResult_sequence[] = {
3463 { &hf_dap_addEntryResult , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_AddEntryResultData },
3464 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3465 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3466 { NULL, 0, 0, 0, NULL }
3469 static int
3470 dissect_dap_T_signedAddEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3471 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3472 T_signedAddEntryResult_sequence, hf_index, ett_dap_T_signedAddEntryResult);
3474 return offset;
3478 static const value_string dap_AddEntryInformation_vals[] = {
3479 { 0, "unsignedAddEntryResult" },
3480 { 1, "signedAddEntryResult" },
3481 { 0, NULL }
3484 static const ber_choice_t AddEntryInformation_choice[] = {
3485 { 0, &hf_dap_unsignedAddEntryResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_AddEntryResultData },
3486 { 1, &hf_dap_signedAddEntryResult, BER_CLASS_CON, 0, 0, dissect_dap_T_signedAddEntryResult },
3487 { 0, NULL, 0, 0, 0, NULL }
3490 static int
3491 dissect_dap_AddEntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3492 offset = dissect_ber_choice(actx, tree, tvb, offset,
3493 AddEntryInformation_choice, hf_index, ett_dap_AddEntryInformation,
3494 NULL);
3496 return offset;
3500 const value_string dap_AddEntryResult_vals[] = {
3501 { 0, "null" },
3502 { 1, "information" },
3503 { 0, NULL }
3506 static const ber_choice_t AddEntryResult_choice[] = {
3507 { 0, &hf_dap_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_dap_NULL },
3508 { 1, &hf_dap_add_entry_information, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_dap_AddEntryInformation },
3509 { 0, NULL, 0, 0, 0, NULL }
3513 dissect_dap_AddEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3514 offset = dissect_ber_choice(actx, tree, tvb, offset,
3515 AddEntryResult_choice, hf_index, ett_dap_AddEntryResult,
3516 NULL);
3518 return offset;
3522 static const ber_sequence_t RemoveEntryArgumentData_set[] = {
3523 { &hf_dap_object , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
3524 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
3525 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3526 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3527 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
3528 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
3529 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
3530 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
3531 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3532 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
3533 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3534 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
3535 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
3536 { NULL, 0, 0, 0, NULL }
3539 static int
3540 dissect_dap_RemoveEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3541 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
3542 RemoveEntryArgumentData_set, hf_index, ett_dap_RemoveEntryArgumentData);
3544 return offset;
3548 static const ber_sequence_t T_signedRemoveEntryArgument_sequence[] = {
3549 { &hf_dap_removeEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_RemoveEntryArgumentData },
3550 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3551 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3552 { NULL, 0, 0, 0, NULL }
3555 static int
3556 dissect_dap_T_signedRemoveEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3557 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3558 T_signedRemoveEntryArgument_sequence, hf_index, ett_dap_T_signedRemoveEntryArgument);
3560 return offset;
3564 const value_string dap_RemoveEntryArgument_vals[] = {
3565 { 0, "unsignedRemoveEntryArgument" },
3566 { 1, "signedRemoveEntryArgument" },
3567 { 0, NULL }
3570 static const ber_choice_t RemoveEntryArgument_choice[] = {
3571 { 0, &hf_dap_unsignedRemoveEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_RemoveEntryArgumentData },
3572 { 1, &hf_dap_signedRemoveEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedRemoveEntryArgument },
3573 { 0, NULL, 0, 0, 0, NULL }
3577 dissect_dap_RemoveEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3578 offset = dissect_ber_choice(actx, tree, tvb, offset,
3579 RemoveEntryArgument_choice, hf_index, ett_dap_RemoveEntryArgument,
3580 NULL);
3582 return offset;
3586 static const ber_sequence_t RemoveEntryResultData_sequence[] = {
3587 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3588 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3589 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3590 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
3591 { NULL, 0, 0, 0, NULL }
3594 static int
3595 dissect_dap_RemoveEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3596 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3597 RemoveEntryResultData_sequence, hf_index, ett_dap_RemoveEntryResultData);
3599 return offset;
3603 static const ber_sequence_t T_signedRemoveEntryResult_sequence[] = {
3604 { &hf_dap_removeEntryResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_RemoveEntryResultData },
3605 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3606 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3607 { NULL, 0, 0, 0, NULL }
3610 static int
3611 dissect_dap_T_signedRemoveEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3612 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3613 T_signedRemoveEntryResult_sequence, hf_index, ett_dap_T_signedRemoveEntryResult);
3615 return offset;
3619 static const value_string dap_RemoveEntryInformation_vals[] = {
3620 { 0, "unsignedRemoveEntryResult" },
3621 { 1, "signedRemoveEntryResult" },
3622 { 0, NULL }
3625 static const ber_choice_t RemoveEntryInformation_choice[] = {
3626 { 0, &hf_dap_unsignedRemoveEntryResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_RemoveEntryResultData },
3627 { 1, &hf_dap_signedRemoveEntryResult, BER_CLASS_CON, 0, 0, dissect_dap_T_signedRemoveEntryResult },
3628 { 0, NULL, 0, 0, 0, NULL }
3631 static int
3632 dissect_dap_RemoveEntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3633 offset = dissect_ber_choice(actx, tree, tvb, offset,
3634 RemoveEntryInformation_choice, hf_index, ett_dap_RemoveEntryInformation,
3635 NULL);
3637 return offset;
3641 const value_string dap_RemoveEntryResult_vals[] = {
3642 { 0, "null" },
3643 { 1, "information" },
3644 { 0, NULL }
3647 static const ber_choice_t RemoveEntryResult_choice[] = {
3648 { 0, &hf_dap_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_dap_NULL },
3649 { 1, &hf_dap_remove_entry_information, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_dap_RemoveEntryInformation },
3650 { 0, NULL, 0, 0, 0, NULL }
3654 dissect_dap_RemoveEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3655 offset = dissect_ber_choice(actx, tree, tvb, offset,
3656 RemoveEntryResult_choice, hf_index, ett_dap_RemoveEntryResult,
3657 NULL);
3659 return offset;
3663 const value_string dap_EntryModification_vals[] = {
3664 { 0, "addAttribute" },
3665 { 1, "removeAttribute" },
3666 { 2, "addValues" },
3667 { 3, "removeValues" },
3668 { 4, "alterValues" },
3669 { 5, "resetValue" },
3670 { 0, NULL }
3673 static const ber_choice_t EntryModification_choice[] = {
3674 { 0, &hf_dap_addAttribute , BER_CLASS_CON, 0, 0, dissect_x509if_Attribute },
3675 { 1, &hf_dap_removeAttribute , BER_CLASS_CON, 1, 0, dissect_x509if_AttributeType },
3676 { 2, &hf_dap_addValues , BER_CLASS_CON, 2, 0, dissect_x509if_Attribute },
3677 { 3, &hf_dap_removeValues , BER_CLASS_CON, 3, 0, dissect_x509if_Attribute },
3678 { 4, &hf_dap_alterValues , BER_CLASS_CON, 4, 0, dissect_crmf_AttributeTypeAndValue },
3679 { 5, &hf_dap_resetValue , BER_CLASS_CON, 5, 0, dissect_x509if_AttributeType },
3680 { 0, NULL, 0, 0, 0, NULL }
3684 dissect_dap_EntryModification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3685 offset = dissect_ber_choice(actx, tree, tvb, offset,
3686 EntryModification_choice, hf_index, ett_dap_EntryModification,
3687 NULL);
3689 return offset;
3693 static const ber_sequence_t SEQUENCE_OF_EntryModification_sequence_of[1] = {
3694 { &hf_dap_changes_item , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_EntryModification },
3697 static int
3698 dissect_dap_SEQUENCE_OF_EntryModification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3699 offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
3700 SEQUENCE_OF_EntryModification_sequence_of, hf_index, ett_dap_SEQUENCE_OF_EntryModification);
3702 return offset;
3706 static const ber_sequence_t ModifyEntryArgumentData_set[] = {
3707 { &hf_dap_object , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
3708 { &hf_dap_changes , BER_CLASS_CON, 1, 0, dissect_dap_SEQUENCE_OF_EntryModification },
3709 { &hf_dap_selection , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_EntryInformationSelection },
3710 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
3711 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3712 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3713 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
3714 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
3715 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
3716 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
3717 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3718 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
3719 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3720 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
3721 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
3722 { NULL, 0, 0, 0, NULL }
3725 static int
3726 dissect_dap_ModifyEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3727 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
3728 ModifyEntryArgumentData_set, hf_index, ett_dap_ModifyEntryArgumentData);
3730 return offset;
3734 static const ber_sequence_t T_signedModifyEntryArgument_sequence[] = {
3735 { &hf_dap_modifyEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyEntryArgumentData },
3736 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3737 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3738 { NULL, 0, 0, 0, NULL }
3741 static int
3742 dissect_dap_T_signedModifyEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3743 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3744 T_signedModifyEntryArgument_sequence, hf_index, ett_dap_T_signedModifyEntryArgument);
3746 return offset;
3750 const value_string dap_ModifyEntryArgument_vals[] = {
3751 { 0, "unsignedModifyEntryArgument" },
3752 { 1, "signedModifyEntryArgument" },
3753 { 0, NULL }
3756 static const ber_choice_t ModifyEntryArgument_choice[] = {
3757 { 0, &hf_dap_unsignedModifyEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyEntryArgumentData },
3758 { 1, &hf_dap_signedModifyEntryArgument, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedModifyEntryArgument },
3759 { 0, NULL, 0, 0, 0, NULL }
3763 dissect_dap_ModifyEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3764 offset = dissect_ber_choice(actx, tree, tvb, offset,
3765 ModifyEntryArgument_choice, hf_index, ett_dap_ModifyEntryArgument,
3766 NULL);
3768 return offset;
3772 static const ber_sequence_t ModifyEntryResultData_sequence[] = {
3773 { &hf_dap_entry , BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_dap_EntryInformation },
3774 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3775 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3776 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3777 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
3778 { NULL, 0, 0, 0, NULL }
3781 static int
3782 dissect_dap_ModifyEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3783 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3784 ModifyEntryResultData_sequence, hf_index, ett_dap_ModifyEntryResultData);
3786 return offset;
3790 static const ber_sequence_t T_signedModifyEntryResult_sequence[] = {
3791 { &hf_dap_modifyEntryResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyEntryResultData },
3792 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3793 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3794 { NULL, 0, 0, 0, NULL }
3797 static int
3798 dissect_dap_T_signedModifyEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3799 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3800 T_signedModifyEntryResult_sequence, hf_index, ett_dap_T_signedModifyEntryResult);
3802 return offset;
3806 static const value_string dap_ModifyEntryInformation_vals[] = {
3807 { 0, "unsignedModifyEntryResult" },
3808 { 1, "signedModifyEntryResult" },
3809 { 0, NULL }
3812 static const ber_choice_t ModifyEntryInformation_choice[] = {
3813 { 0, &hf_dap_unsignedModifyEntryResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyEntryResultData },
3814 { 1, &hf_dap_signedModifyEntryResult, BER_CLASS_CON, 0, 0, dissect_dap_T_signedModifyEntryResult },
3815 { 0, NULL, 0, 0, 0, NULL }
3818 static int
3819 dissect_dap_ModifyEntryInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3820 offset = dissect_ber_choice(actx, tree, tvb, offset,
3821 ModifyEntryInformation_choice, hf_index, ett_dap_ModifyEntryInformation,
3822 NULL);
3824 return offset;
3828 const value_string dap_ModifyEntryResult_vals[] = {
3829 { 0, "null" },
3830 { 1, "information" },
3831 { 0, NULL }
3834 static const ber_choice_t ModifyEntryResult_choice[] = {
3835 { 0, &hf_dap_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_dap_NULL },
3836 { 1, &hf_dap_modify_entry_information, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyEntryInformation },
3837 { 0, NULL, 0, 0, 0, NULL }
3841 dissect_dap_ModifyEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3842 offset = dissect_ber_choice(actx, tree, tvb, offset,
3843 ModifyEntryResult_choice, hf_index, ett_dap_ModifyEntryResult,
3844 NULL);
3846 return offset;
3850 static const ber_sequence_t ModifyDNArgument_set[] = {
3851 { &hf_dap_distinguished_name, BER_CLASS_CON, 0, 0, dissect_x509if_DistinguishedName },
3852 { &hf_dap_newRDN , BER_CLASS_CON, 1, 0, dissect_x509if_RelativeDistinguishedName },
3853 { &hf_dap_deleteOldRDN , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3854 { &hf_dap_newSuperior , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3855 { &hf_dap_serviceControls , BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_ServiceControls },
3856 { &hf_dap_securityParameters, BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3857 { &hf_dap_requestor , BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3858 { &hf_dap_operationProgress, BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dsp_OperationProgress },
3859 { &hf_dap_aliasedRDNs , BER_CLASS_CON, 26, BER_FLAGS_OPTIONAL, dissect_dap_INTEGER },
3860 { &hf_dap_criticalExtensions, BER_CLASS_CON, 25, BER_FLAGS_OPTIONAL, dissect_dap_BIT_STRING },
3861 { &hf_dap_referenceType , BER_CLASS_CON, 24, BER_FLAGS_OPTIONAL, dissect_dsp_ReferenceType },
3862 { &hf_dap_entryOnly , BER_CLASS_CON, 23, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3863 { &hf_dap_exclusions , BER_CLASS_CON, 22, BER_FLAGS_OPTIONAL, dissect_dsp_Exclusions },
3864 { &hf_dap_nameResolveOnMaster, BER_CLASS_CON, 21, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3865 { &hf_dap_operationContexts, BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_dap_ContextSelection },
3866 { &hf_dap_familyGrouping , BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_dap_FamilyGrouping },
3867 { NULL, 0, 0, 0, NULL }
3871 dissect_dap_ModifyDNArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3872 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
3873 ModifyDNArgument_set, hf_index, ett_dap_ModifyDNArgument);
3875 return offset;
3879 static const ber_sequence_t ModifyDNResultData_sequence[] = {
3880 { &hf_dap_newRDN , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_x509if_RelativeDistinguishedName },
3881 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3882 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3883 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3884 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
3885 { NULL, 0, 0, 0, NULL }
3888 static int
3889 dissect_dap_ModifyDNResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3890 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3891 ModifyDNResultData_sequence, hf_index, ett_dap_ModifyDNResultData);
3893 return offset;
3897 static const ber_sequence_t T_signedModifyDNResult_sequence[] = {
3898 { &hf_dap_modifyDNResult , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyDNResultData },
3899 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3900 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3901 { NULL, 0, 0, 0, NULL }
3904 static int
3905 dissect_dap_T_signedModifyDNResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3906 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3907 T_signedModifyDNResult_sequence, hf_index, ett_dap_T_signedModifyDNResult);
3909 return offset;
3913 static const value_string dap_ModifyDNInformation_vals[] = {
3914 { 0, "unsignedModifyDNResult" },
3915 { 1, "signedModifyDNResult" },
3916 { 0, NULL }
3919 static const ber_choice_t ModifyDNInformation_choice[] = {
3920 { 0, &hf_dap_unsignedModifyDNResult, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyDNResultData },
3921 { 1, &hf_dap_signedModifyDNResult, BER_CLASS_CON, 0, 0, dissect_dap_T_signedModifyDNResult },
3922 { 0, NULL, 0, 0, 0, NULL }
3925 static int
3926 dissect_dap_ModifyDNInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3927 offset = dissect_ber_choice(actx, tree, tvb, offset,
3928 ModifyDNInformation_choice, hf_index, ett_dap_ModifyDNInformation,
3929 NULL);
3931 return offset;
3935 const value_string dap_ModifyDNResult_vals[] = {
3936 { 0, "null" },
3937 { 1, "information" },
3938 { 0, NULL }
3941 static const ber_choice_t ModifyDNResult_choice[] = {
3942 { 0, &hf_dap_null , BER_CLASS_UNI, BER_UNI_TAG_NULL, BER_FLAGS_NOOWNTAG, dissect_dap_NULL },
3943 { 1, &hf_dap_modify_dn_information, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_dap_ModifyDNInformation },
3944 { 0, NULL, 0, 0, 0, NULL }
3948 dissect_dap_ModifyDNResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3949 offset = dissect_ber_choice(actx, tree, tvb, offset,
3950 ModifyDNResult_choice, hf_index, ett_dap_ModifyDNResult,
3951 NULL);
3953 return offset;
3957 static const ber_sequence_t AbandonedData_set[] = {
3958 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
3959 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
3960 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
3961 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
3962 { NULL, 0, 0, 0, NULL }
3965 static int
3966 dissect_dap_AbandonedData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3967 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
3968 AbandonedData_set, hf_index, ett_dap_AbandonedData);
3970 return offset;
3974 static const ber_sequence_t T_signedAbandoned_sequence[] = {
3975 { &hf_dap_abandoned , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonedData },
3976 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
3977 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
3978 { NULL, 0, 0, 0, NULL }
3981 static int
3982 dissect_dap_T_signedAbandoned(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3983 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3984 T_signedAbandoned_sequence, hf_index, ett_dap_T_signedAbandoned);
3986 return offset;
3990 const value_string dap_Abandoned_vals[] = {
3991 { 0, "unsignedAbandoned" },
3992 { 1, "signedAbandoned" },
3993 { 0, NULL }
3996 static const ber_choice_t Abandoned_choice[] = {
3997 { 0, &hf_dap_unsignedAbandoned, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonedData },
3998 { 1, &hf_dap_signedAbandoned , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedAbandoned },
3999 { 0, NULL, 0, 0, 0, NULL }
4003 dissect_dap_Abandoned(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4004 offset = dissect_ber_choice(actx, tree, tvb, offset,
4005 Abandoned_choice, hf_index, ett_dap_Abandoned,
4006 NULL);
4008 return offset;
4012 static const value_string dap_AbandonProblem_vals[] = {
4013 { 1, "noSuchOperation" },
4014 { 2, "tooLate" },
4015 { 3, "cannotAbandon" },
4016 { 0, NULL }
4020 static int
4021 dissect_dap_AbandonProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4022 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4023 NULL);
4025 return offset;
4029 static const ber_sequence_t AbandonFailedErrorData_set[] = {
4030 { &hf_dap_abandon_failed_problem, BER_CLASS_CON, 0, 0, dissect_dap_AbandonProblem },
4031 { &hf_dap_operation , BER_CLASS_CON, 1, 0, dissect_ros_InvokeId },
4032 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
4033 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
4034 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
4035 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
4036 { NULL, 0, 0, 0, NULL }
4039 static int
4040 dissect_dap_AbandonFailedErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4041 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
4042 AbandonFailedErrorData_set, hf_index, ett_dap_AbandonFailedErrorData);
4044 return offset;
4048 static const ber_sequence_t T_signedAbandonFailedError_sequence[] = {
4049 { &hf_dap_abandonFailedError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonFailedErrorData },
4050 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
4051 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
4052 { NULL, 0, 0, 0, NULL }
4055 static int
4056 dissect_dap_T_signedAbandonFailedError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4057 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4058 T_signedAbandonFailedError_sequence, hf_index, ett_dap_T_signedAbandonFailedError);
4060 return offset;
4064 const value_string dap_AbandonFailedError_vals[] = {
4065 { 0, "unsignedAbandonFailedError" },
4066 { 1, "signedAbandonFailedError" },
4067 { 0, NULL }
4070 static const ber_choice_t AbandonFailedError_choice[] = {
4071 { 0, &hf_dap_unsignedAbandonFailedError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AbandonFailedErrorData },
4072 { 1, &hf_dap_signedAbandonFailedError, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedAbandonFailedError },
4073 { 0, NULL, 0, 0, 0, NULL }
4077 dissect_dap_AbandonFailedError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4078 offset = dissect_ber_choice(actx, tree, tvb, offset,
4079 AbandonFailedError_choice, hf_index, ett_dap_AbandonFailedError,
4080 NULL);
4082 return offset;
4086 static const value_string dap_AttributeProblem_vals[] = {
4087 { 1, "noSuchAttributeOrValue" },
4088 { 2, "invalidAttributeSyntax" },
4089 { 3, "undefinedAttributeType" },
4090 { 4, "inappropriateMatching" },
4091 { 5, "constraintViolation" },
4092 { 6, "attributeOrValueAlreadyExists" },
4093 { 7, "contextViolation" },
4094 { 0, NULL }
4098 static int
4099 dissect_dap_AttributeProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4100 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4101 NULL);
4103 return offset;
4107 static const ber_sequence_t T_problems_item_sequence[] = {
4108 { &hf_dap_attribute_error_problem, BER_CLASS_CON, 0, 0, dissect_dap_AttributeProblem },
4109 { &hf_dap_type , BER_CLASS_CON, 1, 0, dissect_x509if_AttributeType },
4110 { &hf_dap_value , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_x509if_AttributeValue },
4111 { NULL, 0, 0, 0, NULL }
4114 static int
4115 dissect_dap_T_problems_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4116 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4117 T_problems_item_sequence, hf_index, ett_dap_T_problems_item);
4119 return offset;
4123 static const ber_sequence_t T_problems_set_of[1] = {
4124 { &hf_dap_problems_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_problems_item },
4127 static int
4128 dissect_dap_T_problems(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4129 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
4130 T_problems_set_of, hf_index, ett_dap_T_problems);
4132 return offset;
4136 static const ber_sequence_t AttributeErrorData_set[] = {
4137 { &hf_dap_object , BER_CLASS_CON, 0, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
4138 { &hf_dap_problems , BER_CLASS_CON, 1, 0, dissect_dap_T_problems },
4139 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
4140 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
4141 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
4142 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
4143 { NULL, 0, 0, 0, NULL }
4146 static int
4147 dissect_dap_AttributeErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4148 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
4149 AttributeErrorData_set, hf_index, ett_dap_AttributeErrorData);
4151 return offset;
4155 static const ber_sequence_t T_signedAttributeError_sequence[] = {
4156 { &hf_dap_attributeError , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AttributeErrorData },
4157 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
4158 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
4159 { NULL, 0, 0, 0, NULL }
4162 static int
4163 dissect_dap_T_signedAttributeError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4164 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4165 T_signedAttributeError_sequence, hf_index, ett_dap_T_signedAttributeError);
4167 return offset;
4171 const value_string dap_AttributeError_vals[] = {
4172 { 0, "unsignedAttributeError" },
4173 { 1, "signedAttributeError" },
4174 { 0, NULL }
4177 static const ber_choice_t AttributeError_choice[] = {
4178 { 0, &hf_dap_unsignedAttributeError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_AttributeErrorData },
4179 { 1, &hf_dap_signedAttributeError, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedAttributeError },
4180 { 0, NULL, 0, 0, 0, NULL }
4184 dissect_dap_AttributeError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4185 offset = dissect_ber_choice(actx, tree, tvb, offset,
4186 AttributeError_choice, hf_index, ett_dap_AttributeError,
4187 NULL);
4189 return offset;
4193 static const value_string dap_NameProblem_vals[] = {
4194 { 1, "noSuchObject" },
4195 { 2, "aliasProblem" },
4196 { 3, "invalidAttributeSyntax" },
4197 { 4, "aliasDereferencingProblem" },
4198 { 5, "contextProblem" },
4199 { 0, NULL }
4203 static int
4204 dissect_dap_NameProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4205 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4206 NULL);
4208 return offset;
4212 static const ber_sequence_t NameErrorData_set[] = {
4213 { &hf_dap_name_error_problem, BER_CLASS_CON, 0, 0, dissect_dap_NameProblem },
4214 { &hf_dap_matched_name , BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_dap_Name },
4215 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
4216 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
4217 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
4218 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
4219 { NULL, 0, 0, 0, NULL }
4222 static int
4223 dissect_dap_NameErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4224 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
4225 NameErrorData_set, hf_index, ett_dap_NameErrorData);
4227 return offset;
4231 static const ber_sequence_t T_signedNameError_sequence[] = {
4232 { &hf_dap_nameError , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_NameErrorData },
4233 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
4234 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
4235 { NULL, 0, 0, 0, NULL }
4238 static int
4239 dissect_dap_T_signedNameError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4240 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4241 T_signedNameError_sequence, hf_index, ett_dap_T_signedNameError);
4243 return offset;
4247 const value_string dap_NameError_vals[] = {
4248 { 0, "unsignedNameError" },
4249 { 1, "signedNameError" },
4250 { 0, NULL }
4253 static const ber_choice_t NameError_choice[] = {
4254 { 0, &hf_dap_unsignedNameError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_NameErrorData },
4255 { 1, &hf_dap_signedNameError , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedNameError },
4256 { 0, NULL, 0, 0, 0, NULL }
4260 dissect_dap_NameError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4261 offset = dissect_ber_choice(actx, tree, tvb, offset,
4262 NameError_choice, hf_index, ett_dap_NameError,
4263 NULL);
4265 return offset;
4269 static const ber_sequence_t ReferralData_set[] = {
4270 { &hf_dap_candidate , BER_CLASS_CON, 0, 0, dissect_dsp_ContinuationReference },
4271 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
4272 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
4273 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
4274 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
4275 { NULL, 0, 0, 0, NULL }
4278 static int
4279 dissect_dap_ReferralData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4280 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
4281 ReferralData_set, hf_index, ett_dap_ReferralData);
4283 return offset;
4287 static const ber_sequence_t T_signedReferral_sequence[] = {
4288 { &hf_dap_referral , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ReferralData },
4289 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
4290 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
4291 { NULL, 0, 0, 0, NULL }
4294 static int
4295 dissect_dap_T_signedReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4296 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4297 T_signedReferral_sequence, hf_index, ett_dap_T_signedReferral);
4299 return offset;
4303 const value_string dap_Referral_vals[] = {
4304 { 0, "unsignedReferral" },
4305 { 1, "signedReferral" },
4306 { 0, NULL }
4309 static const ber_choice_t Referral_choice[] = {
4310 { 0, &hf_dap_unsignedReferral, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ReferralData },
4311 { 1, &hf_dap_signedReferral , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedReferral },
4312 { 0, NULL, 0, 0, 0, NULL }
4316 dissect_dap_Referral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4317 offset = dissect_ber_choice(actx, tree, tvb, offset,
4318 Referral_choice, hf_index, ett_dap_Referral,
4319 NULL);
4321 return offset;
4326 static int
4327 dissect_dap_T_spkmInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4328 /* XXX: not yet implemented */
4331 return offset;
4335 static const ber_sequence_t SecurityErrorData_set[] = {
4336 { &hf_dap_security_error_problem, BER_CLASS_CON, 0, 0, dissect_dap_SecurityProblem },
4337 { &hf_dap_spkmInfo , BER_CLASS_CON, 1, 0, dissect_dap_T_spkmInfo },
4338 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
4339 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
4340 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
4341 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
4342 { NULL, 0, 0, 0, NULL }
4345 static int
4346 dissect_dap_SecurityErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4347 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
4348 SecurityErrorData_set, hf_index, ett_dap_SecurityErrorData);
4350 return offset;
4354 static const ber_sequence_t T_signedSecurityError_sequence[] = {
4355 { &hf_dap_securityErrorData, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_SecurityErrorData },
4356 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
4357 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
4358 { NULL, 0, 0, 0, NULL }
4361 static int
4362 dissect_dap_T_signedSecurityError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4363 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4364 T_signedSecurityError_sequence, hf_index, ett_dap_T_signedSecurityError);
4366 return offset;
4370 const value_string dap_SecurityError_vals[] = {
4371 { 0, "unsignedSecurityError" },
4372 { 1, "signedSecurityError" },
4373 { 0, NULL }
4376 static const ber_choice_t SecurityError_choice[] = {
4377 { 0, &hf_dap_unsignedSecurityError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_SecurityErrorData },
4378 { 1, &hf_dap_signedSecurityError, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedSecurityError },
4379 { 0, NULL, 0, 0, 0, NULL }
4383 dissect_dap_SecurityError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4384 offset = dissect_ber_choice(actx, tree, tvb, offset,
4385 SecurityError_choice, hf_index, ett_dap_SecurityError,
4386 NULL);
4388 return offset;
4392 static const ber_sequence_t ServiceErrorData_set[] = {
4393 { &hf_dap_service_error_problem, BER_CLASS_CON, 0, 0, dissect_dap_ServiceProblem },
4394 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
4395 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
4396 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
4397 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
4398 { NULL, 0, 0, 0, NULL }
4401 static int
4402 dissect_dap_ServiceErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4403 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
4404 ServiceErrorData_set, hf_index, ett_dap_ServiceErrorData);
4406 return offset;
4410 static const ber_sequence_t T_signedServiceError_sequence[] = {
4411 { &hf_dap_serviceError , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ServiceErrorData },
4412 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
4413 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
4414 { NULL, 0, 0, 0, NULL }
4417 static int
4418 dissect_dap_T_signedServiceError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4419 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4420 T_signedServiceError_sequence, hf_index, ett_dap_T_signedServiceError);
4422 return offset;
4426 const value_string dap_ServiceError_vals[] = {
4427 { 0, "unsignedServiceError" },
4428 { 1, "signedServiceError" },
4429 { 0, NULL }
4432 static const ber_choice_t ServiceError_choice[] = {
4433 { 0, &hf_dap_unsignedServiceError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_ServiceErrorData },
4434 { 1, &hf_dap_signedServiceError, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedServiceError },
4435 { 0, NULL, 0, 0, 0, NULL }
4439 dissect_dap_ServiceError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4440 offset = dissect_ber_choice(actx, tree, tvb, offset,
4441 ServiceError_choice, hf_index, ett_dap_ServiceError,
4442 NULL);
4444 return offset;
4448 static const value_string dap_UpdateProblem_vals[] = {
4449 { 1, "namingViolation" },
4450 { 2, "objectClassViolation" },
4451 { 3, "notAllowedOnNonLeaf" },
4452 { 4, "notAllowedOnRDN" },
4453 { 5, "entryAlreadyExists" },
4454 { 6, "affectsMultipleDSAs" },
4455 { 7, "objectClassModificationProhibited" },
4456 { 8, "noSuchSuperior" },
4457 { 9, "notAncestor" },
4458 { 10, "parentNotAncestor" },
4459 { 11, "hierarchyRuleViolation" },
4460 { 12, "familyRuleViolation" },
4461 { 0, NULL }
4465 static int
4466 dissect_dap_UpdateProblem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4467 guint32 problem;
4469 offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
4470 &problem);
4473 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %s", val_to_str(problem, dap_UpdateProblem_vals, "UpdateProblem(%d)"));
4476 return offset;
4480 static const value_string dap_T_attributeInfo_item_vals[] = {
4481 { 0, "attributeType" },
4482 { 1, "attribute" },
4483 { 0, NULL }
4486 static const ber_choice_t T_attributeInfo_item_choice[] = {
4487 { 0, &hf_dap_attributeType , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_x509if_AttributeType },
4488 { 1, &hf_dap_attribute , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509if_Attribute },
4489 { 0, NULL, 0, 0, 0, NULL }
4492 static int
4493 dissect_dap_T_attributeInfo_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4494 offset = dissect_ber_choice(actx, tree, tvb, offset,
4495 T_attributeInfo_item_choice, hf_index, ett_dap_T_attributeInfo_item,
4496 NULL);
4498 return offset;
4502 static const ber_sequence_t T_attributeInfo_set_of[1] = {
4503 { &hf_dap_attributeInfo_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_dap_T_attributeInfo_item },
4506 static int
4507 dissect_dap_T_attributeInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4508 offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
4509 T_attributeInfo_set_of, hf_index, ett_dap_T_attributeInfo);
4511 return offset;
4515 static const ber_sequence_t UpdateErrorData_set[] = {
4516 { &hf_dap_update_error_problem, BER_CLASS_CON, 0, 0, dissect_dap_UpdateProblem },
4517 { &hf_dap_attributeInfo , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_dap_T_attributeInfo },
4518 { &hf_dap_securityParameters, BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_dap_SecurityParameters },
4519 { &hf_dap_performer , BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_x509if_DistinguishedName },
4520 { &hf_dap_aliasDereferenced, BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_dap_BOOLEAN },
4521 { &hf_dap_notification , BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute },
4522 { NULL, 0, 0, 0, NULL }
4525 static int
4526 dissect_dap_UpdateErrorData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4527 offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
4528 UpdateErrorData_set, hf_index, ett_dap_UpdateErrorData);
4530 return offset;
4534 static const ber_sequence_t T_signedUpdateError_sequence[] = {
4535 { &hf_dap_updateError , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_UpdateErrorData },
4536 { &hf_dap_algorithmIdentifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
4537 { &hf_dap_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_dap_BIT_STRING },
4538 { NULL, 0, 0, 0, NULL }
4541 static int
4542 dissect_dap_T_signedUpdateError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4543 offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
4544 T_signedUpdateError_sequence, hf_index, ett_dap_T_signedUpdateError);
4546 return offset;
4550 const value_string dap_UpdateError_vals[] = {
4551 { 0, "unsignedUpdateError" },
4552 { 1, "signedUpdateError" },
4553 { 0, NULL }
4556 static const ber_choice_t UpdateError_choice[] = {
4557 { 0, &hf_dap_unsignedUpdateError, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dap_UpdateErrorData },
4558 { 1, &hf_dap_signedUpdateError, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_dap_T_signedUpdateError },
4559 { 0, NULL, 0, 0, 0, NULL }
4563 dissect_dap_UpdateError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4564 offset = dissect_ber_choice(actx, tree, tvb, offset,
4565 UpdateError_choice, hf_index, ett_dap_UpdateError,
4566 NULL);
4568 return offset;
4571 /*--- PDUs ---*/
4573 static int dissect_DirectoryBindArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4574 int offset = 0;
4575 asn1_ctx_t asn1_ctx;
4576 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4577 offset = dissect_dap_DirectoryBindArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_DirectoryBindArgument_PDU);
4578 return offset;
4580 static int dissect_DirectoryBindResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4581 int offset = 0;
4582 asn1_ctx_t asn1_ctx;
4583 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4584 offset = dissect_dap_DirectoryBindResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_DirectoryBindResult_PDU);
4585 return offset;
4587 static int dissect_DirectoryBindError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4588 int offset = 0;
4589 asn1_ctx_t asn1_ctx;
4590 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4591 offset = dissect_dap_DirectoryBindError(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_DirectoryBindError_PDU);
4592 return offset;
4594 static int dissect_ReadArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4595 int offset = 0;
4596 asn1_ctx_t asn1_ctx;
4597 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4598 offset = dissect_dap_ReadArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ReadArgument_PDU);
4599 return offset;
4601 static int dissect_ReadResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4602 int offset = 0;
4603 asn1_ctx_t asn1_ctx;
4604 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4605 offset = dissect_dap_ReadResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ReadResult_PDU);
4606 return offset;
4608 static int dissect_CompareArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4609 int offset = 0;
4610 asn1_ctx_t asn1_ctx;
4611 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4612 offset = dissect_dap_CompareArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_CompareArgument_PDU);
4613 return offset;
4615 static int dissect_CompareResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4616 int offset = 0;
4617 asn1_ctx_t asn1_ctx;
4618 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4619 offset = dissect_dap_CompareResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_CompareResult_PDU);
4620 return offset;
4622 static int dissect_AbandonArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4623 int offset = 0;
4624 asn1_ctx_t asn1_ctx;
4625 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4626 offset = dissect_dap_AbandonArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_AbandonArgument_PDU);
4627 return offset;
4629 static int dissect_AbandonResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4630 int offset = 0;
4631 asn1_ctx_t asn1_ctx;
4632 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4633 offset = dissect_dap_AbandonResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_AbandonResult_PDU);
4634 return offset;
4636 static int dissect_ListArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4637 int offset = 0;
4638 asn1_ctx_t asn1_ctx;
4639 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4640 offset = dissect_dap_ListArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ListArgument_PDU);
4641 return offset;
4643 static int dissect_ListResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4644 int offset = 0;
4645 asn1_ctx_t asn1_ctx;
4646 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4647 offset = dissect_dap_ListResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ListResult_PDU);
4648 return offset;
4650 static int dissect_SearchArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4651 int offset = 0;
4652 asn1_ctx_t asn1_ctx;
4653 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4654 offset = dissect_dap_SearchArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_SearchArgument_PDU);
4655 return offset;
4657 static int dissect_SearchResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4658 int offset = 0;
4659 asn1_ctx_t asn1_ctx;
4660 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4661 offset = dissect_dap_SearchResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_SearchResult_PDU);
4662 return offset;
4664 static int dissect_AddEntryArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4665 int offset = 0;
4666 asn1_ctx_t asn1_ctx;
4667 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4668 offset = dissect_dap_AddEntryArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_AddEntryArgument_PDU);
4669 return offset;
4671 static int dissect_AddEntryResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4672 int offset = 0;
4673 asn1_ctx_t asn1_ctx;
4674 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4675 offset = dissect_dap_AddEntryResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_AddEntryResult_PDU);
4676 return offset;
4678 static int dissect_RemoveEntryArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4679 int offset = 0;
4680 asn1_ctx_t asn1_ctx;
4681 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4682 offset = dissect_dap_RemoveEntryArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_RemoveEntryArgument_PDU);
4683 return offset;
4685 static int dissect_RemoveEntryResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4686 int offset = 0;
4687 asn1_ctx_t asn1_ctx;
4688 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4689 offset = dissect_dap_RemoveEntryResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_RemoveEntryResult_PDU);
4690 return offset;
4692 static int dissect_ModifyEntryArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4693 int offset = 0;
4694 asn1_ctx_t asn1_ctx;
4695 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4696 offset = dissect_dap_ModifyEntryArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ModifyEntryArgument_PDU);
4697 return offset;
4699 static int dissect_ModifyEntryResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4700 int offset = 0;
4701 asn1_ctx_t asn1_ctx;
4702 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4703 offset = dissect_dap_ModifyEntryResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ModifyEntryResult_PDU);
4704 return offset;
4706 static int dissect_ModifyDNArgument_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4707 int offset = 0;
4708 asn1_ctx_t asn1_ctx;
4709 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4710 offset = dissect_dap_ModifyDNArgument(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ModifyDNArgument_PDU);
4711 return offset;
4713 static int dissect_ModifyDNResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4714 int offset = 0;
4715 asn1_ctx_t asn1_ctx;
4716 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4717 offset = dissect_dap_ModifyDNResult(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ModifyDNResult_PDU);
4718 return offset;
4720 static int dissect_Abandoned_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4721 int offset = 0;
4722 asn1_ctx_t asn1_ctx;
4723 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4724 offset = dissect_dap_Abandoned(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_Abandoned_PDU);
4725 return offset;
4727 static int dissect_AbandonFailedError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4728 int offset = 0;
4729 asn1_ctx_t asn1_ctx;
4730 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4731 offset = dissect_dap_AbandonFailedError(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_AbandonFailedError_PDU);
4732 return offset;
4734 static int dissect_AttributeError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4735 int offset = 0;
4736 asn1_ctx_t asn1_ctx;
4737 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4738 offset = dissect_dap_AttributeError(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_AttributeError_PDU);
4739 return offset;
4741 static int dissect_NameError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4742 int offset = 0;
4743 asn1_ctx_t asn1_ctx;
4744 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4745 offset = dissect_dap_NameError(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_NameError_PDU);
4746 return offset;
4748 static int dissect_Referral_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4749 int offset = 0;
4750 asn1_ctx_t asn1_ctx;
4751 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4752 offset = dissect_dap_Referral(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_Referral_PDU);
4753 return offset;
4755 static int dissect_SecurityError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4756 int offset = 0;
4757 asn1_ctx_t asn1_ctx;
4758 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4759 offset = dissect_dap_SecurityError(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_SecurityError_PDU);
4760 return offset;
4762 static int dissect_ServiceError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4763 int offset = 0;
4764 asn1_ctx_t asn1_ctx;
4765 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4766 offset = dissect_dap_ServiceError(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_ServiceError_PDU);
4767 return offset;
4769 static int dissect_UpdateError_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
4770 int offset = 0;
4771 asn1_ctx_t asn1_ctx;
4772 asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
4773 offset = dissect_dap_UpdateError(FALSE, tvb, offset, &asn1_ctx, tree, hf_dap_UpdateError_PDU);
4774 return offset;
4778 /*--- End of included file: packet-dap-fn.c ---*/
4779 #line 75 "../../asn1/dap/packet-dap-template.c"
4782 /*--- Included file: packet-dap-table11.c ---*/
4783 #line 1 "../../asn1/dap/packet-dap-table11.c"
4785 static const ros_opr_t dap_opr_tab[] = {
4786 /* directoryBind */
4787 { op_ros_bind , dissect_DirectoryBindArgument_PDU, dissect_DirectoryBindResult_PDU },
4788 /* read */
4789 { id_opcode_read , dissect_ReadArgument_PDU, dissect_ReadResult_PDU },
4790 /* compare */
4791 { id_opcode_compare , dissect_CompareArgument_PDU, dissect_CompareResult_PDU },
4792 /* abandon */
4793 { id_opcode_abandon , dissect_AbandonArgument_PDU, dissect_AbandonResult_PDU },
4794 /* list */
4795 { id_opcode_list , dissect_ListArgument_PDU, dissect_ListResult_PDU },
4796 /* search */
4797 { id_opcode_search , dissect_SearchArgument_PDU, dissect_SearchResult_PDU },
4798 /* addEntry */
4799 { id_opcode_addEntry , dissect_AddEntryArgument_PDU, dissect_AddEntryResult_PDU },
4800 /* removeEntry */
4801 { id_opcode_removeEntry , dissect_RemoveEntryArgument_PDU, dissect_RemoveEntryResult_PDU },
4802 /* modifyEntry */
4803 { id_opcode_modifyEntry , dissect_ModifyEntryArgument_PDU, dissect_ModifyEntryResult_PDU },
4804 /* modifyDN */
4805 { id_opcode_modifyDN , dissect_ModifyDNArgument_PDU, dissect_ModifyDNResult_PDU },
4806 { 0, (new_dissector_t)(-1), (new_dissector_t)(-1) },
4810 /*--- End of included file: packet-dap-table11.c ---*/
4811 #line 77 "../../asn1/dap/packet-dap-template.c"
4813 /*--- Included file: packet-dap-table21.c ---*/
4814 #line 1 "../../asn1/dap/packet-dap-table21.c"
4816 static const ros_err_t dap_err_tab[] = {
4817 /* directoryBindError*/
4818 { err_ros_bind, dissect_DirectoryBindError_PDU },
4819 /* abandoned*/
4820 { id_errcode_abandoned, dissect_Abandoned_PDU },
4821 /* abandonFailed*/
4822 { id_errcode_abandonFailed, dissect_AbandonFailedError_PDU },
4823 /* attributeError*/
4824 { id_errcode_attributeError, dissect_AttributeError_PDU },
4825 /* nameError*/
4826 { id_errcode_nameError, dissect_NameError_PDU },
4827 /* referral*/
4828 { id_errcode_referral, dissect_Referral_PDU },
4829 /* securityError*/
4830 { id_errcode_securityError, dissect_SecurityError_PDU },
4831 /* serviceError*/
4832 { id_errcode_serviceError, dissect_ServiceError_PDU },
4833 /* updateError*/
4834 { id_errcode_updateError, dissect_UpdateError_PDU },
4835 { 0, (new_dissector_t)(-1) },
4839 /*--- End of included file: packet-dap-table21.c ---*/
4840 #line 78 "../../asn1/dap/packet-dap-template.c"
4842 static const ros_info_t dap_ros_info = {
4843 "DAP",
4844 &proto_dap,
4845 &ett_dap,
4846 dap_opr_code_string_vals,
4847 dap_opr_tab,
4848 dap_err_code_string_vals,
4849 dap_err_tab
4853 /*--- proto_register_dap -------------------------------------------*/
4854 void proto_register_dap(void) {
4856 /* List of fields */
4857 static hf_register_info hf[] =
4860 /*--- Included file: packet-dap-hfarr.c ---*/
4861 #line 1 "../../asn1/dap/packet-dap-hfarr.c"
4862 { &hf_dap_DirectoryBindArgument_PDU,
4863 { "DirectoryBindArgument", "dap.DirectoryBindArgument_element",
4864 FT_NONE, BASE_NONE, NULL, 0,
4865 NULL, HFILL }},
4866 { &hf_dap_DirectoryBindResult_PDU,
4867 { "DirectoryBindResult", "dap.DirectoryBindResult_element",
4868 FT_NONE, BASE_NONE, NULL, 0,
4869 NULL, HFILL }},
4870 { &hf_dap_DirectoryBindError_PDU,
4871 { "DirectoryBindError", "dap.DirectoryBindError",
4872 FT_UINT32, BASE_DEC, VALS(dap_DirectoryBindError_vals), 0,
4873 NULL, HFILL }},
4874 { &hf_dap_ReadArgument_PDU,
4875 { "ReadArgument", "dap.ReadArgument",
4876 FT_UINT32, BASE_DEC, VALS(dap_ReadArgument_vals), 0,
4877 NULL, HFILL }},
4878 { &hf_dap_ReadResult_PDU,
4879 { "ReadResult", "dap.ReadResult",
4880 FT_UINT32, BASE_DEC, VALS(dap_ReadResult_vals), 0,
4881 NULL, HFILL }},
4882 { &hf_dap_CompareArgument_PDU,
4883 { "CompareArgument", "dap.CompareArgument",
4884 FT_UINT32, BASE_DEC, VALS(dap_CompareArgument_vals), 0,
4885 NULL, HFILL }},
4886 { &hf_dap_CompareResult_PDU,
4887 { "CompareResult", "dap.CompareResult",
4888 FT_UINT32, BASE_DEC, VALS(dap_CompareResult_vals), 0,
4889 NULL, HFILL }},
4890 { &hf_dap_AbandonArgument_PDU,
4891 { "AbandonArgument", "dap.AbandonArgument",
4892 FT_UINT32, BASE_DEC, VALS(dap_AbandonArgument_vals), 0,
4893 NULL, HFILL }},
4894 { &hf_dap_AbandonResult_PDU,
4895 { "AbandonResult", "dap.AbandonResult",
4896 FT_UINT32, BASE_DEC, VALS(dap_AbandonResult_vals), 0,
4897 NULL, HFILL }},
4898 { &hf_dap_ListArgument_PDU,
4899 { "ListArgument", "dap.ListArgument",
4900 FT_UINT32, BASE_DEC, VALS(dap_ListArgument_vals), 0,
4901 NULL, HFILL }},
4902 { &hf_dap_ListResult_PDU,
4903 { "ListResult", "dap.ListResult",
4904 FT_UINT32, BASE_DEC, VALS(dap_ListResult_vals), 0,
4905 NULL, HFILL }},
4906 { &hf_dap_SearchArgument_PDU,
4907 { "SearchArgument", "dap.SearchArgument",
4908 FT_UINT32, BASE_DEC, VALS(dap_SearchArgument_vals), 0,
4909 NULL, HFILL }},
4910 { &hf_dap_SearchResult_PDU,
4911 { "SearchResult", "dap.SearchResult",
4912 FT_UINT32, BASE_DEC, VALS(dap_SearchResult_vals), 0,
4913 NULL, HFILL }},
4914 { &hf_dap_AddEntryArgument_PDU,
4915 { "AddEntryArgument", "dap.AddEntryArgument",
4916 FT_UINT32, BASE_DEC, VALS(dap_AddEntryArgument_vals), 0,
4917 NULL, HFILL }},
4918 { &hf_dap_AddEntryResult_PDU,
4919 { "AddEntryResult", "dap.AddEntryResult",
4920 FT_UINT32, BASE_DEC, VALS(dap_AddEntryResult_vals), 0,
4921 NULL, HFILL }},
4922 { &hf_dap_RemoveEntryArgument_PDU,
4923 { "RemoveEntryArgument", "dap.RemoveEntryArgument",
4924 FT_UINT32, BASE_DEC, VALS(dap_RemoveEntryArgument_vals), 0,
4925 NULL, HFILL }},
4926 { &hf_dap_RemoveEntryResult_PDU,
4927 { "RemoveEntryResult", "dap.RemoveEntryResult",
4928 FT_UINT32, BASE_DEC, VALS(dap_RemoveEntryResult_vals), 0,
4929 NULL, HFILL }},
4930 { &hf_dap_ModifyEntryArgument_PDU,
4931 { "ModifyEntryArgument", "dap.ModifyEntryArgument",
4932 FT_UINT32, BASE_DEC, VALS(dap_ModifyEntryArgument_vals), 0,
4933 NULL, HFILL }},
4934 { &hf_dap_ModifyEntryResult_PDU,
4935 { "ModifyEntryResult", "dap.ModifyEntryResult",
4936 FT_UINT32, BASE_DEC, VALS(dap_ModifyEntryResult_vals), 0,
4937 NULL, HFILL }},
4938 { &hf_dap_ModifyDNArgument_PDU,
4939 { "ModifyDNArgument", "dap.ModifyDNArgument_element",
4940 FT_NONE, BASE_NONE, NULL, 0,
4941 NULL, HFILL }},
4942 { &hf_dap_ModifyDNResult_PDU,
4943 { "ModifyDNResult", "dap.ModifyDNResult",
4944 FT_UINT32, BASE_DEC, VALS(dap_ModifyDNResult_vals), 0,
4945 NULL, HFILL }},
4946 { &hf_dap_Abandoned_PDU,
4947 { "Abandoned", "dap.Abandoned",
4948 FT_UINT32, BASE_DEC, VALS(dap_Abandoned_vals), 0,
4949 NULL, HFILL }},
4950 { &hf_dap_AbandonFailedError_PDU,
4951 { "AbandonFailedError", "dap.AbandonFailedError",
4952 FT_UINT32, BASE_DEC, VALS(dap_AbandonFailedError_vals), 0,
4953 NULL, HFILL }},
4954 { &hf_dap_AttributeError_PDU,
4955 { "AttributeError", "dap.AttributeError",
4956 FT_UINT32, BASE_DEC, VALS(dap_AttributeError_vals), 0,
4957 NULL, HFILL }},
4958 { &hf_dap_NameError_PDU,
4959 { "NameError", "dap.NameError",
4960 FT_UINT32, BASE_DEC, VALS(dap_NameError_vals), 0,
4961 NULL, HFILL }},
4962 { &hf_dap_Referral_PDU,
4963 { "Referral", "dap.Referral",
4964 FT_UINT32, BASE_DEC, VALS(dap_Referral_vals), 0,
4965 NULL, HFILL }},
4966 { &hf_dap_SecurityError_PDU,
4967 { "SecurityError", "dap.SecurityError",
4968 FT_UINT32, BASE_DEC, VALS(dap_SecurityError_vals), 0,
4969 NULL, HFILL }},
4970 { &hf_dap_ServiceError_PDU,
4971 { "ServiceError", "dap.ServiceError",
4972 FT_UINT32, BASE_DEC, VALS(dap_ServiceError_vals), 0,
4973 NULL, HFILL }},
4974 { &hf_dap_UpdateError_PDU,
4975 { "UpdateError", "dap.UpdateError",
4976 FT_UINT32, BASE_DEC, VALS(dap_UpdateError_vals), 0,
4977 NULL, HFILL }},
4978 { &hf_dap_options,
4979 { "options", "dap.options",
4980 FT_BYTES, BASE_NONE, NULL, 0,
4981 "ServiceControlOptions", HFILL }},
4982 { &hf_dap_priority,
4983 { "priority", "dap.priority",
4984 FT_INT32, BASE_DEC, VALS(dap_T_priority_vals), 0,
4985 NULL, HFILL }},
4986 { &hf_dap_timeLimit,
4987 { "timeLimit", "dap.timeLimit",
4988 FT_INT32, BASE_DEC, NULL, 0,
4989 "INTEGER", HFILL }},
4990 { &hf_dap_sizeLimit,
4991 { "sizeLimit", "dap.sizeLimit",
4992 FT_INT32, BASE_DEC, NULL, 0,
4993 "INTEGER", HFILL }},
4994 { &hf_dap_scopeOfReferral,
4995 { "scopeOfReferral", "dap.scopeOfReferral",
4996 FT_INT32, BASE_DEC, VALS(dap_T_scopeOfReferral_vals), 0,
4997 NULL, HFILL }},
4998 { &hf_dap_attributeSizeLimit,
4999 { "attributeSizeLimit", "dap.attributeSizeLimit",
5000 FT_INT32, BASE_DEC, NULL, 0,
5001 "INTEGER", HFILL }},
5002 { &hf_dap_manageDSAITPlaneRef,
5003 { "manageDSAITPlaneRef", "dap.manageDSAITPlaneRef_element",
5004 FT_NONE, BASE_NONE, NULL, 0,
5005 NULL, HFILL }},
5006 { &hf_dap_dsaName,
5007 { "dsaName", "dap.dsaName",
5008 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
5009 "Name", HFILL }},
5010 { &hf_dap_agreementID,
5011 { "agreementID", "dap.agreementID_element",
5012 FT_NONE, BASE_NONE, NULL, 0,
5013 NULL, HFILL }},
5014 { &hf_dap_serviceType,
5015 { "serviceType", "dap.serviceType",
5016 FT_OID, BASE_NONE, NULL, 0,
5017 "OBJECT_IDENTIFIER", HFILL }},
5018 { &hf_dap_userClass,
5019 { "userClass", "dap.userClass",
5020 FT_INT32, BASE_DEC, NULL, 0,
5021 "INTEGER", HFILL }},
5022 { &hf_dap_attributes,
5023 { "attributes", "dap.attributes",
5024 FT_UINT32, BASE_DEC, VALS(dap_T_attributes_vals), 0,
5025 NULL, HFILL }},
5026 { &hf_dap_allUserAttributes,
5027 { "allUserAttributes", "dap.allUserAttributes_element",
5028 FT_NONE, BASE_NONE, NULL, 0,
5029 NULL, HFILL }},
5030 { &hf_dap_select,
5031 { "select", "dap.select",
5032 FT_UINT32, BASE_DEC, NULL, 0,
5033 "SET_OF_AttributeType", HFILL }},
5034 { &hf_dap_select_item,
5035 { "AttributeType", "dap.AttributeType",
5036 FT_OID, BASE_NONE, NULL, 0,
5037 NULL, HFILL }},
5038 { &hf_dap_infoTypes,
5039 { "infoTypes", "dap.infoTypes",
5040 FT_INT32, BASE_DEC, VALS(dap_T_infoTypes_vals), 0,
5041 NULL, HFILL }},
5042 { &hf_dap_extraAttributes,
5043 { "extraAttributes", "dap.extraAttributes",
5044 FT_UINT32, BASE_DEC, VALS(dap_T_extraAttributes_vals), 0,
5045 NULL, HFILL }},
5046 { &hf_dap_allOperationalAttributes,
5047 { "allOperationalAttributes", "dap.allOperationalAttributes_element",
5048 FT_NONE, BASE_NONE, NULL, 0,
5049 NULL, HFILL }},
5050 { &hf_dap_extraSelect,
5051 { "select", "dap.select",
5052 FT_UINT32, BASE_DEC, NULL, 0,
5053 "SET_SIZE_1_MAX_OF_AttributeType", HFILL }},
5054 { &hf_dap_extraSelect_item,
5055 { "AttributeType", "dap.AttributeType",
5056 FT_OID, BASE_NONE, NULL, 0,
5057 NULL, HFILL }},
5058 { &hf_dap_contextSelection,
5059 { "contextSelection", "dap.contextSelection",
5060 FT_UINT32, BASE_DEC, VALS(dap_ContextSelection_vals), 0,
5061 NULL, HFILL }},
5062 { &hf_dap_returnContexts,
5063 { "returnContexts", "dap.returnContexts",
5064 FT_BOOLEAN, BASE_NONE, NULL, 0,
5065 "BOOLEAN", HFILL }},
5066 { &hf_dap_familyReturn,
5067 { "familyReturn", "dap.familyReturn_element",
5068 FT_NONE, BASE_NONE, NULL, 0,
5069 NULL, HFILL }},
5070 { &hf_dap_allContexts,
5071 { "allContexts", "dap.allContexts_element",
5072 FT_NONE, BASE_NONE, NULL, 0,
5073 NULL, HFILL }},
5074 { &hf_dap_selectedContexts,
5075 { "selectedContexts", "dap.selectedContexts",
5076 FT_UINT32, BASE_DEC, NULL, 0,
5077 "SET_SIZE_1_MAX_OF_TypeAndContextAssertion", HFILL }},
5078 { &hf_dap_selectedContexts_item,
5079 { "TypeAndContextAssertion", "dap.TypeAndContextAssertion_element",
5080 FT_NONE, BASE_NONE, NULL, 0,
5081 NULL, HFILL }},
5082 { &hf_dap_type,
5083 { "type", "dap.type",
5084 FT_OID, BASE_NONE, NULL, 0,
5085 "AttributeType", HFILL }},
5086 { &hf_dap_contextAssertions,
5087 { "contextAssertions", "dap.contextAssertions",
5088 FT_UINT32, BASE_DEC, VALS(dap_T_contextAssertions_vals), 0,
5089 NULL, HFILL }},
5090 { &hf_dap_preference,
5091 { "preference", "dap.preference",
5092 FT_UINT32, BASE_DEC, NULL, 0,
5093 "SEQUENCE_OF_ContextAssertion", HFILL }},
5094 { &hf_dap_preference_item,
5095 { "ContextAssertion", "dap.ContextAssertion_element",
5096 FT_NONE, BASE_NONE, NULL, 0,
5097 NULL, HFILL }},
5098 { &hf_dap_all,
5099 { "all", "dap.all",
5100 FT_UINT32, BASE_DEC, NULL, 0,
5101 "SET_OF_ContextAssertion", HFILL }},
5102 { &hf_dap_all_item,
5103 { "ContextAssertion", "dap.ContextAssertion_element",
5104 FT_NONE, BASE_NONE, NULL, 0,
5105 NULL, HFILL }},
5106 { &hf_dap_memberSelect,
5107 { "memberSelect", "dap.memberSelect",
5108 FT_UINT32, BASE_DEC, VALS(dap_T_memberSelect_vals), 0,
5109 NULL, HFILL }},
5110 { &hf_dap_familySelect,
5111 { "familySelect", "dap.familySelect",
5112 FT_UINT32, BASE_DEC, NULL, 0,
5113 NULL, HFILL }},
5114 { &hf_dap_familySelect_item,
5115 { "familySelect item", "dap.familySelect_item",
5116 FT_OID, BASE_NONE, NULL, 0,
5117 "OBJECT_IDENTIFIER", HFILL }},
5118 { &hf_dap_name,
5119 { "name", "dap.name",
5120 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
5121 NULL, HFILL }},
5122 { &hf_dap_fromEntry,
5123 { "fromEntry", "dap.fromEntry",
5124 FT_BOOLEAN, BASE_NONE, NULL, 0,
5125 "BOOLEAN", HFILL }},
5126 { &hf_dap_entry_information,
5127 { "information", "dap.information",
5128 FT_UINT32, BASE_DEC, NULL, 0,
5129 "T_entry_information", HFILL }},
5130 { &hf_dap_entry_information_item,
5131 { "information item", "dap.information_item",
5132 FT_UINT32, BASE_DEC, VALS(dap_EntryInformationItem_vals), 0,
5133 "EntryInformationItem", HFILL }},
5134 { &hf_dap_attributeType,
5135 { "attributeType", "dap.attributeType",
5136 FT_OID, BASE_NONE, NULL, 0,
5137 NULL, HFILL }},
5138 { &hf_dap_attribute,
5139 { "attribute", "dap.attribute_element",
5140 FT_NONE, BASE_NONE, NULL, 0,
5141 NULL, HFILL }},
5142 { &hf_dap_incompleteEntry,
5143 { "incompleteEntry", "dap.incompleteEntry",
5144 FT_BOOLEAN, BASE_NONE, NULL, 0,
5145 "BOOLEAN", HFILL }},
5146 { &hf_dap_partialName,
5147 { "partialName", "dap.partialName",
5148 FT_BOOLEAN, BASE_NONE, NULL, 0,
5149 "BOOLEAN", HFILL }},
5150 { &hf_dap_derivedEntry,
5151 { "derivedEntry", "dap.derivedEntry",
5152 FT_BOOLEAN, BASE_NONE, NULL, 0,
5153 "BOOLEAN", HFILL }},
5154 { &hf_dap_family_class,
5155 { "family-class", "dap.family_class",
5156 FT_OID, BASE_NONE, NULL, 0,
5157 "OBJECT_IDENTIFIER", HFILL }},
5158 { &hf_dap_familyEntries,
5159 { "familyEntries", "dap.familyEntries",
5160 FT_UINT32, BASE_DEC, NULL, 0,
5161 "SEQUENCE_OF_FamilyEntry", HFILL }},
5162 { &hf_dap_familyEntries_item,
5163 { "FamilyEntry", "dap.FamilyEntry_element",
5164 FT_NONE, BASE_NONE, NULL, 0,
5165 NULL, HFILL }},
5166 { &hf_dap_rdn,
5167 { "rdn", "dap.rdn",
5168 FT_UINT32, BASE_DEC, NULL, 0,
5169 "RelativeDistinguishedName", HFILL }},
5170 { &hf_dap_family_information,
5171 { "information", "dap.information",
5172 FT_UINT32, BASE_DEC, NULL, 0,
5173 "FamilyInformation", HFILL }},
5174 { &hf_dap_family_information_item,
5175 { "information item", "dap.information_item",
5176 FT_UINT32, BASE_DEC, VALS(dap_T_family_information_item_vals), 0,
5177 "T_family_information_item", HFILL }},
5178 { &hf_dap_family_info,
5179 { "family-info", "dap.family_info",
5180 FT_UINT32, BASE_DEC, NULL, 0,
5181 "SEQUENCE_SIZE_1_MAX_OF_FamilyEntries", HFILL }},
5182 { &hf_dap_family_info_item,
5183 { "FamilyEntries", "dap.FamilyEntries_element",
5184 FT_NONE, BASE_NONE, NULL, 0,
5185 NULL, HFILL }},
5186 { &hf_dap_filter_item,
5187 { "item", "dap.item",
5188 FT_UINT32, BASE_DEC, VALS(dap_FilterItem_vals), 0,
5189 "FilterItem", HFILL }},
5190 { &hf_dap_and,
5191 { "and", "dap.and",
5192 FT_UINT32, BASE_DEC, NULL, 0,
5193 "SetOfFilter", HFILL }},
5194 { &hf_dap_or,
5195 { "or", "dap.or",
5196 FT_UINT32, BASE_DEC, NULL, 0,
5197 "SetOfFilter", HFILL }},
5198 { &hf_dap_not,
5199 { "not", "dap.not",
5200 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5201 "Filter", HFILL }},
5202 { &hf_dap_SetOfFilter_item,
5203 { "Filter", "dap.Filter",
5204 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5205 NULL, HFILL }},
5206 { &hf_dap_equality,
5207 { "equality", "dap.equality_element",
5208 FT_NONE, BASE_NONE, NULL, 0,
5209 "AttributeValueAssertion", HFILL }},
5210 { &hf_dap_substrings,
5211 { "substrings", "dap.substrings_element",
5212 FT_NONE, BASE_NONE, NULL, 0,
5213 NULL, HFILL }},
5214 { &hf_dap_sunstringType,
5215 { "type", "dap.type",
5216 FT_OID, BASE_NONE, NULL, 0,
5217 "OBJECT_IDENTIFIER", HFILL }},
5218 { &hf_dap_strings,
5219 { "strings", "dap.strings",
5220 FT_UINT32, BASE_DEC, NULL, 0,
5221 NULL, HFILL }},
5222 { &hf_dap_strings_item,
5223 { "strings item", "dap.strings_item",
5224 FT_UINT32, BASE_DEC, VALS(dap_T_strings_item_vals), 0,
5225 NULL, HFILL }},
5226 { &hf_dap_initial,
5227 { "initial", "dap.initial_element",
5228 FT_NONE, BASE_NONE, NULL, 0,
5229 NULL, HFILL }},
5230 { &hf_dap_any,
5231 { "any", "dap.any_element",
5232 FT_NONE, BASE_NONE, NULL, 0,
5233 NULL, HFILL }},
5234 { &hf_dap_final,
5235 { "final", "dap.final_element",
5236 FT_NONE, BASE_NONE, NULL, 0,
5237 NULL, HFILL }},
5238 { &hf_dap_control,
5239 { "control", "dap.control_element",
5240 FT_NONE, BASE_NONE, NULL, 0,
5241 "Attribute", HFILL }},
5242 { &hf_dap_greaterOrEqual,
5243 { "greaterOrEqual", "dap.greaterOrEqual_element",
5244 FT_NONE, BASE_NONE, NULL, 0,
5245 "AttributeValueAssertion", HFILL }},
5246 { &hf_dap_lessOrEqual,
5247 { "lessOrEqual", "dap.lessOrEqual_element",
5248 FT_NONE, BASE_NONE, NULL, 0,
5249 "AttributeValueAssertion", HFILL }},
5250 { &hf_dap_present,
5251 { "present", "dap.present",
5252 FT_OID, BASE_NONE, NULL, 0,
5253 "AttributeType", HFILL }},
5254 { &hf_dap_approximateMatch,
5255 { "approximateMatch", "dap.approximateMatch_element",
5256 FT_NONE, BASE_NONE, NULL, 0,
5257 "AttributeValueAssertion", HFILL }},
5258 { &hf_dap_extensibleMatch,
5259 { "extensibleMatch", "dap.extensibleMatch_element",
5260 FT_NONE, BASE_NONE, NULL, 0,
5261 "MatchingRuleAssertion", HFILL }},
5262 { &hf_dap_contextPresent,
5263 { "contextPresent", "dap.contextPresent_element",
5264 FT_NONE, BASE_NONE, NULL, 0,
5265 "AttributeTypeAssertion", HFILL }},
5266 { &hf_dap_matchingRule,
5267 { "matchingRule", "dap.matchingRule",
5268 FT_UINT32, BASE_DEC, NULL, 0,
5269 NULL, HFILL }},
5270 { &hf_dap_matchingRule_item,
5271 { "matchingRule item", "dap.matchingRule_item",
5272 FT_OID, BASE_NONE, NULL, 0,
5273 "OBJECT_IDENTIFIER", HFILL }},
5274 { &hf_dap_matchValue,
5275 { "matchValue", "dap.matchValue_element",
5276 FT_NONE, BASE_NONE, NULL, 0,
5277 NULL, HFILL }},
5278 { &hf_dap_dnAttributes,
5279 { "dnAttributes", "dap.dnAttributes",
5280 FT_BOOLEAN, BASE_NONE, NULL, 0,
5281 "BOOLEAN", HFILL }},
5282 { &hf_dap_newRequest,
5283 { "newRequest", "dap.newRequest_element",
5284 FT_NONE, BASE_NONE, NULL, 0,
5285 NULL, HFILL }},
5286 { &hf_dap_pageSize,
5287 { "pageSize", "dap.pageSize",
5288 FT_INT32, BASE_DEC, NULL, 0,
5289 "INTEGER", HFILL }},
5290 { &hf_dap_sortKeys,
5291 { "sortKeys", "dap.sortKeys",
5292 FT_UINT32, BASE_DEC, NULL, 0,
5293 "SEQUENCE_SIZE_1_MAX_OF_SortKey", HFILL }},
5294 { &hf_dap_sortKeys_item,
5295 { "SortKey", "dap.SortKey_element",
5296 FT_NONE, BASE_NONE, NULL, 0,
5297 NULL, HFILL }},
5298 { &hf_dap_reverse,
5299 { "reverse", "dap.reverse",
5300 FT_BOOLEAN, BASE_NONE, NULL, 0,
5301 "BOOLEAN", HFILL }},
5302 { &hf_dap_unmerged,
5303 { "unmerged", "dap.unmerged",
5304 FT_BOOLEAN, BASE_NONE, NULL, 0,
5305 "BOOLEAN", HFILL }},
5306 { &hf_dap_pagedResultsQueryReference,
5307 { "queryReference", "dap.queryReference",
5308 FT_BYTES, BASE_NONE, NULL, 0,
5309 "T_pagedResultsQueryReference", HFILL }},
5310 { &hf_dap_orderingRule,
5311 { "orderingRule", "dap.orderingRule",
5312 FT_OID, BASE_NONE, NULL, 0,
5313 "OBJECT_IDENTIFIER", HFILL }},
5314 { &hf_dap_certification_path,
5315 { "certification-path", "dap.certification_path_element",
5316 FT_NONE, BASE_NONE, NULL, 0,
5317 "CertificationPath", HFILL }},
5318 { &hf_dap_distinguished_name,
5319 { "name", "dap.name",
5320 FT_UINT32, BASE_DEC, NULL, 0,
5321 "DistinguishedName", HFILL }},
5322 { &hf_dap_time,
5323 { "time", "dap.time",
5324 FT_UINT32, BASE_DEC, VALS(dap_Time_vals), 0,
5325 NULL, HFILL }},
5326 { &hf_dap_random,
5327 { "random", "dap.random",
5328 FT_BYTES, BASE_NONE, NULL, 0,
5329 "BIT_STRING", HFILL }},
5330 { &hf_dap_target,
5331 { "target", "dap.target",
5332 FT_INT32, BASE_DEC, VALS(dap_ProtectionRequest_vals), 0,
5333 "ProtectionRequest", HFILL }},
5334 { &hf_dap_response,
5335 { "response", "dap.response",
5336 FT_BYTES, BASE_NONE, NULL, 0,
5337 "BIT_STRING", HFILL }},
5338 { &hf_dap_operationCode,
5339 { "operationCode", "dap.operationCode",
5340 FT_UINT32, BASE_DEC, VALS(ros_Code_vals), 0,
5341 "Code", HFILL }},
5342 { &hf_dap_attributeCertificationPath,
5343 { "attributeCertificationPath", "dap.attributeCertificationPath_element",
5344 FT_NONE, BASE_NONE, NULL, 0,
5345 NULL, HFILL }},
5346 { &hf_dap_errorProtection,
5347 { "errorProtection", "dap.errorProtection",
5348 FT_INT32, BASE_DEC, VALS(dap_ErrorProtectionRequest_vals), 0,
5349 "ErrorProtectionRequest", HFILL }},
5350 { &hf_dap_errorCode,
5351 { "errorCode", "dap.errorCode",
5352 FT_UINT32, BASE_DEC, VALS(ros_Code_vals), 0,
5353 "Code", HFILL }},
5354 { &hf_dap_utcTime,
5355 { "utcTime", "dap.utcTime",
5356 FT_STRING, BASE_NONE, NULL, 0,
5357 NULL, HFILL }},
5358 { &hf_dap_generalizedTime,
5359 { "generalizedTime", "dap.generalizedTime",
5360 FT_STRING, BASE_NONE, NULL, 0,
5361 NULL, HFILL }},
5362 { &hf_dap_credentials,
5363 { "credentials", "dap.credentials",
5364 FT_UINT32, BASE_DEC, VALS(dap_Credentials_vals), 0,
5365 NULL, HFILL }},
5366 { &hf_dap_versions,
5367 { "versions", "dap.versions",
5368 FT_BYTES, BASE_NONE, NULL, 0,
5369 NULL, HFILL }},
5370 { &hf_dap_simple,
5371 { "simple", "dap.simple_element",
5372 FT_NONE, BASE_NONE, NULL, 0,
5373 "SimpleCredentials", HFILL }},
5374 { &hf_dap_strong,
5375 { "strong", "dap.strong_element",
5376 FT_NONE, BASE_NONE, NULL, 0,
5377 "StrongCredentials", HFILL }},
5378 { &hf_dap_externalProcedure,
5379 { "externalProcedure", "dap.externalProcedure_element",
5380 FT_NONE, BASE_NONE, NULL, 0,
5381 "EXTERNAL", HFILL }},
5382 { &hf_dap_spkm,
5383 { "spkm", "dap.spkm",
5384 FT_UINT32, BASE_DEC, VALS(dap_SpkmCredentials_vals), 0,
5385 "SpkmCredentials", HFILL }},
5386 { &hf_dap_sasl,
5387 { "sasl", "dap.sasl_element",
5388 FT_NONE, BASE_NONE, NULL, 0,
5389 "SaslCredentials", HFILL }},
5390 { &hf_dap_validity,
5391 { "validity", "dap.validity_element",
5392 FT_NONE, BASE_NONE, NULL, 0,
5393 NULL, HFILL }},
5394 { &hf_dap_time1,
5395 { "time1", "dap.time1",
5396 FT_UINT32, BASE_DEC, VALS(dap_T_time1_vals), 0,
5397 NULL, HFILL }},
5398 { &hf_dap_utc,
5399 { "utc", "dap.utc",
5400 FT_STRING, BASE_NONE, NULL, 0,
5401 "UTCTime", HFILL }},
5402 { &hf_dap_gt,
5403 { "gt", "dap.gt",
5404 FT_STRING, BASE_NONE, NULL, 0,
5405 "GeneralizedTime", HFILL }},
5406 { &hf_dap_time2,
5407 { "time2", "dap.time2",
5408 FT_UINT32, BASE_DEC, VALS(dap_T_time2_vals), 0,
5409 NULL, HFILL }},
5410 { &hf_dap_random1,
5411 { "random1", "dap.random1",
5412 FT_BYTES, BASE_NONE, NULL, 0,
5413 "BIT_STRING", HFILL }},
5414 { &hf_dap_random2,
5415 { "random2", "dap.random2",
5416 FT_BYTES, BASE_NONE, NULL, 0,
5417 "BIT_STRING", HFILL }},
5418 { &hf_dap_password,
5419 { "password", "dap.password",
5420 FT_UINT32, BASE_DEC, VALS(dap_T_password_vals), 0,
5421 NULL, HFILL }},
5422 { &hf_dap_unprotected,
5423 { "unprotected", "dap.unprotected",
5424 FT_BYTES, BASE_NONE, NULL, 0,
5425 "OCTET_STRING", HFILL }},
5426 { &hf_dap_protected,
5427 { "protected", "dap.protected_element",
5428 FT_NONE, BASE_NONE, NULL, 0,
5429 NULL, HFILL }},
5430 { &hf_dap_protectedPassword,
5431 { "protectedPassword", "dap.protectedPassword",
5432 FT_BYTES, BASE_NONE, NULL, 0,
5433 "OCTET_STRING", HFILL }},
5434 { &hf_dap_algorithmIdentifier,
5435 { "algorithmIdentifier", "dap.algorithmIdentifier_element",
5436 FT_NONE, BASE_NONE, NULL, 0,
5437 NULL, HFILL }},
5438 { &hf_dap_encrypted,
5439 { "encrypted", "dap.encrypted",
5440 FT_BYTES, BASE_NONE, NULL, 0,
5441 "BIT_STRING", HFILL }},
5442 { &hf_dap_bind_token,
5443 { "bind-token", "dap.bind_token_element",
5444 FT_NONE, BASE_NONE, NULL, 0,
5445 "Token", HFILL }},
5446 { &hf_dap_req,
5447 { "req", "dap.req_element",
5448 FT_NONE, BASE_NONE, NULL, 0,
5449 NULL, HFILL }},
5450 { &hf_dap_rep,
5451 { "rep", "dap.rep_element",
5452 FT_NONE, BASE_NONE, NULL, 0,
5453 NULL, HFILL }},
5454 { &hf_dap_mechanism,
5455 { "mechanism", "dap.mechanism",
5456 FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0,
5457 "DirectoryString", HFILL }},
5458 { &hf_dap_saslCredentials,
5459 { "credentials", "dap.credentials",
5460 FT_BYTES, BASE_NONE, NULL, 0,
5461 "OCTET_STRING", HFILL }},
5462 { &hf_dap_saslAbort,
5463 { "saslAbort", "dap.saslAbort",
5464 FT_BOOLEAN, BASE_NONE, NULL, 0,
5465 "BOOLEAN", HFILL }},
5466 { &hf_dap_algorithm,
5467 { "algorithm", "dap.algorithm_element",
5468 FT_NONE, BASE_NONE, NULL, 0,
5469 "AlgorithmIdentifier", HFILL }},
5470 { &hf_dap_utctime,
5471 { "time", "dap.time",
5472 FT_STRING, BASE_NONE, NULL, 0,
5473 "UTCTime", HFILL }},
5474 { &hf_dap_bindIntAlgorithm,
5475 { "bindIntAlgorithm", "dap.bindIntAlgorithm",
5476 FT_UINT32, BASE_DEC, NULL, 0,
5477 "SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier", HFILL }},
5478 { &hf_dap_bindIntAlgorithm_item,
5479 { "AlgorithmIdentifier", "dap.AlgorithmIdentifier_element",
5480 FT_NONE, BASE_NONE, NULL, 0,
5481 NULL, HFILL }},
5482 { &hf_dap_bindIntKeyInfo,
5483 { "bindIntKeyInfo", "dap.bindIntKeyInfo",
5484 FT_BYTES, BASE_NONE, NULL, 0,
5485 "BindKeyInfo", HFILL }},
5486 { &hf_dap_bindConfAlgorithm,
5487 { "bindConfAlgorithm", "dap.bindConfAlgorithm",
5488 FT_UINT32, BASE_DEC, NULL, 0,
5489 "SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier", HFILL }},
5490 { &hf_dap_bindConfAlgorithm_item,
5491 { "AlgorithmIdentifier", "dap.AlgorithmIdentifier_element",
5492 FT_NONE, BASE_NONE, NULL, 0,
5493 NULL, HFILL }},
5494 { &hf_dap_bindConfKeyInfo,
5495 { "bindConfKeyInfo", "dap.bindConfKeyInfo",
5496 FT_BYTES, BASE_NONE, NULL, 0,
5497 "BindKeyInfo", HFILL }},
5498 { &hf_dap_token_data,
5499 { "token-data", "dap.token_data_element",
5500 FT_NONE, BASE_NONE, NULL, 0,
5501 "TokenData", HFILL }},
5502 { &hf_dap_algorithm_identifier,
5503 { "algorithm-identifier", "dap.algorithm_identifier_element",
5504 FT_NONE, BASE_NONE, NULL, 0,
5505 "AlgorithmIdentifier", HFILL }},
5506 { &hf_dap_unsignedDirectoryBindError,
5507 { "unsignedDirectoryBindError", "dap.unsignedDirectoryBindError_element",
5508 FT_NONE, BASE_NONE, NULL, 0,
5509 "DirectoryBindErrorData", HFILL }},
5510 { &hf_dap_signedDirectoryBindError,
5511 { "signedDirectoryBindError", "dap.signedDirectoryBindError_element",
5512 FT_NONE, BASE_NONE, NULL, 0,
5513 NULL, HFILL }},
5514 { &hf_dap_directoryBindError,
5515 { "directoryBindError", "dap.directoryBindError_element",
5516 FT_NONE, BASE_NONE, NULL, 0,
5517 "DirectoryBindErrorData", HFILL }},
5518 { &hf_dap_error,
5519 { "error", "dap.error",
5520 FT_UINT32, BASE_DEC, VALS(dap_T_error_vals), 0,
5521 NULL, HFILL }},
5522 { &hf_dap_serviceProblem,
5523 { "serviceError", "dap.serviceError",
5524 FT_INT32, BASE_DEC, VALS(dap_ServiceProblem_vals), 0,
5525 "ServiceProblem", HFILL }},
5526 { &hf_dap_securityProblem,
5527 { "securityError", "dap.securityError",
5528 FT_INT32, BASE_DEC, VALS(dap_SecurityProblem_vals), 0,
5529 "SecurityProblem", HFILL }},
5530 { &hf_dap_securityParameters,
5531 { "securityParameters", "dap.securityParameters_element",
5532 FT_NONE, BASE_NONE, NULL, 0,
5533 NULL, HFILL }},
5534 { &hf_dap_object,
5535 { "object", "dap.object",
5536 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
5537 "Name", HFILL }},
5538 { &hf_dap_selection,
5539 { "selection", "dap.selection_element",
5540 FT_NONE, BASE_NONE, NULL, 0,
5541 "EntryInformationSelection", HFILL }},
5542 { &hf_dap_modifyRightsRequest,
5543 { "modifyRightsRequest", "dap.modifyRightsRequest",
5544 FT_BOOLEAN, BASE_NONE, NULL, 0,
5545 "BOOLEAN", HFILL }},
5546 { &hf_dap_serviceControls,
5547 { "serviceControls", "dap.serviceControls_element",
5548 FT_NONE, BASE_NONE, NULL, 0,
5549 NULL, HFILL }},
5550 { &hf_dap_requestor,
5551 { "requestor", "dap.requestor",
5552 FT_UINT32, BASE_DEC, NULL, 0,
5553 "DistinguishedName", HFILL }},
5554 { &hf_dap_operationProgress,
5555 { "operationProgress", "dap.operationProgress_element",
5556 FT_NONE, BASE_NONE, NULL, 0,
5557 NULL, HFILL }},
5558 { &hf_dap_aliasedRDNs,
5559 { "aliasedRDNs", "dap.aliasedRDNs",
5560 FT_INT32, BASE_DEC, NULL, 0,
5561 "INTEGER", HFILL }},
5562 { &hf_dap_criticalExtensions,
5563 { "criticalExtensions", "dap.criticalExtensions",
5564 FT_BYTES, BASE_NONE, NULL, 0,
5565 "BIT_STRING", HFILL }},
5566 { &hf_dap_referenceType,
5567 { "referenceType", "dap.referenceType",
5568 FT_UINT32, BASE_DEC, VALS(dsp_ReferenceType_vals), 0,
5569 NULL, HFILL }},
5570 { &hf_dap_entryOnly,
5571 { "entryOnly", "dap.entryOnly",
5572 FT_BOOLEAN, BASE_NONE, NULL, 0,
5573 "BOOLEAN", HFILL }},
5574 { &hf_dap_exclusions,
5575 { "exclusions", "dap.exclusions",
5576 FT_UINT32, BASE_DEC, NULL, 0,
5577 NULL, HFILL }},
5578 { &hf_dap_nameResolveOnMaster,
5579 { "nameResolveOnMaster", "dap.nameResolveOnMaster",
5580 FT_BOOLEAN, BASE_NONE, NULL, 0,
5581 "BOOLEAN", HFILL }},
5582 { &hf_dap_operationContexts,
5583 { "operationContexts", "dap.operationContexts",
5584 FT_UINT32, BASE_DEC, VALS(dap_ContextSelection_vals), 0,
5585 "ContextSelection", HFILL }},
5586 { &hf_dap_familyGrouping,
5587 { "familyGrouping", "dap.familyGrouping",
5588 FT_UINT32, BASE_DEC, VALS(dap_FamilyGrouping_vals), 0,
5589 NULL, HFILL }},
5590 { &hf_dap_rdnSequence,
5591 { "rdnSequence", "dap.rdnSequence",
5592 FT_UINT32, BASE_DEC, NULL, 0,
5593 NULL, HFILL }},
5594 { &hf_dap_unsignedReadArgument,
5595 { "unsignedReadArgument", "dap.unsignedReadArgument_element",
5596 FT_NONE, BASE_NONE, NULL, 0,
5597 "ReadArgumentData", HFILL }},
5598 { &hf_dap_signedReadArgument,
5599 { "signedReadArgument", "dap.signedReadArgument_element",
5600 FT_NONE, BASE_NONE, NULL, 0,
5601 NULL, HFILL }},
5602 { &hf_dap_readArgument,
5603 { "readArgument", "dap.readArgument_element",
5604 FT_NONE, BASE_NONE, NULL, 0,
5605 "ReadArgumentData", HFILL }},
5606 { &hf_dap_entry,
5607 { "entry", "dap.entry_element",
5608 FT_NONE, BASE_NONE, NULL, 0,
5609 "EntryInformation", HFILL }},
5610 { &hf_dap_modifyRights,
5611 { "modifyRights", "dap.modifyRights",
5612 FT_UINT32, BASE_DEC, NULL, 0,
5613 NULL, HFILL }},
5614 { &hf_dap_performer,
5615 { "performer", "dap.performer",
5616 FT_UINT32, BASE_DEC, NULL, 0,
5617 "DistinguishedName", HFILL }},
5618 { &hf_dap_aliasDereferenced,
5619 { "aliasDereferenced", "dap.aliasDereferenced",
5620 FT_BOOLEAN, BASE_NONE, NULL, 0,
5621 "BOOLEAN", HFILL }},
5622 { &hf_dap_notification,
5623 { "notification", "dap.notification",
5624 FT_UINT32, BASE_DEC, NULL, 0,
5625 "SEQUENCE_SIZE_1_MAX_OF_Attribute", HFILL }},
5626 { &hf_dap_notification_item,
5627 { "Attribute", "dap.Attribute_element",
5628 FT_NONE, BASE_NONE, NULL, 0,
5629 NULL, HFILL }},
5630 { &hf_dap_unsignedReadResult,
5631 { "unsignedReadResult", "dap.unsignedReadResult_element",
5632 FT_NONE, BASE_NONE, NULL, 0,
5633 "ReadResultData", HFILL }},
5634 { &hf_dap_signedReadResult,
5635 { "signedReadResult", "dap.signedReadResult_element",
5636 FT_NONE, BASE_NONE, NULL, 0,
5637 NULL, HFILL }},
5638 { &hf_dap_readResult,
5639 { "readResult", "dap.readResult_element",
5640 FT_NONE, BASE_NONE, NULL, 0,
5641 "ReadResultData", HFILL }},
5642 { &hf_dap_ModifyRights_item,
5643 { "ModifyRights item", "dap.ModifyRights_item_element",
5644 FT_NONE, BASE_NONE, NULL, 0,
5645 NULL, HFILL }},
5646 { &hf_dap_item,
5647 { "item", "dap.item",
5648 FT_UINT32, BASE_DEC, VALS(dap_T_item_vals), 0,
5649 NULL, HFILL }},
5650 { &hf_dap_item_entry,
5651 { "entry", "dap.entry_element",
5652 FT_NONE, BASE_NONE, NULL, 0,
5653 NULL, HFILL }},
5654 { &hf_dap_attribute_type,
5655 { "attribute", "dap.attribute",
5656 FT_OID, BASE_NONE, NULL, 0,
5657 "AttributeType", HFILL }},
5658 { &hf_dap_value_assertion,
5659 { "value", "dap.value_element",
5660 FT_NONE, BASE_NONE, NULL, 0,
5661 "AttributeValueAssertion", HFILL }},
5662 { &hf_dap_permission,
5663 { "permission", "dap.permission",
5664 FT_BYTES, BASE_NONE, NULL, 0,
5665 NULL, HFILL }},
5666 { &hf_dap_purported,
5667 { "purported", "dap.purported_element",
5668 FT_NONE, BASE_NONE, NULL, 0,
5669 "AttributeValueAssertion", HFILL }},
5670 { &hf_dap_unsignedCompareArgument,
5671 { "unsignedCompareArgument", "dap.unsignedCompareArgument_element",
5672 FT_NONE, BASE_NONE, NULL, 0,
5673 "CompareArgumentData", HFILL }},
5674 { &hf_dap_signedCompareArgument,
5675 { "signedCompareArgument", "dap.signedCompareArgument_element",
5676 FT_NONE, BASE_NONE, NULL, 0,
5677 NULL, HFILL }},
5678 { &hf_dap_compareArgument,
5679 { "compareArgument", "dap.compareArgument_element",
5680 FT_NONE, BASE_NONE, NULL, 0,
5681 "CompareArgumentData", HFILL }},
5682 { &hf_dap_matched,
5683 { "matched", "dap.matched",
5684 FT_BOOLEAN, BASE_NONE, NULL, 0,
5685 "BOOLEAN", HFILL }},
5686 { &hf_dap_matchedSubtype,
5687 { "matchedSubtype", "dap.matchedSubtype",
5688 FT_OID, BASE_NONE, NULL, 0,
5689 "AttributeType", HFILL }},
5690 { &hf_dap_unsignedCompareResult,
5691 { "unsignedCompareResult", "dap.unsignedCompareResult_element",
5692 FT_NONE, BASE_NONE, NULL, 0,
5693 "CompareResultData", HFILL }},
5694 { &hf_dap_signedCompareResult,
5695 { "signedCompareResult", "dap.signedCompareResult_element",
5696 FT_NONE, BASE_NONE, NULL, 0,
5697 NULL, HFILL }},
5698 { &hf_dap_compareResult,
5699 { "compareResult", "dap.compareResult_element",
5700 FT_NONE, BASE_NONE, NULL, 0,
5701 "CompareResultData", HFILL }},
5702 { &hf_dap_invokeID,
5703 { "invokeID", "dap.invokeID",
5704 FT_UINT32, BASE_DEC, VALS(ros_InvokeId_vals), 0,
5705 NULL, HFILL }},
5706 { &hf_dap_unsignedAbandonArgument,
5707 { "unsignedAbandonArgument", "dap.unsignedAbandonArgument_element",
5708 FT_NONE, BASE_NONE, NULL, 0,
5709 "AbandonArgumentData", HFILL }},
5710 { &hf_dap_signedAbandonArgument,
5711 { "signedAbandonArgument", "dap.signedAbandonArgument_element",
5712 FT_NONE, BASE_NONE, NULL, 0,
5713 NULL, HFILL }},
5714 { &hf_dap_abandonArgument,
5715 { "abandonArgument", "dap.abandonArgument_element",
5716 FT_NONE, BASE_NONE, NULL, 0,
5717 "AbandonArgumentData", HFILL }},
5718 { &hf_dap_null,
5719 { "null", "dap.null_element",
5720 FT_NONE, BASE_NONE, NULL, 0,
5721 NULL, HFILL }},
5722 { &hf_dap_abandon_information,
5723 { "information", "dap.information",
5724 FT_UINT32, BASE_DEC, VALS(dap_AbandonInformation_vals), 0,
5725 "AbandonInformation", HFILL }},
5726 { &hf_dap_unsignedAbandonResult,
5727 { "unsignedAbandonResult", "dap.unsignedAbandonResult_element",
5728 FT_NONE, BASE_NONE, NULL, 0,
5729 "AbandonResultData", HFILL }},
5730 { &hf_dap_signedAbandonResult,
5731 { "signedAbandonResult", "dap.signedAbandonResult_element",
5732 FT_NONE, BASE_NONE, NULL, 0,
5733 NULL, HFILL }},
5734 { &hf_dap_abandonResult,
5735 { "abandonResult", "dap.abandonResult_element",
5736 FT_NONE, BASE_NONE, NULL, 0,
5737 "AbandonResultData", HFILL }},
5738 { &hf_dap_pagedResults,
5739 { "pagedResults", "dap.pagedResults",
5740 FT_UINT32, BASE_DEC, VALS(dap_PagedResultsRequest_vals), 0,
5741 "PagedResultsRequest", HFILL }},
5742 { &hf_dap_listFamily,
5743 { "listFamily", "dap.listFamily",
5744 FT_BOOLEAN, BASE_NONE, NULL, 0,
5745 "BOOLEAN", HFILL }},
5746 { &hf_dap_unsignedListArgument,
5747 { "unsignedListArgument", "dap.unsignedListArgument_element",
5748 FT_NONE, BASE_NONE, NULL, 0,
5749 "ListArgumentData", HFILL }},
5750 { &hf_dap_signedListArgument,
5751 { "signedListArgument", "dap.signedListArgument_element",
5752 FT_NONE, BASE_NONE, NULL, 0,
5753 NULL, HFILL }},
5754 { &hf_dap_listArgument,
5755 { "listArgument", "dap.listArgument_element",
5756 FT_NONE, BASE_NONE, NULL, 0,
5757 "ListArgumentData", HFILL }},
5758 { &hf_dap_listInfo,
5759 { "listInfo", "dap.listInfo_element",
5760 FT_NONE, BASE_NONE, NULL, 0,
5761 NULL, HFILL }},
5762 { &hf_dap_subordinates,
5763 { "subordinates", "dap.subordinates",
5764 FT_UINT32, BASE_DEC, NULL, 0,
5765 NULL, HFILL }},
5766 { &hf_dap_subordinates_item,
5767 { "subordinates item", "dap.subordinates_item_element",
5768 FT_NONE, BASE_NONE, NULL, 0,
5769 NULL, HFILL }},
5770 { &hf_dap_aliasEntry,
5771 { "aliasEntry", "dap.aliasEntry",
5772 FT_BOOLEAN, BASE_NONE, NULL, 0,
5773 "BOOLEAN", HFILL }},
5774 { &hf_dap_partialOutcomeQualifier,
5775 { "partialOutcomeQualifier", "dap.partialOutcomeQualifier_element",
5776 FT_NONE, BASE_NONE, NULL, 0,
5777 NULL, HFILL }},
5778 { &hf_dap_uncorrelatedListInfo,
5779 { "uncorrelatedListInfo", "dap.uncorrelatedListInfo",
5780 FT_UINT32, BASE_DEC, NULL, 0,
5781 "SET_OF_ListResult", HFILL }},
5782 { &hf_dap_uncorrelatedListInfo_item,
5783 { "ListResult", "dap.ListResult",
5784 FT_UINT32, BASE_DEC, VALS(dap_ListResult_vals), 0,
5785 NULL, HFILL }},
5786 { &hf_dap_unsignedListResult,
5787 { "unsignedListResult", "dap.unsignedListResult",
5788 FT_UINT32, BASE_DEC, VALS(dap_ListResultData_vals), 0,
5789 "ListResultData", HFILL }},
5790 { &hf_dap_signedListResult,
5791 { "signedListResult", "dap.signedListResult_element",
5792 FT_NONE, BASE_NONE, NULL, 0,
5793 NULL, HFILL }},
5794 { &hf_dap_listResult,
5795 { "listResult", "dap.listResult",
5796 FT_UINT32, BASE_DEC, VALS(dap_ListResultData_vals), 0,
5797 "ListResultData", HFILL }},
5798 { &hf_dap_limitProblem,
5799 { "limitProblem", "dap.limitProblem",
5800 FT_INT32, BASE_DEC, VALS(dap_LimitProblem_vals), 0,
5801 NULL, HFILL }},
5802 { &hf_dap_unexplored,
5803 { "unexplored", "dap.unexplored",
5804 FT_UINT32, BASE_DEC, NULL, 0,
5805 "SET_SIZE_1_MAX_OF_ContinuationReference", HFILL }},
5806 { &hf_dap_unexplored_item,
5807 { "ContinuationReference", "dap.ContinuationReference_element",
5808 FT_NONE, BASE_NONE, NULL, 0,
5809 NULL, HFILL }},
5810 { &hf_dap_unavailableCriticalExtensions,
5811 { "unavailableCriticalExtensions", "dap.unavailableCriticalExtensions",
5812 FT_BOOLEAN, BASE_NONE, NULL, 0,
5813 "BOOLEAN", HFILL }},
5814 { &hf_dap_unknownErrors,
5815 { "unknownErrors", "dap.unknownErrors",
5816 FT_UINT32, BASE_DEC, NULL, 0,
5817 NULL, HFILL }},
5818 { &hf_dap_unknownErrors_item,
5819 { "unknownErrors item", "dap.unknownErrors_item",
5820 FT_OID, BASE_NONE, NULL, 0,
5821 "OBJECT_IDENTIFIER", HFILL }},
5822 { &hf_dap_queryReference,
5823 { "queryReference", "dap.queryReference",
5824 FT_BYTES, BASE_NONE, NULL, 0,
5825 "OCTET_STRING", HFILL }},
5826 { &hf_dap_overspecFilter,
5827 { "overspecFilter", "dap.overspecFilter",
5828 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5829 "Filter", HFILL }},
5830 { &hf_dap_entryCount,
5831 { "entryCount", "dap.entryCount",
5832 FT_UINT32, BASE_DEC, VALS(dap_T_entryCount_vals), 0,
5833 NULL, HFILL }},
5834 { &hf_dap_bestEstimate,
5835 { "bestEstimate", "dap.bestEstimate",
5836 FT_INT32, BASE_DEC, NULL, 0,
5837 "INTEGER", HFILL }},
5838 { &hf_dap_lowEstimate,
5839 { "lowEstimate", "dap.lowEstimate",
5840 FT_INT32, BASE_DEC, NULL, 0,
5841 "INTEGER", HFILL }},
5842 { &hf_dap_exact,
5843 { "exact", "dap.exact",
5844 FT_INT32, BASE_DEC, NULL, 0,
5845 "INTEGER", HFILL }},
5846 { &hf_dap_streamedResult,
5847 { "streamedResult", "dap.streamedResult",
5848 FT_BOOLEAN, BASE_NONE, NULL, 0,
5849 "BOOLEAN", HFILL }},
5850 { &hf_dap_baseObject,
5851 { "baseObject", "dap.baseObject",
5852 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
5853 "Name", HFILL }},
5854 { &hf_dap_subset,
5855 { "subset", "dap.subset",
5856 FT_INT32, BASE_DEC, VALS(dap_T_subset_vals), 0,
5857 NULL, HFILL }},
5858 { &hf_dap_filter,
5859 { "filter", "dap.filter",
5860 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5861 NULL, HFILL }},
5862 { &hf_dap_searchAliases,
5863 { "searchAliases", "dap.searchAliases",
5864 FT_BOOLEAN, BASE_NONE, NULL, 0,
5865 "BOOLEAN", HFILL }},
5866 { &hf_dap_matchedValuesOnly,
5867 { "matchedValuesOnly", "dap.matchedValuesOnly",
5868 FT_BOOLEAN, BASE_NONE, NULL, 0,
5869 "BOOLEAN", HFILL }},
5870 { &hf_dap_extendedFilter,
5871 { "extendedFilter", "dap.extendedFilter",
5872 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5873 "Filter", HFILL }},
5874 { &hf_dap_checkOverspecified,
5875 { "checkOverspecified", "dap.checkOverspecified",
5876 FT_BOOLEAN, BASE_NONE, NULL, 0,
5877 "BOOLEAN", HFILL }},
5878 { &hf_dap_relaxation,
5879 { "relaxation", "dap.relaxation_element",
5880 FT_NONE, BASE_NONE, NULL, 0,
5881 "RelaxationPolicy", HFILL }},
5882 { &hf_dap_extendedArea,
5883 { "extendedArea", "dap.extendedArea",
5884 FT_INT32, BASE_DEC, NULL, 0,
5885 "INTEGER", HFILL }},
5886 { &hf_dap_hierarchySelections,
5887 { "hierarchySelections", "dap.hierarchySelections",
5888 FT_BYTES, BASE_NONE, NULL, 0,
5889 NULL, HFILL }},
5890 { &hf_dap_searchControlOptions,
5891 { "searchControlOptions", "dap.searchControlOptions",
5892 FT_BYTES, BASE_NONE, NULL, 0,
5893 NULL, HFILL }},
5894 { &hf_dap_joinArguments,
5895 { "joinArguments", "dap.joinArguments",
5896 FT_UINT32, BASE_DEC, NULL, 0,
5897 "SEQUENCE_SIZE_1_MAX_OF_JoinArgument", HFILL }},
5898 { &hf_dap_joinArguments_item,
5899 { "JoinArgument", "dap.JoinArgument_element",
5900 FT_NONE, BASE_NONE, NULL, 0,
5901 NULL, HFILL }},
5902 { &hf_dap_joinType,
5903 { "joinType", "dap.joinType",
5904 FT_UINT32, BASE_DEC, VALS(dap_T_joinType_vals), 0,
5905 NULL, HFILL }},
5906 { &hf_dap_unsignedSearchArgument,
5907 { "unsignedSearchArgument", "dap.unsignedSearchArgument_element",
5908 FT_NONE, BASE_NONE, NULL, 0,
5909 "SearchArgumentData", HFILL }},
5910 { &hf_dap_signedSearchArgument,
5911 { "signedSearchArgument", "dap.signedSearchArgument_element",
5912 FT_NONE, BASE_NONE, NULL, 0,
5913 NULL, HFILL }},
5914 { &hf_dap_searchArgument,
5915 { "searchArgument", "dap.searchArgument_element",
5916 FT_NONE, BASE_NONE, NULL, 0,
5917 "SearchArgumentData", HFILL }},
5918 { &hf_dap_joinBaseObject,
5919 { "joinBaseObject", "dap.joinBaseObject",
5920 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
5921 "Name", HFILL }},
5922 { &hf_dap_domainLocalID,
5923 { "domainLocalID", "dap.domainLocalID",
5924 FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0,
5925 NULL, HFILL }},
5926 { &hf_dap_joinSubset,
5927 { "joinSubset", "dap.joinSubset",
5928 FT_UINT32, BASE_DEC, VALS(dap_T_joinSubset_vals), 0,
5929 NULL, HFILL }},
5930 { &hf_dap_joinFilter,
5931 { "joinFilter", "dap.joinFilter",
5932 FT_UINT32, BASE_DEC, VALS(dap_Filter_vals), 0,
5933 "Filter", HFILL }},
5934 { &hf_dap_joinAttributes,
5935 { "joinAttributes", "dap.joinAttributes",
5936 FT_UINT32, BASE_DEC, NULL, 0,
5937 "SEQUENCE_SIZE_1_MAX_OF_JoinAttPair", HFILL }},
5938 { &hf_dap_joinAttributes_item,
5939 { "JoinAttPair", "dap.JoinAttPair_element",
5940 FT_NONE, BASE_NONE, NULL, 0,
5941 NULL, HFILL }},
5942 { &hf_dap_joinSelection,
5943 { "joinSelection", "dap.joinSelection_element",
5944 FT_NONE, BASE_NONE, NULL, 0,
5945 "EntryInformationSelection", HFILL }},
5946 { &hf_dap_baseAtt,
5947 { "baseAtt", "dap.baseAtt",
5948 FT_OID, BASE_NONE, NULL, 0,
5949 "AttributeType", HFILL }},
5950 { &hf_dap_joinAtt,
5951 { "joinAtt", "dap.joinAtt",
5952 FT_OID, BASE_NONE, NULL, 0,
5953 "AttributeType", HFILL }},
5954 { &hf_dap_joinContext,
5955 { "joinContext", "dap.joinContext",
5956 FT_UINT32, BASE_DEC, NULL, 0,
5957 "SEQUENCE_SIZE_1_MAX_OF_JoinContextType", HFILL }},
5958 { &hf_dap_joinContext_item,
5959 { "JoinContextType", "dap.JoinContextType",
5960 FT_OID, BASE_NONE, NULL, 0,
5961 NULL, HFILL }},
5962 { &hf_dap_searchInfo,
5963 { "searchInfo", "dap.searchInfo_element",
5964 FT_NONE, BASE_NONE, NULL, 0,
5965 NULL, HFILL }},
5966 { &hf_dap_entries,
5967 { "entries", "dap.entries",
5968 FT_UINT32, BASE_DEC, NULL, 0,
5969 "SET_OF_EntryInformation", HFILL }},
5970 { &hf_dap_entries_item,
5971 { "EntryInformation", "dap.EntryInformation_element",
5972 FT_NONE, BASE_NONE, NULL, 0,
5973 NULL, HFILL }},
5974 { &hf_dap_altMatching,
5975 { "altMatching", "dap.altMatching",
5976 FT_BOOLEAN, BASE_NONE, NULL, 0,
5977 "BOOLEAN", HFILL }},
5978 { &hf_dap_uncorrelatedSearchInfo,
5979 { "uncorrelatedSearchInfo", "dap.uncorrelatedSearchInfo",
5980 FT_UINT32, BASE_DEC, NULL, 0,
5981 "SET_OF_SearchResult", HFILL }},
5982 { &hf_dap_uncorrelatedSearchInfo_item,
5983 { "SearchResult", "dap.SearchResult",
5984 FT_UINT32, BASE_DEC, VALS(dap_SearchResult_vals), 0,
5985 NULL, HFILL }},
5986 { &hf_dap_unsignedSearchResult,
5987 { "unsignedSearchResult", "dap.unsignedSearchResult",
5988 FT_UINT32, BASE_DEC, VALS(dap_SearchResultData_vals), 0,
5989 "SearchResultData", HFILL }},
5990 { &hf_dap_signedSearchResult,
5991 { "signedSearchResult", "dap.signedSearchResult_element",
5992 FT_NONE, BASE_NONE, NULL, 0,
5993 NULL, HFILL }},
5994 { &hf_dap_searchResult,
5995 { "searchResult", "dap.searchResult",
5996 FT_UINT32, BASE_DEC, VALS(dap_SearchResultData_vals), 0,
5997 "SearchResultData", HFILL }},
5998 { &hf_dap_add_entry,
5999 { "entry", "dap.entry",
6000 FT_UINT32, BASE_DEC, NULL, 0,
6001 "SET_OF_Attribute", HFILL }},
6002 { &hf_dap_add_entry_item,
6003 { "Attribute", "dap.Attribute_element",
6004 FT_NONE, BASE_NONE, NULL, 0,
6005 NULL, HFILL }},
6006 { &hf_dap_targetSystem,
6007 { "targetSystem", "dap.targetSystem_element",
6008 FT_NONE, BASE_NONE, NULL, 0,
6009 "AccessPoint", HFILL }},
6010 { &hf_dap_unsignedAddEntryArgument,
6011 { "unsignedAddEntryArgument", "dap.unsignedAddEntryArgument_element",
6012 FT_NONE, BASE_NONE, NULL, 0,
6013 "AddEntryArgumentData", HFILL }},
6014 { &hf_dap_signedAddEntryArgument,
6015 { "signedAddEntryArgument", "dap.signedAddEntryArgument_element",
6016 FT_NONE, BASE_NONE, NULL, 0,
6017 NULL, HFILL }},
6018 { &hf_dap_addEntryArgument,
6019 { "addEntryArgument", "dap.addEntryArgument_element",
6020 FT_NONE, BASE_NONE, NULL, 0,
6021 "AddEntryArgumentData", HFILL }},
6022 { &hf_dap_add_entry_information,
6023 { "information", "dap.information",
6024 FT_UINT32, BASE_DEC, VALS(dap_AddEntryInformation_vals), 0,
6025 "AddEntryInformation", HFILL }},
6026 { &hf_dap_unsignedAddEntryResult,
6027 { "unsignedAddEntryResult", "dap.unsignedAddEntryResult_element",
6028 FT_NONE, BASE_NONE, NULL, 0,
6029 "AddEntryResultData", HFILL }},
6030 { &hf_dap_signedAddEntryResult,
6031 { "signedAddEntryResult", "dap.signedAddEntryResult_element",
6032 FT_NONE, BASE_NONE, NULL, 0,
6033 NULL, HFILL }},
6034 { &hf_dap_addEntryResult,
6035 { "addEntryResult", "dap.addEntryResult_element",
6036 FT_NONE, BASE_NONE, NULL, 0,
6037 "AddEntryResultData", HFILL }},
6038 { &hf_dap_unsignedRemoveEntryArgument,
6039 { "unsignedRemoveEntryArgument", "dap.unsignedRemoveEntryArgument_element",
6040 FT_NONE, BASE_NONE, NULL, 0,
6041 "RemoveEntryArgumentData", HFILL }},
6042 { &hf_dap_signedRemoveEntryArgument,
6043 { "signedRemoveEntryArgument", "dap.signedRemoveEntryArgument_element",
6044 FT_NONE, BASE_NONE, NULL, 0,
6045 NULL, HFILL }},
6046 { &hf_dap_removeEntryArgument,
6047 { "removeEntryArgument", "dap.removeEntryArgument_element",
6048 FT_NONE, BASE_NONE, NULL, 0,
6049 "RemoveEntryArgumentData", HFILL }},
6050 { &hf_dap_remove_entry_information,
6051 { "information", "dap.information",
6052 FT_UINT32, BASE_DEC, VALS(dap_RemoveEntryInformation_vals), 0,
6053 "RemoveEntryInformation", HFILL }},
6054 { &hf_dap_unsignedRemoveEntryResult,
6055 { "unsignedRemoveEntryResult", "dap.unsignedRemoveEntryResult_element",
6056 FT_NONE, BASE_NONE, NULL, 0,
6057 "RemoveEntryResultData", HFILL }},
6058 { &hf_dap_signedRemoveEntryResult,
6059 { "signedRemoveEntryResult", "dap.signedRemoveEntryResult_element",
6060 FT_NONE, BASE_NONE, NULL, 0,
6061 NULL, HFILL }},
6062 { &hf_dap_removeEntryResult,
6063 { "removeEntryResult", "dap.removeEntryResult_element",
6064 FT_NONE, BASE_NONE, NULL, 0,
6065 "RemoveEntryResultData", HFILL }},
6066 { &hf_dap_changes,
6067 { "changes", "dap.changes",
6068 FT_UINT32, BASE_DEC, NULL, 0,
6069 "SEQUENCE_OF_EntryModification", HFILL }},
6070 { &hf_dap_changes_item,
6071 { "EntryModification", "dap.EntryModification",
6072 FT_UINT32, BASE_DEC, VALS(dap_EntryModification_vals), 0,
6073 NULL, HFILL }},
6074 { &hf_dap_unsignedModifyEntryArgument,
6075 { "unsignedModifyEntryArgument", "dap.unsignedModifyEntryArgument_element",
6076 FT_NONE, BASE_NONE, NULL, 0,
6077 "ModifyEntryArgumentData", HFILL }},
6078 { &hf_dap_signedModifyEntryArgument,
6079 { "signedModifyEntryArgument", "dap.signedModifyEntryArgument_element",
6080 FT_NONE, BASE_NONE, NULL, 0,
6081 NULL, HFILL }},
6082 { &hf_dap_modifyEntryArgument,
6083 { "modifyEntryArgument", "dap.modifyEntryArgument_element",
6084 FT_NONE, BASE_NONE, NULL, 0,
6085 "ModifyEntryArgumentData", HFILL }},
6086 { &hf_dap_modify_entry_information,
6087 { "information", "dap.information",
6088 FT_UINT32, BASE_DEC, VALS(dap_ModifyEntryInformation_vals), 0,
6089 "ModifyEntryInformation", HFILL }},
6090 { &hf_dap_unsignedModifyEntryResult,
6091 { "unsignedModifyEntryResult", "dap.unsignedModifyEntryResult_element",
6092 FT_NONE, BASE_NONE, NULL, 0,
6093 "ModifyEntryResultData", HFILL }},
6094 { &hf_dap_signedModifyEntryResult,
6095 { "signedModifyEntryResult", "dap.signedModifyEntryResult_element",
6096 FT_NONE, BASE_NONE, NULL, 0,
6097 NULL, HFILL }},
6098 { &hf_dap_modifyEntryResult,
6099 { "modifyEntryResult", "dap.modifyEntryResult_element",
6100 FT_NONE, BASE_NONE, NULL, 0,
6101 "ModifyEntryResultData", HFILL }},
6102 { &hf_dap_addAttribute,
6103 { "addAttribute", "dap.addAttribute_element",
6104 FT_NONE, BASE_NONE, NULL, 0,
6105 "Attribute", HFILL }},
6106 { &hf_dap_removeAttribute,
6107 { "removeAttribute", "dap.removeAttribute",
6108 FT_OID, BASE_NONE, NULL, 0,
6109 "AttributeType", HFILL }},
6110 { &hf_dap_addValues,
6111 { "addValues", "dap.addValues_element",
6112 FT_NONE, BASE_NONE, NULL, 0,
6113 "Attribute", HFILL }},
6114 { &hf_dap_removeValues,
6115 { "removeValues", "dap.removeValues_element",
6116 FT_NONE, BASE_NONE, NULL, 0,
6117 "Attribute", HFILL }},
6118 { &hf_dap_alterValues,
6119 { "alterValues", "dap.alterValues_element",
6120 FT_NONE, BASE_NONE, NULL, 0,
6121 "AttributeTypeAndValue", HFILL }},
6122 { &hf_dap_resetValue,
6123 { "resetValue", "dap.resetValue",
6124 FT_OID, BASE_NONE, NULL, 0,
6125 "AttributeType", HFILL }},
6126 { &hf_dap_newRDN,
6127 { "newRDN", "dap.newRDN",
6128 FT_UINT32, BASE_DEC, NULL, 0,
6129 "RelativeDistinguishedName", HFILL }},
6130 { &hf_dap_deleteOldRDN,
6131 { "deleteOldRDN", "dap.deleteOldRDN",
6132 FT_BOOLEAN, BASE_NONE, NULL, 0,
6133 "BOOLEAN", HFILL }},
6134 { &hf_dap_newSuperior,
6135 { "newSuperior", "dap.newSuperior",
6136 FT_UINT32, BASE_DEC, NULL, 0,
6137 "DistinguishedName", HFILL }},
6138 { &hf_dap_modify_dn_information,
6139 { "information", "dap.information",
6140 FT_UINT32, BASE_DEC, VALS(dap_ModifyDNInformation_vals), 0,
6141 "ModifyDNInformation", HFILL }},
6142 { &hf_dap_unsignedModifyDNResult,
6143 { "unsignedModifyDNResult", "dap.unsignedModifyDNResult_element",
6144 FT_NONE, BASE_NONE, NULL, 0,
6145 "ModifyDNResultData", HFILL }},
6146 { &hf_dap_signedModifyDNResult,
6147 { "signedModifyDNResult", "dap.signedModifyDNResult_element",
6148 FT_NONE, BASE_NONE, NULL, 0,
6149 NULL, HFILL }},
6150 { &hf_dap_modifyDNResult,
6151 { "modifyDNResult", "dap.modifyDNResult_element",
6152 FT_NONE, BASE_NONE, NULL, 0,
6153 "ModifyDNResultData", HFILL }},
6154 { &hf_dap_unsignedAbandoned,
6155 { "unsignedAbandoned", "dap.unsignedAbandoned_element",
6156 FT_NONE, BASE_NONE, NULL, 0,
6157 "AbandonedData", HFILL }},
6158 { &hf_dap_signedAbandoned,
6159 { "signedAbandoned", "dap.signedAbandoned_element",
6160 FT_NONE, BASE_NONE, NULL, 0,
6161 NULL, HFILL }},
6162 { &hf_dap_abandoned,
6163 { "abandoned", "dap.abandoned_element",
6164 FT_NONE, BASE_NONE, NULL, 0,
6165 "AbandonedData", HFILL }},
6166 { &hf_dap_abandon_failed_problem,
6167 { "problem", "dap.problem",
6168 FT_INT32, BASE_DEC, VALS(dap_AbandonProblem_vals), 0,
6169 "AbandonProblem", HFILL }},
6170 { &hf_dap_operation,
6171 { "operation", "dap.operation",
6172 FT_UINT32, BASE_DEC, VALS(ros_InvokeId_vals), 0,
6173 "InvokeId", HFILL }},
6174 { &hf_dap_unsignedAbandonFailedError,
6175 { "unsignedAbandonFailedError", "dap.unsignedAbandonFailedError_element",
6176 FT_NONE, BASE_NONE, NULL, 0,
6177 "AbandonFailedErrorData", HFILL }},
6178 { &hf_dap_signedAbandonFailedError,
6179 { "signedAbandonFailedError", "dap.signedAbandonFailedError_element",
6180 FT_NONE, BASE_NONE, NULL, 0,
6181 NULL, HFILL }},
6182 { &hf_dap_abandonFailedError,
6183 { "abandonFailedError", "dap.abandonFailedError_element",
6184 FT_NONE, BASE_NONE, NULL, 0,
6185 "AbandonFailedErrorData", HFILL }},
6186 { &hf_dap_problems,
6187 { "problems", "dap.problems",
6188 FT_UINT32, BASE_DEC, NULL, 0,
6189 NULL, HFILL }},
6190 { &hf_dap_problems_item,
6191 { "problems item", "dap.problems_item_element",
6192 FT_NONE, BASE_NONE, NULL, 0,
6193 NULL, HFILL }},
6194 { &hf_dap_attribute_error_problem,
6195 { "problem", "dap.problem",
6196 FT_INT32, BASE_DEC, VALS(dap_AttributeProblem_vals), 0,
6197 "AttributeProblem", HFILL }},
6198 { &hf_dap_value,
6199 { "value", "dap.value_element",
6200 FT_NONE, BASE_NONE, NULL, 0,
6201 "AttributeValue", HFILL }},
6202 { &hf_dap_unsignedAttributeError,
6203 { "unsignedAttributeError", "dap.unsignedAttributeError_element",
6204 FT_NONE, BASE_NONE, NULL, 0,
6205 "AttributeErrorData", HFILL }},
6206 { &hf_dap_signedAttributeError,
6207 { "signedAttributeError", "dap.signedAttributeError_element",
6208 FT_NONE, BASE_NONE, NULL, 0,
6209 NULL, HFILL }},
6210 { &hf_dap_attributeError,
6211 { "attributeError", "dap.attributeError_element",
6212 FT_NONE, BASE_NONE, NULL, 0,
6213 "AttributeErrorData", HFILL }},
6214 { &hf_dap_name_error_problem,
6215 { "problem", "dap.problem",
6216 FT_INT32, BASE_DEC, VALS(dap_NameProblem_vals), 0,
6217 "NameProblem", HFILL }},
6218 { &hf_dap_matched_name,
6219 { "matched", "dap.matched",
6220 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
6221 "Name", HFILL }},
6222 { &hf_dap_unsignedNameError,
6223 { "unsignedNameError", "dap.unsignedNameError_element",
6224 FT_NONE, BASE_NONE, NULL, 0,
6225 "NameErrorData", HFILL }},
6226 { &hf_dap_signedNameError,
6227 { "signedNameError", "dap.signedNameError_element",
6228 FT_NONE, BASE_NONE, NULL, 0,
6229 NULL, HFILL }},
6230 { &hf_dap_nameError,
6231 { "nameError", "dap.nameError_element",
6232 FT_NONE, BASE_NONE, NULL, 0,
6233 "NameErrorData", HFILL }},
6234 { &hf_dap_candidate,
6235 { "candidate", "dap.candidate_element",
6236 FT_NONE, BASE_NONE, NULL, 0,
6237 "ContinuationReference", HFILL }},
6238 { &hf_dap_unsignedReferral,
6239 { "unsignedReferral", "dap.unsignedReferral_element",
6240 FT_NONE, BASE_NONE, NULL, 0,
6241 "ReferralData", HFILL }},
6242 { &hf_dap_signedReferral,
6243 { "signedReferral", "dap.signedReferral_element",
6244 FT_NONE, BASE_NONE, NULL, 0,
6245 NULL, HFILL }},
6246 { &hf_dap_referral,
6247 { "referral", "dap.referral_element",
6248 FT_NONE, BASE_NONE, NULL, 0,
6249 "ReferralData", HFILL }},
6250 { &hf_dap_security_error_problem,
6251 { "problem", "dap.problem",
6252 FT_INT32, BASE_DEC, VALS(dap_SecurityProblem_vals), 0,
6253 "SecurityProblem", HFILL }},
6254 { &hf_dap_spkmInfo,
6255 { "spkmInfo", "dap.spkmInfo_element",
6256 FT_NONE, BASE_NONE, NULL, 0,
6257 NULL, HFILL }},
6258 { &hf_dap_unsignedSecurityError,
6259 { "unsignedSecurityError", "dap.unsignedSecurityError_element",
6260 FT_NONE, BASE_NONE, NULL, 0,
6261 "SecurityErrorData", HFILL }},
6262 { &hf_dap_signedSecurityError,
6263 { "signedSecurityError", "dap.signedSecurityError_element",
6264 FT_NONE, BASE_NONE, NULL, 0,
6265 NULL, HFILL }},
6266 { &hf_dap_securityErrorData,
6267 { "securityError", "dap.securityError_element",
6268 FT_NONE, BASE_NONE, NULL, 0,
6269 "SecurityErrorData", HFILL }},
6270 { &hf_dap_service_error_problem,
6271 { "problem", "dap.problem",
6272 FT_INT32, BASE_DEC, VALS(dap_ServiceProblem_vals), 0,
6273 "ServiceProblem", HFILL }},
6274 { &hf_dap_unsignedServiceError,
6275 { "unsignedServiceError", "dap.unsignedServiceError_element",
6276 FT_NONE, BASE_NONE, NULL, 0,
6277 "ServiceErrorData", HFILL }},
6278 { &hf_dap_signedServiceError,
6279 { "signedServiceError", "dap.signedServiceError_element",
6280 FT_NONE, BASE_NONE, NULL, 0,
6281 NULL, HFILL }},
6282 { &hf_dap_serviceError,
6283 { "serviceError", "dap.serviceError_element",
6284 FT_NONE, BASE_NONE, NULL, 0,
6285 "ServiceErrorData", HFILL }},
6286 { &hf_dap_update_error_problem,
6287 { "problem", "dap.problem",
6288 FT_INT32, BASE_DEC, VALS(dap_UpdateProblem_vals), 0,
6289 "UpdateProblem", HFILL }},
6290 { &hf_dap_attributeInfo,
6291 { "attributeInfo", "dap.attributeInfo",
6292 FT_UINT32, BASE_DEC, NULL, 0,
6293 NULL, HFILL }},
6294 { &hf_dap_attributeInfo_item,
6295 { "attributeInfo item", "dap.attributeInfo_item",
6296 FT_UINT32, BASE_DEC, VALS(dap_T_attributeInfo_item_vals), 0,
6297 NULL, HFILL }},
6298 { &hf_dap_unsignedUpdateError,
6299 { "unsignedUpdateError", "dap.unsignedUpdateError_element",
6300 FT_NONE, BASE_NONE, NULL, 0,
6301 "UpdateErrorData", HFILL }},
6302 { &hf_dap_signedUpdateError,
6303 { "signedUpdateError", "dap.signedUpdateError_element",
6304 FT_NONE, BASE_NONE, NULL, 0,
6305 NULL, HFILL }},
6306 { &hf_dap_updateError,
6307 { "updateError", "dap.updateError_element",
6308 FT_NONE, BASE_NONE, NULL, 0,
6309 "UpdateErrorData", HFILL }},
6310 { &hf_dap_ServiceControlOptions_preferChaining,
6311 { "preferChaining", "dap.preferChaining",
6312 FT_BOOLEAN, 8, NULL, 0x80,
6313 NULL, HFILL }},
6314 { &hf_dap_ServiceControlOptions_chainingProhibited,
6315 { "chainingProhibited", "dap.chainingProhibited",
6316 FT_BOOLEAN, 8, NULL, 0x40,
6317 NULL, HFILL }},
6318 { &hf_dap_ServiceControlOptions_localScope,
6319 { "localScope", "dap.localScope",
6320 FT_BOOLEAN, 8, NULL, 0x20,
6321 NULL, HFILL }},
6322 { &hf_dap_ServiceControlOptions_dontUseCopy,
6323 { "dontUseCopy", "dap.dontUseCopy",
6324 FT_BOOLEAN, 8, NULL, 0x10,
6325 NULL, HFILL }},
6326 { &hf_dap_ServiceControlOptions_dontDereferenceAliases,
6327 { "dontDereferenceAliases", "dap.dontDereferenceAliases",
6328 FT_BOOLEAN, 8, NULL, 0x08,
6329 NULL, HFILL }},
6330 { &hf_dap_ServiceControlOptions_subentries,
6331 { "subentries", "dap.subentries",
6332 FT_BOOLEAN, 8, NULL, 0x04,
6333 NULL, HFILL }},
6334 { &hf_dap_ServiceControlOptions_copyShallDo,
6335 { "copyShallDo", "dap.copyShallDo",
6336 FT_BOOLEAN, 8, NULL, 0x02,
6337 NULL, HFILL }},
6338 { &hf_dap_ServiceControlOptions_partialNameResolution,
6339 { "partialNameResolution", "dap.partialNameResolution",
6340 FT_BOOLEAN, 8, NULL, 0x01,
6341 NULL, HFILL }},
6342 { &hf_dap_ServiceControlOptions_manageDSAIT,
6343 { "manageDSAIT", "dap.manageDSAIT",
6344 FT_BOOLEAN, 8, NULL, 0x80,
6345 NULL, HFILL }},
6346 { &hf_dap_ServiceControlOptions_noSubtypeMatch,
6347 { "noSubtypeMatch", "dap.noSubtypeMatch",
6348 FT_BOOLEAN, 8, NULL, 0x40,
6349 NULL, HFILL }},
6350 { &hf_dap_ServiceControlOptions_noSubtypeSelection,
6351 { "noSubtypeSelection", "dap.noSubtypeSelection",
6352 FT_BOOLEAN, 8, NULL, 0x20,
6353 NULL, HFILL }},
6354 { &hf_dap_ServiceControlOptions_countFamily,
6355 { "countFamily", "dap.countFamily",
6356 FT_BOOLEAN, 8, NULL, 0x10,
6357 NULL, HFILL }},
6358 { &hf_dap_ServiceControlOptions_dontSelectFriends,
6359 { "dontSelectFriends", "dap.dontSelectFriends",
6360 FT_BOOLEAN, 8, NULL, 0x08,
6361 NULL, HFILL }},
6362 { &hf_dap_ServiceControlOptions_dontMatchFriends,
6363 { "dontMatchFriends", "dap.dontMatchFriends",
6364 FT_BOOLEAN, 8, NULL, 0x04,
6365 NULL, HFILL }},
6366 { &hf_dap_Versions_v1,
6367 { "v1", "dap.v1",
6368 FT_BOOLEAN, 8, NULL, 0x80,
6369 NULL, HFILL }},
6370 { &hf_dap_Versions_v2,
6371 { "v2", "dap.v2",
6372 FT_BOOLEAN, 8, NULL, 0x40,
6373 NULL, HFILL }},
6374 { &hf_dap_T_permission_add,
6375 { "add", "dap.add",
6376 FT_BOOLEAN, 8, NULL, 0x80,
6377 NULL, HFILL }},
6378 { &hf_dap_T_permission_remove,
6379 { "remove", "dap.remove",
6380 FT_BOOLEAN, 8, NULL, 0x40,
6381 NULL, HFILL }},
6382 { &hf_dap_T_permission_rename,
6383 { "rename", "dap.rename",
6384 FT_BOOLEAN, 8, NULL, 0x20,
6385 NULL, HFILL }},
6386 { &hf_dap_T_permission_move,
6387 { "move", "dap.move",
6388 FT_BOOLEAN, 8, NULL, 0x10,
6389 NULL, HFILL }},
6390 { &hf_dap_HierarchySelections_self,
6391 { "self", "dap.self",
6392 FT_BOOLEAN, 8, NULL, 0x80,
6393 NULL, HFILL }},
6394 { &hf_dap_HierarchySelections_children,
6395 { "children", "dap.children",
6396 FT_BOOLEAN, 8, NULL, 0x40,
6397 NULL, HFILL }},
6398 { &hf_dap_HierarchySelections_parent,
6399 { "parent", "dap.parent",
6400 FT_BOOLEAN, 8, NULL, 0x20,
6401 NULL, HFILL }},
6402 { &hf_dap_HierarchySelections_hierarchy,
6403 { "hierarchy", "dap.hierarchy",
6404 FT_BOOLEAN, 8, NULL, 0x10,
6405 NULL, HFILL }},
6406 { &hf_dap_HierarchySelections_top,
6407 { "top", "dap.top",
6408 FT_BOOLEAN, 8, NULL, 0x08,
6409 NULL, HFILL }},
6410 { &hf_dap_HierarchySelections_subtree,
6411 { "subtree", "dap.subtree",
6412 FT_BOOLEAN, 8, NULL, 0x04,
6413 NULL, HFILL }},
6414 { &hf_dap_HierarchySelections_siblings,
6415 { "siblings", "dap.siblings",
6416 FT_BOOLEAN, 8, NULL, 0x02,
6417 NULL, HFILL }},
6418 { &hf_dap_HierarchySelections_siblingChildren,
6419 { "siblingChildren", "dap.siblingChildren",
6420 FT_BOOLEAN, 8, NULL, 0x01,
6421 NULL, HFILL }},
6422 { &hf_dap_HierarchySelections_siblingSubtree,
6423 { "siblingSubtree", "dap.siblingSubtree",
6424 FT_BOOLEAN, 8, NULL, 0x80,
6425 NULL, HFILL }},
6426 { &hf_dap_HierarchySelections_all,
6427 { "all", "dap.all",
6428 FT_BOOLEAN, 8, NULL, 0x40,
6429 NULL, HFILL }},
6430 { &hf_dap_SearchControlOptions_searchAliases,
6431 { "searchAliases", "dap.searchAliases",
6432 FT_BOOLEAN, 8, NULL, 0x80,
6433 NULL, HFILL }},
6434 { &hf_dap_SearchControlOptions_matchedValuesOnly,
6435 { "matchedValuesOnly", "dap.matchedValuesOnly",
6436 FT_BOOLEAN, 8, NULL, 0x40,
6437 NULL, HFILL }},
6438 { &hf_dap_SearchControlOptions_checkOverspecified,
6439 { "checkOverspecified", "dap.checkOverspecified",
6440 FT_BOOLEAN, 8, NULL, 0x20,
6441 NULL, HFILL }},
6442 { &hf_dap_SearchControlOptions_performExactly,
6443 { "performExactly", "dap.performExactly",
6444 FT_BOOLEAN, 8, NULL, 0x10,
6445 NULL, HFILL }},
6446 { &hf_dap_SearchControlOptions_includeAllAreas,
6447 { "includeAllAreas", "dap.includeAllAreas",
6448 FT_BOOLEAN, 8, NULL, 0x08,
6449 NULL, HFILL }},
6450 { &hf_dap_SearchControlOptions_noSystemRelaxation,
6451 { "noSystemRelaxation", "dap.noSystemRelaxation",
6452 FT_BOOLEAN, 8, NULL, 0x04,
6453 NULL, HFILL }},
6454 { &hf_dap_SearchControlOptions_dnAttribute,
6455 { "dnAttribute", "dap.dnAttribute",
6456 FT_BOOLEAN, 8, NULL, 0x02,
6457 NULL, HFILL }},
6458 { &hf_dap_SearchControlOptions_matchOnResidualName,
6459 { "matchOnResidualName", "dap.matchOnResidualName",
6460 FT_BOOLEAN, 8, NULL, 0x01,
6461 NULL, HFILL }},
6462 { &hf_dap_SearchControlOptions_entryCount,
6463 { "entryCount", "dap.entryCount",
6464 FT_BOOLEAN, 8, NULL, 0x80,
6465 NULL, HFILL }},
6466 { &hf_dap_SearchControlOptions_useSubset,
6467 { "useSubset", "dap.useSubset",
6468 FT_BOOLEAN, 8, NULL, 0x40,
6469 NULL, HFILL }},
6470 { &hf_dap_SearchControlOptions_separateFamilyMembers,
6471 { "separateFamilyMembers", "dap.separateFamilyMembers",
6472 FT_BOOLEAN, 8, NULL, 0x20,
6473 NULL, HFILL }},
6474 { &hf_dap_SearchControlOptions_searchFamily,
6475 { "searchFamily", "dap.searchFamily",
6476 FT_BOOLEAN, 8, NULL, 0x10,
6477 NULL, HFILL }},
6479 /*--- End of included file: packet-dap-hfarr.c ---*/
6480 #line 97 "../../asn1/dap/packet-dap-template.c"
6483 /* List of subtrees */
6484 static gint *ett[] = {
6485 &ett_dap,
6487 /*--- Included file: packet-dap-ettarr.c ---*/
6488 #line 1 "../../asn1/dap/packet-dap-ettarr.c"
6489 &ett_dap_ServiceControls,
6490 &ett_dap_T_manageDSAITPlaneRef,
6491 &ett_dap_ServiceControlOptions,
6492 &ett_dap_EntryInformationSelection,
6493 &ett_dap_T_attributes,
6494 &ett_dap_SET_OF_AttributeType,
6495 &ett_dap_T_extraAttributes,
6496 &ett_dap_SET_SIZE_1_MAX_OF_AttributeType,
6497 &ett_dap_ContextSelection,
6498 &ett_dap_SET_SIZE_1_MAX_OF_TypeAndContextAssertion,
6499 &ett_dap_TypeAndContextAssertion,
6500 &ett_dap_T_contextAssertions,
6501 &ett_dap_SEQUENCE_OF_ContextAssertion,
6502 &ett_dap_SET_OF_ContextAssertion,
6503 &ett_dap_FamilyReturn,
6504 &ett_dap_T_familySelect,
6505 &ett_dap_EntryInformation,
6506 &ett_dap_T_entry_information,
6507 &ett_dap_EntryInformationItem,
6508 &ett_dap_FamilyEntries,
6509 &ett_dap_SEQUENCE_OF_FamilyEntry,
6510 &ett_dap_FamilyEntry,
6511 &ett_dap_FamilyInformation,
6512 &ett_dap_T_family_information_item,
6513 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_FamilyEntries,
6514 &ett_dap_Filter,
6515 &ett_dap_SetOfFilter,
6516 &ett_dap_FilterItem,
6517 &ett_dap_T_substrings,
6518 &ett_dap_T_strings,
6519 &ett_dap_T_strings_item,
6520 &ett_dap_MatchingRuleAssertion,
6521 &ett_dap_T_matchingRule,
6522 &ett_dap_PagedResultsRequest,
6523 &ett_dap_T_newRequest,
6524 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_SortKey,
6525 &ett_dap_SortKey,
6526 &ett_dap_SecurityParameters,
6527 &ett_dap_Time,
6528 &ett_dap_DirectoryBindArgument,
6529 &ett_dap_Credentials,
6530 &ett_dap_SimpleCredentials,
6531 &ett_dap_T_validity,
6532 &ett_dap_T_time1,
6533 &ett_dap_T_time2,
6534 &ett_dap_T_password,
6535 &ett_dap_T_protected,
6536 &ett_dap_StrongCredentials,
6537 &ett_dap_SpkmCredentials,
6538 &ett_dap_SaslCredentials,
6539 &ett_dap_TokenData,
6540 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_AlgorithmIdentifier,
6541 &ett_dap_Token,
6542 &ett_dap_Versions,
6543 &ett_dap_DirectoryBindError,
6544 &ett_dap_T_signedDirectoryBindError,
6545 &ett_dap_DirectoryBindErrorData,
6546 &ett_dap_T_error,
6547 &ett_dap_ReadArgumentData,
6548 &ett_dap_Name,
6549 &ett_dap_ReadArgument,
6550 &ett_dap_T_signedReadArgument,
6551 &ett_dap_ReadResultData,
6552 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_Attribute,
6553 &ett_dap_ReadResult,
6554 &ett_dap_T_signedReadResult,
6555 &ett_dap_ModifyRights,
6556 &ett_dap_ModifyRights_item,
6557 &ett_dap_T_item,
6558 &ett_dap_T_permission,
6559 &ett_dap_CompareArgumentData,
6560 &ett_dap_CompareArgument,
6561 &ett_dap_T_signedCompareArgument,
6562 &ett_dap_CompareResultData,
6563 &ett_dap_CompareResult,
6564 &ett_dap_T_signedCompareResult,
6565 &ett_dap_AbandonArgumentData,
6566 &ett_dap_AbandonArgument,
6567 &ett_dap_T_signedAbandonArgument,
6568 &ett_dap_AbandonResultData,
6569 &ett_dap_AbandonResult,
6570 &ett_dap_AbandonInformation,
6571 &ett_dap_T_signedAbandonResult,
6572 &ett_dap_ListArgumentData,
6573 &ett_dap_ListArgument,
6574 &ett_dap_T_signedListArgument,
6575 &ett_dap_ListResultData,
6576 &ett_dap_T_listInfo,
6577 &ett_dap_T_subordinates,
6578 &ett_dap_T_subordinates_item,
6579 &ett_dap_SET_OF_ListResult,
6580 &ett_dap_ListResult,
6581 &ett_dap_T_signedListResult,
6582 &ett_dap_PartialOutcomeQualifier,
6583 &ett_dap_SET_SIZE_1_MAX_OF_ContinuationReference,
6584 &ett_dap_T_unknownErrors,
6585 &ett_dap_T_entryCount,
6586 &ett_dap_SearchArgumentData,
6587 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinArgument,
6588 &ett_dap_SearchArgument,
6589 &ett_dap_T_signedSearchArgument,
6590 &ett_dap_HierarchySelections,
6591 &ett_dap_SearchControlOptions,
6592 &ett_dap_JoinArgument,
6593 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinAttPair,
6594 &ett_dap_JoinAttPair,
6595 &ett_dap_SEQUENCE_SIZE_1_MAX_OF_JoinContextType,
6596 &ett_dap_SearchResultData,
6597 &ett_dap_T_searchInfo,
6598 &ett_dap_SET_OF_EntryInformation,
6599 &ett_dap_SET_OF_SearchResult,
6600 &ett_dap_SearchResult,
6601 &ett_dap_T_signedSearchResult,
6602 &ett_dap_AddEntryArgumentData,
6603 &ett_dap_SET_OF_Attribute,
6604 &ett_dap_AddEntryArgument,
6605 &ett_dap_T_signedAddEntryArgument,
6606 &ett_dap_AddEntryResultData,
6607 &ett_dap_AddEntryResult,
6608 &ett_dap_AddEntryInformation,
6609 &ett_dap_T_signedAddEntryResult,
6610 &ett_dap_RemoveEntryArgumentData,
6611 &ett_dap_RemoveEntryArgument,
6612 &ett_dap_T_signedRemoveEntryArgument,
6613 &ett_dap_RemoveEntryResultData,
6614 &ett_dap_RemoveEntryResult,
6615 &ett_dap_RemoveEntryInformation,
6616 &ett_dap_T_signedRemoveEntryResult,
6617 &ett_dap_ModifyEntryArgumentData,
6618 &ett_dap_SEQUENCE_OF_EntryModification,
6619 &ett_dap_ModifyEntryArgument,
6620 &ett_dap_T_signedModifyEntryArgument,
6621 &ett_dap_ModifyEntryResultData,
6622 &ett_dap_ModifyEntryResult,
6623 &ett_dap_ModifyEntryInformation,
6624 &ett_dap_T_signedModifyEntryResult,
6625 &ett_dap_EntryModification,
6626 &ett_dap_ModifyDNArgument,
6627 &ett_dap_ModifyDNResultData,
6628 &ett_dap_ModifyDNResult,
6629 &ett_dap_ModifyDNInformation,
6630 &ett_dap_T_signedModifyDNResult,
6631 &ett_dap_AbandonedData,
6632 &ett_dap_Abandoned,
6633 &ett_dap_T_signedAbandoned,
6634 &ett_dap_AbandonFailedErrorData,
6635 &ett_dap_AbandonFailedError,
6636 &ett_dap_T_signedAbandonFailedError,
6637 &ett_dap_AttributeErrorData,
6638 &ett_dap_T_problems,
6639 &ett_dap_T_problems_item,
6640 &ett_dap_AttributeError,
6641 &ett_dap_T_signedAttributeError,
6642 &ett_dap_NameErrorData,
6643 &ett_dap_NameError,
6644 &ett_dap_T_signedNameError,
6645 &ett_dap_ReferralData,
6646 &ett_dap_Referral,
6647 &ett_dap_T_signedReferral,
6648 &ett_dap_SecurityErrorData,
6649 &ett_dap_SecurityError,
6650 &ett_dap_T_signedSecurityError,
6651 &ett_dap_ServiceErrorData,
6652 &ett_dap_ServiceError,
6653 &ett_dap_T_signedServiceError,
6654 &ett_dap_UpdateErrorData,
6655 &ett_dap_T_attributeInfo,
6656 &ett_dap_T_attributeInfo_item,
6657 &ett_dap_UpdateError,
6658 &ett_dap_T_signedUpdateError,
6660 /*--- End of included file: packet-dap-ettarr.c ---*/
6661 #line 103 "../../asn1/dap/packet-dap-template.c"
6663 module_t *dap_module;
6665 /* Register protocol */
6666 proto_dap = proto_register_protocol(PNAME, PSNAME, PFNAME);
6668 /* Register fields and subtrees */
6669 proto_register_field_array(proto_dap, hf, array_length(hf));
6670 proto_register_subtree_array(ett, array_length(ett));
6672 /* Register our configuration options for DAP, particularly our port */
6674 dap_module = prefs_register_protocol_subtree("OSI/X.500", proto_dap, prefs_register_dap);
6676 prefs_register_uint_preference(dap_module, "tcp.port", "DAP TCP Port",
6677 "Set the port for DAP operations (if other"
6678 " than the default of 102)",
6679 10, &global_dap_tcp_port);
6684 /*--- proto_reg_handoff_dap --- */
6685 void proto_reg_handoff_dap(void) {
6687 /* #include "packet-dap-dis-tab.c" */
6689 /* APPLICATION CONTEXT */
6691 oid_add_from_string("id-ac-directory-access","2.5.3.1");
6693 /* ABSTRACT SYNTAXES */
6695 /* Register DAP with ROS (with no use of RTSE) */
6696 register_ros_protocol_info("2.5.9.1", &dap_ros_info, 0, "id-as-directory-access", FALSE);
6698 register_idmp_protocol_info("2.5.33.0", &dap_ros_info, 0, "dap-ip");
6700 /* remember the tpkt handler for change in preferences */
6701 tpkt_handle = find_dissector("tpkt");
6703 /* AttributeValueAssertions */
6704 x509if_register_fmt(hf_dap_equality, "=");
6705 x509if_register_fmt(hf_dap_greaterOrEqual, ">=");
6706 x509if_register_fmt(hf_dap_lessOrEqual, "<=");
6707 x509if_register_fmt(hf_dap_approximateMatch, "=~");
6708 /* AttributeTypes */
6709 x509if_register_fmt(hf_dap_present, "= *");
6714 static void
6715 prefs_register_dap(void)
6717 static guint tcp_port = 0;
6719 /* de-register the old port */
6720 /* port 102 is registered by TPKT - don't undo this! */
6721 if((tcp_port > 0) && (tcp_port != 102) && tpkt_handle)
6722 dissector_delete_uint("tcp.port", tcp_port, tpkt_handle);
6724 /* Set our port number for future use */
6725 tcp_port = global_dap_tcp_port;
6727 if((tcp_port > 0) && (tcp_port != 102) && tpkt_handle)
6728 dissector_add_uint("tcp.port", global_dap_tcp_port, tpkt_handle);