1 #.IMPORT ../x509if/x509if-exp.cnf
2 #.IMPORT ../x509af/x509af-exp.cnf
3 #.IMPORT ../x509sat/x509sat-exp.cnf
4 #.IMPORT ../pkixcrmf/crmf-exp.cnf
5 #.IMPORT ../dsp/dsp-exp.cnf
6 #.IMPORT ../disp/disp-exp.cnf
7 #.IMPORT ../ros/ros-exp.cnf
8 #.IMPORT ../acse/acse-exp.cnf
15 ServiceAdministration x509if
16 AttributeCertificateDefinitions x509af
17 BasicAccessControl crmf
19 # Forward declaration of classes
23 &id ObjectIdentifierType
27 &connection ClassReference CONNECTION-PACKAGE
28 &OperationsOf ClassReference OPERATION-PACKAGE
29 &InitiatorConsumerOf ClassReference OPERATION-PACKAGE
30 &InitiatorSupplierOf ClassReference OPERATION-PACKAGE
31 &id ObjectIdentifierType
34 #.CLASS APPLICATION-CONTEXT
35 &bind-operation ClassReference OPERATION
36 &Operations ClassReference OPERATION
37 &applicationContextName ObjectIdentifierType
41 &Superclasses ClassReference OBJECT-CLASS
42 &kind TypeReference ObjectClassKind
43 &MandatoryAttributes ClassReference ATTRIBUTE
44 &OptionalAttributes ClassReference ATTRIBUTE
45 &id ObjectIdentifierType
49 &derivation ClassReference ATTRIBUTE
51 &equality-match ClassReference MATCHING-RULE
52 &ordering-match ClassReference MATCHING-RULE
53 &substrings-match ClassReference MATCHING-RULE
54 &single-valued BooleanType
55 &collective BooleanType
56 &no-user-modification BooleanType
57 &usage TypeReference AttributeUsage
58 &id ObjectIdentifierType
62 &ParentMatchingRules ClassReference MATCHING-RULE
64 &uniqueMatchIndicator ClassReference ATTRIBUTE
65 &id ObjectIdentifierType
106 ServiceControlOptions
114 FamilyEntry/information FamilyInformation
115 AbandonResult/information AbandonInformation
116 AddEntryResult/information AddEntryInformation
117 RemoveEntryResult/information RemoveEntryInformation
118 ModifyEntryResult/information ModifyEntryInformation
119 ModifyDNResult/information ModifyDNInformation
121 EntryInformation/information/_item EntryInformationItem
125 ModifyRights/_item/item/attribute attribute-type
127 ModifyRights/_item/item/entry item-entry
128 AddEntryArgumentData/entry add-entry
130 EntryInformation/information entry-information
131 FamilyEntry/information family-information
132 AbandonResult/information abandon-information
133 AddEntryResult/information add-entry-information
134 RemoveEntryResult/information remove-entry-information
135 ModifyEntryResult/information modify-entry-information
136 ModifyDNResult/information modify-dn-information
138 EntryInformation/information/_item entry-information-item
140 Filter/item filter-item
142 NameErrorData/matched matched-name
144 SecurityParameters/name distinguished-name
145 SimpleCredentials/name distinguished-name
146 StrongCredentials/name distinguished-name
148 ModifyDNArgument/object distinguished-name
150 AbandonFailedErrorData/problem abandon-failed-problem
151 ServiceErrorData/problem service-error-problem
152 AttributeErrorData/problems/_item/problem attribute-error-problem
153 NameErrorData/problem name-error-problem
154 SecurityErrorData/problem security-error-problem
155 UpdateErrorData/problem update-error-problem
157 DirectoryBindErrorData/error/securityError securityProblem
158 SecurityError/signedSecurityError/securityError securityErrorData
160 DirectoryBindErrorData/error/serviceError serviceProblem
162 FilterItem/substrings/type sunstringType
164 ModifyRights/_item/item/value value-assertion
166 TokenData/name distinguished-name
168 TokenData/time utctime
170 PagedResultsRequest/queryReference pagedResultsQueryReference
172 EntryInformationSelection/extraAttributes/select extraSelect
174 # This table creates the value_sting to name P7 operation codes and errors
175 # in file packet-p7-table.c which is included in the template file
179 const value_string dap_opr_code_string_vals[] = {
180 #.TABLE_BODY OPERATION
181 { %(&operationCode)s, "%(_ident)s" },
189 static const value_string dap_err_code_string_vals[] = {
191 { %(&errorCode)s, "%(_ident)s" },
197 # Create a table of opcode and corresponding args and res
199 static const ros_opr_t dap_opr_tab[] = {
200 #.TABLE11_BODY OPERATION
202 { %(&operationCode)-25s, %(_argument_pdu)s, %(_result_pdu)s },
204 { 0, (new_dissector_t)(-1), (new_dissector_t)(-1) },
209 static const ros_err_t dap_err_tab[] = {
212 { %(&errorCode)s, %(_parameter_pdu)s },
214 { 0, (new_dissector_t)(-1) },
221 OPERATION.&ArgumentType
222 OPERATION.&ResultType
225 #.FN_BODY FilterItem/substrings/strings/_item/initial
227 it = proto_tree_add_item(tree, hf_index, tvb, offset, -1, FALSE);
228 proto_item_append_text(it," XXX: Not yet implemented!");
230 #.FN_BODY FilterItem/substrings/strings/_item/any
231 /* XXX: not yet implemented */
233 #.FN_BODY FilterItem/substrings/strings/_item/final
234 /* XXX: not yet implemented */
236 #.FN_BODY MatchingRuleAssertion/matchValue
237 /* XXX: not yet implemented */
239 #.FN_BODY SpkmCredentials/req
240 /* XXX: not yet implemented */
242 #.FN_BODY SpkmCredentials/rep
243 /* XXX: not yet implemented */
245 #.FN_BODY SecurityErrorData/spkmInfo
246 /* XXX: not yet implemented */
248 #.FN_BODY DirectoryBindArgument
252 /* check and see if this is an empty set */
253 dissect_ber_length(actx->pinfo, tree, tvb, offset+1, &len, NULL);
256 /* its an empty set - i.e anonymous (assuming version is DEFAULTed) */
257 proto_tree_add_text(tree, tvb, offset, -1,"Anonymous");
259 if(check_col(actx->pinfo->cinfo, COL_INFO))
260 col_append_str(actx->pinfo->cinfo, COL_INFO, " anonymous");
263 /* do the default thing */
267 #.FN_BODY SimpleCredentials
271 if(check_col(actx->pinfo->cinfo, COL_INFO))
272 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", x509if_get_last_dn());
277 #.FN_BODY PagedResultsRequest/queryReference VAL_PTR=&out_tvb
285 len = tvb_length(out_tvb);
286 /* now see if we can add a string representation */
288 if(!g_ascii_isprint(tvb_get_guint8(out_tvb, i)))
292 if(actx->created_item) {
294 proto_item_append_text(actx->created_item," (");
296 proto_item_append_text(actx->created_item,"%%c",tvb_get_guint8(out_tvb,i));
297 proto_item_append_text(actx->created_item,")");
302 #.FN_PARS SecurityProblem
305 #.FN_BODY SecurityProblem
310 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
311 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, dap_SecurityProblem_vals, "SecurityProblem(%%d)"));
314 #.FN_PARS ServiceProblem
317 #.FN_BODY ServiceProblem
322 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
323 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, dap_ServiceProblem_vals, "ServiceProblem(%%d)"));
326 #.FN_PARS UpdateProblem
329 #.FN_BODY UpdateProblem
334 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
335 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, dap_UpdateProblem_vals, "UpdateProblem(%%d)"));
338 #.FN_PARS LimitProblem
341 #.FN_BODY LimitProblem
346 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
347 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(problem, dap_LimitProblem_vals, "LimitProblem(%%d)"));
353 #.FN_BODY SearchArgumentData/subset VAL_PTR=&subset
358 if (check_col(actx->pinfo->cinfo, COL_INFO)) {
359 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", val_to_str(subset, dap_T_subset_vals, "Subset(%%d)"));
368 if(check_col(actx->pinfo->cinfo, COL_INFO)) {
369 dn = x509if_get_last_dn();
370 col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", (dn && *dn) ? dn : "(root)");