diff options
Diffstat (limited to 'epan/dissectors/asn1/p7/p7.cnf')
-rw-r--r-- | epan/dissectors/asn1/p7/p7.cnf | 408 |
1 files changed, 408 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/p7/p7.cnf b/epan/dissectors/asn1/p7/p7.cnf new file mode 100644 index 0000000000..ab46e42a9d --- /dev/null +++ b/epan/dissectors/asn1/p7/p7.cnf @@ -0,0 +1,408 @@ +#.IMPORT ../p1/p1-exp.cnf +#.IMPORT ../ros/ros-exp.cnf +#.IMPORT ../rtse/rtse-exp.cnf + +#.MODULE +Reliable-Transfer-APDU rtse + +#.EXPORTS +SequenceNumber +SignatureStatus +#.END + +# Forward declaration of Classes +# CONNECTION-PACKAGE CONTRACT from ROS +#.CLASS CONNECTION-PACKAGE +&bind ClassReference OPERATION +&unbind ClassReference OPERATION +&responderCanUnbind BooleanType +&unbindCanFail BooleanType +&id ObjectIdentifierType +#.END + +#.CLASS CONTRACT +&connection ClassReference CONNECTION-PACKAGE +&OperationsOf ClassReference OPERATION-PACKAGE +&InitiatorConsumerOf ClassReference OPERATION-PACKAGE +&InitiatorSupplierOf ClassReference OPERATION-PACKAGE +&id ObjectIdentifierType +#.END + +#.CLASS MHS-OBJECT +&Is ClassReference MHS-OBJECT +&Initiates ClassReference CONTRACT +&Responds ClassReference CONTRACT +&InitiatesAndResponds ClassReference CONTRACT +&id ObjectIdentifierType +#.END + +# Ros OPERATION +#.CLASS ABSTRACT-OPERATION +&ArgumentType +&argumentTypeOptional BooleanType +&returnResult BooleanType +&ResultType +&resultTypeOptional BooleanType +&Errors ClassReference ERROR +&Linked ClassReference OPERATION +&synchronous BooleanType +&alwaysReturns BooleanType +&InvokePriority _FixedTypeValueSetFieldSpec +&ResultPriority _FixedTypeValueSetFieldSpec +&operationCode TypeReference Code +#.END + +# ros ERROR +#.CLASS ABSTRACT-ERROR +&ParameterType +¶meterTypeOptional BooleanType +&ErrorPriority _FixedTypeValueSetFieldSpec +&errorCode TypeReference Code +#.END + +#.CLASS MATCHING-RULE +&ParentMatchingRules ClassReference MATCHING-RULE +&AssertionType +&uniqueMatchIndicator ClassReference ATTRIBUTE +&id ObjectIdentifierType +#.END + +#.CLASS APPLICATION-CONTEXT +&associationContract ClassReference CONTRACT +&associationRealization +&transferRealization +&AbstractSyntaxes ClassReference ABSTRACT-SYNTAX +&applicationContextName ObjectIdentifierType +#.END + +#.TYPE_RENAME + +PAR-fetch-restriction-error/problems FetchRestrictionProblems +PAR-sequence-number-error/problems SequenceNumberProblems +PAR-attribute-error/problems AttributeProblems +PAR-auto-action-request-error/problems AutoActionRequestProblems +PAR-delete-error/problems DeleteProblems + +PAR-fetch-restriction-error/problems/_item FetchRestrictionProblemItem +PAR-sequence-number-error/problems/_item SequenceNumberProblemItem +PAR-attribute-error/problems/_item AttributeProblemItem +PAR-auto-action-request-error/problems/_item AutoActionRequestProblemItem +PAR-delete-error/problems/_item DeleteProblemItem + +Attribute/attribute-values AttributeValues +OrderedAttribute/attribute-values OrderedAttributeValues + +Attribute/attribute-values/_item AttributeItem +OrderedAttribute/attribute-values/_item OrderedAttributeItem + +Summary/present/_item/value SummaryPresentItemValue +OrderedAttribute/attribute-values/_item/value OrderedAttributeValue + +#.FIELD_RENAME + +PAR-sequence-number-error/problems/_item/problem sequence-number-problem +PAR-register-ms-error/problem register-ms-problem +PAR-delete-error/problems/_item/problem delete-problem +PAR-auto-action-request-error/problems/_item/problem auto-action-request-problem +PAR-attribute-error/problems/_item/problem attribute-problem + +PAR-sequence-number-error/problems sequence-number-problems +PAR-fetch-restriction-error/problems fetch-restriction-problems +PAR-attribute-error/problems attribute-problems +PAR-auto-action-request-error/problems auto-action-request-problems +PAR-delete-error/problems delete-problems + +PAR-fetch-restriction-error/problems/_item fetch-restriction-problem-item +PAR-sequence-number-error/problems/_item sequence-number-problem-item +PAR-attribute-error/problems/_item attribute-problem-item +PAR-auto-action-request-error/problems/_item auto-action-request-problem-item +PAR-delete-error/problems/_item delete-problem-item + +OrderedAttribute/attribute-values ordered-attribute-values +OrderedAttribute/attribute-values/_item ordered-attribute-values-item +OrderedAttribute/attribute-values/_item/position ordered-position + +Summary/present/_item/count summary-count +AttributeSelection/count selection-count + +DeleteResult/delete-result-94/entries-deleted entries-deleted-94 + +Register-MSArgument/change-credentials/old-credentials register-old-credentials + +Register-MSResult/registered-information/fetch-attribute-defaults registered-fetch-attribute-defaults +Register-MSResult/registered-information/list-attribute-defaults registered-list-attribute-defaults +Register-MSResult/registered-information/message-group-registrations registered-message-group-registrations + +TimeRange/from from-time +NumberRange/from from-number + +TimeRange/to to-time +NumberRange/to to-number + +Filter/item filter-item + +Summary/present summary-present + +PAR-fetch-restriction-error/problems/_item/problem fetch-restriction-problem +PAR-range-error/problem range-problem +EntryClassErrorParameter/problem entry-class-problem +MessageGroupErrorParameter/problem message-group-problem +ServiceErrorParameter/problem service-problem +ModifyErrorParameter/problem modify-problem + +OrderedAttribute/attribute-values/_item/value ordered-attribute-value + +PAR-fetch-restriction-error/problems/_item/restriction/content-type extended-content-type +PAR-auto-action-request-error/problems/_item/type auto-action-type +PAR-attribute-error/problems/_item/value attr-value + +# This table creates the value_sting to name P7 operation codes and errors +# in file packet-p7-table.c which is included in the template file +# +#.TABLE_HDR +/* P7 ABSTRACT-OPERATIONS */ +const value_string p7_opr_code_string_vals[] = { +#.TABLE_BODY OPERATION + { %(&operationCode)s, "%(_ident)s" }, +#.TABLE_FTR + { 0, NULL } +}; +#.END + +#.TABLE_HDR +/* P7 ERRORS */ +static const value_string p7_err_code_string_vals[] = { +#.TABLE_BODY ERROR + { %(&errorCode)s, "%(_ident)s" }, +#.TABLE_FTR + { 0, NULL } +}; +#.END + +# Create a table of opcode and corresponding args and res +#.TABLE11_HDR +static const ros_opr_t p7_opr_tab[] = { +#.TABLE11_BODY OPERATION + /* %(_name)s */ + { %(&operationCode)-25s, %(_argument_pdu)s, %(_result_pdu)s }, +#.TABLE11_FTR + { 0, (dissector_t)(-1), (dissector_t)(-1) }, +}; +#.END + +#.TABLE21_HDR +static const ros_err_t p7_err_tab[] = { +#.TABLE21_BODY ERROR + /* %(_name)s*/ + { %(&errorCode)s, %(_parameter_pdu)s }, +#.TABLE21_FTR + { 0, (dissector_t)(-1) }, +}; +#.END + +#.PDU +ERROR.&ParameterType +OPERATION.&ArgumentType +OPERATION.&ResultType +#.END + +#.REGISTER +# MSGeneralAttributeTypes +ReportLocation B "2.6.4.3.42" "id-att-ac-correlated-report-list" +SequenceNumber B "2.6.4.3.76" "id-att-ac-report-subject-entry" +ReportSummary B "2.6.4.3.43" "id-att-ac-report-summary" +PerRecipientReport B "2.6.4.3.44" "id-att-ac-uncorrelated-report-list" +AutoActionError B "2.6.4.3.46" "id-att-auto-action-error" +#Integer B "2.6.4.3.47" "id-att-auto-action-registration-identifier" - see XXX +SequenceNumber B "2.6.4.3.48" "id-att-auto-action-subject-entry" +AutoActionType B "2.6.4.3.49" "id-att-auto-action-type" +#CertificateSelectors B "2.6.4.3.80" "id-att-certificate-selectors" - see p1.cnf +SequenceNumber B "2.6.4.3.0" "id-att-child-sequence-numbers" +#Content B "2.6.4.3.1" "id-att-content" - see XXX +#AlgorithmIdentifier B "2.6.4.3.2" "id-att-content-confidentiality-algorithm-identifier" - see XXX +#ContentCorrelator B "2.6.4.3.3" "id-att-content-correlator" - see p1.cnf +#ContentIdentifier B "2.6.4.3.4" "id-att-content-identifier" - see p1.cnf +#ContentIntegrityCheck B "2.6.4.3.5" "id-att-content-inetgrity-check" - see p1.cnf +#ContentLength B "2.6.4.3.6" "id-att-content-length" - see p1.cnf +#Boolean B "2.6.4.3.7" "id-att-content-returned" - see XXX +#ExtendedContentType B "2.6.4.3.8" "id-att-content-type" - see p1.cnf +#ConversionWithLossProhibited B "2.6.4.3.9" "id-att-conversion-with-loss-prohibited" - see p1.cnf +MS-EIT B "2.6.4.3.10" "id-att-converted-EITs" +CreationTime B "2.6.4.3.11" "id-att-creation-time" +DeferredDeliveryCancellationTime B "2.6.4.3.50" "id-att-deferred-delivery-cancellation-time" +#DeferredDeliveryTime B "2.6.4.3.51" "id-att-deferred-delivery-time" - see p1.cnf +DeletionTime B "2.6.4.3.52" "id-att-deletion-time" +MS-EIT B "2.6.4.3.12" "id-att-delivered-EITs" +#DeliveryFlags B "2.6.4.3.13" "id-att-delivery-flags" - see p1.cnf +#ORName B "2.6.4.3.78" "id-att-dl-exempted-recipients" - see p1.cnf +#DLExpansion B "2.6.4.3.14" "id-att-dl-expansion-history" - see p1.cnf +#DLExpansionProhibited B "2.6.4.3.53" "id-att-dl-expansion-prohibited" - see p1.cnf +EntryType B "2.6.4.3.16" "id-att-entry-type" +#InternalTraceInformationElement B "2.6.4.3.54" "id-att-internal-trace-information" - see p1.cnf +#LatestDeliveryTime B "2.6.4.3.55" "id-att-latest-delivery-time" - see p1.cnf +#NULL B "2.6.4.3.77" "id-att-locally-originated - see XXX +#NULL B "2.6.4.3.56" "id-att-marked-for-deletion" - see XXX +#MessageDeliveryEnvelope B "2.6.4.3.18" "id-att-message-delivery-envelope" - see p1.cnf +#MessageDeliveryTime B "2.6.4.3.20" "id-att-message-delivery-time" - see p1.cnf +MessageGroupName B "2.6.4.3.57" "id-att-message-group-name" +#MTSIdentifier B "2.6.4.3.19" "id-att-message-identifier" - see p1.cnf +#GeneralString B "2.6.4.3.58" "id-att-message-notes" - see XXX +#MessageOriginAuthenticationCheck B "2.6.4.3.21" "id-at-message-orgin-authentication-check" - see p1.cnf +#MessageSecurityLabel B "2.6.4.3.22" "id-att-message-security-label" - see p1.cnf +#MessageSubmissionEnvelope B "2.6.4.3.59" "id-att-message-submission-envelope" - see p1.cnf +#MessageSubmissionTime B "2.6.4.3.23" "id-att-message-submission-time" +#MessageToken B "2.6.4.3.24" "id-att-message-token" +#NULL B "2.6.4.3.60" "id-att-ms-originated" +SubmissionError B "2.6.4.3.61" "id-att-ms-submission-error" +#ExtendedCertificates B "2.6.4.3.81" "id-att-multiple-originator-certificates" - see p1.cnf +MS-EIT B "2.6.4.3.25" "id-att-original-EITs" +#ORName B "2.6.4.3.17" "id-att-originally-intended-recipient-name" - see p1.cnf +#OriginatingMTACertificate B "2.6.4.3.62" "id-att-originating-MTA-certificate" - see p1.cnf +#OriginatorCertificate B "2.6.4.3.26" "id-att-originator-certificate" - see p1.cnf +#ORName B "2.6.4.3.27" "id-att-originator-name" - see p1.cnf +#OriginatorReportRequest B "2.6.4.3.63" "id-att-originator-report-request" - see p1.cnf +#OriginatorReturnAddress B "2.6.4.3.64" "id-att-originator-return-address" - see p1.cnf +#ORName B "2.6.4.3.28" "id-att-other-recipient-names" - see p1.cnf +SequenceNumber B "2.6.4.3.29" "id-att-parent-sequence-number" +#PerMessageIndicators B "2.6.4.3.65" "id-att-per-message-indicators" - see p1.cnf +#PerRecipientMessageSubmissionFields B "2.6.4.3.66" "id-att-per-recipient-message-submission-fields" - see p1.cnf +#PerRecipientProbeSubmissionFields B "2.6.4.3.67" "id-att-per-recipient-probe-submission-fields" - see p1.cnf +#PerRecipientReportDeliveryFields B "2.6.4.3.30" "id-att-per-recipient-report-delivery-fields" - see p1.cnf +#Priority B "2.6.4.3.31" "id-att-priority" - see p1.cnf +#ProbeOriginAuthenticationCheck B "2.6.4.3.68" "id-att-probe-origin-authentication-check" - see p1.cnf +#ProbeSubmissionEnvelope B "2.6.4.3.69" "id-att-probe-submission-envelope" - see p1.cnf +#ProofOfDeliveryRequest B "2.6.4.3.32" "id-att-proof-of-delivery-request" - see p1.cnf +#ProofOfSubmission B "2.6.4.3.70" "id-att-proof-of-submission" - see p1.cnf +#ExtendedCertificates B "2.6.4.3.82" "id-att-recipient-certificate" - see p1.cnf +#ORName B "2.6.4.3.71" "id-att-recipient-names" - see p1.cnf +#RecipientReassignmentProhibited B "2.6.4.3.72" "id-att-recipient-reassignment-prohibited" - see p1.cnf +#Redirection B "2.6.4.3.33" "id-at-redirection-history" - see p1.cnf +#ReportDeliveryEnvelope B "2.6.4.3.34" "id-att-report-delivery-envelope" - see p1.cnf +#ReportingDLName B "2.6.4.3.35" "id-att-reporting-DL-name" - see p1.cnf +#ReportingMTACertificate B "2.6.4.3.36" "id-att-reporting-MTA-certificate" - see p1.cnf +#ReportOriginAuthenticationCheck B "2.6.4.3.37" "id-att-report-origin-authentication-check" - see p1.cnf +RetrievalStatus B "2.6.4.3.15" "id-att-retrieval-status" +#SecurityClassification B "2.6.4.3.38" "id-att-security-classification" - see p1.cnf +SequenceNumber B "2.6.4.3.39" "id-att-sequence-number" +SignatureVerificationStatus B "2.6.4.3.79" "id-att-signature-verification-status" +StoragePeriod B "2.6.4.3.73" "id-att-storage-period" +StorageTime B "2.6.4.3.74" "id-att-storage-time" +#SubjectSubmissionIdentifier B "2.6.4.3.40" "id-att-subject-submission-identifier" - see p1.cnf +#ORName B "2.6.4.3.41" "id-att-this-recipient-name" - see p1.cnf +#TraceInformationElement B "2.6.4.3.75" "id-att-trace-information" - see p1.cnf + +#MSExtensions +ChangeCredentialsAlgorithms B "2.6.4.9.5" "id-ext-protected-change-credentials-capability" +OriginatorToken B "2.6.4.9.3" "id-ext-originator-token" +ProtectedChangeCredentials B "2.6.4.9.4" "id-ext-protected-change-credentials" + +RTSE-apdus B "2.6.0.2.10""id-as-ms-rtse" + +#.FN_PARS AttributeType FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference + +#.FN_BODY Attribute/attribute-values/_item + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY AttributeValueAssertion/attribute-value + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY FilterItem/substrings/strings/_item/initial + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY FilterItem/substrings/strings/_item/any + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY FilterItem/substrings/strings/_item/final + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY MatchingRuleAssertion/match-value + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY Summary/present/_item/value + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY OrderedAttribute/attribute-values/_item/value + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_PARS AutoActionType FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference + +#.FN_BODY AutoActionRegistration/registration-parameter + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + + +#.FN_BODY AutoActionError/error-code + /* XXX: Is this really the best way to do this? */ + offset = dissect_ros_Code(implicit_tag, tvb, offset, actx, tree, hf_index); + +#.FN_BODY RegistrationTypes/extended-registrations/_item + /* XXX: Is this really the best way to do this? */ + offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &actx->external.direct_reference); + +#.FN_BODY RTABapdu/userdataAB + offset = dissect_unknown_ber(actx->pinfo, tvb, offset, tree); + +#.END + +#.FN_BODY AutoActionError/error-parameter + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + +#.FN_BODY PAR-attribute-error/problems/_item/value + if(actx->external.direct_reference) + call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, NULL); + + +#.FN_BODY MSBindArgument/initiator-name + const char *ora = NULL; + + %(DEFAULT_BODY)s + + if ((ora = p1_get_last_oraddress(actx))) { + col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (initiator=%%s)", ora); + } + +#.FN_PARS SequenceNumber VAL_PTR = &seqno + +#.FN_BODY NumberRange + col_append_str(actx->pinfo->cinfo, COL_INFO, " (range="); + %(DEFAULT_BODY)s + col_append_str(actx->pinfo->cinfo, COL_INFO, ")"); + +#.FN_FTR NumberRange/from + col_append_fstr(actx->pinfo->cinfo, COL_INFO, " from %d", seqno); + +#.FN_FTR NumberRange/to + col_append_fstr(actx->pinfo->cinfo, COL_INFO, " to %d", seqno); + +#.FN_PARS SummarizeResult/count VAL_PTR = &count + +#.FN_BODY SummarizeResult/count + int count = 0; + + %(DEFAULT_BODY)s + + col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (count=%%d)", count); + +#.FN_BODY MSMessageSubmissionArgument + p1_initialize_content_globals (actx, tree, TRUE); + %(DEFAULT_BODY)s + p1_initialize_content_globals (actx, NULL, FALSE); + +#.FN_BODY EntryInformation + p1_initialize_content_globals (actx, NULL, FALSE); + %(DEFAULT_BODY)s + p1_initialize_content_globals (actx, NULL, FALSE); + +#.FN_BODY EntryModification + p1_initialize_content_globals (actx, NULL, FALSE); + %(DEFAULT_BODY)s + p1_initialize_content_globals (actx, NULL, FALSE); |