2011-02-20 17:03:29 +00:00
# p1.cnf
2010-06-28 14:24:32 +00:00
# X.411 (MTA Access and Transfer) conformance file
2009-06-02 11:04:14 +00:00
#.TYPE_ATTR
2013-09-15 14:33:38 +00:00
CountryName TYPE = FT_UINT32 DISPLAY = BASE_DEC STRINGS = VALS(p1_CountryName_U_vals) BITMASK = 0
2009-06-02 11:04:14 +00:00
Time TYPE = FT_STRING DISPLAY = BASE_NONE STRING = NULL BITMASK = 0
2007-10-16 13:59:40 +00:00
#.IMPORT ../x509ce/x509ce-exp.cnf
#.IMPORT ../x509if/x509if-exp.cnf
#.IMPORT ../x509sat/x509sat-exp.cnf
#.IMPORT ../x509af/x509af-exp.cnf
2009-06-02 11:04:14 +00:00
#.IMPORT ../ros/ros-exp.cnf
#.IMPORT ../rtse/rtse-exp.cnf
2008-11-10 13:36:24 +00:00
2008-07-21 22:00:00 +00:00
#.OMIT_ASSIGNMENT
# These gives unused code warnings
MTAOriginatorRequestedAlternateRecipient
2010-06-28 14:24:32 +00:00
#The following are only referenced through the SIGNATURE MACRO
#and so have no representation on the wire.
2008-07-21 22:00:00 +00:00
ProofOfDeliveryAlgorithmIdentifier
ContentIntegrityAlgorithmIdentifier
MessageOriginAuthenticationAlgorithmIdentifier
ProbeOriginAuthenticationAlgorithmIdentifier
ReportOriginAuthenticationAlgorithmIdentifier
2010-06-28 14:24:32 +00:00
ProofOfSubmissionAlgorithmIdentifier
BilateralDomain
DeliveryControls
RTSE-apdus
MTSInvokeIds
ID
RTTPapdu
RTTRapdu
RTABapdu
AbortReason
#.END
2015-06-04 11:17:53 +00:00
#.OMIT_ASSIGNMENT
PerRecipientReportFields
#PerRecipientReportFields/report-type
2010-06-28 14:24:32 +00:00
#.NO_EMIT
# These fields are only used through COMPONENTS OF,
# and consequently generate unused code warnings
PerMessageTransferFields
PerProbeTransferFields
PerReportTransferFields
PerMessageSubmissionFields
PerProbeSubmissionFields
PerReportDeliveryFields
2015-06-04 11:17:53 +00:00
PerRecipientDeliveryReportFields
PerRecipientNonDeliveryReportFields
2010-06-28 14:24:32 +00:00
InternalAdditionalActions
AdditionalActions
NonBasicParameters
2008-07-21 22:00:00 +00:00
#.END
2005-09-04 16:22:12 +00:00
#.EXPORTS
2007-11-25 17:46:42 +00:00
EXTENSION
2007-11-17 18:08:01 +00:00
Content
ContentIdentifier
2008-01-02 09:29:04 +00:00
ContentIntegrityCheck
2006-03-05 11:28:13 +00:00
ContentLength
2007-11-25 17:46:42 +00:00
ContentType
2007-11-17 18:08:01 +00:00
Credentials
2005-09-04 16:22:12 +00:00
EncodedInformationTypes
2006-03-05 11:28:13 +00:00
EncodedInformationTypesConstraints
2005-09-04 16:22:12 +00:00
ExtendedCertificates
2006-03-05 11:28:13 +00:00
ExtendedContentType
2007-11-17 18:08:01 +00:00
ExtensionField
2005-09-04 16:22:12 +00:00
G3FacsimileNonBasicParameters
2007-11-17 18:08:01 +00:00
ImproperlySpecifiedRecipients
InitiatorCredentials
2006-03-05 11:28:13 +00:00
MessageDeliveryIdentifier
2005-09-04 16:22:12 +00:00
MessageDeliveryTime
2008-01-02 09:29:04 +00:00
MessageOriginAuthenticationCheck
2007-11-06 21:52:26 +00:00
MessageSecurityLabel
2011-10-14 07:44:40 +00:00
MessageSecurityLabel_PDU
2006-03-05 11:28:13 +00:00
MessageSubmissionEnvelope
2007-11-17 18:08:01 +00:00
MessageSubmissionIdentifier
MessageSubmissionTime
MessageToken
2006-03-05 11:28:13 +00:00
ORAddress
2007-11-17 18:08:01 +00:00
ORAddressAndOrDirectoryName
2009-06-02 11:04:14 +00:00
OriginatorName
2005-09-04 16:22:12 +00:00
ORName
2007-11-25 17:46:42 +00:00
OriginalEncodedInformationTypes
2006-03-05 11:28:13 +00:00
OriginatingMTACertificate
2005-09-04 16:22:12 +00:00
OtherMessageDeliveryFields
2007-11-25 17:46:42 +00:00
PerMessageIndicators
PerRecipientProbeSubmissionFields
2007-11-17 18:08:01 +00:00
ProbeSubmissionEnvelope
ProbeSubmissionIdentifier
ProbeSubmissionTime
2006-03-05 11:28:13 +00:00
ProofOfSubmission
RequestedDeliveryMethod
2007-11-17 18:08:01 +00:00
ResponderCredentials
2006-03-05 11:28:13 +00:00
SecurityContext
SecurityLabel
2007-11-17 18:08:01 +00:00
SecurityProblem
2005-09-04 16:22:12 +00:00
SupplementaryInformation
TeletexNonBasicParameters
2005-12-05 23:00:03 +00:00
UniversalOrBMPString
2006-12-14 00:16:06 +00:00
NonDeliveryReasonCode
NonDeliveryDiagnosticCode
2005-09-04 16:22:12 +00:00
2015-12-10 02:50:10 +00:00
#.SYNTAX
2014-10-13 11:37:24 +00:00
ORAddress
ORName
2007-11-25 17:46:42 +00:00
# Forward declaration of Classes
2009-06-02 11:04:14 +00:00
# CONNECTION-PACKAGE CONTRACT from ROS
#.CLASS CONNECTION-PACKAGE
&bind ClassReference OPERATION
&unbind ClassReference OPERATION
&responderCanUnbind BooleanType
&unbindCanFail BooleanType
&id ObjectIdentifierType
#.END
#.CLASS APPLICATION-CONTEXT
&associationContract ClassReference CONTRACT
&associationRealization
&transferRealization
&AbstractSyntaxes ClassReference ABSTRACT-SYNTAX
&applicationContextName 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
2013-07-01 15:09:56 +00:00
#.CLASS ABSTRACT-OPERATION
&ArgumentType
2009-06-02 11:04:14 +00:00
&argumentTypeOptional BooleanType
&returnResult BooleanType
2013-07-01 15:09:56 +00:00
&ResultType
2009-06-02 11:04:14 +00:00
&resultTypeOptional BooleanType
&Errors ClassReference ERROR
&Linked ClassReference OPERATION
&synchronous BooleanType
&alwaysReturns BooleanType
&InvokePriority _FixedTypeValueSetFieldSpec
&ResultPriority _FixedTypeValueSetFieldSpec
&operationCode TypeReference Code
#.END
# ros ERROR
2013-07-01 15:09:56 +00:00
#.CLASS ABSTRACT-ERROR
&ParameterType
2009-06-02 11:04:14 +00:00
¶meterTypeOptional BooleanType
&ErrorPriority _FixedTypeValueSetFieldSpec
&errorCode TypeReference Code
#.END
#.CLASS EXTENSION
&id TypeReference ExtensionType
&Type
&absent _VariableTypeValueSetFieldSpec
&recommended TypeReference Criticality
#.END
#.CLASS EXTENSION-ATTRIBUTE
&id IntegerType
&Type
#.END
#.CLASS TOKEN-DATA
&id IntegerType
&Type
#.END
2007-11-25 17:46:42 +00:00
2005-09-04 16:22:12 +00:00
#.TYPE_RENAME
MTABindArgument/authenticated AuthenticatedArgument
MTABindResult/authenticated AuthenticatedResult
ExtensionField/value ExtensionValue
SecurityCategory/value CategoryValue
#.FIELD_RENAME
2007-06-27 18:03:23 +00:00
PrivateDomainName/printable printable-private-domain-name
PrivateDomainName/numeric numeric-private-domain-name
PrivateDomainIdentifier/printable printable-private-domain-identifier
PrivateDomainIdentifier/numeric numeric-private-domain-identifier
2005-09-04 16:22:12 +00:00
TeletexPersonalName/surname teletex-surname
PersonalName/surname printable-surname
UniversalPersonalName/surname universal-surname
TeletexPersonalName/given-name teletex-given-name
PersonalName/given-name printable-given-name
UniversalPersonalName/given-name universal-given-name
TeletexPersonalName/initials teletex-initials
PersonalName/initials printable-initials
UniversalPersonalName/initials universal-initials
TeletexPersonalName/generation-qualifier teletex-generation-qualifier
PersonalName/generation-qualifier printable-generation-qualifier
UniversalPersonalName/generation-qualifier universal-generation-qualifier
BuiltInDomainDefinedAttribute/type printable-type
UniversalDomainDefinedAttribute/type universal-type
SecurityCategory/type category-type
ExtensionField/type extension-type
TeletexDomainDefinedAttribute/value teletex-value
BuiltInDomainDefinedAttribute/value printable-value
UniversalDomainDefinedAttribute/value universal-value
SecurityCategory/value category-value
ExtensionField/value extension-value
LastTraceInformation/report-type trace-report-type
PerRecipientReportDeliveryFields/report-type delivery-report-type
2015-06-04 11:17:53 +00:00
#PerRecipientReportFields/report-type/delivery report-type-delivery
2005-09-04 16:22:12 +00:00
PerRecipientMessageSubmissionFields/recipient-name submission-recipient-name
PerRecipientProbeSubmissionFields/recipient-name probe-recipient-name
PerRecipientReportTransferFields/actual-recipient-name mta-actual-recipient-name
MessageClass/priority class-priority
DeliveryQueue/octets delivery-queue-octets
2015-06-04 11:17:53 +00:00
#PerRecipientReportFields/report-type/non-delivery non-delivery-report
2005-09-04 16:22:12 +00:00
MTABindResult/authenticated authenticated-result
MTABindArgument/authenticated authenticated-argument
MTABindResult/authenticated/responder-name authenticated-responder-name
MTABindArgument/authenticated/initiator-name authenticated-initiator-name
RegistrationTypes/extensions type-extensions
RegistrationTypes/extensions/_item type-extensions-item
MessageSubmissionArgument/envelope message-submission-envelope
OtherMessageDeliveryFields/content-type delivered-content-type
Report/content report-content
2009-06-02 11:04:14 +00:00
ReportDeliveryResult/extensions max-extensions
OtherMessageDeliveryFields/originator-name delivered-originator-name
PDSParameter/teletex-string pds-teletex-string
2005-09-04 16:22:12 +00:00
PerDomainBilateralInformation/domain bilateral-domain
Report/envelope report-envelope
Message/envelope message-envelope
PerRecipientReportTransferFields/originally-intended-recipient-name report-originally-intended-recipient-name
MessageSubmissionEnvelope/originator-name mts-originator-name
ProbeSubmissionEnvelope/originator-name mts-originator-name
MessageTransferEnvelope/originator-name mta-originator-name
ProbeTransferEnvelope/originator-name mta-originator-name
MessageSubmissionEnvelope/per-recipient-fields per-recipient-message-submission-fields
ProbeTransferEnvelope/per-recipient-fields per-recipient-probe-transfer-fields
ProbeSubmissionEnvelope/per-recipient-fields per-recipient-probe-submission-fields
ReportDeliveryArgument/per-recipient-fields per-recipient-report-delivery-fields
ReportDeliveryEnvelope/per-recipient-fields per-recipient-report-delivery-fields
MessageSubmissionEnvelope/per-recipient-fields/_item per-recipient-message-submission-fields-item
ProbeTransferEnvelope/per-recipient-fields/_item per-recipient-probe-transfer-fields-item
ProbeSubmissionEnvelope/per-recipient-fields/_item per-recipient-probe-submission-fields-item
ReportDeliveryArgument/per-recipient-fields/_item per-recipient-report-delivery-fields-item
ReportDeliveryEnvelope/per-recipient-fields/_item per-recipient-report-delivery-fields-item
MessageTransferEnvelope/per-recipient-fields/_item per-recipient-message-fields-item
MessageTransferEnvelope/per-recipient-fields per-recipient-message-fields
ReportTransferContent/per-recipient-fields per-recipient-report-fields
2006-03-25 16:48:28 +00:00
AsymmetricTokenData/name/mta token-mta
AsymmetricTokenData/name/recipient-name token-recipient-name
2006-06-28 19:07:10 +00:00
TokenData/type token-data-type
CertificateSelectors/content-integrity-check selectors-content-integrity-check
2006-03-25 16:48:28 +00:00
2009-06-02 11:04:14 +00:00
# This table creates the value_sting to name P3 operation codes and errors
# in file packet-p3-table.c which is included in the template file
#
#.TABLE_HDR
/* P3 ABSTRACT-OPERATIONS */
const value_string p3_opr_code_string_vals[] = {
#.TABLE_BODY OPERATION
{ %(&operationCode)s, "%(_ident)s" },
#.TABLE_FTR
{ 0, NULL }
};
#.END
#.TABLE_HDR
/* P3 ERRORS */
static const value_string p3_err_code_string_vals[] = {
#.TABLE_BODY ERROR
2013-07-01 15:09:56 +00:00
{ %(&errorCode)s, "%(_ident)s" },
2009-06-02 11:04:14 +00:00
#.TABLE_FTR
{ 0, NULL }
};
#.END
# Create a table of opcode and corresponding args and res
#.TABLE11_HDR
static const ros_opr_t p3_opr_tab[] = {
#.TABLE11_BODY OPERATION
2013-07-01 15:09:56 +00:00
/* %(_name)s */
{ %(&operationCode)-25s, %(_argument_pdu)s, %(_result_pdu)s },
2009-06-02 11:04:14 +00:00
#.TABLE11_FTR
2016-01-14 01:02:42 +00:00
{ 0, (dissector_t)(-1), (dissector_t)(-1) },
2009-06-02 11:04:14 +00:00
};
#.END
#.TABLE21_HDR
static const ros_err_t p3_err_tab[] = {
#.TABLE21_BODY ERROR
2013-07-01 15:09:56 +00:00
/* %(_name)s*/
2009-06-02 11:04:14 +00:00
{ %(&errorCode)s, %(_parameter_pdu)s },
#.TABLE21_FTR
2016-01-14 01:02:42 +00:00
{ 0, (dissector_t)(-1) },
2009-06-02 11:04:14 +00:00
};
#.END
2015-12-10 02:50:10 +00:00
#.PDU
2009-06-02 11:04:14 +00:00
ERROR.&ParameterType
OPERATION.&ArgumentType
OPERATION.&ResultType
#.END
2015-12-10 02:50:10 +00:00
#.REGISTER
2011-02-20 17:03:29 +00:00
RecipientReassignmentProhibited N p1.extension 1
OriginatorRequestedAlternateRecipient N p1.extension 2
DLExpansionProhibited N p1.extension 3
ConversionWithLossProhibited N p1.extension 4
LatestDeliveryTime N p1.extension 5
RequestedDeliveryMethod N p1.extension 6
PhysicalForwardingProhibited N p1.extension 7
PhysicalForwardingAddressRequest N p1.extension 8
PhysicalDeliveryModes N p1.extension 9
RegisteredMailType N p1.extension 10
RecipientNumberForAdvice N p1.extension 11
PhysicalRenditionAttributes N p1.extension 12
OriginatorReturnAddress N p1.extension 13
PhysicalDeliveryReportRequest N p1.extension 14
OriginatorCertificate N p1.extension 15
MessageToken N p1.extension 16
ContentConfidentialityAlgorithmIdentifier N p1.extension 17
ContentIntegrityCheck N p1.extension 18
MessageOriginAuthenticationCheck N p1.extension 19
MessageSecurityLabel N p1.extension 20
ProofOfSubmissionRequest N p1.extension 21
ProofOfDeliveryRequest N p1.extension 22
ContentCorrelator N p1.extension 23
ProbeOriginAuthenticationCheck N p1.extension 24
RedirectionHistory N p1.extension 25
DLExpansionHistory N p1.extension 26
PhysicalForwardingAddress N p1.extension 27
RecipientCertificate N p1.extension 28
ProofOfDelivery N p1.extension 29
OriginatorAndDLExpansionHistory N p1.extension 30
ReportingDLName N p1.extension 31
ReportingMTACertificate N p1.extension 32
ReportOriginAuthenticationCheck N p1.extension 33
2014-04-11 11:17:56 +00:00
OriginatingMTACertificate N p1.extension 34
2011-02-20 17:03:29 +00:00
ProofOfSubmission N p1.extension 35
TraceInformation N p1.extension 37
InternalTraceInformation N p1.extension 38
ReportingMTAName N p1.extension 39
ExtendedCertificates N p1.extension 40
DLExemptedRecipients N p1.extension 42
CertificateSelectors N p1.extension 45
CommonName N p1.extension-attribute 1
TeletexCommonName N p1.extension-attribute 2
TeletexOrganizationName N p1.extension-attribute 3
TeletexPersonalName N p1.extension-attribute 4
TeletexOrganizationalUnitNames N p1.extension-attribute 5
TeletexDomainDefinedAttributes N p1.extension-attribute 6
PDSName N p1.extension-attribute 7
PhysicalDeliveryCountryName N p1.extension-attribute 8
PostalCode N p1.extension-attribute 9
PhysicalDeliveryOfficeName N p1.extension-attribute 10
PhysicalDeliveryOfficeNumber N p1.extension-attribute 11
ExtensionORAddressComponents N p1.extension-attribute 12
PhysicalDeliveryPersonalName N p1.extension-attribute 13
PhysicalDeliveryOrganizationName N p1.extension-attribute 14
ExtensionPhysicalDeliveryAddressComponents N p1.extension-attribute 15
UnformattedPostalAddress N p1.extension-attribute 16
StreetAddress N p1.extension-attribute 17
PostOfficeBoxAddress N p1.extension-attribute 18
PosteRestanteAddress N p1.extension-attribute 19
UniquePostalName N p1.extension-attribute 20
LocalPostalAttributes N p1.extension-attribute 21
ExtendedNetworkAddress N p1.extension-attribute 22
TerminalType N p1.extension-attribute 23
UniversalCommonName N p1.extension-attribute 24
UniversalOrganizationName N p1.extension-attribute 25
UniversalPersonalName N p1.extension-attribute 26
UniversalOrganizationalUnitNames N p1.extension-attribute 27
UniversalDomainDefinedAttributes N p1.extension-attribute 28
UniversalPhysicalDeliveryOfficeName N p1.extension-attribute 29
UniversalPhysicalDeliveryOfficeNumber N p1.extension-attribute 30
UniversalExtensionORAddressComponents N p1.extension-attribute 31
UniversalPhysicalDeliveryPersonalName N p1.extension-attribute 32
UniversalPhysicalDeliveryOrganizationName N p1.extension-attribute 33
UniversalExtensionPhysicalDeliveryAddressComponents N p1.extension-attribute 34
UniversalUnformattedPostalAddress N p1.extension-attribute 35
UniversalStreetAddress N p1.extension-attribute 36
UniversalPostOfficeBoxAddress N p1.extension-attribute 37
UniversalPosteRestanteAddress N p1.extension-attribute 38
UniversalUniquePostalName N p1.extension-attribute 39
UniversalLocalPostalAttributes N p1.extension-attribute 40
2005-09-04 16:22:12 +00:00
2009-06-02 11:04:14 +00:00
#ReportDeliveryArgument B "2.6.1.4.14" "id-et-report"
2005-12-05 23:00:03 +00:00
2007-11-06 21:52:26 +00:00
AsymmetricToken B "2.6.3.6.0" "id-tok-asymmetricToken"
2006-03-25 16:48:28 +00:00
MTANameAndOptionalGDI B "2.6.5.6.0" "id-on-mtaName"
2011-02-20 17:03:29 +00:00
BindTokenSignedData N p1.tokendata 1
MessageTokenSignedData N p1.tokendata 2
2006-06-28 19:07:10 +00:00
# the next two are unlikely to ever be seen (unless in a bad encoding)
2011-02-20 17:03:29 +00:00
MessageTokenEncryptedData N p1.tokendata 3
BindTokenEncryptedData N p1.tokendata 4
2006-06-28 19:07:10 +00:00
2006-03-05 11:28:13 +00:00
# X402 - see master list in acp133.cnf
2007-11-06 21:52:26 +00:00
ContentLength B "2.6.5.2.0" "id-at-mhs-maximum-content-length"
ExtendedContentType B "2.6.5.2.1" "id-at-mhs-deliverable-content-types"
ExtendedEncodedInformationType B "2.6.5.2.2" "id-at-mhs-exclusively-acceptable-eits"
ORName B "2.6.5.2.3" "id-at-mhs-dl-members"
ORAddress B "2.6.5.2.6" "id-at-mhs-or-addresses"
ExtendedContentType B "2.6.5.2.9" "id-at-mhs-supported-content-types"
ORName B "2.6.5.2.12" "id-at-mhs-dl-archive-service"
ORName B "2.6.5.2.15" "id-at-mhs-dl-subscription-service"
ExtendedEncodedInformationType B "2.6.5.2.17" "id-at-mhs-acceptable-eits"
ExtendedEncodedInformationType B "2.6.5.2.18" "id-at-mhs-unacceptable-eits"
2006-03-05 11:28:13 +00:00
# ACP133 - see master list in acp133.cnf
2008-07-21 22:00:00 +00:00
ORName B "2.16.840.1.101.2.1.5.47" "id-at-aLExemptedAddressProcessor"
ORAddress B "2.16.840.1.101.2.2.1.134.1" "id-at-collective-mhs-or-addresses"
2006-03-05 11:28:13 +00:00
2007-11-17 18:08:01 +00:00
# MSGeneralAttributeTypes - see master list in p7.cnf
2008-07-21 22:00:00 +00:00
CertificateSelectors B "2.6.4.3.80" "id-att-certificate-selectors"
Content B "2.6.4.3.1" "id-att-content"
ContentCorrelator B "2.6.4.3.3" "id-att-content-correlator"
ContentIdentifier B "2.6.4.3.4" "id-att-content-identifier"
ContentIntegrityCheck B "2.6.4.3.5" "id-att-content-inetgrity-check"
ContentLength B "2.6.4.3.6" "id-att-content-length"
2013-07-01 15:09:56 +00:00
ExtendedContentType B "2.6.4.3.8" "id-att-content-type"
2008-07-21 22:00:00 +00:00
ConversionWithLossProhibited B "2.6.4.3.9" "id-att-conversion-with-loss-prohibited"
DeferredDeliveryTime B "2.6.4.3.51" "id-att-deferred-delivery-time"
DeliveryFlags B "2.6.4.3.13" "id-att-delivery-flags"
ORName B "2.6.4.3.78" "id-att-dl-exempted-recipients"
DLExpansion B "2.6.4.3.14" "id-att-dl-expansion-history"
DLExpansionProhibited B "2.6.4.3.53" "id-att-dl-expansion-prohibited"
2007-11-17 18:08:01 +00:00
InternalTraceInformationElement B "2.6.4.3.54" "id-att-internal-trace-information"
2008-07-21 22:00:00 +00:00
LatestDeliveryTime B "2.6.4.3.55" "id-att-latest-delivery-time"
MessageDeliveryEnvelope B "2.6.4.3.18" "id-att-message-delivery-envelope"
MessageDeliveryTime B "2.6.4.3.20" "id-att-message-delivery-time"
MTSIdentifier B "2.6.4.3.19" "id-att-message-identifier"
2007-11-17 18:08:01 +00:00
MessageOriginAuthenticationCheck B "2.6.4.3.21" "id-at-message-orgin-authentication-check"
2008-07-21 22:00:00 +00:00
MessageSecurityLabel B "2.6.4.3.22" "id-att-message-security-label"
MessageSubmissionEnvelope B "2.6.4.3.59" "id-att-message-submission-envelope"
MessageSubmissionTime B "2.6.4.3.23" "id-att-message-submission-time"
MessageToken B "2.6.4.3.24" "id-att-message-token"
ExtendedCertificates B "2.6.4.3.81" "id-att-multiple-originator-certificates"
ORName B "2.6.4.3.17" "id-att-originally-intended-recipient-name"
OriginatingMTACertificate B "2.6.4.3.62" "id-att-originating-MTA-certificate"
OriginatorCertificate B "2.6.4.3.26" "id-att-originator-certificate"
ORName B "2.6.4.3.27" "id-att-originator-name"
OriginatorReportRequest B "2.6.4.3.63" "id-att-originator-report-request"
OriginatorReturnAddress B "2.6.4.3.64" "id-att-originator-return-address"
ORName B "2.6.4.3.28" "id-att-other-recipient-names"
PerMessageIndicators B "2.6.4.3.65" "id-att-per-message-indicators"
2007-11-17 18:08:01 +00:00
PerRecipientMessageSubmissionFields B "2.6.4.3.66" "id-att-per-recipient-message-submission-fields"
PerRecipientProbeSubmissionFields B "2.6.4.3.67" "id-att-per-recipient-probe-submission-fields"
PerRecipientReportDeliveryFields B "2.6.4.3.30" "id-att-per-recipient-report-delivery-fields"
2008-07-21 22:00:00 +00:00
Priority B "2.6.4.3.31" "id-att-priority"
2007-11-17 18:08:01 +00:00
ProbeOriginAuthenticationCheck B "2.6.4.3.68" "id-att-probe-origin-authentication-check"
2008-07-21 22:00:00 +00:00
ProbeSubmissionEnvelope B "2.6.4.3.69" "id-att-probe-submission-envelope"
ProofOfDeliveryRequest B "2.6.4.3.32" "id-att-proof-of-delivery-request"
ProofOfSubmission B "2.6.4.3.70" "id-att-proof-of-submission"
ExtendedCertificates B "2.6.4.3.82" "id-att-recipient-certificate"
ORName B "2.6.4.3.71" "id-att-recipient-names"
2007-11-17 18:08:01 +00:00
RecipientReassignmentProhibited B "2.6.4.3.72" "id-att-recipient-reassignment-prohibited"
2008-07-21 22:00:00 +00:00
Redirection B "2.6.4.3.33" "id-at-redirection-history"
ReportDeliveryEnvelope B "2.6.4.3.34" "id-att-report-delivery-envelope"
ReportingDLName B "2.6.4.3.35" "id-att-reporting-DL-name"
ReportingMTACertificate B "2.6.4.3.36" "id-att-reporting-MTA-certificate"
2007-11-17 18:08:01 +00:00
ReportOriginAuthenticationCheck B "2.6.4.3.37" "id-att-report-origin-authentication-check"
2008-07-21 22:00:00 +00:00
SecurityClassification B "2.6.4.3.38" "id-att-security-classification"
SubjectSubmissionIdentifier B "2.6.4.3.40" "id-att-subject-submission-identifier"
ORName B "2.6.4.3.41" "id-att-this-recipient-name"
TraceInformationElement B "2.6.4.3.75" "id-att-trace-information"
2007-11-17 18:08:01 +00:00
2011-02-20 17:03:29 +00:00
# IPMSMessageStoreAttributes - see master list in p22.cnf
2013-07-01 15:09:56 +00:00
MessageToken B "2.6.1.7.36" "id-hat-forwarded-token"
2007-11-17 18:08:01 +00:00
2005-09-04 16:22:12 +00:00
#.FN_BODY AdditionalInformation
2007-03-23 16:38:52 +00:00
proto_item *item = NULL;
int loffset = 0;
guint32 len = 0;
/* work out the length */
2007-05-13 20:58:29 +00:00
loffset = dissect_ber_identifier(actx->pinfo, tree, tvb, offset, NULL, NULL, NULL);
(void) dissect_ber_length(actx->pinfo, tree, tvb, loffset, &len, NULL);
2007-03-23 16:38:52 +00:00
2011-07-19 10:51:12 +00:00
item = proto_tree_add_item(tree, hf_index, tvb, offset, len, ENC_BIG_ENDIAN);
2011-02-20 17:03:29 +00:00
tree = proto_item_add_subtree(item, ett_p1_additional_information);
2013-07-01 15:09:56 +00:00
proto_item_append_text(tree, " (The use of this field is \"strongly deprecated\".)");
2007-03-23 16:38:52 +00:00
2007-05-13 20:58:29 +00:00
offset = dissect_unknown_ber(actx->pinfo, tvb, offset, tree);
2005-09-04 16:22:12 +00:00
2006-06-15 07:46:07 +00:00
#.FN_BODY RegistrationTypes/extensions/_item
2005-09-04 16:22:12 +00:00
/*XXX not implemented yet */
2007-06-05 12:00:57 +00:00
#.FN_BODY ExtensionField/value
2005-12-06 22:59:30 +00:00
const char *name;
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
if(actx->external.indirect_ref_present) {
2013-07-01 15:09:56 +00:00
proto_item_append_text(tree, " (%%s)", val_to_str(actx->external.indirect_reference, p1_StandardExtension_vals, "standard-extension %%d"));
2013-06-28 12:43:29 +00:00
if (dissector_try_uint(p1_extension_dissector_table, actx->external.indirect_reference, tvb, actx->pinfo, tree)) {
2015-04-09 12:36:26 +00:00
offset = tvb_reported_length(tvb);
2007-08-29 18:39:30 +00:00
} else {
2014-06-21 01:35:40 +00:00
proto_item *item;
proto_tree *next_tree;
2007-08-29 18:39:30 +00:00
2014-06-21 01:35:40 +00:00
next_tree = proto_tree_add_subtree_format(tree, tvb, 0, -1, ett_p1_unknown_standard_extension, &item,
2013-06-28 12:43:29 +00:00
"Dissector for standard-extension %%d not implemented. Contact Wireshark developers if you want this supported", actx->external.indirect_reference);
2007-08-29 18:39:30 +00:00
offset = dissect_unknown_ber(actx->pinfo, tvb, offset, next_tree);
2013-06-03 03:42:36 +00:00
expert_add_info(actx->pinfo, item, &ei_p1_unknown_standard_extension);
2007-08-29 18:39:30 +00:00
}
2013-06-28 12:43:29 +00:00
} else if (actx->external.direct_ref_present) {
2013-11-05 18:47:26 +00:00
offset = call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, actx->private_data);
2015-01-17 19:11:29 +00:00
name = oid_resolved_from_string(wmem_packet_scope(), actx->external.direct_reference);
2013-07-01 15:09:56 +00:00
proto_item_append_text(tree, " (%%s)", name ? name : actx->external.direct_reference);
2005-11-16 07:13:12 +00:00
}
2013-07-01 15:09:56 +00:00
2005-09-04 16:22:12 +00:00
2010-02-23 08:06:11 +00:00
#.FN_PARS SecurityCategoryIdentifier
2013-06-28 12:43:29 +00:00
FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference
2010-02-23 08:06:11 +00:00
2009-06-02 11:04:14 +00:00
#.FN_BODY SecurityCategoryValue
2010-02-23 08:06:11 +00:00
const char *name;
2005-09-04 16:22:12 +00:00
2013-06-28 12:43:29 +00:00
if (actx->external.direct_reference) {
2013-11-05 18:47:26 +00:00
offset = call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, actx->private_data);
2015-01-17 19:11:29 +00:00
name = oid_resolved_from_string(wmem_packet_scope(), actx->external.direct_reference);
2013-07-01 15:09:56 +00:00
proto_item_append_text(tree, " (%%s)", name ? name : actx->external.direct_reference);
2010-02-23 08:06:11 +00:00
} else {
offset = dissect_unknown_ber(actx->pinfo, tvb, offset, tree);
}
2005-09-04 16:22:12 +00:00
2007-08-29 18:39:30 +00:00
#.FN_PARS ExtensionAttributeType
2013-06-28 12:43:29 +00:00
VAL_PTR = &actx->external.indirect_reference
2007-06-27 18:03:23 +00:00
2006-06-15 07:46:07 +00:00
#.FN_BODY ExtensionAttribute/extension-attribute-value
2005-09-04 16:22:12 +00:00
2013-07-01 15:09:56 +00:00
proto_item_append_text(tree, " (%%s)", val_to_str(actx->external.indirect_reference, p1_ExtensionAttributeType_vals, "extension-attribute-type %%d"));
2015-05-22 12:18:19 +00:00
if (!actx->pinfo->private_table) {
actx->pinfo->private_table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
}
g_hash_table_insert(actx->pinfo->private_table, (gpointer)P1_ADDRESS_CTX, actx->subtree.tree_ctx);
2013-06-28 12:43:29 +00:00
if (dissector_try_uint(p1_extension_attribute_dissector_table, actx->external.indirect_reference, tvb, actx->pinfo, tree)) {
2015-04-09 12:36:26 +00:00
offset =tvb_reported_length(tvb);
2007-08-29 18:39:30 +00:00
} else {
2014-06-21 01:35:40 +00:00
proto_item *item;
proto_tree *next_tree;
2007-08-29 18:39:30 +00:00
2014-06-21 01:35:40 +00:00
next_tree = proto_tree_add_subtree_format(tree, tvb, 0, -1, ett_p1_unknown_extension_attribute_type, &item,
2013-06-28 12:43:29 +00:00
"Dissector for extension-attribute-type %%d not implemented. Contact Wireshark developers if you want this supported", actx->external.indirect_reference);
2007-08-29 18:39:30 +00:00
offset = dissect_unknown_ber(actx->pinfo, tvb, offset, next_tree);
2013-06-03 03:42:36 +00:00
expert_add_info(actx->pinfo, item, &ei_p1_unknown_extension_attribute_type);
2007-08-29 18:39:30 +00:00
}
2015-05-22 12:18:19 +00:00
g_hash_table_steal(actx->pinfo->private_table, (gpointer)P1_ADDRESS_CTX);
2007-08-29 18:39:30 +00:00
2005-09-04 16:22:12 +00:00
2006-06-15 07:46:07 +00:00
#.FN_BODY RefusedOperation/refused-argument/refused-extension
2005-09-04 16:22:12 +00:00
/*XXX not implemented yet */
#.FN_BODY CountryName
2013-06-28 12:43:29 +00:00
do_address("/C=", NULL, actx);
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
%(DEFAULT_BODY)s
2005-11-16 07:13:12 +00:00
2005-09-04 16:22:12 +00:00
#.FN_BODY AdministrationDomainName
2013-06-28 12:43:29 +00:00
do_address("/A=", NULL, actx);
2005-09-04 16:22:12 +00:00
2013-06-28 12:43:29 +00:00
%(DEFAULT_BODY)s
2005-09-04 16:22:12 +00:00
2013-06-28 12:43:29 +00:00
#.FN_PARS StandardExtension VAL_PTR = &actx->external.indirect_reference
2005-09-04 16:22:12 +00:00
2013-07-01 15:09:56 +00:00
#.FN_BODY StandardExtension
2013-06-28 12:43:29 +00:00
actx->external.indirect_ref_present = TRUE;
actx->external.direct_ref_present = FALSE;
%(DEFAULT_BODY)s
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
#.FN_BODY ExtensionType/private-extension FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference
actx->external.indirect_ref_present = FALSE;
actx->external.direct_reference = NULL;
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
actx->external.direct_ref_present = (actx->external.direct_reference != NULL) ? TRUE : FALSE;
2005-11-16 07:13:12 +00:00
#.FN_PARS ExtendedContentType
2013-06-28 12:43:29 +00:00
FN_VARIANT = _str VAL_PTR = &ctx->content_type_id
2005-11-16 07:13:12 +00:00
#.FN_BODY ExtendedContentType
2005-11-17 05:02:30 +00:00
const char *name = NULL;
2013-06-28 12:43:29 +00:00
p1_address_ctx_t* ctx;
if (actx->subtree.tree_ctx == NULL)
2013-09-15 14:33:38 +00:00
actx->subtree.tree_ctx = wmem_new0(wmem_packet_scope(), p1_address_ctx_t);
2013-06-28 12:43:29 +00:00
ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
if(ctx->content_type_id) {
2015-01-17 19:11:29 +00:00
name = oid_resolved_from_string(wmem_packet_scope(), ctx->content_type_id);
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
if(!name) name = ctx->content_type_id;
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
proto_item_append_text(tree, " (%%s)", name);
2005-11-16 07:13:12 +00:00
}
2007-10-22 17:13:08 +00:00
#.FN_PARS BuiltInContentType/_untag VAL_PTR = &ict
2005-09-04 16:22:12 +00:00
2007-10-22 17:13:08 +00:00
#.FN_BODY BuiltInContentType/_untag
2013-06-28 12:43:29 +00:00
static guint32 ict = -1;
p1_address_ctx_t* ctx;
if (actx->subtree.tree_ctx == NULL)
2013-09-15 14:33:38 +00:00
actx->subtree.tree_ctx = wmem_new0(wmem_packet_scope(), p1_address_ctx_t);
2013-06-28 12:43:29 +00:00
ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2005-09-04 16:22:12 +00:00
2005-10-24 21:42:19 +00:00
%(DEFAULT_BODY)s
2005-09-04 16:22:12 +00:00
2013-06-28 12:43:29 +00:00
/* convert integer content type to oid for dispatch when the content is found */
switch(ict) {
2005-09-04 16:22:12 +00:00
case 2:
2013-06-28 12:43:29 +00:00
ctx->content_type_id = wmem_strdup(wmem_packet_scope(), "2.6.1.10.0");
break;
2005-09-04 16:22:12 +00:00
case 22:
2013-06-28 12:43:29 +00:00
ctx->content_type_id = wmem_strdup(wmem_packet_scope(), "2.6.1.10.1");
break;
2005-09-04 16:22:12 +00:00
default:
2013-06-28 12:43:29 +00:00
ctx->content_type_id = NULL;
break;
2005-09-04 16:22:12 +00:00
}
2016-10-03 21:30:02 +00:00
#.FN_BODY Content VAL_PTR = &next_tvb
2013-06-28 12:43:29 +00:00
tvbuff_t *next_tvb;
p1_address_ctx_t* ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2016-10-03 21:30:02 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
if (next_tvb) {
2016-10-03 19:09:28 +00:00
proto_item_set_text(actx->created_item, "content (%%u bytes)", tvb_reported_length (next_tvb));
2013-07-01 15:09:56 +00:00
if (ctx && ctx->content_type_id) {
2013-11-05 18:47:26 +00:00
(void) call_ber_oid_callback(ctx->content_type_id, next_tvb, 0, actx->pinfo, actx->subtree.top_tree ? actx->subtree.top_tree : tree, actx->private_data);
2014-06-21 01:35:40 +00:00
} else if (ctx && ctx->report_unknown_content_type) {
proto_item *item;
proto_tree *next_tree;
2013-06-28 12:43:29 +00:00
2014-06-21 01:35:40 +00:00
item = proto_tree_add_expert(actx->subtree.top_tree ? actx->subtree.top_tree : tree, actx->pinfo, &ei_p1_unknown_built_in_content_type,
2015-04-09 12:36:26 +00:00
next_tvb, 0, tvb_reported_length_remaining(tvb, offset));
2013-06-28 12:43:29 +00:00
next_tree=proto_item_add_subtree(item, ett_p1_content_unknown);
2014-06-21 01:35:40 +00:00
dissect_unknown_ber(actx->pinfo, next_tvb, 0, next_tree);
2013-06-28 12:43:29 +00:00
} else {
proto_item_append_text (actx->created_item, " (unknown content-type)");
}
}
2005-10-24 21:42:19 +00:00
#.FN_PARS MTAName
VAL_PTR = &mtaname
#.FN_BODY MTAName
2005-11-16 07:13:12 +00:00
tvbuff_t *mtaname = NULL;
2013-06-28 12:43:29 +00:00
p1_address_ctx_t* ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2005-10-24 21:42:19 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
if (ctx && ctx->do_address) {
2015-04-09 12:36:26 +00:00
proto_item_append_text(actx->subtree.tree, " %%s", tvb_format_text(mtaname, 0, tvb_reported_length(mtaname)));
2005-11-16 07:13:12 +00:00
} else {
2013-06-28 12:43:29 +00:00
if (mtaname) {
2015-04-09 12:36:26 +00:00
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", tvb_format_text(mtaname, 0, tvb_reported_length(mtaname)));
2013-06-28 12:43:29 +00:00
}
2005-11-16 07:13:12 +00:00
}
#.FN_PARS X121Address
VAL_PTR=&string
#.FN_BODY X121Address
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/PX121=", string, actx);
2005-11-16 07:13:12 +00:00
#.FN_PARS TerminalIdentifier
VAL_PTR=&string
#.FN_BODY TerminalIdentifier
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/UA-ID=", string, actx);
2005-11-16 07:13:12 +00:00
#.FN_BODY PrivateDomainName
2013-06-28 12:43:29 +00:00
do_address("/P=", NULL, actx);
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
#.FN_BODY PrivateDomainIdentifier
2013-06-28 12:43:29 +00:00
do_address("/P=", NULL, actx);
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
#.FN_PARS OrganizationName
VAL_PTR=&string
#.FN_BODY OrganizationName
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/O=", string, actx);
2005-11-16 07:13:12 +00:00
2009-12-07 12:17:13 +00:00
#.FN_PARS TeletexOrganizationName
VAL_PTR=&string
#.FN_BODY TeletexOrganizationName
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/O=", string, actx);
2009-12-07 12:17:13 +00:00
2007-06-21 16:50:16 +00:00
#.FN_PARS OrganizationalUnitName
VAL_PTR=&string
#.FN_BODY OrganizationalUnitName
tvbuff_t *string = NULL;
2015-05-19 10:57:55 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/OU=", string, actx);
2007-06-21 16:50:16 +00:00
2009-12-07 12:17:13 +00:00
#.FN_PARS TeletexOrganizationalUnitName
VAL_PTR=&string
#.FN_BODY TeletexOrganizationalUnitName
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/OU=", string, actx);
2009-12-07 12:17:13 +00:00
2005-11-16 07:13:12 +00:00
#.FN_PARS CommonName
VAL_PTR=&string
#.FN_BODY CommonName
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/CN=", string, actx);
2005-11-16 07:13:12 +00:00
2009-12-07 12:17:13 +00:00
#.FN_PARS TeletexCommonName
VAL_PTR=&string
#.FN_BODY TeletexCommonName
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/CN=", string, actx);
2009-12-07 12:17:13 +00:00
2009-12-18 15:21:08 +00:00
#.FN_BODY CountryName/_untag/iso-3166-alpha2-code VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY AdministrationDomainName/_untag/printable VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY PrivateDomainName/printable VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY PrivateDomainIdentifier/printable VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY PhysicalDeliveryCountryName/iso-3166-alpha2-code VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2007-06-27 18:03:23 +00:00
2009-12-18 15:21:08 +00:00
#.FN_BODY UserAddress/x121/x121-address VAL_PTR=&nstring
2007-06-27 18:03:23 +00:00
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2007-06-27 18:03:23 +00:00
2009-12-18 15:21:08 +00:00
#.FN_BODY CountryName/_untag/x121-dcc-code VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY AdministrationDomainName/_untag/numeric VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY PrivateDomainName/numeric VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY PrivateDomainIdentifier/numeric VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2009-12-18 15:21:08 +00:00
#.FN_BODY PhysicalDeliveryCountryName/x121-dcc-code VAL_PTR=&nstring
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2005-11-16 07:13:12 +00:00
2009-12-18 15:21:08 +00:00
#.FN_BODY PostalCode/numeric-code VAL_PTR=&nstring
2005-11-16 07:13:12 +00:00
tvbuff_t *nstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address(NULL, nstring, actx);
2005-11-16 07:13:12 +00:00
2009-12-07 12:17:13 +00:00
#.FN_BODY TeletexDomainDefinedAttribute/type VAL_PTR=&tstring
2005-11-16 07:13:12 +00:00
tvbuff_t *tstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address_str("/DD.", tstring, actx);
2005-10-24 21:42:19 +00:00
2009-12-07 12:17:13 +00:00
#.FN_BODY TeletexDomainDefinedAttribute/value VAL_PTR=&tstring
tvbuff_t *tstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address_str_tree("=", tstring, actx, tree);
2009-12-07 12:17:13 +00:00
#.FN_BODY TeletexDomainDefinedAttribute
2013-09-15 14:33:38 +00:00
actx->value_ptr = wmem_strbuf_new(wmem_packet_scope(), "");
2009-12-07 12:17:13 +00:00
%(DEFAULT_BODY)s
2007-06-06 08:12:27 +00:00
#.FN_BODY PersonalName/surname VAL_PTR=&pstring
tvbuff_t *pstring = NULL;
%(DEFAULT_BODY)s
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
do_address("/S=", pstring, actx);
2009-12-07 12:17:13 +00:00
2007-06-06 08:12:27 +00:00
#.FN_BODY PersonalName/given-name VAL_PTR=&pstring
2005-11-16 07:13:12 +00:00
tvbuff_t *pstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/G=", pstring, actx);
2009-12-07 12:17:13 +00:00
2007-06-06 08:12:27 +00:00
#.FN_BODY PersonalName/initials VAL_PTR=&pstring
tvbuff_t *pstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/I=", pstring, actx);
2009-12-07 12:17:13 +00:00
2007-06-06 08:12:27 +00:00
#.FN_BODY PersonalName/generation-qualifier VAL_PTR=&pstring
tvbuff_t *pstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/Q=", pstring, actx);
2007-06-06 08:12:27 +00:00
2009-12-07 12:17:13 +00:00
#.FN_BODY TeletexPersonalName/surname VAL_PTR=&tstring
tvbuff_t *tstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/S=", tstring, actx);
2009-12-07 12:17:13 +00:00
#.FN_BODY TeletexPersonalName/given-name VAL_PTR=&tstring
tvbuff_t *tstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/G=", tstring, actx);
2009-12-07 12:17:13 +00:00
#.FN_BODY TeletexPersonalName/initials VAL_PTR=&tstring
tvbuff_t *tstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/I=", tstring, actx);
2009-12-07 12:17:13 +00:00
#.FN_BODY TeletexPersonalName/generation-qualifier VAL_PTR=&tstring
tvbuff_t *tstring = NULL;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address("/Q=", tstring, actx);
2009-12-07 12:17:13 +00:00
2007-06-06 08:12:27 +00:00
#.FN_BODY BuiltInDomainDefinedAttribute/type VAL_PTR=&pstring
tvbuff_t *pstring = NULL;
2005-11-16 07:13:12 +00:00
2007-06-06 08:12:27 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address_str("/DD.", pstring, actx);
2013-09-15 14:33:38 +00:00
2007-06-06 08:12:27 +00:00
#.FN_BODY BuiltInDomainDefinedAttribute/value VAL_PTR=&pstring
tvbuff_t *pstring = NULL;
2005-11-16 07:13:12 +00:00
2007-06-06 08:12:27 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
do_address_str_tree("=", pstring, actx, tree);
2013-09-15 14:33:38 +00:00
2007-12-21 13:23:52 +00:00
#.FN_BODY BuiltInDomainDefinedAttribute
2013-09-15 14:33:38 +00:00
actx->value_ptr = wmem_strbuf_new(wmem_packet_scope(), "");
2007-12-21 13:23:52 +00:00
%(DEFAULT_BODY)s
2005-11-16 07:13:12 +00:00
#.FN_BODY ORAddress
2013-06-28 12:43:29 +00:00
p1_address_ctx_t* ctx;
if (actx->subtree.tree_ctx == NULL) {
2013-09-15 14:33:38 +00:00
actx->subtree.tree_ctx = wmem_new0(wmem_packet_scope(), p1_address_ctx_t);
2013-06-28 12:43:29 +00:00
}
ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2013-09-15 14:33:38 +00:00
ctx->oraddress = wmem_strbuf_new(wmem_packet_scope(), "");
2013-06-28 12:43:29 +00:00
actx->subtree.tree = NULL;
set_do_address(actx, TRUE);
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-09-15 14:33:38 +00:00
if (ctx->oraddress && (wmem_strbuf_get_len(ctx->oraddress) > 0) && actx->subtree.tree)
proto_item_append_text(actx->subtree.tree, " (%%s/)", wmem_strbuf_get_str(ctx->oraddress));
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
2005-11-16 07:13:12 +00:00
#.FN_BODY ORName
2013-06-28 12:43:29 +00:00
p1_address_ctx_t* ctx;
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
if (actx->subtree.tree_ctx == NULL) {
2013-09-15 14:33:38 +00:00
actx->subtree.tree_ctx = wmem_new0(wmem_packet_scope(), p1_address_ctx_t);
2013-06-28 12:43:29 +00:00
}
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2013-09-15 14:33:38 +00:00
ctx->oraddress = wmem_strbuf_new(wmem_packet_scope(), "");
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
actx->subtree.tree = NULL;
set_do_address(actx, TRUE);
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
%(DEFAULT_BODY)s
2007-10-06 20:37:52 +00:00
2013-09-15 14:33:38 +00:00
if (ctx->oraddress && (wmem_strbuf_get_len(ctx->oraddress) > 0) && actx->subtree.tree)
proto_item_append_text(actx->subtree.tree, " (%%s/)", wmem_strbuf_get_str(ctx->oraddress));
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
#.FN_BODY MessageIdentifier
actx->subtree.tree = NULL;
2007-10-06 20:37:52 +00:00
%(DEFAULT_BODY)s
2005-11-16 07:13:12 +00:00
#.FN_BODY GlobalDomainIdentifier
2013-06-28 12:43:29 +00:00
p1_address_ctx_t* ctx;
if (actx->subtree.tree_ctx == NULL) {
2013-09-15 14:33:38 +00:00
actx->subtree.tree_ctx = wmem_new0(wmem_packet_scope(), p1_address_ctx_t);
2013-06-28 12:43:29 +00:00
}
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2013-09-15 14:33:38 +00:00
ctx->oraddress = wmem_strbuf_new(wmem_packet_scope(), "");
2013-06-28 12:43:29 +00:00
actx->subtree.tree = tree;
2013-09-15 14:33:38 +00:00
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-09-15 14:33:38 +00:00
if (ctx->oraddress && (wmem_strbuf_get_len(ctx->oraddress) > 0)) {
proto_item_append_text(actx->subtree.tree, " (%%s/", wmem_strbuf_get_str(ctx->oraddress));
2005-11-16 07:13:12 +00:00
2013-06-28 12:43:29 +00:00
if (hf_index == hf_p1_subject_identifier) {
2013-09-15 14:33:38 +00:00
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%%s/", wmem_strbuf_get_str(ctx->oraddress));
2007-05-06 16:38:04 +00:00
}
}
2005-11-16 07:13:12 +00:00
#.FN_PARS LocalIdentifier
VAL_PTR=&id
#.FN_BODY LocalIdentifier
2013-09-15 14:33:38 +00:00
tvbuff_t *id = NULL;
2013-06-28 12:43:29 +00:00
p1_address_ctx_t* ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
2007-05-06 16:38:04 +00:00
if(id) {
2013-06-28 12:43:29 +00:00
if (ctx && ctx->do_address)
2015-04-09 12:36:26 +00:00
proto_item_append_text(actx->subtree.tree, " $ %%s)", tvb_format_text(id, 0, tvb_reported_length(id)));
2007-05-06 16:38:04 +00:00
2013-09-15 14:33:38 +00:00
if (hf_index == hf_p1_subject_identifier)
2015-04-09 12:36:26 +00:00
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " $ %%s)", tvb_format_text(id, 0, tvb_reported_length(id)));
2007-05-06 16:38:04 +00:00
}
2005-11-16 07:13:12 +00:00
#.FN_BODY MTSIdentifier
2013-06-28 12:43:29 +00:00
set_do_address(actx, TRUE);
2007-05-06 16:38:04 +00:00
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
2007-05-06 16:38:04 +00:00
2006-03-25 16:48:28 +00:00
#.FN_BODY MTANameAndOptionalGDI
2013-06-28 12:43:29 +00:00
set_do_address(actx, TRUE);
2006-03-25 16:48:28 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
2006-03-25 16:48:28 +00:00
proto_item_append_text(tree, ")");
2005-11-16 07:13:12 +00:00
#.FN_BODY BuiltInStandardAttributes
2013-06-28 12:43:29 +00:00
actx->subtree.tree = tree;
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
#.FN_BODY TraceInformationElement
2013-06-28 12:43:29 +00:00
set_do_address(actx, TRUE);
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
2005-11-16 07:13:12 +00:00
#.FN_BODY InternalTraceInformationElement
2013-06-28 12:43:29 +00:00
set_do_address(actx, TRUE);
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
2005-11-16 07:13:12 +00:00
#.FN_BODY DomainSuppliedInformation
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
set_do_address(actx, TRUE);
2005-11-16 07:13:12 +00:00
proto_item_append_text(tree, ")");
#.FN_BODY MTASuppliedInformation
2013-06-28 12:43:29 +00:00
set_do_address(actx, FALSE);
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
set_do_address(actx, TRUE);
2005-11-16 07:13:12 +00:00
proto_item_append_text(tree, ")");
#.FN_PARS Time
VAL_PTR = &arrival
#.FN_BODY Time
tvbuff_t *arrival = NULL;
2013-06-28 12:43:29 +00:00
p1_address_ctx_t* ctx = (p1_address_ctx_t*)actx->subtree.tree_ctx;
2005-11-16 07:13:12 +00:00
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
if(arrival && ctx && ctx->do_address)
2015-04-09 12:36:26 +00:00
proto_item_append_text(actx->subtree.tree, " %%s", tvb_format_text(arrival, 0, tvb_reported_length(arrival)));
2005-11-16 07:13:12 +00:00
#.FN_PARS RoutingAction
VAL_PTR = &action
#.FN_BODY RoutingAction
int action = 0;
%(DEFAULT_BODY)s
2013-06-28 12:43:29 +00:00
proto_item_append_text(actx->subtree.tree, " %%s", val_to_str(action, p1_RoutingAction_vals, "action(%%d)"));
2005-11-16 07:13:12 +00:00
#.FN_PARS MTABindError
VAL_PTR=&error
#.FN_BODY MTABindError
int error = -1;
%(DEFAULT_BODY)s
2013-06-14 12:44:50 +00:00
if((error != -1))
2011-02-20 17:03:29 +00:00
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%%s)", val_to_str(error, p1_MTABindError_vals, "error(%%d)"));
2005-11-16 07:13:12 +00:00
2006-03-25 16:48:28 +00:00
#.FN_PARS TokenTypeIdentifier
2013-06-28 12:43:29 +00:00
FN_VARIANT = _str VAL_PTR = &actx->external.direct_reference
2006-03-25 16:48:28 +00:00
#.FN_BODY TokenTypeData
2013-09-15 14:33:38 +00:00
if(actx->external.direct_reference)
2013-11-05 18:47:26 +00:00
call_ber_oid_callback(actx->external.direct_reference, tvb, offset, actx->pinfo, tree, actx->private_data);
2006-03-25 16:48:28 +00:00
#.FN_PARS Credentials
VAL_PTR = &credentials
#.FN_BODY Credentials
2007-11-19 07:26:10 +00:00
gint credentials = -1;
2006-03-25 16:48:28 +00:00
%(DEFAULT_BODY)s
2011-02-20 17:03:29 +00:00
if( (credentials!=-1) && p1_Credentials_vals[credentials].strptr ){
2013-06-14 12:44:50 +00:00
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", p1_Credentials_vals[credentials].strptr);
2006-03-25 16:48:28 +00:00
}
2005-11-16 07:13:12 +00:00
2007-08-29 18:39:30 +00:00
#.FN_PARS TokenDataType
2013-06-28 12:43:29 +00:00
VAL_PTR = &actx->external.indirect_reference
2007-08-29 18:39:30 +00:00
2007-06-05 12:00:57 +00:00
#.FN_BODY TokenData/value
2006-06-28 19:07:10 +00:00
2013-09-15 14:33:38 +00:00
proto_item_append_text(tree, " (%%s)", val_to_str(actx->external.indirect_reference, p1_TokenDataType_vals, "tokendata-type %%d"));
2013-06-28 12:43:29 +00:00
if (dissector_try_uint(p1_tokendata_dissector_table, actx->external.indirect_reference, tvb, actx->pinfo, tree)) {
2015-04-09 12:36:26 +00:00
offset = tvb_reported_length(tvb);
2007-08-29 18:39:30 +00:00
} else {
2014-06-21 01:35:40 +00:00
proto_item *item;
proto_tree *next_tree;
2007-08-29 18:39:30 +00:00
2014-06-21 01:35:40 +00:00
next_tree = proto_tree_add_subtree_format(tree, tvb, 0, -1, ett_p1_unknown_tokendata_type, &item,
2013-06-28 12:43:29 +00:00
"Dissector for tokendata-type %%d not implemented. Contact Wireshark developers if you want this supported", actx->external.indirect_reference);
2007-08-29 18:39:30 +00:00
offset = dissect_unknown_ber(actx->pinfo, tvb, offset, next_tree);
2013-06-03 03:42:36 +00:00
expert_add_info(actx->pinfo, item, &ei_p1_unknown_tokendata_type);
2007-08-29 18:39:30 +00:00
}
2006-06-28 19:07:10 +00:00
2007-06-05 12:00:57 +00:00
#.FN_BODY PerDomainBilateralInformation/bilateral-information
2007-01-28 10:12:51 +00:00
proto_item *item = NULL;
2013-09-15 14:33:38 +00:00
int loffset = 0;
2007-01-28 10:12:51 +00:00
guint32 len = 0;
2006-06-28 19:07:10 +00:00
2007-01-28 10:12:51 +00:00
/* work out the length */
2007-05-13 20:58:29 +00:00
loffset = dissect_ber_identifier(actx->pinfo, tree, tvb, offset, NULL, NULL, NULL);
(void) dissect_ber_length(actx->pinfo, tree, tvb, loffset, &len, NULL);
2007-01-28 10:12:51 +00:00
2013-09-15 14:33:38 +00:00
/* create some structure so we can tell what this unknown ASN.1 represents */
2011-07-19 10:51:12 +00:00
item = proto_tree_add_item(tree, hf_index, tvb, offset, len, ENC_BIG_ENDIAN);
2011-02-20 17:03:29 +00:00
tree = proto_item_add_subtree(item, ett_p1_bilateral_information);
2007-01-28 10:12:51 +00:00
2007-05-13 20:58:29 +00:00
offset = dissect_unknown_ber(actx->pinfo, tvb, offset, tree);
2007-05-06 16:38:04 +00:00
#.FN_PARS MTS-APDU
VAL_PTR = &apdu
#.FN_BODY MTS-APDU
2007-11-15 10:10:22 +00:00
gint apdu = -1;
2007-05-06 16:38:04 +00:00
2013-09-15 14:33:38 +00:00
%(DEFAULT_BODY)s
2011-02-20 17:03:29 +00:00
if( (apdu!=-1) && p1_MTS_APDU_vals[apdu].strptr ){
2013-06-14 12:44:50 +00:00
if(apdu != 0) { /* we don't show "message" - sub-dissectors have better idea */
2011-02-20 17:03:29 +00:00
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", p1_MTS_APDU_vals[apdu].strptr);
2007-11-15 10:10:22 +00:00
}
2007-05-06 16:38:04 +00:00
}
#.FN_PARS ReportType
VAL_PTR = &report
#.FN_BODY ReportType
2007-11-15 10:10:22 +00:00
gint report = -1;
2007-05-06 16:38:04 +00:00
2013-06-28 12:43:29 +00:00
%(DEFAULT_BODY)s
2013-09-15 14:33:38 +00:00
2013-06-28 12:43:29 +00:00
if( (report!=-1) && p1_ReportType_vals[report].strptr ){
2011-02-20 17:03:29 +00:00
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", p1_ReportType_vals[report].strptr);
2007-05-06 16:38:04 +00:00
}
2011-02-22 10:23:44 +00:00
#.FN_BODY MessageSubmissionArgument
2013-06-28 12:43:29 +00:00
p1_initialize_content_globals(actx, tree, TRUE);
%(DEFAULT_BODY)s
p1_initialize_content_globals(actx, NULL, FALSE);
2011-02-22 10:23:44 +00:00
#.FN_BODY MessageDeliveryArgument
2013-06-28 12:43:29 +00:00
p1_initialize_content_globals(actx, tree, TRUE);
%(DEFAULT_BODY)s
p1_initialize_content_globals(actx, NULL, FALSE);
2011-02-22 10:23:44 +00:00
#.FN_BODY ReportDeliveryArgument
2013-06-28 12:43:29 +00:00
p1_initialize_content_globals(actx, tree, TRUE);
%(DEFAULT_BODY)s
p1_initialize_content_globals(actx, NULL, FALSE);
2011-02-22 10:23:44 +00:00
2013-06-20 18:54:58 +00:00
#.FN_HDR MTSBindResult
2013-06-28 12:43:29 +00:00
/* TODO: there may be other entry points where this global should be initialized... */
actx->subtree.tree = NULL;
2016-10-21 08:10:06 +00:00
#.TYPE_ATTR
RecipientNumberForAdvice DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexCommonName DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexOrganizationName DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexPersonalName/surname DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexPersonalName/given-name DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexPersonalName/initials DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexPersonalName/generation-qualifier DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexOrganizationalUnitName DISPLAY = STR_UNICODE
#.TYPE_ATTR
UnformattedPostalAddress/teletex-string DISPLAY = STR_UNICODE
#.TYPE_ATTR
PDSParameter/teletex-string DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexDomainDefinedAttribute/type DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexDomainDefinedAttribute/value DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexNonBasicParameters/graphic-character-sets DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexNonBasicParameters/control-character-sets DISPLAY = STR_UNICODE
#.TYPE_ATTR
TeletexNonBasicParameters/miscellaneous-terminal-capabilities DISPLAY = STR_UNICODE
2005-11-16 07:13:12 +00:00
#.END
2007-11-25 17:46:42 +00:00