1 /* Do not modify this file. */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler */
4 /* ../../tools/asn2wrs.py -b -e -p dsp -c dsp.cnf -s packet-dsp-template dsp.asn */
6 /* Input file: packet-dsp-template.c */
8 #line 1 "packet-dsp-template.c"
10 * Routines for X.518 (X.500 Distributed Operations) packet dissection
15 * Wireshark - Network traffic analyzer
16 * By Gerald Combs <gerald@wireshark.org>
17 * Copyright 1998 Gerald Combs
19 * This program is free software; you can redistribute it and/or
20 * modify it under the terms of the GNU General Public License
21 * as published by the Free Software Foundation; either version 2
22 * of the License, or (at your option) any later version.
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU General Public License for more details.
29 * You should have received a copy of the GNU General Public License
30 * along with this program; if not, write to the Free Software
31 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
39 #include <epan/packet.h>
40 #include <epan/prefs.h>
41 #include <epan/conversation.h>
42 #include <epan/oid_resolv.h>
47 #include "packet-ber.h"
48 #include "packet-acse.h"
49 #include "packet-ros.h"
51 #include "packet-x509if.h"
52 #include "packet-x509af.h"
53 #include "packet-x509sat.h"
55 #include "packet-dap.h"
56 #include "packet-dsp.h"
59 #define PNAME "X.519 Directory System Protocol"
63 static guint global_dsp_tcp_port = 102;
64 static guint tcp_port = 0;
65 static dissector_handle_t tpkt_handle = NULL;
66 void prefs_register_dsp(void); /* forwad declaration for use in preferences registration */
69 /* Initialize the protocol and registered fields */
72 static struct SESSION_DATA_STRUCTURE* session = NULL;
75 /*--- Included file: packet-dsp-hf.c ---*/
76 #line 1 "packet-dsp-hf.c"
77 static int hf_dsp_AccessPoint_PDU = -1; /* AccessPoint */
78 static int hf_dsp_MasterAndShadowAccessPoints_PDU = -1; /* MasterAndShadowAccessPoints */
79 static int hf_dsp_chainedArgument = -1; /* ChainingArguments */
80 static int hf_dsp_readArgument = -1; /* ReadArgument */
81 static int hf_dsp_unsignedChainedReadArgument = -1; /* ChainedReadArgumentData */
82 static int hf_dsp_signedChainedReadArgument = -1; /* T_signedChainedReadArgument */
83 static int hf_dsp_chainedReadArgument = -1; /* ChainedReadArgumentData */
84 static int hf_dsp_algorithmIdentifier = -1; /* AlgorithmIdentifier */
85 static int hf_dsp_encrypted = -1; /* BIT_STRING */
86 static int hf_dsp_chainedResults = -1; /* ChainingResults */
87 static int hf_dsp_readResult = -1; /* ReadResult */
88 static int hf_dsp_unsignedChainedReadResult = -1; /* ChainedReadResultData */
89 static int hf_dsp_signedChainedReadResult = -1; /* T_signedChainedReadResult */
90 static int hf_dsp_chainedReadResult = -1; /* ChainedReadResultData */
91 static int hf_dsp_compareArgument = -1; /* CompareArgument */
92 static int hf_dsp_unsignedChainedCompareArgument = -1; /* ChainedCompareArgumentData */
93 static int hf_dsp_signedChainedCompareArgument = -1; /* T_signedChainedCompareArgument */
94 static int hf_dsp_chainedCompareArgument = -1; /* ChainedCompareArgumentData */
95 static int hf_dsp_compareResult = -1; /* CompareResult */
96 static int hf_dsp_unsignedChainedCompareResult = -1; /* ChainedCompareResultData */
97 static int hf_dsp_signedChainedCompareResult = -1; /* T_signedChainedCompareResult */
98 static int hf_dsp_chainedCompareResult = -1; /* ChainedCompareResultData */
99 static int hf_dsp_listArgument = -1; /* ListArgument */
100 static int hf_dsp_unsignedChainedListArgument = -1; /* ChainedListArgumentData */
101 static int hf_dsp_signedChainedListArgument = -1; /* T_signedChainedListArgument */
102 static int hf_dsp_chainedListArgument = -1; /* ChainedListArgumentData */
103 static int hf_dsp_listResult = -1; /* ListResult */
104 static int hf_dsp_unsignedChainedListResult = -1; /* ChainedListResultData */
105 static int hf_dsp_signedChainedListResult = -1; /* T_signedChainedListResult */
106 static int hf_dsp_chainedListResult = -1; /* ChainedListResultData */
107 static int hf_dsp_searchArgument = -1; /* SearchArgument */
108 static int hf_dsp_unsignedChainedSearchArgument = -1; /* ChainedSearchArgumentData */
109 static int hf_dsp_signedChainedSearchArgument = -1; /* T_signedChainedSearchArgument */
110 static int hf_dsp_chainedSearchArgument = -1; /* ChainedSearchArgumentData */
111 static int hf_dsp_searchResult = -1; /* SearchResult */
112 static int hf_dsp_unsignedChainedSearchResult = -1; /* ChainedSearchResultData */
113 static int hf_dsp_signedChainedSearchResult = -1; /* T_signedChainedSearchResult */
114 static int hf_dsp_chainedSearchResult = -1; /* ChainedSearchResultData */
115 static int hf_dsp_addEntryArgument = -1; /* AddEntryArgument */
116 static int hf_dsp_unsignedChainedAddEntryArgument = -1; /* ChainedAddEntryArgumentData */
117 static int hf_dsp_signedChainedAddEntryArgument = -1; /* T_signedChainedAddEntryArgument */
118 static int hf_dsp_chainedAddEntryArgument = -1; /* ChainedAddEntryArgumentData */
119 static int hf_dsp_addEntryResult = -1; /* AddEntryResult */
120 static int hf_dsp_unsignedChainedAddEntryResult = -1; /* ChainedAddEntryResultData */
121 static int hf_dsp_signedChainedAddEntryResult = -1; /* T_signedChainedAddEntryResult */
122 static int hf_dsp_chainedAddEntryResult = -1; /* ChainedAddEntryResultData */
123 static int hf_dsp_removeEntryArgument = -1; /* RemoveEntryArgument */
124 static int hf_dsp_unsignedChainedRemoveEntryArgument = -1; /* ChainedRemoveEntryArgumentData */
125 static int hf_dsp_signedChainedRemoveEntryArgument = -1; /* T_signedChainedRemoveEntryArgument */
126 static int hf_dsp_chainedRemoveEntryArgument = -1; /* ChainedRemoveEntryArgumentData */
127 static int hf_dsp_removeEntryResult = -1; /* RemoveEntryResult */
128 static int hf_dsp_unsignedChainedRemoveEntryResult = -1; /* ChainedRemoveEntryResultData */
129 static int hf_dsp_signedChainedRemoveEntryResult = -1; /* T_signedChainedRemoveEntryResult */
130 static int hf_dsp_chainedRemoveEntryResult = -1; /* ChainedRemoveEntryResultData */
131 static int hf_dsp_modifyEntryArgument = -1; /* ModifyEntryArgument */
132 static int hf_dsp_unsignedChainedModifyEntryArgument = -1; /* ChainedModifyEntryArgumentData */
133 static int hf_dsp_signedChainedModifyEntryArgument = -1; /* T_signedChainedModifyEntryArgument */
134 static int hf_dsp_chainedModifyEntryArgument = -1; /* ChainedModifyEntryArgumentData */
135 static int hf_dsp_modifyEntryResult = -1; /* ModifyEntryResult */
136 static int hf_dsp_unsignedChainedModifyEntryResult = -1; /* ChainedModifyEntryResultData */
137 static int hf_dsp_signedChainedModifyEntryResult = -1; /* T_signedChainedModifyEntryResult */
138 static int hf_dsp_chainedModifyEntryResult = -1; /* ChainedModifyEntryResultData */
139 static int hf_dsp_modifyDNArgument = -1; /* ModifyDNArgument */
140 static int hf_dsp_unsignedChainedModifyDNArgument = -1; /* ChainedModifyDNArgumentData */
141 static int hf_dsp_signedChainedModifyDNArgument = -1; /* T_signedChainedModifyDNArgument */
142 static int hf_dsp_chainedModifyDNArgument = -1; /* ChainedModifyDNArgumentData */
143 static int hf_dsp_modifyDNResult = -1; /* ModifyDNResult */
144 static int hf_dsp_unsignedChainedModifyDNResult = -1; /* ChainedModifyDNResultData */
145 static int hf_dsp_signedChainedModifyDNResult = -1; /* T_signedChainedModifyDNResult */
146 static int hf_dsp_chainedModifyDNResult = -1; /* ChainedModifyDNResultData */
147 static int hf_dsp_reference = -1; /* ContinuationReference */
148 static int hf_dsp_contextPrefix = -1; /* DistinguishedName */
149 static int hf_dsp_securityParameters = -1; /* SecurityParameters */
150 static int hf_dsp_performer = -1; /* DistinguishedName */
151 static int hf_dsp_aliasDereferenced = -1; /* BOOLEAN */
152 static int hf_dsp_notification = -1; /* SEQUENCE_OF_Attribute */
153 static int hf_dsp_notification_item = -1; /* Attribute */
154 static int hf_dsp_unsignedDSAReferral = -1; /* DSAReferralData */
155 static int hf_dsp_signedDSAReferral = -1; /* T_signedDSAReferral */
156 static int hf_dsp_dsaReferral = -1; /* DSAReferralData */
157 static int hf_dsp_originator = -1; /* DistinguishedName */
158 static int hf_dsp_targetObjectDN = -1; /* DistinguishedName */
159 static int hf_dsp_operationProgress = -1; /* OperationProgress */
160 static int hf_dsp_traceInformation = -1; /* TraceInformation */
161 static int hf_dsp_aliasedRDNs = -1; /* INTEGER */
162 static int hf_dsp_returnCrossRefs = -1; /* BOOLEAN */
163 static int hf_dsp_referenceType = -1; /* ReferenceType */
164 static int hf_dsp_info = -1; /* DomainInfo */
165 static int hf_dsp_timeLimit = -1; /* Time */
166 static int hf_dsp_entryOnly = -1; /* BOOLEAN */
167 static int hf_dsp_uniqueIdentifier = -1; /* UniqueIdentifier */
168 static int hf_dsp_authenticationLevel = -1; /* AuthenticationLevel */
169 static int hf_dsp_exclusions = -1; /* Exclusions */
170 static int hf_dsp_excludeShadows = -1; /* BOOLEAN */
171 static int hf_dsp_nameResolveOnMaster = -1; /* BOOLEAN */
172 static int hf_dsp_operationIdentifier = -1; /* INTEGER */
173 static int hf_dsp_searchRuleId = -1; /* SearchRuleId */
174 static int hf_dsp_chainedRelaxation = -1; /* MRMapping */
175 static int hf_dsp_relatedEntry = -1; /* INTEGER */
176 static int hf_dsp_utcTime = -1; /* UTCTime */
177 static int hf_dsp_generalizedTime = -1; /* GeneralizedTime */
178 static int hf_dsp_crossReferences = -1; /* SEQUENCE_OF_CrossReference */
179 static int hf_dsp_crossReferences_item = -1; /* CrossReference */
180 static int hf_dsp_alreadySearched = -1; /* Exclusions */
181 static int hf_dsp_accessPoint = -1; /* AccessPointInformation */
182 static int hf_dsp_nameResolutionPhase = -1; /* T_nameResolutionPhase */
183 static int hf_dsp_nextRDNToBeResolved = -1; /* INTEGER */
184 static int hf_dsp_TraceInformation_item = -1; /* TraceItem */
185 static int hf_dsp_dsa = -1; /* Name */
186 static int hf_dsp_targetObject = -1; /* Name */
187 static int hf_dsp_ae_title = -1; /* Name */
188 static int hf_dsp_address = -1; /* PresentationAddress */
189 static int hf_dsp_protocolInformation = -1; /* SET_OF_ProtocolInformation */
190 static int hf_dsp_protocolInformation_item = -1; /* ProtocolInformation */
191 static int hf_dsp_access_point_category = -1; /* APCategory */
192 static int hf_dsp_chainingRequired = -1; /* BOOLEAN */
193 static int hf_dsp_MasterAndShadowAccessPoints_item = -1; /* MasterOrShadowAccessPoint */
194 static int hf_dsp_category = -1; /* T_category */
195 static int hf_dsp_additionalPoints = -1; /* MasterAndShadowAccessPoints */
196 static int hf_dsp_Exclusions_item = -1; /* RDNSequence */
197 static int hf_dsp_rdnsResolved = -1; /* INTEGER */
198 static int hf_dsp_accessPoints = -1; /* SET_OF_AccessPointInformation */
199 static int hf_dsp_accessPoints_item = -1; /* AccessPointInformation */
200 static int hf_dsp_returnToDUA = -1; /* BOOLEAN */
201 static int hf_dsp_basicLevels = -1; /* T_basicLevels */
202 static int hf_dsp_level = -1; /* T_level */
203 static int hf_dsp_localQualifier = -1; /* INTEGER */
204 static int hf_dsp_signed = -1; /* BOOLEAN */
205 static int hf_dsp_other = -1; /* EXTERNALt */
207 /*--- End of included file: packet-dsp-hf.c ---*/
208 #line 67 "packet-dsp-template.c"
210 /* Initialize the subtree pointers */
211 static gint ett_dsp = -1;
213 /*--- Included file: packet-dsp-ett.c ---*/
214 #line 1 "packet-dsp-ett.c"
215 static gint ett_dsp_ChainedReadArgumentData = -1;
216 static gint ett_dsp_ChainedReadArgument = -1;
217 static gint ett_dsp_T_signedChainedReadArgument = -1;
218 static gint ett_dsp_ChainedReadResultData = -1;
219 static gint ett_dsp_ChainedReadResult = -1;
220 static gint ett_dsp_T_signedChainedReadResult = -1;
221 static gint ett_dsp_ChainedCompareArgumentData = -1;
222 static gint ett_dsp_ChainedCompareArgument = -1;
223 static gint ett_dsp_T_signedChainedCompareArgument = -1;
224 static gint ett_dsp_ChainedCompareResultData = -1;
225 static gint ett_dsp_ChainedCompareResult = -1;
226 static gint ett_dsp_T_signedChainedCompareResult = -1;
227 static gint ett_dsp_ChainedListArgumentData = -1;
228 static gint ett_dsp_ChainedListArgument = -1;
229 static gint ett_dsp_T_signedChainedListArgument = -1;
230 static gint ett_dsp_ChainedListResultData = -1;
231 static gint ett_dsp_ChainedListResult = -1;
232 static gint ett_dsp_T_signedChainedListResult = -1;
233 static gint ett_dsp_ChainedSearchArgumentData = -1;
234 static gint ett_dsp_ChainedSearchArgument = -1;
235 static gint ett_dsp_T_signedChainedSearchArgument = -1;
236 static gint ett_dsp_ChainedSearchResultData = -1;
237 static gint ett_dsp_ChainedSearchResult = -1;
238 static gint ett_dsp_T_signedChainedSearchResult = -1;
239 static gint ett_dsp_ChainedAddEntryArgumentData = -1;
240 static gint ett_dsp_ChainedAddEntryArgument = -1;
241 static gint ett_dsp_T_signedChainedAddEntryArgument = -1;
242 static gint ett_dsp_ChainedAddEntryResultData = -1;
243 static gint ett_dsp_ChainedAddEntryResult = -1;
244 static gint ett_dsp_T_signedChainedAddEntryResult = -1;
245 static gint ett_dsp_ChainedRemoveEntryArgumentData = -1;
246 static gint ett_dsp_ChainedRemoveEntryArgument = -1;
247 static gint ett_dsp_T_signedChainedRemoveEntryArgument = -1;
248 static gint ett_dsp_ChainedRemoveEntryResultData = -1;
249 static gint ett_dsp_ChainedRemoveEntryResult = -1;
250 static gint ett_dsp_T_signedChainedRemoveEntryResult = -1;
251 static gint ett_dsp_ChainedModifyEntryArgumentData = -1;
252 static gint ett_dsp_ChainedModifyEntryArgument = -1;
253 static gint ett_dsp_T_signedChainedModifyEntryArgument = -1;
254 static gint ett_dsp_ChainedModifyEntryResultData = -1;
255 static gint ett_dsp_ChainedModifyEntryResult = -1;
256 static gint ett_dsp_T_signedChainedModifyEntryResult = -1;
257 static gint ett_dsp_ChainedModifyDNArgumentData = -1;
258 static gint ett_dsp_ChainedModifyDNArgument = -1;
259 static gint ett_dsp_T_signedChainedModifyDNArgument = -1;
260 static gint ett_dsp_ChainedModifyDNResultData = -1;
261 static gint ett_dsp_ChainedModifyDNResult = -1;
262 static gint ett_dsp_T_signedChainedModifyDNResult = -1;
263 static gint ett_dsp_DSAReferralData = -1;
264 static gint ett_dsp_SEQUENCE_OF_Attribute = -1;
265 static gint ett_dsp_DSAReferral = -1;
266 static gint ett_dsp_T_signedDSAReferral = -1;
267 static gint ett_dsp_ChainingArguments = -1;
268 static gint ett_dsp_Time = -1;
269 static gint ett_dsp_ChainingResults = -1;
270 static gint ett_dsp_SEQUENCE_OF_CrossReference = -1;
271 static gint ett_dsp_CrossReference = -1;
272 static gint ett_dsp_OperationProgress = -1;
273 static gint ett_dsp_TraceInformation = -1;
274 static gint ett_dsp_TraceItem = -1;
275 static gint ett_dsp_AccessPoint = -1;
276 static gint ett_dsp_SET_OF_ProtocolInformation = -1;
277 static gint ett_dsp_MasterOrShadowAccessPoint = -1;
278 static gint ett_dsp_MasterAndShadowAccessPoints = -1;
279 static gint ett_dsp_AccessPointInformation = -1;
280 static gint ett_dsp_Exclusions = -1;
281 static gint ett_dsp_ContinuationReference = -1;
282 static gint ett_dsp_SET_OF_AccessPointInformation = -1;
283 static gint ett_dsp_AuthenticationLevel = -1;
284 static gint ett_dsp_T_basicLevels = -1;
286 /*--- End of included file: packet-dsp-ett.c ---*/
287 #line 71 "packet-dsp-template.c"
290 /*--- Included file: packet-dsp-fn.c ---*/
291 #line 1 "packet-dsp-fn.c"
292 /*--- Fields for imported types ---*/
294 static int dissect_readArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
295 return dissect_dap_ReadArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_readArgument);
297 static int dissect_algorithmIdentifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
298 return dissect_x509af_AlgorithmIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dsp_algorithmIdentifier);
300 static int dissect_readResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
301 return dissect_dap_ReadResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_readResult);
303 static int dissect_compareArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
304 return dissect_dap_CompareArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_compareArgument);
306 static int dissect_compareResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
307 return dissect_dap_CompareResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_compareResult);
309 static int dissect_listArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
310 return dissect_dap_ListArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_listArgument);
312 static int dissect_listResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
313 return dissect_dap_ListResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_listResult);
315 static int dissect_searchArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
316 return dissect_dap_SearchArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_searchArgument);
318 static int dissect_searchResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
319 return dissect_dap_SearchResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_searchResult);
321 static int dissect_addEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
322 return dissect_dap_AddEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_addEntryArgument);
324 static int dissect_addEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
325 return dissect_dap_AddEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_addEntryResult);
327 static int dissect_removeEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
328 return dissect_dap_RemoveEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_removeEntryArgument);
330 static int dissect_removeEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
331 return dissect_dap_RemoveEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_removeEntryResult);
333 static int dissect_modifyEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
334 return dissect_dap_ModifyEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_modifyEntryArgument);
336 static int dissect_modifyEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
337 return dissect_dap_ModifyEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_modifyEntryResult);
339 static int dissect_modifyDNArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
340 return dissect_dap_ModifyDNArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_modifyDNArgument);
342 static int dissect_modifyDNResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
343 return dissect_dap_ModifyDNResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_modifyDNResult);
345 static int dissect_contextPrefix(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
346 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dsp_contextPrefix);
348 static int dissect_securityParameters(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
349 return dissect_dap_SecurityParameters(FALSE, tvb, offset, pinfo, tree, hf_dsp_securityParameters);
351 static int dissect_performer(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
352 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dsp_performer);
354 static int dissect_notification_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
355 return dissect_x509if_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dsp_notification_item);
357 static int dissect_originator(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
358 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dsp_originator);
360 static int dissect_targetObjectDN(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
361 return dissect_x509if_DistinguishedName(FALSE, tvb, offset, pinfo, tree, hf_dsp_targetObjectDN);
363 static int dissect_uniqueIdentifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
364 return dissect_x509sat_UniqueIdentifier(FALSE, tvb, offset, pinfo, tree, hf_dsp_uniqueIdentifier);
366 static int dissect_searchRuleId(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
367 return dissect_x509if_SearchRuleId(FALSE, tvb, offset, pinfo, tree, hf_dsp_searchRuleId);
369 static int dissect_chainedRelaxation(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
370 return dissect_x509if_MRMapping(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedRelaxation);
372 static int dissect_dsa(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
373 return dissect_x509if_Name(FALSE, tvb, offset, pinfo, tree, hf_dsp_dsa);
375 static int dissect_targetObject(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
376 return dissect_x509if_Name(FALSE, tvb, offset, pinfo, tree, hf_dsp_targetObject);
378 static int dissect_ae_title(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
379 return dissect_x509if_Name(FALSE, tvb, offset, pinfo, tree, hf_dsp_ae_title);
381 static int dissect_address(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
382 return dissect_x509sat_PresentationAddress(FALSE, tvb, offset, pinfo, tree, hf_dsp_address);
384 static int dissect_protocolInformation_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
385 return dissect_x509sat_ProtocolInformation(FALSE, tvb, offset, pinfo, tree, hf_dsp_protocolInformation_item);
387 static int dissect_Exclusions_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
388 return dissect_x509if_RDNSequence(FALSE, tvb, offset, pinfo, tree, hf_dsp_Exclusions_item);
390 static int dissect_other(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
391 return dissect_acse_EXTERNALt(FALSE, tvb, offset, pinfo, tree, hf_dsp_other);
397 dissect_dsp_DSASystemBindArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
398 offset = dissect_dap_DirectoryBindArgument(implicit_tag, tvb, offset, pinfo, tree, hf_index);
406 dissect_dsp_DSASystemBindResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
407 offset = dissect_dap_DirectoryBindArgument(implicit_tag, tvb, offset, pinfo, tree, hf_index);
415 dissect_dsp_DSASystemBindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
416 offset = dissect_dap_DirectoryBindError(implicit_tag, tvb, offset, pinfo, tree, hf_index);
422 static const value_string dsp_T_nameResolutionPhase_vals[] = {
431 dissect_dsp_T_nameResolutionPhase(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
432 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
437 static int dissect_nameResolutionPhase(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
438 return dissect_dsp_T_nameResolutionPhase(FALSE, tvb, offset, pinfo, tree, hf_dsp_nameResolutionPhase);
444 dissect_dsp_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
445 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
450 static int dissect_aliasedRDNs(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
451 return dissect_dsp_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dsp_aliasedRDNs);
453 static int dissect_operationIdentifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
454 return dissect_dsp_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dsp_operationIdentifier);
456 static int dissect_relatedEntry(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
457 return dissect_dsp_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dsp_relatedEntry);
459 static int dissect_nextRDNToBeResolved(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
460 return dissect_dsp_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dsp_nextRDNToBeResolved);
462 static int dissect_rdnsResolved(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
463 return dissect_dsp_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dsp_rdnsResolved);
465 static int dissect_localQualifier(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
466 return dissect_dsp_INTEGER(FALSE, tvb, offset, pinfo, tree, hf_dsp_localQualifier);
470 static const ber_sequence_t OperationProgress_set[] = {
471 { BER_CLASS_CON, 0, 0, dissect_nameResolutionPhase },
472 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_nextRDNToBeResolved },
477 dissect_dsp_OperationProgress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
478 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
479 OperationProgress_set, hf_index, ett_dsp_OperationProgress);
483 static int dissect_operationProgress(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
484 return dissect_dsp_OperationProgress(FALSE, tvb, offset, pinfo, tree, hf_dsp_operationProgress);
488 static const ber_sequence_t TraceItem_set[] = {
489 { BER_CLASS_CON, 0, 0, dissect_dsa },
490 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_targetObject },
491 { BER_CLASS_CON, 2, 0, dissect_operationProgress },
496 dissect_dsp_TraceItem(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
497 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
498 TraceItem_set, hf_index, ett_dsp_TraceItem);
502 static int dissect_TraceInformation_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
503 return dissect_dsp_TraceItem(FALSE, tvb, offset, pinfo, tree, hf_dsp_TraceInformation_item);
507 static const ber_sequence_t TraceInformation_sequence_of[1] = {
508 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_TraceInformation_item },
512 dissect_dsp_TraceInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
513 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
514 TraceInformation_sequence_of, hf_index, ett_dsp_TraceInformation);
518 static int dissect_traceInformation(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
519 return dissect_dsp_TraceInformation(FALSE, tvb, offset, pinfo, tree, hf_dsp_traceInformation);
525 dissect_dsp_BOOLEAN(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
526 offset = dissect_ber_boolean(implicit_tag, pinfo, tree, tvb, offset, hf_index);
530 static int dissect_aliasDereferenced(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
531 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_aliasDereferenced);
533 static int dissect_returnCrossRefs(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
534 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_returnCrossRefs);
536 static int dissect_entryOnly(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
537 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_entryOnly);
539 static int dissect_excludeShadows(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
540 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_excludeShadows);
542 static int dissect_nameResolveOnMaster(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
543 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_nameResolveOnMaster);
545 static int dissect_chainingRequired(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
546 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainingRequired);
548 static int dissect_returnToDUA(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
549 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_returnToDUA);
551 static int dissect_signed(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
552 return dissect_dsp_BOOLEAN(FALSE, tvb, offset, pinfo, tree, hf_dsp_signed);
556 const value_string dsp_ReferenceType_vals[] = {
558 { 2, "subordinate" },
560 { 4, "nonSpecificSubordinate" },
563 { 7, "immediateSuperior" },
570 dissect_dsp_ReferenceType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
571 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
576 static int dissect_referenceType(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
577 return dissect_dsp_ReferenceType(FALSE, tvb, offset, pinfo, tree, hf_dsp_referenceType);
583 dissect_dsp_DomainInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
584 offset = dissect_ber_object_identifier(implicit_tag, pinfo, tree, tvb, offset, hf_index, NULL);
588 static int dissect_info(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
589 return dissect_dsp_DomainInfo(FALSE, tvb, offset, pinfo, tree, hf_dsp_info);
595 dissect_dsp_UTCTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
596 offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTCTime,
597 pinfo, tree, tvb, offset, hf_index,
602 static int dissect_utcTime(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
603 return dissect_dsp_UTCTime(FALSE, tvb, offset, pinfo, tree, hf_dsp_utcTime);
609 dissect_dsp_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
610 offset = dissect_ber_GeneralizedTime(implicit_tag, pinfo, tree, tvb, offset, hf_index);
614 static int dissect_generalizedTime(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
615 return dissect_dsp_GeneralizedTime(FALSE, tvb, offset, pinfo, tree, hf_dsp_generalizedTime);
619 static const value_string dsp_Time_vals[] = {
621 { 1, "generalizedTime" },
625 static const ber_choice_t Time_choice[] = {
626 { 0, BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_utcTime },
627 { 1, BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_generalizedTime },
632 dissect_dsp_Time(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
633 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
634 Time_choice, hf_index, ett_dsp_Time,
639 static int dissect_timeLimit(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
640 return dissect_dsp_Time(FALSE, tvb, offset, pinfo, tree, hf_dsp_timeLimit);
644 static const value_string dsp_T_level_vals[] = {
653 dissect_dsp_T_level(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
654 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
659 static int dissect_level(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
660 return dissect_dsp_T_level(FALSE, tvb, offset, pinfo, tree, hf_dsp_level);
664 static const ber_sequence_t T_basicLevels_sequence[] = {
665 { BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_level },
666 { BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_localQualifier },
667 { BER_CLASS_UNI, BER_UNI_TAG_BOOLEAN, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_signed },
672 dissect_dsp_T_basicLevels(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
673 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
674 T_basicLevels_sequence, hf_index, ett_dsp_T_basicLevels);
678 static int dissect_basicLevels(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
679 return dissect_dsp_T_basicLevels(FALSE, tvb, offset, pinfo, tree, hf_dsp_basicLevels);
683 static const value_string dsp_AuthenticationLevel_vals[] = {
684 { 0, "basicLevels" },
689 static const ber_choice_t AuthenticationLevel_choice[] = {
690 { 0, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_basicLevels },
691 { 1, BER_CLASS_UNI, 8, BER_FLAGS_NOOWNTAG, dissect_other },
696 dissect_dsp_AuthenticationLevel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
697 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
698 AuthenticationLevel_choice, hf_index, ett_dsp_AuthenticationLevel,
703 static int dissect_authenticationLevel(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
704 return dissect_dsp_AuthenticationLevel(FALSE, tvb, offset, pinfo, tree, hf_dsp_authenticationLevel);
708 static const ber_sequence_t Exclusions_set_of[1] = {
709 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_Exclusions_item },
713 dissect_dsp_Exclusions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
714 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
715 Exclusions_set_of, hf_index, ett_dsp_Exclusions);
719 static int dissect_exclusions(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
720 return dissect_dsp_Exclusions(FALSE, tvb, offset, pinfo, tree, hf_dsp_exclusions);
722 static int dissect_alreadySearched(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
723 return dissect_dsp_Exclusions(FALSE, tvb, offset, pinfo, tree, hf_dsp_alreadySearched);
727 static const ber_sequence_t ChainingArguments_set[] = {
728 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_originator },
729 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_targetObjectDN },
730 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_operationProgress },
731 { BER_CLASS_CON, 3, 0, dissect_traceInformation },
732 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
733 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
734 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_returnCrossRefs },
735 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_referenceType },
736 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_info },
737 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_timeLimit },
738 { BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_securityParameters },
739 { BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_entryOnly },
740 { BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL, dissect_uniqueIdentifier },
741 { BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_authenticationLevel },
742 { BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL, dissect_exclusions },
743 { BER_CLASS_CON, 15, BER_FLAGS_OPTIONAL, dissect_excludeShadows },
744 { BER_CLASS_CON, 16, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
745 { BER_CLASS_CON, 17, BER_FLAGS_OPTIONAL, dissect_operationIdentifier },
746 { BER_CLASS_CON, 18, BER_FLAGS_OPTIONAL, dissect_searchRuleId },
747 { BER_CLASS_CON, 19, BER_FLAGS_OPTIONAL, dissect_chainedRelaxation },
748 { BER_CLASS_CON, 20, BER_FLAGS_OPTIONAL, dissect_relatedEntry },
753 dissect_dsp_ChainingArguments(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
754 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
755 ChainingArguments_set, hf_index, ett_dsp_ChainingArguments);
759 static int dissect_chainedArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
760 return dissect_dsp_ChainingArguments(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedArgument);
764 static const ber_sequence_t ChainedReadArgumentData_set[] = {
765 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
766 { BER_CLASS_CON, 0, 0, dissect_readArgument },
771 dissect_dsp_ChainedReadArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
772 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
773 ChainedReadArgumentData_set, hf_index, ett_dsp_ChainedReadArgumentData);
777 static int dissect_unsignedChainedReadArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
778 return dissect_dsp_ChainedReadArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedReadArgument);
780 static int dissect_chainedReadArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
781 return dissect_dsp_ChainedReadArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedReadArgument);
787 dissect_dsp_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
788 offset = dissect_ber_bitstring(implicit_tag, pinfo, tree, tvb, offset,
794 static int dissect_encrypted(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
795 return dissect_dsp_BIT_STRING(FALSE, tvb, offset, pinfo, tree, hf_dsp_encrypted);
799 static const ber_sequence_t T_signedChainedReadArgument_sequence[] = {
800 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedReadArgument },
801 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
802 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
807 dissect_dsp_T_signedChainedReadArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
808 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
809 T_signedChainedReadArgument_sequence, hf_index, ett_dsp_T_signedChainedReadArgument);
813 static int dissect_signedChainedReadArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
814 return dissect_dsp_T_signedChainedReadArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedReadArgument);
818 static const value_string dsp_ChainedReadArgument_vals[] = {
819 { 0, "unsignedChainedReadArgument" },
820 { 1, "signedChainedReadArgument" },
824 static const ber_choice_t ChainedReadArgument_choice[] = {
825 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedReadArgument },
826 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedReadArgument },
831 dissect_dsp_ChainedReadArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
832 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
833 ChainedReadArgument_choice, hf_index, ett_dsp_ChainedReadArgument,
840 static const ber_sequence_t SET_OF_ProtocolInformation_set_of[1] = {
841 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_protocolInformation_item },
845 dissect_dsp_SET_OF_ProtocolInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
846 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
847 SET_OF_ProtocolInformation_set_of, hf_index, ett_dsp_SET_OF_ProtocolInformation);
851 static int dissect_protocolInformation(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
852 return dissect_dsp_SET_OF_ProtocolInformation(FALSE, tvb, offset, pinfo, tree, hf_dsp_protocolInformation);
856 static const value_string dsp_T_category_vals[] = {
864 dissect_dsp_T_category(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
865 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
870 static int dissect_category(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
871 return dissect_dsp_T_category(FALSE, tvb, offset, pinfo, tree, hf_dsp_category);
875 static const value_string dsp_APCategory_vals[] = {
883 dissect_dsp_APCategory(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
884 offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_index,
889 static int dissect_access_point_category(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
890 return dissect_dsp_APCategory(FALSE, tvb, offset, pinfo, tree, hf_dsp_access_point_category);
894 static const ber_sequence_t MasterOrShadowAccessPoint_set[] = {
895 { BER_CLASS_CON, 0, 0, dissect_ae_title },
896 { BER_CLASS_CON, 1, 0, dissect_address },
897 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_protocolInformation },
898 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_access_point_category },
899 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_chainingRequired },
904 dissect_dsp_MasterOrShadowAccessPoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
905 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
906 MasterOrShadowAccessPoint_set, hf_index, ett_dsp_MasterOrShadowAccessPoint);
910 static int dissect_MasterAndShadowAccessPoints_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
911 return dissect_dsp_MasterOrShadowAccessPoint(FALSE, tvb, offset, pinfo, tree, hf_dsp_MasterAndShadowAccessPoints_item);
915 static const ber_sequence_t MasterAndShadowAccessPoints_set_of[1] = {
916 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_MasterAndShadowAccessPoints_item },
920 dissect_dsp_MasterAndShadowAccessPoints(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
921 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
922 MasterAndShadowAccessPoints_set_of, hf_index, ett_dsp_MasterAndShadowAccessPoints);
926 static int dissect_additionalPoints(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
927 return dissect_dsp_MasterAndShadowAccessPoints(FALSE, tvb, offset, pinfo, tree, hf_dsp_additionalPoints);
931 static const ber_sequence_t AccessPointInformation_set[] = {
932 { BER_CLASS_CON, 0, 0, dissect_ae_title },
933 { BER_CLASS_CON, 1, 0, dissect_address },
934 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_protocolInformation },
935 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_category },
936 { BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_chainingRequired },
937 { BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_additionalPoints },
942 dissect_dsp_AccessPointInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
943 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
944 AccessPointInformation_set, hf_index, ett_dsp_AccessPointInformation);
948 static int dissect_accessPoint(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
949 return dissect_dsp_AccessPointInformation(FALSE, tvb, offset, pinfo, tree, hf_dsp_accessPoint);
951 static int dissect_accessPoints_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
952 return dissect_dsp_AccessPointInformation(FALSE, tvb, offset, pinfo, tree, hf_dsp_accessPoints_item);
956 static const ber_sequence_t CrossReference_set[] = {
957 { BER_CLASS_CON, 0, 0, dissect_contextPrefix },
958 { BER_CLASS_CON, 1, 0, dissect_accessPoint },
963 dissect_dsp_CrossReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
964 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
965 CrossReference_set, hf_index, ett_dsp_CrossReference);
969 static int dissect_crossReferences_item(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
970 return dissect_dsp_CrossReference(FALSE, tvb, offset, pinfo, tree, hf_dsp_crossReferences_item);
974 static const ber_sequence_t SEQUENCE_OF_CrossReference_sequence_of[1] = {
975 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_crossReferences_item },
979 dissect_dsp_SEQUENCE_OF_CrossReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
980 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
981 SEQUENCE_OF_CrossReference_sequence_of, hf_index, ett_dsp_SEQUENCE_OF_CrossReference);
985 static int dissect_crossReferences(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
986 return dissect_dsp_SEQUENCE_OF_CrossReference(FALSE, tvb, offset, pinfo, tree, hf_dsp_crossReferences);
990 static const ber_sequence_t ChainingResults_set[] = {
991 { BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_info },
992 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_crossReferences },
993 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_securityParameters },
994 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_alreadySearched },
999 dissect_dsp_ChainingResults(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1000 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1001 ChainingResults_set, hf_index, ett_dsp_ChainingResults);
1005 static int dissect_chainedResults(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1006 return dissect_dsp_ChainingResults(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedResults);
1010 static const ber_sequence_t ChainedReadResultData_set[] = {
1011 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1012 { BER_CLASS_CON, 0, 0, dissect_readResult },
1017 dissect_dsp_ChainedReadResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1018 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1019 ChainedReadResultData_set, hf_index, ett_dsp_ChainedReadResultData);
1023 static int dissect_unsignedChainedReadResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1024 return dissect_dsp_ChainedReadResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedReadResult);
1026 static int dissect_chainedReadResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1027 return dissect_dsp_ChainedReadResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedReadResult);
1031 static const ber_sequence_t T_signedChainedReadResult_sequence[] = {
1032 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedReadResult },
1033 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1034 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1039 dissect_dsp_T_signedChainedReadResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1040 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1041 T_signedChainedReadResult_sequence, hf_index, ett_dsp_T_signedChainedReadResult);
1045 static int dissect_signedChainedReadResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1046 return dissect_dsp_T_signedChainedReadResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedReadResult);
1050 static const value_string dsp_ChainedReadResult_vals[] = {
1051 { 0, "unsignedChainedReadResult" },
1052 { 1, "signedChainedReadResult" },
1056 static const ber_choice_t ChainedReadResult_choice[] = {
1057 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedReadResult },
1058 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedReadResult },
1059 { 0, 0, 0, 0, NULL }
1063 dissect_dsp_ChainedReadResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1064 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1065 ChainedReadResult_choice, hf_index, ett_dsp_ChainedReadResult,
1072 static const ber_sequence_t ChainedCompareArgumentData_set[] = {
1073 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
1074 { BER_CLASS_CON, 0, 0, dissect_compareArgument },
1079 dissect_dsp_ChainedCompareArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1080 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1081 ChainedCompareArgumentData_set, hf_index, ett_dsp_ChainedCompareArgumentData);
1085 static int dissect_unsignedChainedCompareArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1086 return dissect_dsp_ChainedCompareArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedCompareArgument);
1088 static int dissect_chainedCompareArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1089 return dissect_dsp_ChainedCompareArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedCompareArgument);
1093 static const ber_sequence_t T_signedChainedCompareArgument_sequence[] = {
1094 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedCompareArgument },
1095 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1096 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1101 dissect_dsp_T_signedChainedCompareArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1102 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1103 T_signedChainedCompareArgument_sequence, hf_index, ett_dsp_T_signedChainedCompareArgument);
1107 static int dissect_signedChainedCompareArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1108 return dissect_dsp_T_signedChainedCompareArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedCompareArgument);
1112 static const value_string dsp_ChainedCompareArgument_vals[] = {
1113 { 0, "unsignedChainedCompareArgument" },
1114 { 1, "signedChainedCompareArgument" },
1118 static const ber_choice_t ChainedCompareArgument_choice[] = {
1119 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedCompareArgument },
1120 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedCompareArgument },
1121 { 0, 0, 0, 0, NULL }
1125 dissect_dsp_ChainedCompareArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1126 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1127 ChainedCompareArgument_choice, hf_index, ett_dsp_ChainedCompareArgument,
1134 static const ber_sequence_t ChainedCompareResultData_set[] = {
1135 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1136 { BER_CLASS_CON, 0, 0, dissect_compareResult },
1141 dissect_dsp_ChainedCompareResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1142 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1143 ChainedCompareResultData_set, hf_index, ett_dsp_ChainedCompareResultData);
1147 static int dissect_unsignedChainedCompareResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1148 return dissect_dsp_ChainedCompareResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedCompareResult);
1150 static int dissect_chainedCompareResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1151 return dissect_dsp_ChainedCompareResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedCompareResult);
1155 static const ber_sequence_t T_signedChainedCompareResult_sequence[] = {
1156 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedCompareResult },
1157 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1158 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1163 dissect_dsp_T_signedChainedCompareResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1164 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1165 T_signedChainedCompareResult_sequence, hf_index, ett_dsp_T_signedChainedCompareResult);
1169 static int dissect_signedChainedCompareResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1170 return dissect_dsp_T_signedChainedCompareResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedCompareResult);
1174 static const value_string dsp_ChainedCompareResult_vals[] = {
1175 { 0, "unsignedChainedCompareResult" },
1176 { 1, "signedChainedCompareResult" },
1180 static const ber_choice_t ChainedCompareResult_choice[] = {
1181 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedCompareResult },
1182 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedCompareResult },
1183 { 0, 0, 0, 0, NULL }
1187 dissect_dsp_ChainedCompareResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1188 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1189 ChainedCompareResult_choice, hf_index, ett_dsp_ChainedCompareResult,
1198 dissect_dsp_ChainedAbandonArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1199 offset = dissect_dap_AbandonArgument(implicit_tag, tvb, offset, pinfo, tree, hf_index);
1207 dissect_dsp_ChainedAbandonResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1208 offset = dissect_dap_AbandonResult(implicit_tag, tvb, offset, pinfo, tree, hf_index);
1214 static const ber_sequence_t ChainedListArgumentData_set[] = {
1215 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
1216 { BER_CLASS_CON, 0, 0, dissect_listArgument },
1221 dissect_dsp_ChainedListArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1222 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1223 ChainedListArgumentData_set, hf_index, ett_dsp_ChainedListArgumentData);
1227 static int dissect_unsignedChainedListArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1228 return dissect_dsp_ChainedListArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedListArgument);
1230 static int dissect_chainedListArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1231 return dissect_dsp_ChainedListArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedListArgument);
1235 static const ber_sequence_t T_signedChainedListArgument_sequence[] = {
1236 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedListArgument },
1237 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1238 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1243 dissect_dsp_T_signedChainedListArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1244 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1245 T_signedChainedListArgument_sequence, hf_index, ett_dsp_T_signedChainedListArgument);
1249 static int dissect_signedChainedListArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1250 return dissect_dsp_T_signedChainedListArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedListArgument);
1254 static const value_string dsp_ChainedListArgument_vals[] = {
1255 { 0, "unsignedChainedListArgument" },
1256 { 1, "signedChainedListArgument" },
1260 static const ber_choice_t ChainedListArgument_choice[] = {
1261 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedListArgument },
1262 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedListArgument },
1263 { 0, 0, 0, 0, NULL }
1267 dissect_dsp_ChainedListArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1268 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1269 ChainedListArgument_choice, hf_index, ett_dsp_ChainedListArgument,
1276 static const ber_sequence_t ChainedListResultData_set[] = {
1277 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1278 { BER_CLASS_CON, 0, 0, dissect_listResult },
1283 dissect_dsp_ChainedListResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1284 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1285 ChainedListResultData_set, hf_index, ett_dsp_ChainedListResultData);
1289 static int dissect_unsignedChainedListResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1290 return dissect_dsp_ChainedListResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedListResult);
1292 static int dissect_chainedListResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1293 return dissect_dsp_ChainedListResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedListResult);
1297 static const ber_sequence_t T_signedChainedListResult_sequence[] = {
1298 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedListResult },
1299 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1300 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1305 dissect_dsp_T_signedChainedListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1306 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1307 T_signedChainedListResult_sequence, hf_index, ett_dsp_T_signedChainedListResult);
1311 static int dissect_signedChainedListResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1312 return dissect_dsp_T_signedChainedListResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedListResult);
1316 static const value_string dsp_ChainedListResult_vals[] = {
1317 { 0, "unsignedChainedListResult" },
1318 { 1, "signedChainedListResult" },
1322 static const ber_choice_t ChainedListResult_choice[] = {
1323 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedListResult },
1324 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedListResult },
1325 { 0, 0, 0, 0, NULL }
1329 dissect_dsp_ChainedListResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1330 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1331 ChainedListResult_choice, hf_index, ett_dsp_ChainedListResult,
1338 static const ber_sequence_t ChainedSearchArgumentData_set[] = {
1339 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
1340 { BER_CLASS_CON, 0, 0, dissect_searchArgument },
1345 dissect_dsp_ChainedSearchArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1346 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1347 ChainedSearchArgumentData_set, hf_index, ett_dsp_ChainedSearchArgumentData);
1351 static int dissect_unsignedChainedSearchArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1352 return dissect_dsp_ChainedSearchArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedSearchArgument);
1354 static int dissect_chainedSearchArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1355 return dissect_dsp_ChainedSearchArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedSearchArgument);
1359 static const ber_sequence_t T_signedChainedSearchArgument_sequence[] = {
1360 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedSearchArgument },
1361 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1362 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1367 dissect_dsp_T_signedChainedSearchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1368 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1369 T_signedChainedSearchArgument_sequence, hf_index, ett_dsp_T_signedChainedSearchArgument);
1373 static int dissect_signedChainedSearchArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1374 return dissect_dsp_T_signedChainedSearchArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedSearchArgument);
1378 static const value_string dsp_ChainedSearchArgument_vals[] = {
1379 { 0, "unsignedChainedSearchArgument" },
1380 { 1, "signedChainedSearchArgument" },
1384 static const ber_choice_t ChainedSearchArgument_choice[] = {
1385 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedSearchArgument },
1386 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedSearchArgument },
1387 { 0, 0, 0, 0, NULL }
1391 dissect_dsp_ChainedSearchArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1392 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1393 ChainedSearchArgument_choice, hf_index, ett_dsp_ChainedSearchArgument,
1400 static const ber_sequence_t ChainedSearchResultData_set[] = {
1401 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1402 { BER_CLASS_CON, 0, 0, dissect_searchResult },
1407 dissect_dsp_ChainedSearchResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1408 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1409 ChainedSearchResultData_set, hf_index, ett_dsp_ChainedSearchResultData);
1413 static int dissect_unsignedChainedSearchResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1414 return dissect_dsp_ChainedSearchResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedSearchResult);
1416 static int dissect_chainedSearchResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1417 return dissect_dsp_ChainedSearchResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedSearchResult);
1421 static const ber_sequence_t T_signedChainedSearchResult_sequence[] = {
1422 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedSearchResult },
1423 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1424 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1429 dissect_dsp_T_signedChainedSearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1430 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1431 T_signedChainedSearchResult_sequence, hf_index, ett_dsp_T_signedChainedSearchResult);
1435 static int dissect_signedChainedSearchResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1436 return dissect_dsp_T_signedChainedSearchResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedSearchResult);
1440 static const value_string dsp_ChainedSearchResult_vals[] = {
1441 { 0, "unsignedChainedSearchResult" },
1442 { 1, "signedChainedSearchResult" },
1446 static const ber_choice_t ChainedSearchResult_choice[] = {
1447 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedSearchResult },
1448 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedSearchResult },
1449 { 0, 0, 0, 0, NULL }
1453 dissect_dsp_ChainedSearchResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1454 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1455 ChainedSearchResult_choice, hf_index, ett_dsp_ChainedSearchResult,
1462 static const ber_sequence_t ChainedAddEntryArgumentData_set[] = {
1463 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
1464 { BER_CLASS_CON, 0, 0, dissect_addEntryArgument },
1469 dissect_dsp_ChainedAddEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1470 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1471 ChainedAddEntryArgumentData_set, hf_index, ett_dsp_ChainedAddEntryArgumentData);
1475 static int dissect_unsignedChainedAddEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1476 return dissect_dsp_ChainedAddEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedAddEntryArgument);
1478 static int dissect_chainedAddEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1479 return dissect_dsp_ChainedAddEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedAddEntryArgument);
1483 static const ber_sequence_t T_signedChainedAddEntryArgument_sequence[] = {
1484 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedAddEntryArgument },
1485 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1486 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1491 dissect_dsp_T_signedChainedAddEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1492 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1493 T_signedChainedAddEntryArgument_sequence, hf_index, ett_dsp_T_signedChainedAddEntryArgument);
1497 static int dissect_signedChainedAddEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1498 return dissect_dsp_T_signedChainedAddEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedAddEntryArgument);
1502 static const value_string dsp_ChainedAddEntryArgument_vals[] = {
1503 { 0, "unsignedChainedAddEntryArgument" },
1504 { 1, "signedChainedAddEntryArgument" },
1508 static const ber_choice_t ChainedAddEntryArgument_choice[] = {
1509 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedAddEntryArgument },
1510 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedAddEntryArgument },
1511 { 0, 0, 0, 0, NULL }
1515 dissect_dsp_ChainedAddEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1516 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1517 ChainedAddEntryArgument_choice, hf_index, ett_dsp_ChainedAddEntryArgument,
1524 static const ber_sequence_t ChainedAddEntryResultData_set[] = {
1525 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1526 { BER_CLASS_CON, 0, 0, dissect_addEntryResult },
1531 dissect_dsp_ChainedAddEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1532 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1533 ChainedAddEntryResultData_set, hf_index, ett_dsp_ChainedAddEntryResultData);
1537 static int dissect_unsignedChainedAddEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1538 return dissect_dsp_ChainedAddEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedAddEntryResult);
1540 static int dissect_chainedAddEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1541 return dissect_dsp_ChainedAddEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedAddEntryResult);
1545 static const ber_sequence_t T_signedChainedAddEntryResult_sequence[] = {
1546 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedAddEntryResult },
1547 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1548 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1553 dissect_dsp_T_signedChainedAddEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1554 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1555 T_signedChainedAddEntryResult_sequence, hf_index, ett_dsp_T_signedChainedAddEntryResult);
1559 static int dissect_signedChainedAddEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1560 return dissect_dsp_T_signedChainedAddEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedAddEntryResult);
1564 static const value_string dsp_ChainedAddEntryResult_vals[] = {
1565 { 0, "unsignedChainedAddEntryResult" },
1566 { 1, "signedChainedAddEntryResult" },
1570 static const ber_choice_t ChainedAddEntryResult_choice[] = {
1571 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedAddEntryResult },
1572 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedAddEntryResult },
1573 { 0, 0, 0, 0, NULL }
1577 dissect_dsp_ChainedAddEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1578 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1579 ChainedAddEntryResult_choice, hf_index, ett_dsp_ChainedAddEntryResult,
1586 static const ber_sequence_t ChainedRemoveEntryArgumentData_set[] = {
1587 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
1588 { BER_CLASS_CON, 0, 0, dissect_removeEntryArgument },
1593 dissect_dsp_ChainedRemoveEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1594 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1595 ChainedRemoveEntryArgumentData_set, hf_index, ett_dsp_ChainedRemoveEntryArgumentData);
1599 static int dissect_unsignedChainedRemoveEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1600 return dissect_dsp_ChainedRemoveEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedRemoveEntryArgument);
1602 static int dissect_chainedRemoveEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1603 return dissect_dsp_ChainedRemoveEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedRemoveEntryArgument);
1607 static const ber_sequence_t T_signedChainedRemoveEntryArgument_sequence[] = {
1608 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedRemoveEntryArgument },
1609 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1610 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1615 dissect_dsp_T_signedChainedRemoveEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1616 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1617 T_signedChainedRemoveEntryArgument_sequence, hf_index, ett_dsp_T_signedChainedRemoveEntryArgument);
1621 static int dissect_signedChainedRemoveEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1622 return dissect_dsp_T_signedChainedRemoveEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedRemoveEntryArgument);
1626 static const value_string dsp_ChainedRemoveEntryArgument_vals[] = {
1627 { 0, "unsignedChainedRemoveEntryArgument" },
1628 { 1, "signedChainedRemoveEntryArgument" },
1632 static const ber_choice_t ChainedRemoveEntryArgument_choice[] = {
1633 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedRemoveEntryArgument },
1634 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedRemoveEntryArgument },
1635 { 0, 0, 0, 0, NULL }
1639 dissect_dsp_ChainedRemoveEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1640 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1641 ChainedRemoveEntryArgument_choice, hf_index, ett_dsp_ChainedRemoveEntryArgument,
1648 static const ber_sequence_t ChainedRemoveEntryResultData_set[] = {
1649 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1650 { BER_CLASS_CON, 0, 0, dissect_removeEntryResult },
1655 dissect_dsp_ChainedRemoveEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1656 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1657 ChainedRemoveEntryResultData_set, hf_index, ett_dsp_ChainedRemoveEntryResultData);
1661 static int dissect_unsignedChainedRemoveEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1662 return dissect_dsp_ChainedRemoveEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedRemoveEntryResult);
1664 static int dissect_chainedRemoveEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1665 return dissect_dsp_ChainedRemoveEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedRemoveEntryResult);
1669 static const ber_sequence_t T_signedChainedRemoveEntryResult_sequence[] = {
1670 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedRemoveEntryResult },
1671 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1672 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1677 dissect_dsp_T_signedChainedRemoveEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1678 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1679 T_signedChainedRemoveEntryResult_sequence, hf_index, ett_dsp_T_signedChainedRemoveEntryResult);
1683 static int dissect_signedChainedRemoveEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1684 return dissect_dsp_T_signedChainedRemoveEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedRemoveEntryResult);
1688 static const value_string dsp_ChainedRemoveEntryResult_vals[] = {
1689 { 0, "unsignedChainedRemoveEntryResult" },
1690 { 1, "signedChainedRemoveEntryResult" },
1694 static const ber_choice_t ChainedRemoveEntryResult_choice[] = {
1695 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedRemoveEntryResult },
1696 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedRemoveEntryResult },
1697 { 0, 0, 0, 0, NULL }
1701 dissect_dsp_ChainedRemoveEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1702 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1703 ChainedRemoveEntryResult_choice, hf_index, ett_dsp_ChainedRemoveEntryResult,
1710 static const ber_sequence_t ChainedModifyEntryArgumentData_set[] = {
1711 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
1712 { BER_CLASS_CON, 0, 0, dissect_modifyEntryArgument },
1717 dissect_dsp_ChainedModifyEntryArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1718 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1719 ChainedModifyEntryArgumentData_set, hf_index, ett_dsp_ChainedModifyEntryArgumentData);
1723 static int dissect_unsignedChainedModifyEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1724 return dissect_dsp_ChainedModifyEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedModifyEntryArgument);
1726 static int dissect_chainedModifyEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1727 return dissect_dsp_ChainedModifyEntryArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedModifyEntryArgument);
1731 static const ber_sequence_t T_signedChainedModifyEntryArgument_sequence[] = {
1732 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedModifyEntryArgument },
1733 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1734 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1739 dissect_dsp_T_signedChainedModifyEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1740 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1741 T_signedChainedModifyEntryArgument_sequence, hf_index, ett_dsp_T_signedChainedModifyEntryArgument);
1745 static int dissect_signedChainedModifyEntryArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1746 return dissect_dsp_T_signedChainedModifyEntryArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedModifyEntryArgument);
1750 static const value_string dsp_ChainedModifyEntryArgument_vals[] = {
1751 { 0, "unsignedChainedModifyEntryArgument" },
1752 { 1, "signedChainedModifyEntryArgument" },
1756 static const ber_choice_t ChainedModifyEntryArgument_choice[] = {
1757 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedModifyEntryArgument },
1758 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedModifyEntryArgument },
1759 { 0, 0, 0, 0, NULL }
1763 dissect_dsp_ChainedModifyEntryArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1764 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1765 ChainedModifyEntryArgument_choice, hf_index, ett_dsp_ChainedModifyEntryArgument,
1772 static const ber_sequence_t ChainedModifyEntryResultData_set[] = {
1773 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1774 { BER_CLASS_CON, 0, 0, dissect_modifyEntryResult },
1779 dissect_dsp_ChainedModifyEntryResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1780 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1781 ChainedModifyEntryResultData_set, hf_index, ett_dsp_ChainedModifyEntryResultData);
1785 static int dissect_unsignedChainedModifyEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1786 return dissect_dsp_ChainedModifyEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedModifyEntryResult);
1788 static int dissect_chainedModifyEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1789 return dissect_dsp_ChainedModifyEntryResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedModifyEntryResult);
1793 static const ber_sequence_t T_signedChainedModifyEntryResult_sequence[] = {
1794 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedModifyEntryResult },
1795 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1796 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1801 dissect_dsp_T_signedChainedModifyEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1802 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1803 T_signedChainedModifyEntryResult_sequence, hf_index, ett_dsp_T_signedChainedModifyEntryResult);
1807 static int dissect_signedChainedModifyEntryResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1808 return dissect_dsp_T_signedChainedModifyEntryResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedModifyEntryResult);
1812 static const value_string dsp_ChainedModifyEntryResult_vals[] = {
1813 { 0, "unsignedChainedModifyEntryResult" },
1814 { 1, "signedChainedModifyEntryResult" },
1818 static const ber_choice_t ChainedModifyEntryResult_choice[] = {
1819 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedModifyEntryResult },
1820 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedModifyEntryResult },
1821 { 0, 0, 0, 0, NULL }
1825 dissect_dsp_ChainedModifyEntryResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1826 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1827 ChainedModifyEntryResult_choice, hf_index, ett_dsp_ChainedModifyEntryResult,
1834 static const ber_sequence_t ChainedModifyDNArgumentData_set[] = {
1835 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedArgument },
1836 { BER_CLASS_CON, 0, 0, dissect_modifyDNArgument },
1841 dissect_dsp_ChainedModifyDNArgumentData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1842 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1843 ChainedModifyDNArgumentData_set, hf_index, ett_dsp_ChainedModifyDNArgumentData);
1847 static int dissect_unsignedChainedModifyDNArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1848 return dissect_dsp_ChainedModifyDNArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedModifyDNArgument);
1850 static int dissect_chainedModifyDNArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1851 return dissect_dsp_ChainedModifyDNArgumentData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedModifyDNArgument);
1855 static const ber_sequence_t T_signedChainedModifyDNArgument_sequence[] = {
1856 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedModifyDNArgument },
1857 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1858 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1863 dissect_dsp_T_signedChainedModifyDNArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1864 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1865 T_signedChainedModifyDNArgument_sequence, hf_index, ett_dsp_T_signedChainedModifyDNArgument);
1869 static int dissect_signedChainedModifyDNArgument(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1870 return dissect_dsp_T_signedChainedModifyDNArgument(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedModifyDNArgument);
1874 static const value_string dsp_ChainedModifyDNArgument_vals[] = {
1875 { 0, "unsignedChainedModifyDNArgument" },
1876 { 1, "signedChainedModifyDNArgument" },
1880 static const ber_choice_t ChainedModifyDNArgument_choice[] = {
1881 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedModifyDNArgument },
1882 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedModifyDNArgument },
1883 { 0, 0, 0, 0, NULL }
1887 dissect_dsp_ChainedModifyDNArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1888 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1889 ChainedModifyDNArgument_choice, hf_index, ett_dsp_ChainedModifyDNArgument,
1896 static const ber_sequence_t ChainedModifyDNResultData_set[] = {
1897 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedResults },
1898 { BER_CLASS_CON, 0, 0, dissect_modifyDNResult },
1903 dissect_dsp_ChainedModifyDNResultData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1904 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1905 ChainedModifyDNResultData_set, hf_index, ett_dsp_ChainedModifyDNResultData);
1909 static int dissect_unsignedChainedModifyDNResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1910 return dissect_dsp_ChainedModifyDNResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedChainedModifyDNResult);
1912 static int dissect_chainedModifyDNResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1913 return dissect_dsp_ChainedModifyDNResultData(FALSE, tvb, offset, pinfo, tree, hf_dsp_chainedModifyDNResult);
1917 static const ber_sequence_t T_signedChainedModifyDNResult_sequence[] = {
1918 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_chainedModifyDNResult },
1919 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
1920 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
1925 dissect_dsp_T_signedChainedModifyDNResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1926 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
1927 T_signedChainedModifyDNResult_sequence, hf_index, ett_dsp_T_signedChainedModifyDNResult);
1931 static int dissect_signedChainedModifyDNResult(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1932 return dissect_dsp_T_signedChainedModifyDNResult(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedChainedModifyDNResult);
1936 static const value_string dsp_ChainedModifyDNResult_vals[] = {
1937 { 0, "unsignedChainedModifyDNResult" },
1938 { 1, "signedChainedModifyDNResult" },
1942 static const ber_choice_t ChainedModifyDNResult_choice[] = {
1943 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedChainedModifyDNResult },
1944 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedChainedModifyDNResult },
1945 { 0, 0, 0, 0, NULL }
1949 dissect_dsp_ChainedModifyDNResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1950 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
1951 ChainedModifyDNResult_choice, hf_index, ett_dsp_ChainedModifyDNResult,
1958 static const ber_sequence_t SET_OF_AccessPointInformation_set_of[1] = {
1959 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_accessPoints_item },
1963 dissect_dsp_SET_OF_AccessPointInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1964 offset = dissect_ber_set_of(implicit_tag, pinfo, tree, tvb, offset,
1965 SET_OF_AccessPointInformation_set_of, hf_index, ett_dsp_SET_OF_AccessPointInformation);
1969 static int dissect_accessPoints(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1970 return dissect_dsp_SET_OF_AccessPointInformation(FALSE, tvb, offset, pinfo, tree, hf_dsp_accessPoints);
1974 static const ber_sequence_t ContinuationReference_set[] = {
1975 { BER_CLASS_CON, 0, 0, dissect_targetObject },
1976 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_aliasedRDNs },
1977 { BER_CLASS_CON, 2, 0, dissect_operationProgress },
1978 { BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_rdnsResolved },
1979 { BER_CLASS_CON, 4, 0, dissect_referenceType },
1980 { BER_CLASS_CON, 5, 0, dissect_accessPoints },
1981 { BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_entryOnly },
1982 { BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_exclusions },
1983 { BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_returnToDUA },
1984 { BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_nameResolveOnMaster },
1989 dissect_dsp_ContinuationReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
1990 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
1991 ContinuationReference_set, hf_index, ett_dsp_ContinuationReference);
1995 static int dissect_reference(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
1996 return dissect_dsp_ContinuationReference(FALSE, tvb, offset, pinfo, tree, hf_dsp_reference);
2000 static const ber_sequence_t SEQUENCE_OF_Attribute_sequence_of[1] = {
2001 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_notification_item },
2005 dissect_dsp_SEQUENCE_OF_Attribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2006 offset = dissect_ber_sequence_of(implicit_tag, pinfo, tree, tvb, offset,
2007 SEQUENCE_OF_Attribute_sequence_of, hf_index, ett_dsp_SEQUENCE_OF_Attribute);
2011 static int dissect_notification(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
2012 return dissect_dsp_SEQUENCE_OF_Attribute(FALSE, tvb, offset, pinfo, tree, hf_dsp_notification);
2016 static const ber_sequence_t DSAReferralData_set[] = {
2017 { BER_CLASS_CON, 0, 0, dissect_reference },
2018 { BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_contextPrefix },
2019 { BER_CLASS_CON, 30, BER_FLAGS_OPTIONAL, dissect_securityParameters },
2020 { BER_CLASS_CON, 29, BER_FLAGS_OPTIONAL, dissect_performer },
2021 { BER_CLASS_CON, 28, BER_FLAGS_OPTIONAL, dissect_aliasDereferenced },
2022 { BER_CLASS_CON, 27, BER_FLAGS_OPTIONAL, dissect_notification },
2027 dissect_dsp_DSAReferralData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2028 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2029 DSAReferralData_set, hf_index, ett_dsp_DSAReferralData);
2033 static int dissect_unsignedDSAReferral(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
2034 return dissect_dsp_DSAReferralData(FALSE, tvb, offset, pinfo, tree, hf_dsp_unsignedDSAReferral);
2036 static int dissect_dsaReferral(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
2037 return dissect_dsp_DSAReferralData(FALSE, tvb, offset, pinfo, tree, hf_dsp_dsaReferral);
2041 static const ber_sequence_t T_signedDSAReferral_sequence[] = {
2042 { BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_dsaReferral },
2043 { BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_algorithmIdentifier },
2044 { BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_encrypted },
2049 dissect_dsp_T_signedDSAReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2050 offset = dissect_ber_sequence(implicit_tag, pinfo, tree, tvb, offset,
2051 T_signedDSAReferral_sequence, hf_index, ett_dsp_T_signedDSAReferral);
2055 static int dissect_signedDSAReferral(packet_info *pinfo _U_, proto_tree *tree _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_) {
2056 return dissect_dsp_T_signedDSAReferral(FALSE, tvb, offset, pinfo, tree, hf_dsp_signedDSAReferral);
2060 static const value_string dsp_DSAReferral_vals[] = {
2061 { 0, "unsignedDSAReferral" },
2062 { 1, "signedDSAReferral" },
2066 static const ber_choice_t DSAReferral_choice[] = {
2067 { 0, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_unsignedDSAReferral },
2068 { 1, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_signedDSAReferral },
2069 { 0, 0, 0, 0, NULL }
2073 dissect_dsp_DSAReferral(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2074 offset = dissect_ber_choice(pinfo, tree, tvb, offset,
2075 DSAReferral_choice, hf_index, ett_dsp_DSAReferral,
2082 static const ber_sequence_t AccessPoint_set[] = {
2083 { BER_CLASS_CON, 0, 0, dissect_ae_title },
2084 { BER_CLASS_CON, 1, 0, dissect_address },
2085 { BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_protocolInformation },
2090 dissect_dsp_AccessPoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, int hf_index _U_) {
2091 offset = dissect_ber_set(implicit_tag, pinfo, tree, tvb, offset,
2092 AccessPoint_set, hf_index, ett_dsp_AccessPoint);
2099 static void dissect_AccessPoint_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2100 dissect_dsp_AccessPoint(FALSE, tvb, 0, pinfo, tree, hf_dsp_AccessPoint_PDU);
2102 static void dissect_MasterAndShadowAccessPoints_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
2103 dissect_dsp_MasterAndShadowAccessPoints(FALSE, tvb, 0, pinfo, tree, hf_dsp_MasterAndShadowAccessPoints_PDU);
2107 /*--- End of included file: packet-dsp-fn.c ---*/
2108 #line 73 "packet-dsp-template.c"
2111 * Dissect X518 PDUs inside a ROS PDUs
2114 dissect_dsp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
2118 proto_item *item=NULL;
2119 proto_tree *tree=NULL;
2120 int (*dsp_dissector)(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) = NULL;
2123 /* do we have operation information from the ROS dissector? */
2124 if( !pinfo->private_data ){
2126 proto_tree_add_text(parent_tree, tvb, offset, -1,
2127 "Internal error: can't get operation information from ROS dissector.");
2131 session = ( (struct SESSION_DATA_STRUCTURE*)(pinfo->private_data) );
2135 item = proto_tree_add_item(parent_tree, proto_dsp, tvb, 0, -1, FALSE);
2136 tree = proto_item_add_subtree(item, ett_dsp);
2138 if (check_col(pinfo->cinfo, COL_PROTOCOL))
2139 col_set_str(pinfo->cinfo, COL_PROTOCOL, "DAP");
2140 if (check_col(pinfo->cinfo, COL_INFO))
2141 col_clear(pinfo->cinfo, COL_INFO);
2143 switch(session->ros_op & ROS_OP_MASK) {
2144 case (ROS_OP_BIND | ROS_OP_ARGUMENT): /* BindInvoke */
2145 dsp_dissector = dissect_dsp_DSASystemBindArgument;
2146 dsp_op_name = "System-Bind-Argument";
2148 case (ROS_OP_BIND | ROS_OP_RESULT): /* BindResult */
2149 dsp_dissector = dissect_dsp_DSASystemBindResult;
2150 dsp_op_name = "System-Bind-Result";
2152 case (ROS_OP_BIND | ROS_OP_ERROR): /* BindError */
2153 dsp_dissector = dissect_dsp_DSASystemBindError;
2154 dsp_op_name = "System-Bind-Error";
2156 case (ROS_OP_INVOKE | ROS_OP_ARGUMENT): /* Invoke Argument */
2157 switch(session->ros_op & ROS_OP_OPCODE_MASK) {
2159 dsp_dissector = dissect_dsp_ChainedReadArgument;
2160 dsp_op_name = "Chained-Read-Argument";
2162 case 2: /* compare */
2163 dsp_dissector = dissect_dsp_ChainedCompareArgument;
2164 dsp_op_name = "Chained-Compare-Argument";
2166 case 3: /* abandon */
2167 dsp_dissector = dissect_dsp_ChainedAbandonArgument;
2168 dsp_op_name = "Chained-Abandon-Argument";
2171 dsp_dissector = dissect_dsp_ChainedListArgument;
2172 dsp_op_name = "Chained-List-Argument";
2174 case 5: /* search */
2175 dsp_dissector = dissect_dsp_ChainedSearchArgument;
2176 dsp_op_name = "Chained-Search-Argument";
2178 case 6: /* addEntry */
2179 dsp_dissector = dissect_dsp_ChainedAddEntryArgument;
2180 dsp_op_name = "Chained-Add-Entry-Argument";
2182 case 7: /* removeEntry */
2183 dsp_dissector = dissect_dsp_ChainedRemoveEntryArgument;
2184 dsp_op_name = "Chained-Remove-Entry-Argument";
2186 case 8: /* modifyEntry */
2187 dsp_dissector = dissect_dsp_ChainedModifyEntryArgument;
2188 dsp_op_name = "ChainedModify-Entry-Argument";
2190 case 9: /* modifyDN */
2191 dsp_dissector = dissect_dsp_ChainedModifyDNArgument;
2192 dsp_op_name = "ChainedModify-DN-Argument";
2195 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DSP opcode (%d)",
2196 session->ros_op & ROS_OP_OPCODE_MASK);
2200 case (ROS_OP_INVOKE | ROS_OP_RESULT): /* Return Result */
2201 switch(session->ros_op & ROS_OP_OPCODE_MASK) {
2203 dsp_dissector = dissect_dsp_ChainedReadResult;
2204 dsp_op_name = "Chained-Read-Result";
2206 case 2: /* compare */
2207 dsp_dissector = dissect_dsp_ChainedCompareResult;
2208 dsp_op_name = "Chained-Compare-Result";
2210 case 3: /* abandon */
2211 dsp_dissector = dissect_dsp_ChainedAbandonResult;
2212 dsp_op_name = "Chained-Abandon-Result";
2215 dsp_dissector = dissect_dsp_ChainedListResult;
2216 dsp_op_name = "Chained-List-Result";
2218 case 5: /* search */
2219 dsp_dissector = dissect_dsp_ChainedSearchResult;
2220 dsp_op_name = "Chained-Search-Result";
2222 case 6: /* addEntry */
2223 dsp_dissector = dissect_dsp_ChainedAddEntryResult;
2224 dsp_op_name = "Chained-Add-Entry-Result";
2226 case 7: /* removeEntry */
2227 dsp_dissector = dissect_dsp_ChainedRemoveEntryResult;
2228 dsp_op_name = "Chained-Remove-Entry-Result";
2230 case 8: /* modifyEntry */
2231 dsp_dissector = dissect_dsp_ChainedModifyEntryResult;
2232 dsp_op_name = "Chained-Modify-Entry-Result";
2234 case 9: /* modifyDN */
2235 dsp_dissector = dissect_dsp_ChainedModifyDNResult;
2236 dsp_op_name = "ChainedModify-DN-Result";
2239 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DSP opcode");
2243 case (ROS_OP_INVOKE | ROS_OP_ERROR): /* Return Error */
2244 switch(session->ros_op & ROS_OP_OPCODE_MASK) {
2245 case 1: /* attributeError */
2246 dsp_dissector = dissect_dap_AttributeError;
2247 dsp_op_name = "Attribute-Error";
2249 case 2: /* nameError */
2250 dsp_dissector = dissect_dap_NameError;
2251 dsp_op_name = "Name-Error";
2253 case 3: /* serviceError */
2254 dsp_dissector = dissect_dap_ServiceError;
2255 dsp_op_name = "Service-Error";
2257 case 4: /* referral */
2258 dsp_dissector = dissect_dap_Referral;
2259 dsp_op_name = "Referral";
2261 case 5: /* abandoned */
2262 dsp_dissector = dissect_dap_Abandoned;
2263 dsp_op_name = "Abandoned";
2265 case 6: /* securityError */
2266 dsp_dissector = dissect_dap_SecurityError;
2267 dsp_op_name = "Security-Error";
2269 case 7: /* abandonFailed */
2270 dsp_dissector = dissect_dap_AbandonFailedError;
2271 dsp_op_name = "Abandon-Failed-Error";
2273 case 8: /* updateError */
2274 dsp_dissector = dissect_dap_UpdateError;
2275 dsp_op_name = "Update-Error";
2277 case 9: /* DSAReferral */
2278 dsp_dissector = dissect_dsp_DSAReferral;
2279 dsp_op_name = "DSA-Referral";
2282 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DSP errcode");
2287 proto_tree_add_text(tree, tvb, offset, -1,"Unsupported DSP PDU");
2292 if (check_col(pinfo->cinfo, COL_INFO))
2293 col_add_str(pinfo->cinfo, COL_INFO, dsp_op_name);
2295 while (tvb_reported_length_remaining(tvb, offset) > 0){
2297 offset=(*dsp_dissector)(FALSE, tvb, offset, pinfo , tree, -1);
2298 if(offset == old_offset){
2299 proto_tree_add_text(tree, tvb, offset, -1,"Internal error, zero-byte DSP PDU");
2300 offset = tvb_length(tvb);
2308 /*--- proto_register_dsp -------------------------------------------*/
2309 void proto_register_dsp(void) {
2311 /* List of fields */
2312 static hf_register_info hf[] =
2315 /*--- Included file: packet-dsp-hfarr.c ---*/
2316 #line 1 "packet-dsp-hfarr.c"
2317 { &hf_dsp_AccessPoint_PDU,
2318 { "AccessPoint", "dsp.AccessPoint",
2319 FT_NONE, BASE_NONE, NULL, 0,
2320 "dsp.AccessPoint", HFILL }},
2321 { &hf_dsp_MasterAndShadowAccessPoints_PDU,
2322 { "MasterAndShadowAccessPoints", "dsp.MasterAndShadowAccessPoints",
2323 FT_UINT32, BASE_DEC, NULL, 0,
2324 "dsp.MasterAndShadowAccessPoints", HFILL }},
2325 { &hf_dsp_chainedArgument,
2326 { "chainedArgument", "dsp.chainedArgument",
2327 FT_NONE, BASE_NONE, NULL, 0,
2328 "dsp.ChainingArguments", HFILL }},
2329 { &hf_dsp_readArgument,
2330 { "readArgument", "dsp.readArgument",
2331 FT_UINT32, BASE_DEC, VALS(dap_ReadArgument_vals), 0,
2332 "dap.ReadArgument", HFILL }},
2333 { &hf_dsp_unsignedChainedReadArgument,
2334 { "unsignedChainedReadArgument", "dsp.unsignedChainedReadArgument",
2335 FT_NONE, BASE_NONE, NULL, 0,
2336 "dsp.ChainedReadArgumentData", HFILL }},
2337 { &hf_dsp_signedChainedReadArgument,
2338 { "signedChainedReadArgument", "dsp.signedChainedReadArgument",
2339 FT_NONE, BASE_NONE, NULL, 0,
2340 "dsp.T_signedChainedReadArgument", HFILL }},
2341 { &hf_dsp_chainedReadArgument,
2342 { "chainedReadArgument", "dsp.chainedReadArgument",
2343 FT_NONE, BASE_NONE, NULL, 0,
2344 "dsp.ChainedReadArgumentData", HFILL }},
2345 { &hf_dsp_algorithmIdentifier,
2346 { "algorithmIdentifier", "dsp.algorithmIdentifier",
2347 FT_NONE, BASE_NONE, NULL, 0,
2348 "x509af.AlgorithmIdentifier", HFILL }},
2349 { &hf_dsp_encrypted,
2350 { "encrypted", "dsp.encrypted",
2351 FT_BYTES, BASE_HEX, NULL, 0,
2352 "dsp.BIT_STRING", HFILL }},
2353 { &hf_dsp_chainedResults,
2354 { "chainedResults", "dsp.chainedResults",
2355 FT_NONE, BASE_NONE, NULL, 0,
2356 "dsp.ChainingResults", HFILL }},
2357 { &hf_dsp_readResult,
2358 { "readResult", "dsp.readResult",
2359 FT_UINT32, BASE_DEC, VALS(dap_ReadResult_vals), 0,
2360 "dap.ReadResult", HFILL }},
2361 { &hf_dsp_unsignedChainedReadResult,
2362 { "unsignedChainedReadResult", "dsp.unsignedChainedReadResult",
2363 FT_NONE, BASE_NONE, NULL, 0,
2364 "dsp.ChainedReadResultData", HFILL }},
2365 { &hf_dsp_signedChainedReadResult,
2366 { "signedChainedReadResult", "dsp.signedChainedReadResult",
2367 FT_NONE, BASE_NONE, NULL, 0,
2368 "dsp.T_signedChainedReadResult", HFILL }},
2369 { &hf_dsp_chainedReadResult,
2370 { "chainedReadResult", "dsp.chainedReadResult",
2371 FT_NONE, BASE_NONE, NULL, 0,
2372 "dsp.ChainedReadResultData", HFILL }},
2373 { &hf_dsp_compareArgument,
2374 { "compareArgument", "dsp.compareArgument",
2375 FT_UINT32, BASE_DEC, VALS(dap_CompareArgument_vals), 0,
2376 "dap.CompareArgument", HFILL }},
2377 { &hf_dsp_unsignedChainedCompareArgument,
2378 { "unsignedChainedCompareArgument", "dsp.unsignedChainedCompareArgument",
2379 FT_NONE, BASE_NONE, NULL, 0,
2380 "dsp.ChainedCompareArgumentData", HFILL }},
2381 { &hf_dsp_signedChainedCompareArgument,
2382 { "signedChainedCompareArgument", "dsp.signedChainedCompareArgument",
2383 FT_NONE, BASE_NONE, NULL, 0,
2384 "dsp.T_signedChainedCompareArgument", HFILL }},
2385 { &hf_dsp_chainedCompareArgument,
2386 { "chainedCompareArgument", "dsp.chainedCompareArgument",
2387 FT_NONE, BASE_NONE, NULL, 0,
2388 "dsp.ChainedCompareArgumentData", HFILL }},
2389 { &hf_dsp_compareResult,
2390 { "compareResult", "dsp.compareResult",
2391 FT_UINT32, BASE_DEC, VALS(dap_CompareResult_vals), 0,
2392 "dap.CompareResult", HFILL }},
2393 { &hf_dsp_unsignedChainedCompareResult,
2394 { "unsignedChainedCompareResult", "dsp.unsignedChainedCompareResult",
2395 FT_NONE, BASE_NONE, NULL, 0,
2396 "dsp.ChainedCompareResultData", HFILL }},
2397 { &hf_dsp_signedChainedCompareResult,
2398 { "signedChainedCompareResult", "dsp.signedChainedCompareResult",
2399 FT_NONE, BASE_NONE, NULL, 0,
2400 "dsp.T_signedChainedCompareResult", HFILL }},
2401 { &hf_dsp_chainedCompareResult,
2402 { "chainedCompareResult", "dsp.chainedCompareResult",
2403 FT_NONE, BASE_NONE, NULL, 0,
2404 "dsp.ChainedCompareResultData", HFILL }},
2405 { &hf_dsp_listArgument,
2406 { "listArgument", "dsp.listArgument",
2407 FT_UINT32, BASE_DEC, VALS(dap_ListArgument_vals), 0,
2408 "dap.ListArgument", HFILL }},
2409 { &hf_dsp_unsignedChainedListArgument,
2410 { "unsignedChainedListArgument", "dsp.unsignedChainedListArgument",
2411 FT_NONE, BASE_NONE, NULL, 0,
2412 "dsp.ChainedListArgumentData", HFILL }},
2413 { &hf_dsp_signedChainedListArgument,
2414 { "signedChainedListArgument", "dsp.signedChainedListArgument",
2415 FT_NONE, BASE_NONE, NULL, 0,
2416 "dsp.T_signedChainedListArgument", HFILL }},
2417 { &hf_dsp_chainedListArgument,
2418 { "chainedListArgument", "dsp.chainedListArgument",
2419 FT_NONE, BASE_NONE, NULL, 0,
2420 "dsp.ChainedListArgumentData", HFILL }},
2421 { &hf_dsp_listResult,
2422 { "listResult", "dsp.listResult",
2423 FT_UINT32, BASE_DEC, VALS(dap_ListResult_vals), 0,
2424 "dap.ListResult", HFILL }},
2425 { &hf_dsp_unsignedChainedListResult,
2426 { "unsignedChainedListResult", "dsp.unsignedChainedListResult",
2427 FT_NONE, BASE_NONE, NULL, 0,
2428 "dsp.ChainedListResultData", HFILL }},
2429 { &hf_dsp_signedChainedListResult,
2430 { "signedChainedListResult", "dsp.signedChainedListResult",
2431 FT_NONE, BASE_NONE, NULL, 0,
2432 "dsp.T_signedChainedListResult", HFILL }},
2433 { &hf_dsp_chainedListResult,
2434 { "chainedListResult", "dsp.chainedListResult",
2435 FT_NONE, BASE_NONE, NULL, 0,
2436 "dsp.ChainedListResultData", HFILL }},
2437 { &hf_dsp_searchArgument,
2438 { "searchArgument", "dsp.searchArgument",
2439 FT_UINT32, BASE_DEC, VALS(dap_SearchArgument_vals), 0,
2440 "dap.SearchArgument", HFILL }},
2441 { &hf_dsp_unsignedChainedSearchArgument,
2442 { "unsignedChainedSearchArgument", "dsp.unsignedChainedSearchArgument",
2443 FT_NONE, BASE_NONE, NULL, 0,
2444 "dsp.ChainedSearchArgumentData", HFILL }},
2445 { &hf_dsp_signedChainedSearchArgument,
2446 { "signedChainedSearchArgument", "dsp.signedChainedSearchArgument",
2447 FT_NONE, BASE_NONE, NULL, 0,
2448 "dsp.T_signedChainedSearchArgument", HFILL }},
2449 { &hf_dsp_chainedSearchArgument,
2450 { "chainedSearchArgument", "dsp.chainedSearchArgument",
2451 FT_NONE, BASE_NONE, NULL, 0,
2452 "dsp.ChainedSearchArgumentData", HFILL }},
2453 { &hf_dsp_searchResult,
2454 { "searchResult", "dsp.searchResult",
2455 FT_UINT32, BASE_DEC, VALS(dap_SearchResult_vals), 0,
2456 "dap.SearchResult", HFILL }},
2457 { &hf_dsp_unsignedChainedSearchResult,
2458 { "unsignedChainedSearchResult", "dsp.unsignedChainedSearchResult",
2459 FT_NONE, BASE_NONE, NULL, 0,
2460 "dsp.ChainedSearchResultData", HFILL }},
2461 { &hf_dsp_signedChainedSearchResult,
2462 { "signedChainedSearchResult", "dsp.signedChainedSearchResult",
2463 FT_NONE, BASE_NONE, NULL, 0,
2464 "dsp.T_signedChainedSearchResult", HFILL }},
2465 { &hf_dsp_chainedSearchResult,
2466 { "chainedSearchResult", "dsp.chainedSearchResult",
2467 FT_NONE, BASE_NONE, NULL, 0,
2468 "dsp.ChainedSearchResultData", HFILL }},
2469 { &hf_dsp_addEntryArgument,
2470 { "addEntryArgument", "dsp.addEntryArgument",
2471 FT_UINT32, BASE_DEC, VALS(dap_AddEntryArgument_vals), 0,
2472 "dap.AddEntryArgument", HFILL }},
2473 { &hf_dsp_unsignedChainedAddEntryArgument,
2474 { "unsignedChainedAddEntryArgument", "dsp.unsignedChainedAddEntryArgument",
2475 FT_NONE, BASE_NONE, NULL, 0,
2476 "dsp.ChainedAddEntryArgumentData", HFILL }},
2477 { &hf_dsp_signedChainedAddEntryArgument,
2478 { "signedChainedAddEntryArgument", "dsp.signedChainedAddEntryArgument",
2479 FT_NONE, BASE_NONE, NULL, 0,
2480 "dsp.T_signedChainedAddEntryArgument", HFILL }},
2481 { &hf_dsp_chainedAddEntryArgument,
2482 { "chainedAddEntryArgument", "dsp.chainedAddEntryArgument",
2483 FT_NONE, BASE_NONE, NULL, 0,
2484 "dsp.ChainedAddEntryArgumentData", HFILL }},
2485 { &hf_dsp_addEntryResult,
2486 { "addEntryResult", "dsp.addEntryResult",
2487 FT_UINT32, BASE_DEC, VALS(dap_AddEntryResult_vals), 0,
2488 "dap.AddEntryResult", HFILL }},
2489 { &hf_dsp_unsignedChainedAddEntryResult,
2490 { "unsignedChainedAddEntryResult", "dsp.unsignedChainedAddEntryResult",
2491 FT_NONE, BASE_NONE, NULL, 0,
2492 "dsp.ChainedAddEntryResultData", HFILL }},
2493 { &hf_dsp_signedChainedAddEntryResult,
2494 { "signedChainedAddEntryResult", "dsp.signedChainedAddEntryResult",
2495 FT_NONE, BASE_NONE, NULL, 0,
2496 "dsp.T_signedChainedAddEntryResult", HFILL }},
2497 { &hf_dsp_chainedAddEntryResult,
2498 { "chainedAddEntryResult", "dsp.chainedAddEntryResult",
2499 FT_NONE, BASE_NONE, NULL, 0,
2500 "dsp.ChainedAddEntryResultData", HFILL }},
2501 { &hf_dsp_removeEntryArgument,
2502 { "removeEntryArgument", "dsp.removeEntryArgument",
2503 FT_UINT32, BASE_DEC, VALS(dap_RemoveEntryArgument_vals), 0,
2504 "dap.RemoveEntryArgument", HFILL }},
2505 { &hf_dsp_unsignedChainedRemoveEntryArgument,
2506 { "unsignedChainedRemoveEntryArgument", "dsp.unsignedChainedRemoveEntryArgument",
2507 FT_NONE, BASE_NONE, NULL, 0,
2508 "dsp.ChainedRemoveEntryArgumentData", HFILL }},
2509 { &hf_dsp_signedChainedRemoveEntryArgument,
2510 { "signedChainedRemoveEntryArgument", "dsp.signedChainedRemoveEntryArgument",
2511 FT_NONE, BASE_NONE, NULL, 0,
2512 "dsp.T_signedChainedRemoveEntryArgument", HFILL }},
2513 { &hf_dsp_chainedRemoveEntryArgument,
2514 { "chainedRemoveEntryArgument", "dsp.chainedRemoveEntryArgument",
2515 FT_NONE, BASE_NONE, NULL, 0,
2516 "dsp.ChainedRemoveEntryArgumentData", HFILL }},
2517 { &hf_dsp_removeEntryResult,
2518 { "removeEntryResult", "dsp.removeEntryResult",
2519 FT_UINT32, BASE_DEC, VALS(dap_RemoveEntryResult_vals), 0,
2520 "dap.RemoveEntryResult", HFILL }},
2521 { &hf_dsp_unsignedChainedRemoveEntryResult,
2522 { "unsignedChainedRemoveEntryResult", "dsp.unsignedChainedRemoveEntryResult",
2523 FT_NONE, BASE_NONE, NULL, 0,
2524 "dsp.ChainedRemoveEntryResultData", HFILL }},
2525 { &hf_dsp_signedChainedRemoveEntryResult,
2526 { "signedChainedRemoveEntryResult", "dsp.signedChainedRemoveEntryResult",
2527 FT_NONE, BASE_NONE, NULL, 0,
2528 "dsp.T_signedChainedRemoveEntryResult", HFILL }},
2529 { &hf_dsp_chainedRemoveEntryResult,
2530 { "chainedRemoveEntryResult", "dsp.chainedRemoveEntryResult",
2531 FT_NONE, BASE_NONE, NULL, 0,
2532 "dsp.ChainedRemoveEntryResultData", HFILL }},
2533 { &hf_dsp_modifyEntryArgument,
2534 { "modifyEntryArgument", "dsp.modifyEntryArgument",
2535 FT_UINT32, BASE_DEC, VALS(dap_ModifyEntryArgument_vals), 0,
2536 "dap.ModifyEntryArgument", HFILL }},
2537 { &hf_dsp_unsignedChainedModifyEntryArgument,
2538 { "unsignedChainedModifyEntryArgument", "dsp.unsignedChainedModifyEntryArgument",
2539 FT_NONE, BASE_NONE, NULL, 0,
2540 "dsp.ChainedModifyEntryArgumentData", HFILL }},
2541 { &hf_dsp_signedChainedModifyEntryArgument,
2542 { "signedChainedModifyEntryArgument", "dsp.signedChainedModifyEntryArgument",
2543 FT_NONE, BASE_NONE, NULL, 0,
2544 "dsp.T_signedChainedModifyEntryArgument", HFILL }},
2545 { &hf_dsp_chainedModifyEntryArgument,
2546 { "chainedModifyEntryArgument", "dsp.chainedModifyEntryArgument",
2547 FT_NONE, BASE_NONE, NULL, 0,
2548 "dsp.ChainedModifyEntryArgumentData", HFILL }},
2549 { &hf_dsp_modifyEntryResult,
2550 { "modifyEntryResult", "dsp.modifyEntryResult",
2551 FT_UINT32, BASE_DEC, VALS(dap_ModifyEntryResult_vals), 0,
2552 "dap.ModifyEntryResult", HFILL }},
2553 { &hf_dsp_unsignedChainedModifyEntryResult,
2554 { "unsignedChainedModifyEntryResult", "dsp.unsignedChainedModifyEntryResult",
2555 FT_NONE, BASE_NONE, NULL, 0,
2556 "dsp.ChainedModifyEntryResultData", HFILL }},
2557 { &hf_dsp_signedChainedModifyEntryResult,
2558 { "signedChainedModifyEntryResult", "dsp.signedChainedModifyEntryResult",
2559 FT_NONE, BASE_NONE, NULL, 0,
2560 "dsp.T_signedChainedModifyEntryResult", HFILL }},
2561 { &hf_dsp_chainedModifyEntryResult,
2562 { "chainedModifyEntryResult", "dsp.chainedModifyEntryResult",
2563 FT_NONE, BASE_NONE, NULL, 0,
2564 "dsp.ChainedModifyEntryResultData", HFILL }},
2565 { &hf_dsp_modifyDNArgument,
2566 { "modifyDNArgument", "dsp.modifyDNArgument",
2567 FT_NONE, BASE_NONE, NULL, 0,
2568 "dap.ModifyDNArgument", HFILL }},
2569 { &hf_dsp_unsignedChainedModifyDNArgument,
2570 { "unsignedChainedModifyDNArgument", "dsp.unsignedChainedModifyDNArgument",
2571 FT_NONE, BASE_NONE, NULL, 0,
2572 "dsp.ChainedModifyDNArgumentData", HFILL }},
2573 { &hf_dsp_signedChainedModifyDNArgument,
2574 { "signedChainedModifyDNArgument", "dsp.signedChainedModifyDNArgument",
2575 FT_NONE, BASE_NONE, NULL, 0,
2576 "dsp.T_signedChainedModifyDNArgument", HFILL }},
2577 { &hf_dsp_chainedModifyDNArgument,
2578 { "chainedModifyDNArgument", "dsp.chainedModifyDNArgument",
2579 FT_NONE, BASE_NONE, NULL, 0,
2580 "dsp.ChainedModifyDNArgumentData", HFILL }},
2581 { &hf_dsp_modifyDNResult,
2582 { "modifyDNResult", "dsp.modifyDNResult",
2583 FT_UINT32, BASE_DEC, VALS(dap_ModifyDNResult_vals), 0,
2584 "dap.ModifyDNResult", HFILL }},
2585 { &hf_dsp_unsignedChainedModifyDNResult,
2586 { "unsignedChainedModifyDNResult", "dsp.unsignedChainedModifyDNResult",
2587 FT_NONE, BASE_NONE, NULL, 0,
2588 "dsp.ChainedModifyDNResultData", HFILL }},
2589 { &hf_dsp_signedChainedModifyDNResult,
2590 { "signedChainedModifyDNResult", "dsp.signedChainedModifyDNResult",
2591 FT_NONE, BASE_NONE, NULL, 0,
2592 "dsp.T_signedChainedModifyDNResult", HFILL }},
2593 { &hf_dsp_chainedModifyDNResult,
2594 { "chainedModifyDNResult", "dsp.chainedModifyDNResult",
2595 FT_NONE, BASE_NONE, NULL, 0,
2596 "dsp.ChainedModifyDNResultData", HFILL }},
2597 { &hf_dsp_reference,
2598 { "reference", "dsp.reference",
2599 FT_NONE, BASE_NONE, NULL, 0,
2600 "dsp.ContinuationReference", HFILL }},
2601 { &hf_dsp_contextPrefix,
2602 { "contextPrefix", "dsp.contextPrefix",
2603 FT_UINT32, BASE_DEC, NULL, 0,
2604 "x509if.DistinguishedName", HFILL }},
2605 { &hf_dsp_securityParameters,
2606 { "securityParameters", "dsp.securityParameters",
2607 FT_NONE, BASE_NONE, NULL, 0,
2608 "dap.SecurityParameters", HFILL }},
2609 { &hf_dsp_performer,
2610 { "performer", "dsp.performer",
2611 FT_UINT32, BASE_DEC, NULL, 0,
2612 "x509if.DistinguishedName", HFILL }},
2613 { &hf_dsp_aliasDereferenced,
2614 { "aliasDereferenced", "dsp.aliasDereferenced",
2615 FT_BOOLEAN, 8, NULL, 0,
2616 "dsp.BOOLEAN", HFILL }},
2617 { &hf_dsp_notification,
2618 { "notification", "dsp.notification",
2619 FT_UINT32, BASE_DEC, NULL, 0,
2620 "dsp.SEQUENCE_OF_Attribute", HFILL }},
2621 { &hf_dsp_notification_item,
2622 { "Item", "dsp.notification_item",
2623 FT_NONE, BASE_NONE, NULL, 0,
2624 "x509if.Attribute", HFILL }},
2625 { &hf_dsp_unsignedDSAReferral,
2626 { "unsignedDSAReferral", "dsp.unsignedDSAReferral",
2627 FT_NONE, BASE_NONE, NULL, 0,
2628 "dsp.DSAReferralData", HFILL }},
2629 { &hf_dsp_signedDSAReferral,
2630 { "signedDSAReferral", "dsp.signedDSAReferral",
2631 FT_NONE, BASE_NONE, NULL, 0,
2632 "dsp.T_signedDSAReferral", HFILL }},
2633 { &hf_dsp_dsaReferral,
2634 { "dsaReferral", "dsp.dsaReferral",
2635 FT_NONE, BASE_NONE, NULL, 0,
2636 "dsp.DSAReferralData", HFILL }},
2637 { &hf_dsp_originator,
2638 { "originator", "dsp.originator",
2639 FT_UINT32, BASE_DEC, NULL, 0,
2640 "x509if.DistinguishedName", HFILL }},
2641 { &hf_dsp_targetObjectDN,
2642 { "targetObject", "dsp.targetObject",
2643 FT_UINT32, BASE_DEC, NULL, 0,
2644 "x509if.DistinguishedName", HFILL }},
2645 { &hf_dsp_operationProgress,
2646 { "operationProgress", "dsp.operationProgress",
2647 FT_NONE, BASE_NONE, NULL, 0,
2648 "dsp.OperationProgress", HFILL }},
2649 { &hf_dsp_traceInformation,
2650 { "traceInformation", "dsp.traceInformation",
2651 FT_UINT32, BASE_DEC, NULL, 0,
2652 "dsp.TraceInformation", HFILL }},
2653 { &hf_dsp_aliasedRDNs,
2654 { "aliasedRDNs", "dsp.aliasedRDNs",
2655 FT_INT32, BASE_DEC, NULL, 0,
2656 "dsp.INTEGER", HFILL }},
2657 { &hf_dsp_returnCrossRefs,
2658 { "returnCrossRefs", "dsp.returnCrossRefs",
2659 FT_BOOLEAN, 8, NULL, 0,
2660 "dsp.BOOLEAN", HFILL }},
2661 { &hf_dsp_referenceType,
2662 { "referenceType", "dsp.referenceType",
2663 FT_UINT32, BASE_DEC, VALS(dsp_ReferenceType_vals), 0,
2664 "dsp.ReferenceType", HFILL }},
2666 { "info", "dsp.info",
2667 FT_OID, BASE_NONE, NULL, 0,
2668 "dsp.DomainInfo", HFILL }},
2669 { &hf_dsp_timeLimit,
2670 { "timeLimit", "dsp.timeLimit",
2671 FT_UINT32, BASE_DEC, VALS(x509af_Time_vals), 0,
2672 "dsp.Time", HFILL }},
2673 { &hf_dsp_entryOnly,
2674 { "entryOnly", "dsp.entryOnly",
2675 FT_BOOLEAN, 8, NULL, 0,
2676 "dsp.BOOLEAN", HFILL }},
2677 { &hf_dsp_uniqueIdentifier,
2678 { "uniqueIdentifier", "dsp.uniqueIdentifier",
2679 FT_BYTES, BASE_HEX, NULL, 0,
2680 "x509sat.UniqueIdentifier", HFILL }},
2681 { &hf_dsp_authenticationLevel,
2682 { "authenticationLevel", "dsp.authenticationLevel",
2683 FT_UINT32, BASE_DEC, VALS(dsp_AuthenticationLevel_vals), 0,
2684 "dsp.AuthenticationLevel", HFILL }},
2685 { &hf_dsp_exclusions,
2686 { "exclusions", "dsp.exclusions",
2687 FT_UINT32, BASE_DEC, NULL, 0,
2688 "dsp.Exclusions", HFILL }},
2689 { &hf_dsp_excludeShadows,
2690 { "excludeShadows", "dsp.excludeShadows",
2691 FT_BOOLEAN, 8, NULL, 0,
2692 "dsp.BOOLEAN", HFILL }},
2693 { &hf_dsp_nameResolveOnMaster,
2694 { "nameResolveOnMaster", "dsp.nameResolveOnMaster",
2695 FT_BOOLEAN, 8, NULL, 0,
2696 "dsp.BOOLEAN", HFILL }},
2697 { &hf_dsp_operationIdentifier,
2698 { "operationIdentifier", "dsp.operationIdentifier",
2699 FT_INT32, BASE_DEC, NULL, 0,
2700 "dsp.INTEGER", HFILL }},
2701 { &hf_dsp_searchRuleId,
2702 { "searchRuleId", "dsp.searchRuleId",
2703 FT_NONE, BASE_NONE, NULL, 0,
2704 "x509if.SearchRuleId", HFILL }},
2705 { &hf_dsp_chainedRelaxation,
2706 { "chainedRelaxation", "dsp.chainedRelaxation",
2707 FT_NONE, BASE_NONE, NULL, 0,
2708 "x509if.MRMapping", HFILL }},
2709 { &hf_dsp_relatedEntry,
2710 { "relatedEntry", "dsp.relatedEntry",
2711 FT_INT32, BASE_DEC, NULL, 0,
2712 "dsp.INTEGER", HFILL }},
2714 { "utcTime", "dsp.utcTime",
2715 FT_STRING, BASE_NONE, NULL, 0,
2716 "dsp.UTCTime", HFILL }},
2717 { &hf_dsp_generalizedTime,
2718 { "generalizedTime", "dsp.generalizedTime",
2719 FT_STRING, BASE_NONE, NULL, 0,
2720 "dsp.GeneralizedTime", HFILL }},
2721 { &hf_dsp_crossReferences,
2722 { "crossReferences", "dsp.crossReferences",
2723 FT_UINT32, BASE_DEC, NULL, 0,
2724 "dsp.SEQUENCE_OF_CrossReference", HFILL }},
2725 { &hf_dsp_crossReferences_item,
2726 { "Item", "dsp.crossReferences_item",
2727 FT_NONE, BASE_NONE, NULL, 0,
2728 "dsp.CrossReference", HFILL }},
2729 { &hf_dsp_alreadySearched,
2730 { "alreadySearched", "dsp.alreadySearched",
2731 FT_UINT32, BASE_DEC, NULL, 0,
2732 "dsp.Exclusions", HFILL }},
2733 { &hf_dsp_accessPoint,
2734 { "accessPoint", "dsp.accessPoint",
2735 FT_NONE, BASE_NONE, NULL, 0,
2736 "dsp.AccessPointInformation", HFILL }},
2737 { &hf_dsp_nameResolutionPhase,
2738 { "nameResolutionPhase", "dsp.nameResolutionPhase",
2739 FT_UINT32, BASE_DEC, VALS(dsp_T_nameResolutionPhase_vals), 0,
2740 "dsp.T_nameResolutionPhase", HFILL }},
2741 { &hf_dsp_nextRDNToBeResolved,
2742 { "nextRDNToBeResolved", "dsp.nextRDNToBeResolved",
2743 FT_INT32, BASE_DEC, NULL, 0,
2744 "dsp.INTEGER", HFILL }},
2745 { &hf_dsp_TraceInformation_item,
2746 { "Item", "dsp.TraceInformation_item",
2747 FT_NONE, BASE_NONE, NULL, 0,
2748 "dsp.TraceItem", HFILL }},
2751 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2752 "x509if.Name", HFILL }},
2753 { &hf_dsp_targetObject,
2754 { "targetObject", "dsp.targetObject",
2755 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2756 "x509if.Name", HFILL }},
2758 { "ae-title", "dsp.ae_title",
2759 FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0,
2760 "x509if.Name", HFILL }},
2762 { "address", "dsp.address",
2763 FT_NONE, BASE_NONE, NULL, 0,
2764 "x509sat.PresentationAddress", HFILL }},
2765 { &hf_dsp_protocolInformation,
2766 { "protocolInformation", "dsp.protocolInformation",
2767 FT_UINT32, BASE_DEC, NULL, 0,
2768 "dsp.SET_OF_ProtocolInformation", HFILL }},
2769 { &hf_dsp_protocolInformation_item,
2770 { "Item", "dsp.protocolInformation_item",
2771 FT_NONE, BASE_NONE, NULL, 0,
2772 "x509sat.ProtocolInformation", HFILL }},
2773 { &hf_dsp_access_point_category,
2774 { "category", "dsp.category",
2775 FT_UINT32, BASE_DEC, VALS(dsp_APCategory_vals), 0,
2776 "dsp.APCategory", HFILL }},
2777 { &hf_dsp_chainingRequired,
2778 { "chainingRequired", "dsp.chainingRequired",
2779 FT_BOOLEAN, 8, NULL, 0,
2780 "dsp.BOOLEAN", HFILL }},
2781 { &hf_dsp_MasterAndShadowAccessPoints_item,
2782 { "Item", "dsp.MasterAndShadowAccessPoints_item",
2783 FT_NONE, BASE_NONE, NULL, 0,
2784 "dsp.MasterOrShadowAccessPoint", HFILL }},
2786 { "category", "dsp.category",
2787 FT_UINT32, BASE_DEC, VALS(dsp_T_category_vals), 0,
2788 "dsp.T_category", HFILL }},
2789 { &hf_dsp_additionalPoints,
2790 { "additionalPoints", "dsp.additionalPoints",
2791 FT_UINT32, BASE_DEC, NULL, 0,
2792 "dsp.MasterAndShadowAccessPoints", HFILL }},
2793 { &hf_dsp_Exclusions_item,
2794 { "Item", "dsp.Exclusions_item",
2795 FT_UINT32, BASE_DEC, NULL, 0,
2796 "x509if.RDNSequence", HFILL }},
2797 { &hf_dsp_rdnsResolved,
2798 { "rdnsResolved", "dsp.rdnsResolved",
2799 FT_INT32, BASE_DEC, NULL, 0,
2800 "dsp.INTEGER", HFILL }},
2801 { &hf_dsp_accessPoints,
2802 { "accessPoints", "dsp.accessPoints",
2803 FT_UINT32, BASE_DEC, NULL, 0,
2804 "dsp.SET_OF_AccessPointInformation", HFILL }},
2805 { &hf_dsp_accessPoints_item,
2806 { "Item", "dsp.accessPoints_item",
2807 FT_NONE, BASE_NONE, NULL, 0,
2808 "dsp.AccessPointInformation", HFILL }},
2809 { &hf_dsp_returnToDUA,
2810 { "returnToDUA", "dsp.returnToDUA",
2811 FT_BOOLEAN, 8, NULL, 0,
2812 "dsp.BOOLEAN", HFILL }},
2813 { &hf_dsp_basicLevels,
2814 { "basicLevels", "dsp.basicLevels",
2815 FT_NONE, BASE_NONE, NULL, 0,
2816 "dsp.T_basicLevels", HFILL }},
2818 { "level", "dsp.level",
2819 FT_UINT32, BASE_DEC, VALS(dsp_T_level_vals), 0,
2820 "dsp.T_level", HFILL }},
2821 { &hf_dsp_localQualifier,
2822 { "localQualifier", "dsp.localQualifier",
2823 FT_INT32, BASE_DEC, NULL, 0,
2824 "dsp.INTEGER", HFILL }},
2826 { "signed", "dsp.signed",
2827 FT_BOOLEAN, 8, NULL, 0,
2828 "dsp.BOOLEAN", HFILL }},
2830 { "other", "dsp.other",
2831 FT_NONE, BASE_NONE, NULL, 0,
2832 "acse.EXTERNALt", HFILL }},
2834 /*--- End of included file: packet-dsp-hfarr.c ---*/
2835 #line 279 "packet-dsp-template.c"
2838 /* List of subtrees */
2839 static gint *ett[] = {
2842 /*--- Included file: packet-dsp-ettarr.c ---*/
2843 #line 1 "packet-dsp-ettarr.c"
2844 &ett_dsp_ChainedReadArgumentData,
2845 &ett_dsp_ChainedReadArgument,
2846 &ett_dsp_T_signedChainedReadArgument,
2847 &ett_dsp_ChainedReadResultData,
2848 &ett_dsp_ChainedReadResult,
2849 &ett_dsp_T_signedChainedReadResult,
2850 &ett_dsp_ChainedCompareArgumentData,
2851 &ett_dsp_ChainedCompareArgument,
2852 &ett_dsp_T_signedChainedCompareArgument,
2853 &ett_dsp_ChainedCompareResultData,
2854 &ett_dsp_ChainedCompareResult,
2855 &ett_dsp_T_signedChainedCompareResult,
2856 &ett_dsp_ChainedListArgumentData,
2857 &ett_dsp_ChainedListArgument,
2858 &ett_dsp_T_signedChainedListArgument,
2859 &ett_dsp_ChainedListResultData,
2860 &ett_dsp_ChainedListResult,
2861 &ett_dsp_T_signedChainedListResult,
2862 &ett_dsp_ChainedSearchArgumentData,
2863 &ett_dsp_ChainedSearchArgument,
2864 &ett_dsp_T_signedChainedSearchArgument,
2865 &ett_dsp_ChainedSearchResultData,
2866 &ett_dsp_ChainedSearchResult,
2867 &ett_dsp_T_signedChainedSearchResult,
2868 &ett_dsp_ChainedAddEntryArgumentData,
2869 &ett_dsp_ChainedAddEntryArgument,
2870 &ett_dsp_T_signedChainedAddEntryArgument,
2871 &ett_dsp_ChainedAddEntryResultData,
2872 &ett_dsp_ChainedAddEntryResult,
2873 &ett_dsp_T_signedChainedAddEntryResult,
2874 &ett_dsp_ChainedRemoveEntryArgumentData,
2875 &ett_dsp_ChainedRemoveEntryArgument,
2876 &ett_dsp_T_signedChainedRemoveEntryArgument,
2877 &ett_dsp_ChainedRemoveEntryResultData,
2878 &ett_dsp_ChainedRemoveEntryResult,
2879 &ett_dsp_T_signedChainedRemoveEntryResult,
2880 &ett_dsp_ChainedModifyEntryArgumentData,
2881 &ett_dsp_ChainedModifyEntryArgument,
2882 &ett_dsp_T_signedChainedModifyEntryArgument,
2883 &ett_dsp_ChainedModifyEntryResultData,
2884 &ett_dsp_ChainedModifyEntryResult,
2885 &ett_dsp_T_signedChainedModifyEntryResult,
2886 &ett_dsp_ChainedModifyDNArgumentData,
2887 &ett_dsp_ChainedModifyDNArgument,
2888 &ett_dsp_T_signedChainedModifyDNArgument,
2889 &ett_dsp_ChainedModifyDNResultData,
2890 &ett_dsp_ChainedModifyDNResult,
2891 &ett_dsp_T_signedChainedModifyDNResult,
2892 &ett_dsp_DSAReferralData,
2893 &ett_dsp_SEQUENCE_OF_Attribute,
2894 &ett_dsp_DSAReferral,
2895 &ett_dsp_T_signedDSAReferral,
2896 &ett_dsp_ChainingArguments,
2898 &ett_dsp_ChainingResults,
2899 &ett_dsp_SEQUENCE_OF_CrossReference,
2900 &ett_dsp_CrossReference,
2901 &ett_dsp_OperationProgress,
2902 &ett_dsp_TraceInformation,
2904 &ett_dsp_AccessPoint,
2905 &ett_dsp_SET_OF_ProtocolInformation,
2906 &ett_dsp_MasterOrShadowAccessPoint,
2907 &ett_dsp_MasterAndShadowAccessPoints,
2908 &ett_dsp_AccessPointInformation,
2909 &ett_dsp_Exclusions,
2910 &ett_dsp_ContinuationReference,
2911 &ett_dsp_SET_OF_AccessPointInformation,
2912 &ett_dsp_AuthenticationLevel,
2913 &ett_dsp_T_basicLevels,
2915 /*--- End of included file: packet-dsp-ettarr.c ---*/
2916 #line 285 "packet-dsp-template.c"
2918 module_t *dsp_module;
2920 /* Register protocol */
2921 proto_dsp = proto_register_protocol(PNAME, PSNAME, PFNAME);
2923 /* initially disable the protocol */
2924 proto_set_decoding(proto_dsp, FALSE);
2926 register_dissector("dsp", dissect_dsp, proto_dsp);
2928 /* Register fields and subtrees */
2929 proto_register_field_array(proto_dsp, hf, array_length(hf));
2930 proto_register_subtree_array(ett, array_length(ett));
2932 /* Register our configuration options for DSP, particularly our port */
2934 #ifdef PREFERENCE_GROUPING
2935 dsp_module = prefs_register_protocol_subtree("OSI/X.500", proto_dsp, prefs_register_dsp);
2937 dsp_module = prefs_register_protocol(proto_dsp, prefs_register_dsp);
2940 prefs_register_uint_preference(dsp_module, "tcp.port", "DSP TCP Port",
2941 "Set the port for DSP operations (if other"
2942 " than the default of 102)",
2943 10, &global_dsp_tcp_port);
2949 /*--- proto_reg_handoff_dsp --- */
2950 void proto_reg_handoff_dsp(void) {
2951 dissector_handle_t handle = NULL;
2954 /*--- Included file: packet-dsp-dis-tab.c ---*/
2955 #line 1 "packet-dsp-dis-tab.c"
2956 register_ber_oid_dissector("2.5.12.1", dissect_AccessPoint_PDU, proto_dsp, "id-doa-myAccessPoint");
2957 register_ber_oid_dissector("2.5.12.2", dissect_AccessPoint_PDU, proto_dsp, "id-doa-superiorKnowledge");
2958 register_ber_oid_dissector("2.5.12.3", dissect_MasterAndShadowAccessPoints_PDU, proto_dsp, "id-doa-specificKnowledge");
2959 register_ber_oid_dissector("2.5.12.4", dissect_MasterAndShadowAccessPoints_PDU, proto_dsp, "id-doa-nonSpecificKnowledge");
2962 /*--- End of included file: packet-dsp-dis-tab.c ---*/
2963 #line 322 "packet-dsp-template.c"
2965 /* APPLICATION CONTEXT */
2967 add_oid_str_name("2.5.3.2", "id-ac-directory-system");
2969 /* ABSTRACT SYNTAXES */
2971 /* Register DSP with ROS (with no use of RTSE) */
2972 if((handle = find_dissector("dsp"))) {
2973 register_ros_oid_dissector_handle("2.5.9.2", handle, 0, "id-as-directory-system", FALSE);
2979 void prefs_register_dsp(void) {
2981 /* de-register the old port */
2982 /* port 102 is registered by TPKT - don't undo this! */
2983 if((tcp_port != 102) && tpkt_handle)
2984 dissector_delete("tcp.port", tcp_port, tpkt_handle);
2986 /* Set our port number for future use */
2987 tcp_port = global_dsp_tcp_port;
2989 if((tcp_port > 0) && (tcp_port != 102) && tpkt_handle)
2990 dissector_add("tcp.port", global_dsp_tcp_port, tpkt_handle);