diff options
Diffstat (limited to 'epan/dissectors/packet-acp133.c')
-rw-r--r-- | epan/dissectors/packet-acp133.c | 1722 |
1 files changed, 1722 insertions, 0 deletions
diff --git a/epan/dissectors/packet-acp133.c b/epan/dissectors/packet-acp133.c new file mode 100644 index 00000000..343bb5e2 --- /dev/null +++ b/epan/dissectors/packet-acp133.c @@ -0,0 +1,1722 @@ +/* Do not modify this file. Changes will be overwritten. */ +/* Generated automatically by the ASN.1 to Wireshark dissector compiler */ +/* packet-acp133.c */ +/* asn2wrs.py -b -L -p acp133 -c ./acp133.cnf -s ./packet-acp133-template -D . -O ../.. acp133.asn MHSDirectoryObjectsAndAttributes.asn */ + +/* packet-acp133.c + * Routines for ACP133 specific syntaxes in X.500 packet dissection + * Graeme Lunt 2005 + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "config.h" + +#include <epan/packet.h> +#include <epan/asn1.h> +#include <epan/oids.h> + +#include "packet-ber.h" + +#include "packet-p1.h" +#include "packet-x509af.h" +#include "packet-x509ce.h" +#include "packet-x509if.h" +#include "packet-x509sat.h" + +#include "packet-acp133.h" + +#define PNAME "ACP133 Attribute Syntaxes" +#define PSNAME "ACP133" +#define PFNAME "acp133" + +void proto_register_acp133(void); +void proto_reg_handoff_acp133(void); + +/* Initialize the protocol and registered fields */ +static int proto_acp133 = -1; + + +static int hf_acp133_ACPPreferredDelivery_PDU = -1; /* ACPPreferredDelivery */ +static int hf_acp133_ALType_PDU = -1; /* ALType */ +static int hf_acp133_Community_PDU = -1; /* Community */ +static int hf_acp133_OnSupported_PDU = -1; /* OnSupported */ +static int hf_acp133_ACPLegacyFormat_PDU = -1; /* ACPLegacyFormat */ +static int hf_acp133_ACPNoAttachments_PDU = -1; /* ACPNoAttachments */ +static int hf_acp133_Active_PDU = -1; /* Active */ +static int hf_acp133_Addressees_PDU = -1; /* Addressees */ +static int hf_acp133_Classification_PDU = -1; /* Classification */ +static int hf_acp133_DistributionCode_PDU = -1; /* DistributionCode */ +static int hf_acp133_EmConCapability_PDU = -1; /* EmConCapability */ +static int hf_acp133_EmConState_PDU = -1; /* EmConState */ +static int hf_acp133_JPEG_PDU = -1; /* JPEG */ +static int hf_acp133_MaxMessageSize_PDU = -1; /* MaxMessageSize */ +static int hf_acp133_MonthlyUKMs_PDU = -1; /* MonthlyUKMs */ +static int hf_acp133_MsgProtocolInfoCapability_PDU = -1; /* MsgProtocolInfoCapability */ +static int hf_acp133_Remarks_PDU = -1; /* Remarks */ +static int hf_acp133_RIParameters_PDU = -1; /* RIParameters */ +static int hf_acp133_WebAccessCapability_PDU = -1; /* WebAccessCapability */ +static int hf_acp133_Kmid_PDU = -1; /* Kmid */ +static int hf_acp133_MLReceiptPolicy_PDU = -1; /* MLReceiptPolicy */ +static int hf_acp133_DLSubmitPermission_PDU = -1; /* DLSubmitPermission */ +static int hf_acp133_DLPolicy_PDU = -1; /* DLPolicy */ +static int hf_acp133_AddressCapabilities_PDU = -1; /* AddressCapabilities */ +static int hf_acp133_Capability_PDU = -1; /* Capability */ +static int hf_acp133_Addressees_item = -1; /* PrintableString_SIZE_1_55 */ +static int hf_acp133_ukm_entries = -1; /* SEQUENCE_OF_UKMEntry */ +static int hf_acp133_ukm_entries_item = -1; /* UKMEntry */ +static int hf_acp133_algorithm_identifier = -1; /* AlgorithmIdentifier */ +static int hf_acp133_encrypted = -1; /* BIT_STRING */ +static int hf_acp133_Remarks_item = -1; /* PrintableString */ +static int hf_acp133_ri_parameters = -1; /* DirectoryString */ +static int hf_acp133_ri_parameters_deprecated = -1; /* RIParametersDeprecated */ +static int hf_acp133_rI = -1; /* PrintableString */ +static int hf_acp133_rIType = -1; /* T_rIType */ +static int hf_acp133_minimize = -1; /* BOOLEAN */ +static int hf_acp133_sHD = -1; /* PrintableString */ +static int hf_acp133_classification = -1; /* Classification */ +static int hf_acp133_tag = -1; /* PairwiseTag */ +static int hf_acp133_ukm = -1; /* OCTET_STRING */ +static int hf_acp133_kmid = -1; /* Kmid */ +static int hf_acp133_edition = -1; /* INTEGER */ +static int hf_acp133_date = -1; /* UTCTime */ +static int hf_acp133_none = -1; /* NULL */ +static int hf_acp133_insteadOf = -1; /* SEQUENCE_OF_GeneralNames */ +static int hf_acp133_insteadOf_item = -1; /* GeneralNames */ +static int hf_acp133_inAdditionTo = -1; /* SEQUENCE_OF_GeneralNames */ +static int hf_acp133_inAdditionTo_item = -1; /* GeneralNames */ +static int hf_acp133_individual = -1; /* ORName */ +static int hf_acp133_member_of_dl = -1; /* ORName */ +static int hf_acp133_pattern_match = -1; /* ORNamePattern */ +static int hf_acp133_member_of_group = -1; /* Name */ +static int hf_acp133_report_propagation = -1; /* T_report_propagation */ +static int hf_acp133_report_from_dl = -1; /* T_report_from_dl */ +static int hf_acp133_originating_MTA_report = -1; /* T_originating_MTA_report */ +static int hf_acp133_originator_report = -1; /* T_originator_report */ +static int hf_acp133_return_of_content = -1; /* T_return_of_content */ +static int hf_acp133_priority = -1; /* T_priority */ +static int hf_acp133_disclosure_of_other_recipients = -1; /* T_disclosure_of_other_recipients */ +static int hf_acp133_implicit_conversion_prohibited = -1; /* T_implicit_conversion_prohibited */ +static int hf_acp133_conversion_with_loss_prohibited = -1; /* T_conversion_with_loss_prohibited */ +static int hf_acp133_further_dl_expansion_allowed = -1; /* BOOLEAN */ +static int hf_acp133_originator_requested_alternate_recipient_removed = -1; /* BOOLEAN */ +static int hf_acp133_proof_of_delivery = -1; /* T_proof_of_delivery */ +static int hf_acp133_requested_delivery_method = -1; /* T_requested_delivery_method */ +static int hf_acp133_unchanged = -1; /* NULL */ +static int hf_acp133_removed = -1; /* NULL */ +static int hf_acp133_replaced = -1; /* RequestedDeliveryMethod */ +static int hf_acp133_token_encryption_algorithm_preference = -1; /* SEQUENCE_OF_AlgorithmInformation */ +static int hf_acp133_token_encryption_algorithm_preference_item = -1; /* AlgorithmInformation */ +static int hf_acp133_token_signature_algorithm_preference = -1; /* SEQUENCE_OF_AlgorithmInformation */ +static int hf_acp133_token_signature_algorithm_preference_item = -1; /* AlgorithmInformation */ +static int hf_acp133_originator_certificate_selector = -1; /* CertificateAssertion */ +static int hf_acp133_recipient_certificate_selector = -1; /* CertificateAssertion */ +static int hf_acp133_description = -1; /* GeneralString */ +static int hf_acp133_address = -1; /* ORAddress */ +static int hf_acp133_capabilities = -1; /* SET_OF_Capability */ +static int hf_acp133_capabilities_item = -1; /* Capability */ +static int hf_acp133_content_types = -1; /* SET_OF_ExtendedContentType */ +static int hf_acp133_content_types_item = -1; /* ExtendedContentType */ +static int hf_acp133_maximum_content_length = -1; /* ContentLength */ +static int hf_acp133_encoded_information_types_constraints = -1; /* EncodedInformationTypesConstraints */ +static int hf_acp133_security_labels = -1; /* SecurityContext */ +/* named bits */ +static int hf_acp133_OnSupported_acp127_nn = -1; +static int hf_acp133_OnSupported_acp127_pn = -1; +static int hf_acp133_OnSupported_acp127_tn = -1; + +/* Initialize the subtree pointers */ +static gint ett_acp133 = -1; +static gint ett_acp133_OnSupported = -1; +static gint ett_acp133_Addressees = -1; +static gint ett_acp133_MonthlyUKMs = -1; +static gint ett_acp133_SEQUENCE_OF_UKMEntry = -1; +static gint ett_acp133_Remarks = -1; +static gint ett_acp133_RIParameters = -1; +static gint ett_acp133_RIParametersDeprecated = -1; +static gint ett_acp133_UKMEntry = -1; +static gint ett_acp133_PairwiseTag = -1; +static gint ett_acp133_MLReceiptPolicy = -1; +static gint ett_acp133_SEQUENCE_OF_GeneralNames = -1; +static gint ett_acp133_DLSubmitPermission = -1; +static gint ett_acp133_DLPolicy = -1; +static gint ett_acp133_T_requested_delivery_method = -1; +static gint ett_acp133_SEQUENCE_OF_AlgorithmInformation = -1; +static gint ett_acp133_AlgorithmInformation = -1; +static gint ett_acp133_AddressCapabilities = -1; +static gint ett_acp133_SET_OF_Capability = -1; +static gint ett_acp133_Capability = -1; +static gint ett_acp133_SET_OF_ExtendedContentType = -1; + + +static const value_string acp133_ACPPreferredDelivery_vals[] = { + { 0, "smtp" }, + { 1, "acp127" }, + { 2, "mhs" }, + { 0, NULL } +}; + + +static int +dissect_acp133_ACPPreferredDelivery(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_ALType_vals[] = { + { 0, "aig" }, + { 1, "type" }, + { 2, "cad" }, + { 3, "taskforce" }, + { 4, "dag" }, + { 0, NULL } +}; + + +static int +dissect_acp133_ALType(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_Community_vals[] = { + { 0, "genser" }, + { 1, "si" }, + { 2, "both" }, + { 0, NULL } +}; + + +static int +dissect_acp133_Community(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static int * const OnSupported_bits[] = { + &hf_acp133_OnSupported_acp127_nn, + &hf_acp133_OnSupported_acp127_pn, + &hf_acp133_OnSupported_acp127_tn, + NULL +}; + +static int +dissect_acp133_OnSupported(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, + OnSupported_bits, 3, hf_index, ett_acp133_OnSupported, + NULL); + + return offset; +} + + +static const value_string acp133_ACPLegacyFormat_vals[] = { + { 0, "janap128" }, + { 1, "acp127" }, + { 2, "doi103" }, + { 3, "doi103-special" }, + { 4, "acp127" }, + { 5, "acp127-converted" }, + { 6, "reserved-1" }, + { 7, "acp127-state" }, + { 8, "acp127-modified" }, + { 9, "socomm-special" }, + { 10, "socomm-narrative" }, + { 11, "reserved-2" }, + { 12, "socomm-narrative-special" }, + { 13, "socomm-data" }, + { 14, "socomm-internal" }, + { 15, "socomm-external" }, + { 16, "mfi-default" }, + { 17, "acp-legacy-format-smtp" }, + { 18, "p22" }, + { 32, "acp145-united-states" }, + { 33, "acp145-australia" }, + { 34, "acp145-canada" }, + { 35, "acp145-united-kingdom" }, + { 36, "acp145-new-zealand" }, + { 0, NULL } +}; + + +static int +dissect_acp133_ACPLegacyFormat(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_ACPNoAttachments(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} + + + +static int +dissect_acp133_Active(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} + + + +static int +dissect_acp133_PrintableString_SIZE_1_55(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const ber_sequence_t Addressees_sequence_of[1] = { + { &hf_acp133_Addressees_item, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_acp133_PrintableString_SIZE_1_55 }, +}; + +static int +dissect_acp133_Addressees(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + Addressees_sequence_of, hf_index, ett_acp133_Addressees); + + return offset; +} + + +static const value_string acp133_Classification_vals[] = { + { 0, "unmarked" }, + { 1, "unclassified" }, + { 2, "restricted" }, + { 3, "confidential" }, + { 4, "secret" }, + { 5, "top-secret" }, + { 0, NULL } +}; + + +static int +dissect_acp133_Classification(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_DistributionCode(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_EmConCapability(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} + + +static const value_string acp133_EmConState_vals[] = { + { 0, "enabled" }, + { 1, "receive-only" }, + { 2, "electronic-silence" }, + { 3, "disabled" }, + { 0, NULL } +}; + + +static int +dissect_acp133_EmConState(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_JPEG(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_MaxMessageSize(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_Kmid(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_INTEGER(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_UTCTime(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_UTCTime(implicit_tag, actx, tree, tvb, offset, hf_index, NULL, NULL); + + return offset; +} + + +static const ber_sequence_t PairwiseTag_sequence[] = { + { &hf_acp133_kmid , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_acp133_Kmid }, + { &hf_acp133_edition , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_acp133_INTEGER }, + { &hf_acp133_date , BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_acp133_UTCTime }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_PairwiseTag(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, + PairwiseTag_sequence, hf_index, ett_acp133_PairwiseTag); + + return offset; +} + + + +static int +dissect_acp133_OCTET_STRING(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const ber_sequence_t UKMEntry_sequence[] = { + { &hf_acp133_tag , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_acp133_PairwiseTag }, + { &hf_acp133_ukm , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_acp133_OCTET_STRING }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_UKMEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, + UKMEntry_sequence, hf_index, ett_acp133_UKMEntry); + + return offset; +} + + +static const ber_sequence_t SEQUENCE_OF_UKMEntry_sequence_of[1] = { + { &hf_acp133_ukm_entries_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_acp133_UKMEntry }, +}; + +static int +dissect_acp133_SEQUENCE_OF_UKMEntry(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + SEQUENCE_OF_UKMEntry_sequence_of, hf_index, ett_acp133_SEQUENCE_OF_UKMEntry); + + return offset; +} + + + +static int +dissect_acp133_BIT_STRING(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset, + NULL, 0, hf_index, -1, + NULL); + + return offset; +} + + +static const ber_sequence_t MonthlyUKMs_sequence[] = { + { &hf_acp133_ukm_entries , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_acp133_SEQUENCE_OF_UKMEntry }, + { &hf_acp133_algorithm_identifier, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier }, + { &hf_acp133_encrypted , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_acp133_BIT_STRING }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_MonthlyUKMs(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, + MonthlyUKMs_sequence, hf_index, ett_acp133_MonthlyUKMs); + + return offset; +} + + +static const value_string acp133_MsgProtocolInfoCapability_vals[] = { + { 0, "acp-127" }, + { 1, "acp-123" }, + { 0, NULL } +}; + + +static int +dissect_acp133_MsgProtocolInfoCapability(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_PrintableString(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const ber_sequence_t Remarks_sequence_of[1] = { + { &hf_acp133_Remarks_item , BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_acp133_PrintableString }, +}; + +static int +dissect_acp133_Remarks(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + Remarks_sequence_of, hf_index, ett_acp133_Remarks); + + return offset; +} + + +static const value_string acp133_T_rIType_vals[] = { + { 0, "normal" }, + { 1, "off-line" }, + { 2, "partTimeTerminal" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_rIType(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + + +static int +dissect_acp133_BOOLEAN(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} + + +static const ber_sequence_t RIParametersDeprecated_set[] = { + { &hf_acp133_rI , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_acp133_PrintableString }, + { &hf_acp133_rIType , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_acp133_T_rIType }, + { &hf_acp133_minimize , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_acp133_BOOLEAN }, + { &hf_acp133_sHD , BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_acp133_PrintableString }, + { &hf_acp133_classification, BER_CLASS_CON, 4, BER_FLAGS_IMPLTAG, dissect_acp133_Classification }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_RIParametersDeprecated(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + RIParametersDeprecated_set, hf_index, ett_acp133_RIParametersDeprecated); + + return offset; +} + + +static const value_string acp133_RIParameters_vals[] = { + { 0, "ri-parameters" }, + { 1, "ri-parameters-deprecated" }, + { 0, NULL } +}; + +static const ber_choice_t RIParameters_choice[] = { + { 0, &hf_acp133_ri_parameters, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG, dissect_x509sat_DirectoryString }, + { 1, &hf_acp133_ri_parameters_deprecated, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_acp133_RIParametersDeprecated }, + { 0, NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_RIParameters(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_choice(actx, tree, tvb, offset, + RIParameters_choice, hf_index, ett_acp133_RIParameters, + NULL); + + return offset; +} + + + +static int +dissect_acp133_WebAccessCapability(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_boolean(implicit_tag, actx, tree, tvb, offset, hf_index, NULL); + + return offset; +} + + + +static int +dissect_acp133_NULL(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index); + + return offset; +} + + +static const ber_sequence_t SEQUENCE_OF_GeneralNames_sequence_of[1] = { + { &hf_acp133_insteadOf_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralNames }, +}; + +static int +dissect_acp133_SEQUENCE_OF_GeneralNames(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + SEQUENCE_OF_GeneralNames_sequence_of, hf_index, ett_acp133_SEQUENCE_OF_GeneralNames); + + return offset; +} + + +static const value_string acp133_MLReceiptPolicy_vals[] = { + { 0, "none" }, + { 1, "insteadOf" }, + { 2, "inAdditionTo" }, + { 0, NULL } +}; + +static const ber_choice_t MLReceiptPolicy_choice[] = { + { 0, &hf_acp133_none , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_acp133_NULL }, + { 1, &hf_acp133_insteadOf , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_acp133_SEQUENCE_OF_GeneralNames }, + { 2, &hf_acp133_inAdditionTo , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_acp133_SEQUENCE_OF_GeneralNames }, + { 0, NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_MLReceiptPolicy(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_choice(actx, tree, tvb, offset, + MLReceiptPolicy_choice, hf_index, ett_acp133_MLReceiptPolicy, + NULL); + + return offset; +} + + + +static int +dissect_acp133_ORNamePattern(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_p1_ORName(implicit_tag, tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const value_string acp133_DLSubmitPermission_vals[] = { + { 0, "individual" }, + { 1, "member-of-dl" }, + { 2, "pattern-match" }, + { 3, "member-of-group" }, + { 0, NULL } +}; + +static const ber_choice_t DLSubmitPermission_choice[] = { + { 0, &hf_acp133_individual , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_p1_ORName }, + { 1, &hf_acp133_member_of_dl , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_p1_ORName }, + { 2, &hf_acp133_pattern_match, BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_acp133_ORNamePattern }, + { 3, &hf_acp133_member_of_group, BER_CLASS_CON, 3, BER_FLAGS_IMPLTAG, dissect_x509if_Name }, + { 0, NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_DLSubmitPermission(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_choice(actx, tree, tvb, offset, + DLSubmitPermission_choice, hf_index, ett_acp133_DLSubmitPermission, + NULL); + + return offset; +} + + +static const value_string acp133_T_report_propagation_vals[] = { + { 0, "previous-dl-or-originator" }, + { 1, "dl-owner" }, + { 2, "both-previous-and-owner" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_report_propagation(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_report_from_dl_vals[] = { + { 0, "whenever-requested" }, + { 1, "when-no-propagation" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_report_from_dl(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_originating_MTA_report_vals[] = { + { 0, "unchanged" }, + { 2, "report" }, + { 3, "non-delivery-report" }, + { 4, "audited-report" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_originating_MTA_report(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_originator_report_vals[] = { + { 0, "unchanged" }, + { 1, "no-report" }, + { 2, "report" }, + { 3, "non-delivery-report" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_originator_report(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_return_of_content_vals[] = { + { 0, "unchanged" }, + { 1, "content-return-not-requested" }, + { 2, "content-return-requested" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_return_of_content(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_priority_vals[] = { + { 0, "unchanged" }, + { 1, "normal" }, + { 2, "non-urgent" }, + { 3, "urgent" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_priority(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_disclosure_of_other_recipients_vals[] = { + { 0, "unchanged" }, + { 1, "disclosure-of-other-recipients-prohibited" }, + { 2, "disclosure-of-other-recipients-allowed" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_disclosure_of_other_recipients(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_implicit_conversion_prohibited_vals[] = { + { 0, "unchanged" }, + { 1, "implicit-conversion-allowed" }, + { 2, "implicit-conversion-prohibited" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_implicit_conversion_prohibited(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_conversion_with_loss_prohibited_vals[] = { + { 0, "unchanged" }, + { 1, "conversion-with-loss-allowed" }, + { 2, "conversion-with-loss-prohibited" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_conversion_with_loss_prohibited(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_proof_of_delivery_vals[] = { + { 0, "dl-expansion-point" }, + { 1, "dl-members" }, + { 2, "both" }, + { 3, "neither" }, + { 0, NULL } +}; + + +static int +dissect_acp133_T_proof_of_delivery(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const value_string acp133_T_requested_delivery_method_vals[] = { + { 0, "unchanged" }, + { 1, "removed" }, + { 2, "replaced" }, + { 0, NULL } +}; + +static const ber_choice_t T_requested_delivery_method_choice[] = { + { 0, &hf_acp133_unchanged , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_acp133_NULL }, + { 1, &hf_acp133_removed , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_acp133_NULL }, + { 2, &hf_acp133_replaced , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_p1_RequestedDeliveryMethod }, + { 0, NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_T_requested_delivery_method(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_choice(actx, tree, tvb, offset, + T_requested_delivery_method_choice, hf_index, ett_acp133_T_requested_delivery_method, + NULL); + + return offset; +} + + +static const ber_sequence_t AlgorithmInformation_sequence[] = { + { &hf_acp133_algorithm_identifier, BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_x509af_AlgorithmIdentifier }, + { &hf_acp133_originator_certificate_selector, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateAssertion }, + { &hf_acp133_recipient_certificate_selector, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_x509ce_CertificateAssertion }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_AlgorithmInformation(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, + AlgorithmInformation_sequence, hf_index, ett_acp133_AlgorithmInformation); + + return offset; +} + + +static const ber_sequence_t SEQUENCE_OF_AlgorithmInformation_sequence_of[1] = { + { &hf_acp133_token_encryption_algorithm_preference_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_acp133_AlgorithmInformation }, +}; + +static int +dissect_acp133_SEQUENCE_OF_AlgorithmInformation(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset, + SEQUENCE_OF_AlgorithmInformation_sequence_of, hf_index, ett_acp133_SEQUENCE_OF_AlgorithmInformation); + + return offset; +} + + +static const ber_sequence_t DLPolicy_set[] = { + { &hf_acp133_report_propagation, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_report_propagation }, + { &hf_acp133_report_from_dl, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_report_from_dl }, + { &hf_acp133_originating_MTA_report, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_originating_MTA_report }, + { &hf_acp133_originator_report, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_originator_report }, + { &hf_acp133_return_of_content, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_return_of_content }, + { &hf_acp133_priority , BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_priority }, + { &hf_acp133_disclosure_of_other_recipients, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_disclosure_of_other_recipients }, + { &hf_acp133_implicit_conversion_prohibited, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_implicit_conversion_prohibited }, + { &hf_acp133_conversion_with_loss_prohibited, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_conversion_with_loss_prohibited }, + { &hf_acp133_further_dl_expansion_allowed, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_BOOLEAN }, + { &hf_acp133_originator_requested_alternate_recipient_removed, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_BOOLEAN }, + { &hf_acp133_proof_of_delivery, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_proof_of_delivery }, + { &hf_acp133_requested_delivery_method, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_T_requested_delivery_method }, + { &hf_acp133_token_encryption_algorithm_preference, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_SEQUENCE_OF_AlgorithmInformation }, + { &hf_acp133_token_signature_algorithm_preference, BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_SEQUENCE_OF_AlgorithmInformation }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_DLPolicy(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + DLPolicy_set, hf_index, ett_acp133_DLPolicy); + + return offset; +} + + + +static int +dissect_acp133_GeneralString(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_GeneralString, + actx, tree, tvb, offset, hf_index, + NULL); + + return offset; +} + + +static const ber_sequence_t SET_OF_ExtendedContentType_set_of[1] = { + { &hf_acp133_content_types_item, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_p1_ExtendedContentType }, +}; + +static int +dissect_acp133_SET_OF_ExtendedContentType(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset, + SET_OF_ExtendedContentType_set_of, hf_index, ett_acp133_SET_OF_ExtendedContentType); + + return offset; +} + + +static const ber_sequence_t Capability_set[] = { + { &hf_acp133_content_types, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_acp133_SET_OF_ExtendedContentType }, + { &hf_acp133_maximum_content_length, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_p1_ContentLength }, + { &hf_acp133_encoded_information_types_constraints, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_p1_EncodedInformationTypesConstraints }, + { &hf_acp133_security_labels, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_IMPLTAG, dissect_p1_SecurityContext }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_Capability(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset, + Capability_set, hf_index, ett_acp133_Capability); + + return offset; +} + + +static const ber_sequence_t SET_OF_Capability_set_of[1] = { + { &hf_acp133_capabilities_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_acp133_Capability }, +}; + +static int +dissect_acp133_SET_OF_Capability(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset, + SET_OF_Capability_set_of, hf_index, ett_acp133_SET_OF_Capability); + + return offset; +} + + +static const ber_sequence_t AddressCapabilities_sequence[] = { + { &hf_acp133_description , BER_CLASS_UNI, BER_UNI_TAG_GeneralString, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_acp133_GeneralString }, + { &hf_acp133_address , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_p1_ORAddress }, + { &hf_acp133_capabilities , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_acp133_SET_OF_Capability }, + { NULL, 0, 0, 0, NULL } +}; + +static int +dissect_acp133_AddressCapabilities(bool implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset, + AddressCapabilities_sequence, hf_index, ett_acp133_AddressCapabilities); + + return offset; +} + +/*--- PDUs ---*/ + +static int dissect_ACPPreferredDelivery_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_ACPPreferredDelivery(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_ACPPreferredDelivery_PDU); + return offset; +} +static int dissect_ALType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_ALType(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_ALType_PDU); + return offset; +} +static int dissect_Community_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_Community(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_Community_PDU); + return offset; +} +static int dissect_OnSupported_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_OnSupported(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_OnSupported_PDU); + return offset; +} +static int dissect_ACPLegacyFormat_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_ACPLegacyFormat(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_ACPLegacyFormat_PDU); + return offset; +} +static int dissect_ACPNoAttachments_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_ACPNoAttachments(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_ACPNoAttachments_PDU); + return offset; +} +static int dissect_Active_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_Active(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_Active_PDU); + return offset; +} +static int dissect_Addressees_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_Addressees(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_Addressees_PDU); + return offset; +} +static int dissect_Classification_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_Classification(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_Classification_PDU); + return offset; +} +static int dissect_DistributionCode_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_DistributionCode(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_DistributionCode_PDU); + return offset; +} +static int dissect_EmConCapability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_EmConCapability(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_EmConCapability_PDU); + return offset; +} +static int dissect_EmConState_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_EmConState(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_EmConState_PDU); + return offset; +} +static int dissect_JPEG_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_JPEG(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_JPEG_PDU); + return offset; +} +static int dissect_MaxMessageSize_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_MaxMessageSize(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_MaxMessageSize_PDU); + return offset; +} +static int dissect_MonthlyUKMs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_MonthlyUKMs(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_MonthlyUKMs_PDU); + return offset; +} +static int dissect_MsgProtocolInfoCapability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_MsgProtocolInfoCapability(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_MsgProtocolInfoCapability_PDU); + return offset; +} +static int dissect_Remarks_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_Remarks(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_Remarks_PDU); + return offset; +} +static int dissect_RIParameters_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_RIParameters(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_RIParameters_PDU); + return offset; +} +static int dissect_WebAccessCapability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_WebAccessCapability(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_WebAccessCapability_PDU); + return offset; +} +static int dissect_Kmid_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_Kmid(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_Kmid_PDU); + return offset; +} +static int dissect_MLReceiptPolicy_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_MLReceiptPolicy(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_MLReceiptPolicy_PDU); + return offset; +} +static int dissect_DLSubmitPermission_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_DLSubmitPermission(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_DLSubmitPermission_PDU); + return offset; +} +static int dissect_DLPolicy_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_DLPolicy(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_DLPolicy_PDU); + return offset; +} +static int dissect_AddressCapabilities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_AddressCapabilities(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_AddressCapabilities_PDU); + return offset; +} +static int dissect_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo); + offset = dissect_acp133_Capability(FALSE, tvb, offset, &asn1_ctx, tree, hf_acp133_Capability_PDU); + return offset; +} + + + +/*--- proto_register_acp133 -------------------------------------------*/ +void proto_register_acp133(void) { + + /* List of fields */ + static hf_register_info hf[] = + { + { &hf_acp133_ACPPreferredDelivery_PDU, + { "ACPPreferredDelivery", "acp133.ACPPreferredDelivery", + FT_UINT32, BASE_DEC, VALS(acp133_ACPPreferredDelivery_vals), 0, + NULL, HFILL }}, + { &hf_acp133_ALType_PDU, + { "ALType", "acp133.ALType", + FT_INT32, BASE_DEC, VALS(acp133_ALType_vals), 0, + NULL, HFILL }}, + { &hf_acp133_Community_PDU, + { "Community", "acp133.Community", + FT_UINT32, BASE_DEC, VALS(acp133_Community_vals), 0, + NULL, HFILL }}, + { &hf_acp133_OnSupported_PDU, + { "OnSupported", "acp133.OnSupported", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_ACPLegacyFormat_PDU, + { "ACPLegacyFormat", "acp133.ACPLegacyFormat", + FT_INT32, BASE_DEC, VALS(acp133_ACPLegacyFormat_vals), 0, + NULL, HFILL }}, + { &hf_acp133_ACPNoAttachments_PDU, + { "ACPNoAttachments", "acp133.ACPNoAttachments", + FT_BOOLEAN, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_Active_PDU, + { "Active", "acp133.Active", + FT_BOOLEAN, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_Addressees_PDU, + { "Addressees", "acp133.Addressees", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_Classification_PDU, + { "Classification", "acp133.Classification", + FT_UINT32, BASE_DEC, VALS(acp133_Classification_vals), 0, + NULL, HFILL }}, + { &hf_acp133_DistributionCode_PDU, + { "DistributionCode", "acp133.DistributionCode", + FT_STRING, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_EmConCapability_PDU, + { "EmConCapability", "acp133.EmConCapability", + FT_BOOLEAN, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_EmConState_PDU, + { "EmConState", "acp133.EmConState", + FT_UINT32, BASE_DEC, VALS(acp133_EmConState_vals), 0, + NULL, HFILL }}, + { &hf_acp133_JPEG_PDU, + { "JPEG", "acp133.JPEG", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_MaxMessageSize_PDU, + { "MaxMessageSize", "acp133.MaxMessageSize", + FT_INT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_MonthlyUKMs_PDU, + { "MonthlyUKMs", "acp133.MonthlyUKMs_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_MsgProtocolInfoCapability_PDU, + { "MsgProtocolInfoCapability", "acp133.MsgProtocolInfoCapability", + FT_UINT32, BASE_DEC, VALS(acp133_MsgProtocolInfoCapability_vals), 0, + NULL, HFILL }}, + { &hf_acp133_Remarks_PDU, + { "Remarks", "acp133.Remarks", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_RIParameters_PDU, + { "RIParameters", "acp133.RIParameters", + FT_UINT32, BASE_DEC, VALS(acp133_RIParameters_vals), 0, + NULL, HFILL }}, + { &hf_acp133_WebAccessCapability_PDU, + { "WebAccessCapability", "acp133.WebAccessCapability", + FT_BOOLEAN, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_Kmid_PDU, + { "Kmid", "acp133.Kmid", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_MLReceiptPolicy_PDU, + { "MLReceiptPolicy", "acp133.MLReceiptPolicy", + FT_UINT32, BASE_DEC, VALS(acp133_MLReceiptPolicy_vals), 0, + NULL, HFILL }}, + { &hf_acp133_DLSubmitPermission_PDU, + { "DLSubmitPermission", "acp133.DLSubmitPermission", + FT_UINT32, BASE_DEC, VALS(acp133_DLSubmitPermission_vals), 0, + NULL, HFILL }}, + { &hf_acp133_DLPolicy_PDU, + { "DLPolicy", "acp133.DLPolicy_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_AddressCapabilities_PDU, + { "AddressCapabilities", "acp133.AddressCapabilities_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_Capability_PDU, + { "Capability", "acp133.Capability_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_Addressees_item, + { "Addressees item", "acp133.Addressees_item", + FT_STRING, BASE_NONE, NULL, 0, + "PrintableString_SIZE_1_55", HFILL }}, + { &hf_acp133_ukm_entries, + { "ukm-entries", "acp133.ukm_entries", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_OF_UKMEntry", HFILL }}, + { &hf_acp133_ukm_entries_item, + { "UKMEntry", "acp133.UKMEntry_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_algorithm_identifier, + { "algorithm-identifier", "acp133.algorithm_identifier_element", + FT_NONE, BASE_NONE, NULL, 0, + "AlgorithmIdentifier", HFILL }}, + { &hf_acp133_encrypted, + { "encrypted", "acp133.encrypted", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING", HFILL }}, + { &hf_acp133_Remarks_item, + { "Remarks item", "acp133.Remarks_item", + FT_STRING, BASE_NONE, NULL, 0, + "PrintableString", HFILL }}, + { &hf_acp133_ri_parameters, + { "ri-parameters", "acp133.ri_parameters", + FT_UINT32, BASE_DEC, VALS(x509sat_DirectoryString_vals), 0, + "DirectoryString", HFILL }}, + { &hf_acp133_ri_parameters_deprecated, + { "ri-parameters-deprecated", "acp133.ri_parameters_deprecated_element", + FT_NONE, BASE_NONE, NULL, 0, + "RIParametersDeprecated", HFILL }}, + { &hf_acp133_rI, + { "rI", "acp133.rI", + FT_STRING, BASE_NONE, NULL, 0, + "PrintableString", HFILL }}, + { &hf_acp133_rIType, + { "rIType", "acp133.rIType", + FT_UINT32, BASE_DEC, VALS(acp133_T_rIType_vals), 0, + NULL, HFILL }}, + { &hf_acp133_minimize, + { "minimize", "acp133.minimize", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_acp133_sHD, + { "sHD", "acp133.sHD", + FT_STRING, BASE_NONE, NULL, 0, + "PrintableString", HFILL }}, + { &hf_acp133_classification, + { "classification", "acp133.classification", + FT_UINT32, BASE_DEC, VALS(acp133_Classification_vals), 0, + NULL, HFILL }}, + { &hf_acp133_tag, + { "tag", "acp133.tag_element", + FT_NONE, BASE_NONE, NULL, 0, + "PairwiseTag", HFILL }}, + { &hf_acp133_ukm, + { "ukm", "acp133.ukm", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_acp133_kmid, + { "kmid", "acp133.kmid", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_edition, + { "edition", "acp133.edition", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER", HFILL }}, + { &hf_acp133_date, + { "date", "acp133.date", + FT_STRING, BASE_NONE, NULL, 0, + "UTCTime", HFILL }}, + { &hf_acp133_none, + { "none", "acp133.none_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_insteadOf, + { "insteadOf", "acp133.insteadOf", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_OF_GeneralNames", HFILL }}, + { &hf_acp133_insteadOf_item, + { "GeneralNames", "acp133.GeneralNames", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_inAdditionTo, + { "inAdditionTo", "acp133.inAdditionTo", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_OF_GeneralNames", HFILL }}, + { &hf_acp133_inAdditionTo_item, + { "GeneralNames", "acp133.GeneralNames", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_individual, + { "individual", "acp133.individual_element", + FT_NONE, BASE_NONE, NULL, 0, + "ORName", HFILL }}, + { &hf_acp133_member_of_dl, + { "member-of-dl", "acp133.member_of_dl_element", + FT_NONE, BASE_NONE, NULL, 0, + "ORName", HFILL }}, + { &hf_acp133_pattern_match, + { "pattern-match", "acp133.pattern_match_element", + FT_NONE, BASE_NONE, NULL, 0, + "ORNamePattern", HFILL }}, + { &hf_acp133_member_of_group, + { "member-of-group", "acp133.member_of_group", + FT_UINT32, BASE_DEC, VALS(x509if_Name_vals), 0, + "Name", HFILL }}, + { &hf_acp133_report_propagation, + { "report-propagation", "acp133.report_propagation", + FT_INT32, BASE_DEC, VALS(acp133_T_report_propagation_vals), 0, + "T_report_propagation", HFILL }}, + { &hf_acp133_report_from_dl, + { "report-from-dl", "acp133.report_from_dl", + FT_INT32, BASE_DEC, VALS(acp133_T_report_from_dl_vals), 0, + "T_report_from_dl", HFILL }}, + { &hf_acp133_originating_MTA_report, + { "originating-MTA-report", "acp133.originating_MTA_report", + FT_INT32, BASE_DEC, VALS(acp133_T_originating_MTA_report_vals), 0, + NULL, HFILL }}, + { &hf_acp133_originator_report, + { "originator-report", "acp133.originator_report", + FT_INT32, BASE_DEC, VALS(acp133_T_originator_report_vals), 0, + NULL, HFILL }}, + { &hf_acp133_return_of_content, + { "return-of-content", "acp133.return_of_content", + FT_UINT32, BASE_DEC, VALS(acp133_T_return_of_content_vals), 0, + NULL, HFILL }}, + { &hf_acp133_priority, + { "priority", "acp133.priority", + FT_INT32, BASE_DEC, VALS(acp133_T_priority_vals), 0, + NULL, HFILL }}, + { &hf_acp133_disclosure_of_other_recipients, + { "disclosure-of-other-recipients", "acp133.disclosure_of_other_recipients", + FT_UINT32, BASE_DEC, VALS(acp133_T_disclosure_of_other_recipients_vals), 0, + NULL, HFILL }}, + { &hf_acp133_implicit_conversion_prohibited, + { "implicit-conversion-prohibited", "acp133.implicit_conversion_prohibited", + FT_UINT32, BASE_DEC, VALS(acp133_T_implicit_conversion_prohibited_vals), 0, + "T_implicit_conversion_prohibited", HFILL }}, + { &hf_acp133_conversion_with_loss_prohibited, + { "conversion-with-loss-prohibited", "acp133.conversion_with_loss_prohibited", + FT_UINT32, BASE_DEC, VALS(acp133_T_conversion_with_loss_prohibited_vals), 0, + NULL, HFILL }}, + { &hf_acp133_further_dl_expansion_allowed, + { "further-dl-expansion-allowed", "acp133.further_dl_expansion_allowed", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_acp133_originator_requested_alternate_recipient_removed, + { "originator-requested-alternate-recipient-removed", "acp133.originator_requested_alternate_recipient_removed", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_acp133_proof_of_delivery, + { "proof-of-delivery", "acp133.proof_of_delivery", + FT_INT32, BASE_DEC, VALS(acp133_T_proof_of_delivery_vals), 0, + NULL, HFILL }}, + { &hf_acp133_requested_delivery_method, + { "requested-delivery-method", "acp133.requested_delivery_method", + FT_UINT32, BASE_DEC, VALS(acp133_T_requested_delivery_method_vals), 0, + NULL, HFILL }}, + { &hf_acp133_unchanged, + { "unchanged", "acp133.unchanged_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_removed, + { "removed", "acp133.removed_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_replaced, + { "replaced", "acp133.replaced", + FT_UINT32, BASE_DEC, NULL, 0, + "RequestedDeliveryMethod", HFILL }}, + { &hf_acp133_token_encryption_algorithm_preference, + { "token-encryption-algorithm-preference", "acp133.token_encryption_algorithm_preference", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_OF_AlgorithmInformation", HFILL }}, + { &hf_acp133_token_encryption_algorithm_preference_item, + { "AlgorithmInformation", "acp133.AlgorithmInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_token_signature_algorithm_preference, + { "token-signature-algorithm-preference", "acp133.token_signature_algorithm_preference", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_OF_AlgorithmInformation", HFILL }}, + { &hf_acp133_token_signature_algorithm_preference_item, + { "AlgorithmInformation", "acp133.AlgorithmInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_originator_certificate_selector, + { "originator-certificate-selector", "acp133.originator_certificate_selector_element", + FT_NONE, BASE_NONE, NULL, 0, + "CertificateAssertion", HFILL }}, + { &hf_acp133_recipient_certificate_selector, + { "recipient-certificate-selector", "acp133.recipient_certificate_selector_element", + FT_NONE, BASE_NONE, NULL, 0, + "CertificateAssertion", HFILL }}, + { &hf_acp133_description, + { "description", "acp133.description", + FT_STRING, BASE_NONE, NULL, 0, + "GeneralString", HFILL }}, + { &hf_acp133_address, + { "address", "acp133.address_element", + FT_NONE, BASE_NONE, NULL, 0, + "ORAddress", HFILL }}, + { &hf_acp133_capabilities, + { "capabilities", "acp133.capabilities", + FT_UINT32, BASE_DEC, NULL, 0, + "SET_OF_Capability", HFILL }}, + { &hf_acp133_capabilities_item, + { "Capability", "acp133.Capability_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_content_types, + { "content-types", "acp133.content_types", + FT_UINT32, BASE_DEC, NULL, 0, + "SET_OF_ExtendedContentType", HFILL }}, + { &hf_acp133_content_types_item, + { "ExtendedContentType", "acp133.ExtendedContentType", + FT_OID, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_acp133_maximum_content_length, + { "maximum-content-length", "acp133.maximum_content_length", + FT_UINT32, BASE_DEC, NULL, 0, + "ContentLength", HFILL }}, + { &hf_acp133_encoded_information_types_constraints, + { "encoded-information-types-constraints", "acp133.encoded_information_types_constraints_element", + FT_NONE, BASE_NONE, NULL, 0, + "EncodedInformationTypesConstraints", HFILL }}, + { &hf_acp133_security_labels, + { "security-labels", "acp133.security_labels", + FT_UINT32, BASE_DEC, NULL, 0, + "SecurityContext", HFILL }}, + { &hf_acp133_OnSupported_acp127_nn, + { "acp127-nn", "acp133.OnSupported.acp127.nn", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_acp133_OnSupported_acp127_pn, + { "acp127-pn", "acp133.OnSupported.acp127.pn", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_acp133_OnSupported_acp127_tn, + { "acp127-tn", "acp133.OnSupported.acp127.tn", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + }; + + /* List of subtrees */ + static gint *ett[] = { + &ett_acp133, + &ett_acp133_OnSupported, + &ett_acp133_Addressees, + &ett_acp133_MonthlyUKMs, + &ett_acp133_SEQUENCE_OF_UKMEntry, + &ett_acp133_Remarks, + &ett_acp133_RIParameters, + &ett_acp133_RIParametersDeprecated, + &ett_acp133_UKMEntry, + &ett_acp133_PairwiseTag, + &ett_acp133_MLReceiptPolicy, + &ett_acp133_SEQUENCE_OF_GeneralNames, + &ett_acp133_DLSubmitPermission, + &ett_acp133_DLPolicy, + &ett_acp133_T_requested_delivery_method, + &ett_acp133_SEQUENCE_OF_AlgorithmInformation, + &ett_acp133_AlgorithmInformation, + &ett_acp133_AddressCapabilities, + &ett_acp133_SET_OF_Capability, + &ett_acp133_Capability, + &ett_acp133_SET_OF_ExtendedContentType, + }; + + /* Register protocol */ + proto_acp133 = proto_register_protocol(PNAME, PSNAME, PFNAME); + + /* Register fields and subtrees */ + proto_register_field_array(proto_acp133, hf, array_length(hf)); + proto_register_subtree_array(ett, array_length(ett)); + +} + + +/*--- proto_reg_handoff_acp133 --- */ +void proto_reg_handoff_acp133(void) { + + register_ber_oid_dissector("2.6.5.2.4", dissect_DLSubmitPermission_PDU, proto_acp133, "id-at-mhs-dl-submit-permissions"); + register_ber_oid_dissector("2.6.5.2.13", dissect_DLPolicy_PDU, proto_acp133, "id-at-mhs-dl-policy"); + register_ber_oid_dissector("2.6.5.2.16", dissect_AddressCapabilities_PDU, proto_acp133, "id-at-mhs-or-addresses-with-capabilities"); + register_ber_oid_dissector("2.6.5.2.19", dissect_Capability_PDU, proto_acp133, "id-at-mhs-deliverable-classes"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.14", dissect_Kmid_PDU, proto_acp133, "id-at-alid"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.20", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-janUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.21", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-febUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.22", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-marUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.23", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-aprUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.24", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-mayUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.25", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-junUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.26", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-julUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.27", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-augUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.28", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-sepUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.29", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-octUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.30", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-novUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.1.5.31", dissect_MonthlyUKMs_PDU, proto_acp133, "id-at-decUKMs"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.46", dissect_Addressees_PDU, proto_acp133, "id-at-actionAddressees"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.47", dissect_Addressees_PDU, proto_acp133, "id-at-additionalAddressees"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.48", dissect_Addressees_PDU, proto_acp133, "id-at-additionalSecondPartyAddressees"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.50", dissect_Addressees_PDU, proto_acp133, "id-at-allowableOriginators"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.52", dissect_Community_PDU, proto_acp133, "id-at-community"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.56", dissect_Classification_PDU, proto_acp133, "id-at-entryClassification"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.59", dissect_Addressees_PDU, proto_acp133, "id-at-infoAddressees"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.67", dissect_Classification_PDU, proto_acp133, "id-at-nameClassification"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.71", dissect_Addressees_PDU, proto_acp133, "id-at-plaAddressees"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.76", dissect_Remarks_PDU, proto_acp133, "id-at-remarks"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.78", dissect_Classification_PDU, proto_acp133, "id-at-rIClassification"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.79", dissect_RIParameters_PDU, proto_acp133, "id-at-rIInfo"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.80", dissect_Addressees_PDU, proto_acp133, "id-at-secondPartyAddressees"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.104", dissect_DistributionCode_PDU, proto_acp133, "id-at-distributionCodeAction"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.105", dissect_DistributionCode_PDU, proto_acp133, "id-at-distributionCodeInfo"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.108", dissect_ACPPreferredDelivery_PDU, proto_acp133, "id-at-aCPPreferredDelivery"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.112", dissect_ALType_PDU, proto_acp133, "id-at-aLType"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.123", dissect_OnSupported_PDU, proto_acp133, "id-at-onSupported"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.135", dissect_MLReceiptPolicy_PDU, proto_acp133, "id-at-aLReceiptPolicy"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.142", dissect_ACPLegacyFormat_PDU, proto_acp133, "id-at-aCPLegacyFormat"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.146", dissect_JPEG_PDU, proto_acp133, "id-at-aCPNetwAccessSchemaEdB"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.147", dissect_JPEG_PDU, proto_acp133, "id-at-aCPNetworkSchemaEdB"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.162", dissect_MaxMessageSize_PDU, proto_acp133, "id-at-maxMessageSize"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.163", dissect_MsgProtocolInfoCapability_PDU, proto_acp133, "id-at-msgProtocolInfoCapability"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.164", dissect_Active_PDU, proto_acp133, "id-at-active"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.165", dissect_EmConCapability_PDU, proto_acp133, "id-at-emConCapability"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.166", dissect_EmConState_PDU, proto_acp133, "id-at-emConState"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.167", dissect_WebAccessCapability_PDU, proto_acp133, "id-at-webAccessCapability"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.168", dissect_DistributionCode_PDU, proto_acp133, "id-at-distributionExemptAction"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.169", dissect_DistributionCode_PDU, proto_acp133, "id-at-distributionExemptInfo"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.170", dissect_DistributionCode_PDU, proto_acp133, "id-at-distributionKeywordAction"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.171", dissect_DistributionCode_PDU, proto_acp133, "id-at-distributionKeywordInfo"); + register_ber_oid_dissector("2.16.840.1.101.2.2.1.189", dissect_ACPNoAttachments_PDU, proto_acp133, "id-at-aCPNoAttachments"); + + + /* X.402 Object Classes */ + oid_add_from_string("id-oc-mhs-distribution-list","2.6.5.1.0"); + oid_add_from_string("id-oc-mhs-message-store","2.6.5.1.1"); + oid_add_from_string("id-oc-mhs-message-transfer-agent","2.6.5.1.2"); + oid_add_from_string("id-oc-mhs-user","2.6.5.1.3"); + + /* SDN.701 Object Classes */ + oid_add_from_string("id-oc-secure-user","2.16.840.1.101.2.1.4.13"); + oid_add_from_string("id-oc-ukms","2.16.840.1.101.2.1.4.16"); + + /* ACP133 Object Classes */ + oid_add_from_string("id-oc-plaData","2.16.840.1.101.2.2.3.26"); + oid_add_from_string("id-oc-cadACP127","2.16.840.1.101.2.2.3.28"); + oid_add_from_string("id-oc-mLA","2.16.840.1.101.2.2.3.31"); + oid_add_from_string("id-oc-orgACP127","2.16.840.1.101.2.2.3.34"); + oid_add_from_string("id-oc-plaCollectiveACP127","2.16.840.1.101.2.2.3.35"); + oid_add_from_string("id-oc-routingIndicator","2.16.840.1.101.2.2.3.37"); + oid_add_from_string("id-oc-sigintPLA","2.16.840.1.101.2.2.3.38"); + oid_add_from_string("id-oc-sIPLA","2.16.840.1.101.2.2.3.39"); + oid_add_from_string("id-oc-spotPLA","2.16.840.1.101.2.2.3.40"); + oid_add_from_string("id-oc-taskForceACP127","2.16.840.1.101.2.2.3.41"); + oid_add_from_string("id-oc-tenantACP127","2.16.840.1.101.2.2.3.42"); + oid_add_from_string("id-oc-plaACP127","2.16.840.1.101.2.2.3.47"); + oid_add_from_string("id-oc-aliasCommonName","2.16.840.1.101.2.2.3.52"); + oid_add_from_string("id-oc-aliasOrganizationalUnit","2.16.840.1.101.2.2.3.53"); + oid_add_from_string("id-oc-distributionCodesHandled","2.16.840.1.101.2.2.3.54"); + oid_add_from_string("id-oc-distributionCodeDescription","2.16.840.1.101.2.2.3.55"); + oid_add_from_string("id-oc-plaUser","2.16.840.1.101.2.2.3.56"); + oid_add_from_string("id-oc-addressList","2.16.840.1.101.2.2.3.57"); + oid_add_from_string("id-oc-altSpellingACP127","2.16.840.1.101.2.2.3.58"); + oid_add_from_string("id-oc-messagingGateway","2.16.840.1.101.2.2.3.59"); + oid_add_from_string("id-oc-network","2.16.840.1.101.2.2.3.60"); + oid_add_from_string("id-oc-networkInstructions","2.16.840.1.101.2.2.3.61"); + oid_add_from_string("id-oc-otherContactInformation","2.16.840.1.101.2.2.3.62"); + oid_add_from_string("id-oc-releaseAuthorityPerson","2.16.840.1.101.2.2.3.63"); + oid_add_from_string("id-oc-mLAgent","2.16.840.1.101.2.2.3.64"); + oid_add_from_string("id-oc-releaseAuthorityPersonA","2.16.840.1.101.2.2.3.65"); + oid_add_from_string("id-oc-securePkiUser","2.16.840.1.101.2.2.3.66"); + oid_add_from_string("id-oc-dSSCSPLA","2.16.840.1.101.2.2.3.67"); + oid_add_from_string("id-oc-aCPNetworkEdB","2.16.840.1.101.2.2.3.68"); + oid_add_from_string("id-oc-aCPNetworkInstructionsEdB","2.16.840.1.101.2.2.3.69"); + oid_add_from_string("id-oc-aCPAddressList","2.16.840.1.101.2.2.3.70"); + oid_add_from_string("id-oc-aCPAliasCommonName","2.16.840.1.101.2.2.3.71"); + oid_add_from_string("id-oc-aCPAliasOrganizationalUnit","2.16.840.1.101.2.2.3.72"); + oid_add_from_string("id-oc-aCPDevice","2.16.840.1.101.2.2.3.73"); + oid_add_from_string("id-oc-aCPDistributionCodeDescription","2.16.840.1.101.2.2.3.74"); + oid_add_from_string("id-oc-aCPGroupOfNames","2.16.840.1.101.2.2.3.75"); + oid_add_from_string("id-oc-aCPLocality","2.16.840.1.101.2.2.3.76"); + oid_add_from_string("id-oc-aCPOrganization","2.16.840.1.101.2.2.3.77"); + oid_add_from_string("id-oc-aCPOrganizationalPerson","2.16.840.1.101.2.2.3.78"); + oid_add_from_string("id-oc-aCPOrganizationalRole","2.16.840.1.101.2.2.3.79"); + oid_add_from_string("id-oc-aCPOrganizationalUnit","2.16.840.1.101.2.2.3.80"); + oid_add_from_string("id-oc-aCPDistributionCodesHandled","2.16.840.1.101.2.2.3.81"); + oid_add_from_string("id-oc-aCPMhsCapabilitiesInformation","2.16.840.1.101.2.2.3.82"); + oid_add_from_string("id-oc-aCPOtherContactInformation","2.16.840.1.101.2.2.3.83"); + oid_add_from_string("id-oc-aCPPlaUser","2.16.840.1.101.2.2.3.84"); + oid_add_from_string("id-oc-aCPCRLDistributionPoint","2.16.840.1.101.2.2.3.85"); + oid_add_from_string("id-oc-aCPSecurePKIUser","2.16.840.1.101.2.2.3.86"); + oid_add_from_string("id-oc-aCPAltSpellingACP127","2.16.840.1.101.2.2.3.87"); + oid_add_from_string("id-oc-aCPCadACP127","2.16.840.1.101.2.2.3.88"); + oid_add_from_string("id-oc-aCPDSSCSPLA","2.16.840.1.101.2.2.3.89"); + oid_add_from_string("id-oc-aCPOrgACP127","2.16.840.1.101.2.2.3.90"); + oid_add_from_string("id-oc-aCPPLACollectiveACP127","2.16.840.1.101.2.2.3.91"); + oid_add_from_string("id-oc-aCPRoutingIndicator","2.16.840.1.101.2.2.3.92"); + oid_add_from_string("id-oc-aCPSigIntPLA","2.16.840.1.101.2.2.3.93"); + oid_add_from_string("id-oc-aCPSIPLA","2.16.840.1.101.2.2.3.94"); + oid_add_from_string("id-oc-aCPSpotPLA","2.16.840.1.101.2.2.3.95"); + oid_add_from_string("id-oc-aCPTaskForceACP127","2.16.840.1.101.2.2.3.96"); + oid_add_from_string("id-oc-aCPTenantACP127","2.16.840.1.101.2.2.3.97"); + oid_add_from_string("id-oc-aCPPlaACP127","2.16.840.1.101.2.2.3.98"); + oid_add_from_string("id-oc-aCPPlaData","2.16.840.1.101.2.2.3.99"); + oid_add_from_string("id-oc-aCPEntryAdmin","2.16.840.1.101.2.2.3.102"); + oid_add_from_string("id-oc-aCPOrganizationalLocation","2.16.840.1.101.2.2.3.103"); + oid_add_from_string("id-oc-aCPEntryCharacteristics","2.16.840.1.101.2.2.3.104"); + oid_add_from_string("id-oc-aCPPrivilege","2.16.840.1.101.2.2.3.105"); + + /* gateway types */ + oid_add_from_string("acp120-acp127","2.16.840.1.101.2.2.5.0"); + oid_add_from_string("acp120-janap128","2.16.840.1.101.2.2.5.1"); + oid_add_from_string("acp120-mhs","2.16.840.1.101.2.2.5.2"); + oid_add_from_string("acp120-mmhs","2.16.840.1.101.2.2.5.3"); + oid_add_from_string("acp120-rfc822","2.16.840.1.101.2.2.5.4"); + oid_add_from_string("boundaryMTA","2.16.840.1.101.2.2.5.5"); + oid_add_from_string("mmhs-mhs","2.16.840.1.101.2.2.5.6"); + oid_add_from_string("mmhs-rfc822","2.16.840.1.101.2.2.5.7"); + oid_add_from_string("mta-acp127","2.16.840.1.101.2.2.5.8"); + +} |