2013-04-11 18:14:53 +00:00
|
|
|
/* Do not modify this file. Changes will be overwritten. */
|
|
|
|
/* Generated automatically by the ASN.1 to Wireshark dissector compiler */
|
2007-10-22 17:17:15 +00:00
|
|
|
/* packet-ess.c */
|
2011-10-15 19:27:27 +00:00
|
|
|
/* ../../tools/asn2wrs.py -b -k -C -p ess -c ./ess.cnf -s ./packet-ess-template -D . -O ../../epan/dissectors ExtendedSecurityServices.asn */
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/* Input file: packet-ess-template.c */
|
|
|
|
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-template.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
/* packet-ess.c
|
2014-01-22 01:22:01 +00:00
|
|
|
* Routines for RFC 2634 and RFC 5035 Extended Security Services packet
|
|
|
|
* dissection
|
2004-11-22 03:36:26 +00:00
|
|
|
* Ronnie Sahlberg 2004
|
2010-01-12 14:31:08 +00:00
|
|
|
* Stig Bjorlykke 2010
|
2004-11-22 03:36:26 +00:00
|
|
|
*
|
2006-05-21 04:49:01 +00:00
|
|
|
* Wireshark - Network traffic analyzer
|
|
|
|
* By Gerald Combs <gerald@wireshark.org>
|
2004-11-22 03:36:26 +00:00
|
|
|
* Copyright 1998 Gerald Combs
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
* as published by the Free Software Foundation; either version 2
|
|
|
|
* of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, write to the Free Software
|
2012-06-28 22:56:06 +00:00
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
2004-11-22 03:36:26 +00:00
|
|
|
*/
|
|
|
|
|
2012-09-20 02:03:38 +00:00
|
|
|
#include "config.h"
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
#include <epan/packet.h>
|
2007-05-13 20:58:29 +00:00
|
|
|
#include <epan/asn1.h>
|
2010-04-23 12:43:14 +00:00
|
|
|
#include <epan/prefs.h>
|
|
|
|
#include <epan/uat.h>
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
#include "packet-ber.h"
|
|
|
|
#include "packet-ess.h"
|
|
|
|
#include "packet-cms.h"
|
|
|
|
#include "packet-x509ce.h"
|
|
|
|
#include "packet-x509af.h"
|
|
|
|
|
|
|
|
#define PNAME "Extended Security Services"
|
|
|
|
#define PSNAME "ESS"
|
|
|
|
#define PFNAME "ess"
|
|
|
|
|
2013-12-08 22:11:18 +00:00
|
|
|
void proto_register_ess(void);
|
|
|
|
void proto_reg_handoff_ess(void);
|
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
typedef struct _ess_category_attributes_t {
|
|
|
|
char *oid;
|
|
|
|
guint lacv;
|
|
|
|
char *name;
|
|
|
|
} ess_category_attributes_t;
|
|
|
|
|
|
|
|
static ess_category_attributes_t *ess_category_attributes;
|
|
|
|
static guint num_ess_category_attributes;
|
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
/* Initialize the protocol and registered fields */
|
|
|
|
static int proto_ess = -1;
|
|
|
|
static int hf_ess_SecurityCategory_type_OID = -1;
|
2010-04-23 12:43:14 +00:00
|
|
|
static int hf_ess_Category_attribute = -1;
|
|
|
|
|
|
|
|
static gint ett_Category_attributes = -1;
|
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/*--- Included file: packet-ess-hf.c ---*/
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-hf.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_ReceiptRequest_PDU = -1; /* ReceiptRequest */
|
|
|
|
static int hf_ess_ContentIdentifier_PDU = -1; /* ContentIdentifier */
|
|
|
|
static int hf_ess_Receipt_PDU = -1; /* Receipt */
|
|
|
|
static int hf_ess_ContentHints_PDU = -1; /* ContentHints */
|
|
|
|
static int hf_ess_MsgSigDigest_PDU = -1; /* MsgSigDigest */
|
|
|
|
static int hf_ess_ContentReference_PDU = -1; /* ContentReference */
|
2011-10-14 07:44:20 +00:00
|
|
|
static int hf_ess_ess_ESSSecurityLabel_PDU = -1; /* ESSSecurityLabel */
|
2005-11-16 07:13:12 +00:00
|
|
|
static int hf_ess_RestrictiveTag_PDU = -1; /* RestrictiveTag */
|
|
|
|
static int hf_ess_EnumeratedTag_PDU = -1; /* EnumeratedTag */
|
|
|
|
static int hf_ess_PermissiveTag_PDU = -1; /* PermissiveTag */
|
|
|
|
static int hf_ess_InformativeTag_PDU = -1; /* InformativeTag */
|
2005-10-03 05:17:51 +00:00
|
|
|
static int hf_ess_EquivalentLabels_PDU = -1; /* EquivalentLabels */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_MLExpansionHistory_PDU = -1; /* MLExpansionHistory */
|
|
|
|
static int hf_ess_SigningCertificate_PDU = -1; /* SigningCertificate */
|
2010-01-12 14:31:08 +00:00
|
|
|
static int hf_ess_SigningCertificateV2_PDU = -1; /* SigningCertificateV2 */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_signedContentIdentifier = -1; /* ContentIdentifier */
|
|
|
|
static int hf_ess_receiptsFrom = -1; /* ReceiptsFrom */
|
2010-01-12 14:31:08 +00:00
|
|
|
static int hf_ess_receiptsTo = -1; /* SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_receiptsTo_item = -1; /* GeneralNames */
|
|
|
|
static int hf_ess_allOrFirstTier = -1; /* AllOrFirstTier */
|
2005-06-26 05:48:50 +00:00
|
|
|
static int hf_ess_receiptList = -1; /* SEQUENCE_OF_GeneralNames */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_receiptList_item = -1; /* GeneralNames */
|
|
|
|
static int hf_ess_version = -1; /* ESSVersion */
|
|
|
|
static int hf_ess_contentType = -1; /* ContentType */
|
|
|
|
static int hf_ess_originatorSignatureValue = -1; /* OCTET_STRING */
|
2010-01-12 14:31:08 +00:00
|
|
|
static int hf_ess_contentDescription = -1; /* UTF8String_SIZE_1_MAX */
|
2005-10-03 05:17:51 +00:00
|
|
|
static int hf_ess_security_policy_identifier = -1; /* SecurityPolicyIdentifier */
|
|
|
|
static int hf_ess_security_classification = -1; /* SecurityClassification */
|
|
|
|
static int hf_ess_privacy_mark = -1; /* ESSPrivacyMark */
|
|
|
|
static int hf_ess_security_categories = -1; /* SecurityCategories */
|
2010-01-12 14:31:08 +00:00
|
|
|
static int hf_ess_pString = -1; /* PrintableString_SIZE_1_ub_privacy_mark_length */
|
|
|
|
static int hf_ess_utf8String = -1; /* UTF8String_SIZE_1_MAX */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_SecurityCategories_item = -1; /* SecurityCategory */
|
|
|
|
static int hf_ess_type = -1; /* T_type */
|
|
|
|
static int hf_ess_value = -1; /* T_value */
|
2010-04-23 12:43:14 +00:00
|
|
|
static int hf_ess_restrictiveTagName = -1; /* T_restrictiveTagName */
|
|
|
|
static int hf_ess_restrictiveAttributeFlags = -1; /* T_restrictiveAttributeFlags */
|
|
|
|
static int hf_ess_tagName = -1; /* T_tagName */
|
2005-11-16 07:13:12 +00:00
|
|
|
static int hf_ess_attributeList = -1; /* SET_OF_SecurityAttribute */
|
|
|
|
static int hf_ess_attributeList_item = -1; /* SecurityAttribute */
|
2010-04-23 12:43:14 +00:00
|
|
|
static int hf_ess_permissiveTagName = -1; /* T_permissiveTagName */
|
|
|
|
static int hf_ess_permissiveAttributeFlags = -1; /* T_permissiveAttributeFlags */
|
|
|
|
static int hf_ess_informativeTagName = -1; /* T_informativeTagName */
|
2005-11-16 07:13:12 +00:00
|
|
|
static int hf_ess_attributes = -1; /* FreeFormField */
|
2010-04-23 12:43:14 +00:00
|
|
|
static int hf_ess_informativeAttributeFlags = -1; /* T_informativeAttributeFlags */
|
2005-11-16 07:13:12 +00:00
|
|
|
static int hf_ess_securityAttributes = -1; /* SET_OF_SecurityAttribute */
|
|
|
|
static int hf_ess_securityAttributes_item = -1; /* SecurityAttribute */
|
2005-10-03 05:17:51 +00:00
|
|
|
static int hf_ess_EquivalentLabels_item = -1; /* ESSSecurityLabel */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_MLExpansionHistory_item = -1; /* MLData */
|
|
|
|
static int hf_ess_mailListIdentifier = -1; /* EntityIdentifier */
|
|
|
|
static int hf_ess_expansionTime = -1; /* GeneralizedTime */
|
|
|
|
static int hf_ess_mlReceiptPolicy = -1; /* MLReceiptPolicy */
|
|
|
|
static int hf_ess_issuerAndSerialNumber = -1; /* IssuerAndSerialNumber */
|
|
|
|
static int hf_ess_subjectKeyIdentifier = -1; /* SubjectKeyIdentifier */
|
|
|
|
static int hf_ess_none = -1; /* NULL */
|
2010-01-12 14:31:08 +00:00
|
|
|
static int hf_ess_insteadOf = -1; /* SEQUENCE_SIZE_1_MAX_OF_GeneralNames */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_insteadOf_item = -1; /* GeneralNames */
|
2010-01-12 14:31:08 +00:00
|
|
|
static int hf_ess_inAdditionTo = -1; /* SEQUENCE_SIZE_1_MAX_OF_GeneralNames */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_inAdditionTo_item = -1; /* GeneralNames */
|
2005-06-26 05:48:50 +00:00
|
|
|
static int hf_ess_certs = -1; /* SEQUENCE_OF_ESSCertID */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_certs_item = -1; /* ESSCertID */
|
2005-06-26 05:48:50 +00:00
|
|
|
static int hf_ess_policies = -1; /* SEQUENCE_OF_PolicyInformation */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_policies_item = -1; /* PolicyInformation */
|
2010-01-12 14:31:08 +00:00
|
|
|
static int hf_ess_certsV2 = -1; /* SEQUENCE_OF_ESSCertIDv2 */
|
|
|
|
static int hf_ess_certsV2_item = -1; /* ESSCertIDv2 */
|
|
|
|
static int hf_ess_hashAlgorithm = -1; /* AlgorithmIdentifier */
|
2004-11-22 03:36:26 +00:00
|
|
|
static int hf_ess_certHash = -1; /* Hash */
|
|
|
|
static int hf_ess_issuerSerial = -1; /* IssuerSerial */
|
|
|
|
static int hf_ess_issuer = -1; /* GeneralNames */
|
|
|
|
static int hf_ess_serialNumber = -1; /* CertificateSerialNumber */
|
|
|
|
|
|
|
|
/*--- End of included file: packet-ess-hf.c ---*/
|
2014-12-23 05:32:58 +00:00
|
|
|
#line 63 "../../asn1/ess/packet-ess-template.c"
|
2010-01-12 14:31:08 +00:00
|
|
|
|
|
|
|
|
|
|
|
/*--- Included file: packet-ess-val.h ---*/
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-val.h"
|
2010-01-12 14:31:08 +00:00
|
|
|
#define ub_receiptsTo 16
|
|
|
|
#define id_aa_receiptRequest "1.2.840.113549.1.9.16.2.1"
|
|
|
|
#define id_aa_contentIdentifier "1.2.840.113549.1.9.16.2.7"
|
|
|
|
#define id_ct_receipt "1.2.840.113549.1.9.16.1.1"
|
|
|
|
#define id_aa_contentHint "1.2.840.113549.1.9.16.2.4"
|
|
|
|
#define id_aa_msgSigDigest "1.2.840.113549.1.9.16.2.5"
|
|
|
|
#define id_aa_contentReference "1.2.840.113549.1.9.16.2.10"
|
|
|
|
#define id_aa_securityLabel "1.2.840.113549.1.9.16.2.2"
|
|
|
|
#define ub_integer_options 256
|
|
|
|
#define ub_privacy_mark_length 128
|
|
|
|
#define ub_security_categories 64
|
|
|
|
#define id_aa_equivalentLabels "1.2.840.113549.1.9.16.2.9"
|
|
|
|
#define id_aa_mlExpandHistory "1.2.840.113549.1.9.16.2.3"
|
|
|
|
#define ub_ml_expansion_history 64
|
|
|
|
#define id_aa_signingCertificate "1.2.840.113549.1.9.16.2.12"
|
|
|
|
#define id_aa_signingCertificateV2 "1.2.840.113549.1.9.16.2.47"
|
|
|
|
#define id_sha256 "2.16.840.1.101.3.4.2.1"
|
|
|
|
|
|
|
|
/*--- End of included file: packet-ess-val.h ---*/
|
2014-12-23 05:32:58 +00:00
|
|
|
#line 65 "../../asn1/ess/packet-ess-template.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/* Initialize the subtree pointers */
|
|
|
|
|
|
|
|
/*--- Included file: packet-ess-ett.c ---*/
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-ett.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
static gint ett_ess_ReceiptRequest = -1;
|
2010-01-12 14:31:08 +00:00
|
|
|
static gint ett_ess_SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames = -1;
|
2004-11-22 03:36:26 +00:00
|
|
|
static gint ett_ess_ReceiptsFrom = -1;
|
2010-01-12 14:31:08 +00:00
|
|
|
static gint ett_ess_SEQUENCE_OF_GeneralNames = -1;
|
2004-11-22 03:36:26 +00:00
|
|
|
static gint ett_ess_Receipt = -1;
|
|
|
|
static gint ett_ess_ContentHints = -1;
|
|
|
|
static gint ett_ess_ContentReference = -1;
|
2005-10-03 05:17:51 +00:00
|
|
|
static gint ett_ess_ESSSecurityLabel = -1;
|
2004-11-22 03:36:26 +00:00
|
|
|
static gint ett_ess_ESSPrivacyMark = -1;
|
|
|
|
static gint ett_ess_SecurityCategories = -1;
|
|
|
|
static gint ett_ess_SecurityCategory = -1;
|
2005-11-16 07:13:12 +00:00
|
|
|
static gint ett_ess_RestrictiveTag = -1;
|
|
|
|
static gint ett_ess_EnumeratedTag = -1;
|
|
|
|
static gint ett_ess_SET_OF_SecurityAttribute = -1;
|
|
|
|
static gint ett_ess_PermissiveTag = -1;
|
|
|
|
static gint ett_ess_InformativeTag = -1;
|
|
|
|
static gint ett_ess_FreeFormField = -1;
|
2005-10-03 05:17:51 +00:00
|
|
|
static gint ett_ess_EquivalentLabels = -1;
|
2004-11-22 03:36:26 +00:00
|
|
|
static gint ett_ess_MLExpansionHistory = -1;
|
|
|
|
static gint ett_ess_MLData = -1;
|
|
|
|
static gint ett_ess_EntityIdentifier = -1;
|
|
|
|
static gint ett_ess_MLReceiptPolicy = -1;
|
2010-01-12 14:31:08 +00:00
|
|
|
static gint ett_ess_SEQUENCE_SIZE_1_MAX_OF_GeneralNames = -1;
|
2004-11-22 03:36:26 +00:00
|
|
|
static gint ett_ess_SigningCertificate = -1;
|
2005-06-26 05:48:50 +00:00
|
|
|
static gint ett_ess_SEQUENCE_OF_ESSCertID = -1;
|
|
|
|
static gint ett_ess_SEQUENCE_OF_PolicyInformation = -1;
|
2010-01-12 14:31:08 +00:00
|
|
|
static gint ett_ess_SigningCertificateV2 = -1;
|
|
|
|
static gint ett_ess_SEQUENCE_OF_ESSCertIDv2 = -1;
|
|
|
|
static gint ett_ess_ESSCertIDv2 = -1;
|
2004-11-22 03:36:26 +00:00
|
|
|
static gint ett_ess_ESSCertID = -1;
|
|
|
|
static gint ett_ess_IssuerSerial = -1;
|
|
|
|
|
|
|
|
/*--- End of included file: packet-ess-ett.c ---*/
|
2014-12-23 05:32:58 +00:00
|
|
|
#line 68 "../../asn1/ess/packet-ess-template.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
|
2005-11-14 10:02:31 +00:00
|
|
|
static const char *object_identifier_id;
|
2004-11-22 03:36:26 +00:00
|
|
|
|
2013-07-15 20:42:57 +00:00
|
|
|
UAT_CSTRING_CB_DEF(ess_category_attributes, oid, ess_category_attributes_t)
|
|
|
|
UAT_DEC_CB_DEF(ess_category_attributes, lacv, ess_category_attributes_t)
|
|
|
|
UAT_CSTRING_CB_DEF(ess_category_attributes, name, ess_category_attributes_t)
|
2010-04-23 12:43:14 +00:00
|
|
|
|
|
|
|
static void *
|
2010-10-29 21:11:33 +00:00
|
|
|
ess_copy_cb(void *dest, const void *orig, size_t len _U_)
|
2010-04-23 12:43:14 +00:00
|
|
|
{
|
2013-03-14 06:26:55 +00:00
|
|
|
ess_category_attributes_t *u = (ess_category_attributes_t *)dest;
|
2014-01-14 08:32:50 +00:00
|
|
|
const ess_category_attributes_t *o = (const ess_category_attributes_t *)orig;
|
2010-04-23 12:43:14 +00:00
|
|
|
|
|
|
|
u->oid = g_strdup(o->oid);
|
|
|
|
u->lacv = o->lacv;
|
|
|
|
u->name = g_strdup(o->name);
|
|
|
|
|
|
|
|
return dest;
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
ess_free_cb(void *r)
|
|
|
|
{
|
2013-03-14 06:26:55 +00:00
|
|
|
ess_category_attributes_t *u = (ess_category_attributes_t *)r;
|
2010-04-23 12:43:14 +00:00
|
|
|
|
|
|
|
g_free(u->oid);
|
|
|
|
g_free(u->name);
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
ess_dissect_attribute (guint32 value, asn1_ctx_t *actx)
|
|
|
|
{
|
|
|
|
guint i;
|
2013-07-15 20:42:57 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
for (i = 0; i < num_ess_category_attributes; i++) {
|
|
|
|
ess_category_attributes_t *u = &(ess_category_attributes[i]);
|
|
|
|
|
|
|
|
if ((strcmp (u->oid, object_identifier_id) == 0) &&
|
|
|
|
(u->lacv == value))
|
|
|
|
{
|
|
|
|
proto_item_append_text (actx->created_item, " (%s)", u->name);
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
ess_dissect_attribute_flags (tvbuff_t *tvb, asn1_ctx_t *actx)
|
|
|
|
{
|
|
|
|
proto_tree *tree;
|
|
|
|
guint8 *value;
|
|
|
|
guint i;
|
2013-07-15 20:42:57 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
tree = proto_item_add_subtree (actx->created_item, ett_Category_attributes);
|
2014-06-19 19:55:27 +00:00
|
|
|
value = (guint8 *)tvb_memdup (wmem_packet_scope(), tvb, 0, tvb_captured_length (tvb));
|
2013-07-15 20:42:57 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
for (i = 0; i < num_ess_category_attributes; i++) {
|
|
|
|
ess_category_attributes_t *u = &(ess_category_attributes[i]);
|
|
|
|
|
|
|
|
if ((strcmp (u->oid, object_identifier_id) == 0) &&
|
2014-06-19 19:55:27 +00:00
|
|
|
((u->lacv / 8) < tvb_captured_length (tvb)) &&
|
2010-09-23 07:42:20 +00:00
|
|
|
(value[u->lacv / 8] & (1 << (7 - (u->lacv % 8)))))
|
2010-04-23 12:43:14 +00:00
|
|
|
{
|
|
|
|
proto_tree_add_string_format (tree, hf_ess_Category_attribute, tvb,
|
|
|
|
u->lacv / 8, 1, u->name,
|
|
|
|
"%s (%d)", u->name, u->lacv);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/*--- Included file: packet-ess-fn.c ---*/
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-fn.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ContentIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
|
2005-07-21 21:12:09 +00:00
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
static const value_string ess_AllOrFirstTier_vals[] = {
|
2004-11-22 03:36:26 +00:00
|
|
|
{ 0, "allReceipts" },
|
|
|
|
{ 1, "firstTierRecipients" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_AllOrFirstTier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
|
2008-11-01 22:30:14 +00:00
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t SEQUENCE_OF_GeneralNames_sequence_of[1] = {
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_receiptList_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralNames },
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SEQUENCE_OF_GeneralNames(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
SEQUENCE_OF_GeneralNames_sequence_of, hf_index, ett_ess_SEQUENCE_OF_GeneralNames);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
static const value_string ess_ReceiptsFrom_vals[] = {
|
2004-11-22 03:36:26 +00:00
|
|
|
{ 0, "allOrFirstTier" },
|
|
|
|
{ 1, "receiptList" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_choice_t ReceiptsFrom_choice[] = {
|
|
|
|
{ 0, &hf_ess_allOrFirstTier , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ess_AllOrFirstTier },
|
|
|
|
{ 1, &hf_ess_receiptList , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ess_SEQUENCE_OF_GeneralNames },
|
|
|
|
{ 0, NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ReceiptsFrom(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_choice(actx, tree, tvb, offset,
|
|
|
|
ReceiptsFrom_choice, hf_index, ett_ess_ReceiptsFrom,
|
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2010-01-12 14:31:08 +00:00
|
|
|
static const ber_sequence_t SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames_sequence_of[1] = {
|
|
|
|
{ &hf_ess_receiptsTo_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralNames },
|
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames(gboolean 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_constrained_sequence_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
1, ub_receiptsTo, SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames_sequence_of, hf_index, ett_ess_SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t ReceiptRequest_sequence[] = {
|
|
|
|
{ &hf_ess_signedContentIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_ContentIdentifier },
|
|
|
|
{ &hf_ess_receiptsFrom , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ess_ReceiptsFrom },
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_receiptsTo , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ess_SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ReceiptRequest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
ReceiptRequest_sequence, hf_index, ett_ess_ReceiptRequest);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
static const value_string ess_ESSVersion_vals[] = {
|
2004-11-22 03:36:26 +00:00
|
|
|
{ 1, "v1" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ESSVersion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
|
2008-11-01 22:30:14 +00:00
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
|
2005-07-21 21:12:09 +00:00
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t Receipt_sequence[] = {
|
|
|
|
{ &hf_ess_version , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_ess_ESSVersion },
|
|
|
|
{ &hf_ess_contentType , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cms_ContentType },
|
|
|
|
{ &hf_ess_signedContentIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_ContentIdentifier },
|
|
|
|
{ &hf_ess_originatorSignatureValue, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_OCTET_STRING },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_Receipt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2014-02-18 03:02:21 +00:00
|
|
|
#line 100 "../../asn1/ess/ess.cnf"
|
2011-05-12 11:06:42 +00:00
|
|
|
col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "ESS");
|
|
|
|
col_set_str(actx->pinfo->cinfo, COL_INFO, "Signed Receipt");
|
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
2007-10-22 17:17:15 +00:00
|
|
|
Receipt_sequence, hf_index, ett_ess_Receipt);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
2011-05-12 11:06:42 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2010-01-12 14:31:08 +00:00
|
|
|
dissect_ess_UTF8String_SIZE_1_MAX(gboolean 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_constrained_restricted_string(implicit_tag, BER_UNI_TAG_UTF8String,
|
|
|
|
actx, tree, tvb, offset,
|
|
|
|
1, NO_BOUND, hf_index, NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t ContentHints_sequence[] = {
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_contentDescription, BER_CLASS_UNI, BER_UNI_TAG_UTF8String, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ess_UTF8String_SIZE_1_MAX },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ &hf_ess_contentType , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cms_ContentType },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ContentHints(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
ContentHints_sequence, hf_index, ett_ess_ContentHints);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_MsgSigDigest(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
|
2005-07-21 21:12:09 +00:00
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t ContentReference_sequence[] = {
|
|
|
|
{ &hf_ess_contentType , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_cms_ContentType },
|
|
|
|
{ &hf_ess_signedContentIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_ContentIdentifier },
|
|
|
|
{ &hf_ess_originatorSignatureValue, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_OCTET_STRING },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ContentReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
ContentReference_sequence, hf_index, ett_ess_ContentReference);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SecurityPolicyIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
static const value_string ess_SecurityClassification_vals[] = {
|
2004-11-22 03:36:26 +00:00
|
|
|
{ 0, "unmarked" },
|
|
|
|
{ 1, "unclassified" },
|
|
|
|
{ 2, "restricted" },
|
|
|
|
{ 3, "confidential" },
|
|
|
|
{ 4, "secret" },
|
|
|
|
{ 5, "top-secret" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SecurityClassification(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2010-01-12 14:31:08 +00:00
|
|
|
offset = dissect_ber_constrained_integer(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
0U, ub_integer_options, hf_index, NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2010-01-12 14:31:08 +00:00
|
|
|
dissect_ess_PrintableString_SIZE_1_ub_privacy_mark_length(gboolean 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_constrained_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
|
|
|
|
actx, tree, tvb, offset,
|
|
|
|
1, ub_privacy_mark_length, hf_index, NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
static const value_string ess_ESSPrivacyMark_vals[] = {
|
2004-11-22 03:36:26 +00:00
|
|
|
{ 0, "pString" },
|
|
|
|
{ 1, "utf8String" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_choice_t ESSPrivacyMark_choice[] = {
|
2010-01-12 14:31:08 +00:00
|
|
|
{ 0, &hf_ess_pString , BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_ess_PrintableString_SIZE_1_ub_privacy_mark_length },
|
|
|
|
{ 1, &hf_ess_utf8String , BER_CLASS_UNI, BER_UNI_TAG_UTF8String, BER_FLAGS_NOOWNTAG, dissect_ess_UTF8String_SIZE_1_MAX },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ 0, NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ESSPrivacyMark(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_choice(actx, tree, tvb, offset,
|
|
|
|
ESSPrivacyMark_choice, hf_index, ett_ess_ESSPrivacyMark,
|
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_T_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_ess_SecurityCategory_type_OID, &object_identifier_id);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_T_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2014-02-18 03:02:21 +00:00
|
|
|
#line 49 "../../asn1/ess/ess.cnf"
|
2013-10-31 00:57:03 +00:00
|
|
|
offset=call_ber_oid_callback(object_identifier_id, tvb, offset, actx->pinfo, tree, NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
|
2005-12-08 23:29:21 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t SecurityCategory_sequence[] = {
|
|
|
|
{ &hf_ess_type , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ess_T_type },
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_value , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ess_T_value },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SecurityCategory(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
SecurityCategory_sequence, hf_index, ett_ess_SecurityCategory);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t SecurityCategories_set_of[1] = {
|
|
|
|
{ &hf_ess_SecurityCategories_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ess_SecurityCategory },
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SecurityCategories(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2010-01-12 14:31:08 +00:00
|
|
|
offset = dissect_ber_constrained_set_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
1, ub_security_categories, SecurityCategories_set_of, hf_index, ett_ess_SecurityCategories);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
2005-10-03 05:17:51 +00:00
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t ESSSecurityLabel_set[] = {
|
|
|
|
{ &hf_ess_security_policy_identifier, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ess_SecurityPolicyIdentifier },
|
|
|
|
{ &hf_ess_security_classification, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ess_SecurityClassification },
|
|
|
|
{ &hf_ess_privacy_mark , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ess_ESSPrivacyMark },
|
|
|
|
{ &hf_ess_security_categories, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ess_SecurityCategories },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2005-10-03 05:17:51 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ESSSecurityLabel(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_set(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
ESSSecurityLabel_set, hf_index, ett_ess_ESSSecurityLabel);
|
2005-10-03 05:17:51 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
static int
|
2010-04-23 12:43:14 +00:00
|
|
|
dissect_ess_T_restrictiveTagName(gboolean 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_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static int
|
2010-04-23 12:43:14 +00:00
|
|
|
dissect_ess_T_restrictiveAttributeFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2014-02-18 03:02:21 +00:00
|
|
|
#line 76 "../../asn1/ess/ess.cnf"
|
2010-04-23 12:43:14 +00:00
|
|
|
tvbuff_t *attributes;
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
|
2005-11-16 07:13:12 +00:00
|
|
|
NULL, hf_index, -1,
|
2010-04-23 12:43:14 +00:00
|
|
|
&attributes);
|
|
|
|
|
|
|
|
ess_dissect_attribute_flags (attributes, actx);
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t RestrictiveTag_sequence[] = {
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_restrictiveTagName, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ess_T_restrictiveTagName },
|
|
|
|
{ &hf_ess_restrictiveAttributeFlags, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_T_restrictiveAttributeFlags },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2005-11-16 07:13:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_RestrictiveTag(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
RestrictiveTag_sequence, hf_index, ett_ess_RestrictiveTag);
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
static int
|
|
|
|
dissect_ess_T_tagName(gboolean 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_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
2005-11-16 07:13:12 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SecurityAttribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2014-02-18 03:02:21 +00:00
|
|
|
#line 67 "../../asn1/ess/ess.cnf"
|
2010-04-23 12:43:14 +00:00
|
|
|
guint32 attribute;
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
|
|
|
|
&attribute);
|
|
|
|
|
|
|
|
ess_dissect_attribute (attribute, actx);
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t SET_OF_SecurityAttribute_set_of[1] = {
|
|
|
|
{ &hf_ess_attributeList_item, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_ess_SecurityAttribute },
|
2005-11-16 07:13:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SET_OF_SecurityAttribute(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
SET_OF_SecurityAttribute_set_of, hf_index, ett_ess_SET_OF_SecurityAttribute);
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t EnumeratedTag_sequence[] = {
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_tagName , BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ess_T_tagName },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ &hf_ess_attributeList , BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_ess_SET_OF_SecurityAttribute },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2005-11-16 07:13:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_EnumeratedTag(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
EnumeratedTag_sequence, hf_index, ett_ess_EnumeratedTag);
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_T_permissiveTagName(gboolean 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_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_T_permissiveAttributeFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2014-02-18 03:02:21 +00:00
|
|
|
#line 85 "../../asn1/ess/ess.cnf"
|
2010-04-23 12:43:14 +00:00
|
|
|
tvbuff_t *attributes;
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
NULL, hf_index, -1,
|
|
|
|
&attributes);
|
|
|
|
|
|
|
|
ess_dissect_attribute_flags (attributes, actx);
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t PermissiveTag_sequence[] = {
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_permissiveTagName, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ess_T_permissiveTagName },
|
|
|
|
{ &hf_ess_permissiveAttributeFlags, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_T_permissiveAttributeFlags },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2005-11-16 07:13:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_PermissiveTag(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
PermissiveTag_sequence, hf_index, ett_ess_PermissiveTag);
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_T_informativeTagName(gboolean 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_object_identifier_str(implicit_tag, actx, tree, tvb, offset, hf_index, &object_identifier_id);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_T_informativeAttributeFlags(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2014-02-18 03:02:21 +00:00
|
|
|
#line 94 "../../asn1/ess/ess.cnf"
|
2010-04-23 12:43:14 +00:00
|
|
|
tvbuff_t *attributes;
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
NULL, hf_index, -1,
|
|
|
|
&attributes);
|
|
|
|
|
|
|
|
ess_dissect_attribute_flags (attributes, actx);
|
2014-02-26 19:29:17 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-11-16 07:13:12 +00:00
|
|
|
static const value_string ess_FreeFormField_vals[] = {
|
|
|
|
{ 0, "bitSetAttributes" },
|
|
|
|
{ 1, "securityAttributes" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_choice_t FreeFormField_choice[] = {
|
2010-04-23 12:43:14 +00:00
|
|
|
{ 0, &hf_ess_informativeAttributeFlags, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_T_informativeAttributeFlags },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ 1, &hf_ess_securityAttributes, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_ess_SET_OF_SecurityAttribute },
|
|
|
|
{ 0, NULL, 0, 0, 0, NULL }
|
2005-11-16 07:13:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_FreeFormField(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_choice(actx, tree, tvb, offset,
|
|
|
|
FreeFormField_choice, hf_index, ett_ess_FreeFormField,
|
|
|
|
NULL);
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t InformativeTag_sequence[] = {
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_informativeTagName, BER_CLASS_UNI, BER_UNI_TAG_OID, BER_FLAGS_NOOWNTAG, dissect_ess_T_informativeTagName },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ &hf_ess_attributes , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ess_FreeFormField },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2005-11-16 07:13:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_InformativeTag(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
InformativeTag_sequence, hf_index, ett_ess_InformativeTag);
|
2005-11-16 07:13:12 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t EquivalentLabels_sequence_of[1] = {
|
|
|
|
{ &hf_ess_EquivalentLabels_item, BER_CLASS_UNI, BER_UNI_TAG_SET, BER_FLAGS_NOOWNTAG, dissect_ess_ESSSecurityLabel },
|
2005-10-03 05:17:51 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_EquivalentLabels(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
EquivalentLabels_sequence_of, hf_index, ett_ess_EquivalentLabels);
|
2005-10-03 05:17:51 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
static const value_string ess_EntityIdentifier_vals[] = {
|
2004-11-22 03:36:26 +00:00
|
|
|
{ 0, "issuerAndSerialNumber" },
|
|
|
|
{ 1, "subjectKeyIdentifier" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_choice_t EntityIdentifier_choice[] = {
|
|
|
|
{ 0, &hf_ess_issuerAndSerialNumber, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_cms_IssuerAndSerialNumber },
|
|
|
|
{ 1, &hf_ess_subjectKeyIdentifier, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_x509ce_SubjectKeyIdentifier },
|
|
|
|
{ 0, NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_EntityIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_choice(actx, tree, tvb, offset,
|
|
|
|
EntityIdentifier_choice, hf_index, ett_ess_EntityIdentifier,
|
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2010-01-12 14:31:08 +00:00
|
|
|
static const ber_sequence_t SEQUENCE_SIZE_1_MAX_OF_GeneralNames_sequence_of[1] = {
|
|
|
|
{ &hf_ess_insteadOf_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralNames },
|
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_SEQUENCE_SIZE_1_MAX_OF_GeneralNames(gboolean 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_constrained_sequence_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
1, NO_BOUND, SEQUENCE_SIZE_1_MAX_OF_GeneralNames_sequence_of, hf_index, ett_ess_SEQUENCE_SIZE_1_MAX_OF_GeneralNames);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-06-26 05:48:50 +00:00
|
|
|
static const value_string ess_MLReceiptPolicy_vals[] = {
|
2004-11-22 03:36:26 +00:00
|
|
|
{ 0, "none" },
|
|
|
|
{ 1, "insteadOf" },
|
|
|
|
{ 2, "inAdditionTo" },
|
|
|
|
{ 0, NULL }
|
|
|
|
};
|
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_choice_t MLReceiptPolicy_choice[] = {
|
|
|
|
{ 0, &hf_ess_none , BER_CLASS_CON, 0, BER_FLAGS_IMPLTAG, dissect_ess_NULL },
|
2010-01-12 14:31:08 +00:00
|
|
|
{ 1, &hf_ess_insteadOf , BER_CLASS_CON, 1, BER_FLAGS_IMPLTAG, dissect_ess_SEQUENCE_SIZE_1_MAX_OF_GeneralNames },
|
|
|
|
{ 2, &hf_ess_inAdditionTo , BER_CLASS_CON, 2, BER_FLAGS_IMPLTAG, dissect_ess_SEQUENCE_SIZE_1_MAX_OF_GeneralNames },
|
2007-10-22 17:17:15 +00:00
|
|
|
{ 0, NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_MLReceiptPolicy(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_choice(actx, tree, tvb, offset,
|
|
|
|
MLReceiptPolicy_choice, hf_index, ett_ess_MLReceiptPolicy,
|
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t MLData_sequence[] = {
|
|
|
|
{ &hf_ess_mailListIdentifier, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ess_EntityIdentifier },
|
|
|
|
{ &hf_ess_expansionTime , BER_CLASS_UNI, BER_UNI_TAG_GeneralizedTime, BER_FLAGS_NOOWNTAG, dissect_ess_GeneralizedTime },
|
|
|
|
{ &hf_ess_mlReceiptPolicy , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_ess_MLReceiptPolicy },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_MLData(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
MLData_sequence, hf_index, ett_ess_MLData);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t MLExpansionHistory_sequence_of[1] = {
|
|
|
|
{ &hf_ess_MLExpansionHistory_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ess_MLData },
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_MLExpansionHistory(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2010-01-12 14:31:08 +00:00
|
|
|
offset = dissect_ber_constrained_sequence_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
1, ub_ml_expansion_history, MLExpansionHistory_sequence_of, hf_index, ett_ess_MLExpansionHistory);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_Hash(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-05-15 05:49:43 +00:00
|
|
|
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
|
2005-07-21 21:12:09 +00:00
|
|
|
NULL);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t IssuerSerial_sequence[] = {
|
|
|
|
{ &hf_ess_issuer , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_GeneralNames },
|
|
|
|
{ &hf_ess_serialNumber , BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_x509af_CertificateSerialNumber },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_IssuerSerial(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
IssuerSerial_sequence, hf_index, ett_ess_IssuerSerial);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t ESSCertID_sequence[] = {
|
|
|
|
{ &hf_ess_certHash , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_Hash },
|
|
|
|
{ &hf_ess_issuerSerial , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ess_IssuerSerial },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_ESSCertID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
ESSCertID_sequence, hf_index, ett_ess_ESSCertID);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t SEQUENCE_OF_ESSCertID_sequence_of[1] = {
|
|
|
|
{ &hf_ess_certs_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ess_ESSCertID },
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SEQUENCE_OF_ESSCertID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
SEQUENCE_OF_ESSCertID_sequence_of, hf_index, ett_ess_SEQUENCE_OF_ESSCertID);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-07-21 21:12:09 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t SEQUENCE_OF_PolicyInformation_sequence_of[1] = {
|
|
|
|
{ &hf_ess_policies_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_x509ce_PolicyInformation },
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SEQUENCE_OF_PolicyInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
SEQUENCE_OF_PolicyInformation_sequence_of, hf_index, ett_ess_SEQUENCE_OF_PolicyInformation);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2005-09-02 05:43:49 +00:00
|
|
|
|
2007-10-22 17:17:15 +00:00
|
|
|
static const ber_sequence_t SigningCertificate_sequence[] = {
|
|
|
|
{ &hf_ess_certs , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ess_SEQUENCE_OF_ESSCertID },
|
|
|
|
{ &hf_ess_policies , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ess_SEQUENCE_OF_PolicyInformation },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
2007-05-13 20:58:29 +00:00
|
|
|
dissect_ess_SigningCertificate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
2007-10-22 17:17:15 +00:00
|
|
|
offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
|
|
|
|
SigningCertificate_sequence, hf_index, ett_ess_SigningCertificate);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2010-01-12 14:31:08 +00:00
|
|
|
|
|
|
|
static const ber_sequence_t ESSCertIDv2_sequence[] = {
|
|
|
|
{ &hf_ess_hashAlgorithm , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_x509af_AlgorithmIdentifier },
|
|
|
|
{ &hf_ess_certHash , BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_ess_Hash },
|
|
|
|
{ &hf_ess_issuerSerial , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ess_IssuerSerial },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_ESSCertIDv2(gboolean 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,
|
|
|
|
ESSCertIDv2_sequence, hf_index, ett_ess_ESSCertIDv2);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
static const ber_sequence_t SEQUENCE_OF_ESSCertIDv2_sequence_of[1] = {
|
|
|
|
{ &hf_ess_certsV2_item , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ess_ESSCertIDv2 },
|
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_SEQUENCE_OF_ESSCertIDv2(gboolean 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_ESSCertIDv2_sequence_of, hf_index, ett_ess_SEQUENCE_OF_ESSCertIDv2);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
static const ber_sequence_t SigningCertificateV2_sequence[] = {
|
|
|
|
{ &hf_ess_certsV2 , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_ess_SEQUENCE_OF_ESSCertIDv2 },
|
|
|
|
{ &hf_ess_policies , BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_ess_SEQUENCE_OF_PolicyInformation },
|
|
|
|
{ NULL, 0, 0, 0, NULL }
|
|
|
|
};
|
|
|
|
|
|
|
|
static int
|
|
|
|
dissect_ess_SigningCertificateV2(gboolean 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,
|
|
|
|
SigningCertificateV2_sequence, hf_index, ett_ess_SigningCertificateV2);
|
|
|
|
|
|
|
|
return offset;
|
|
|
|
}
|
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
/*--- PDUs ---*/
|
|
|
|
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_ReceiptRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_ReceiptRequest(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_ReceiptRequest_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_ContentIdentifier_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_ContentIdentifier(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_ContentIdentifier_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_Receipt_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_Receipt(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_Receipt_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_ContentHints_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_ContentHints(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_ContentHints_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_MsgSigDigest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_MsgSigDigest(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_MsgSigDigest_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_ContentReference_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_ContentReference(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_ContentReference_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
int dissect_ess_ESSSecurityLabel_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_ESSSecurityLabel(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_ess_ESSSecurityLabel_PDU);
|
|
|
|
return offset;
|
2005-10-03 05:17:51 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_RestrictiveTag_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_RestrictiveTag(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_RestrictiveTag_PDU);
|
|
|
|
return offset;
|
2005-11-16 07:13:12 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_EnumeratedTag_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_EnumeratedTag(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_EnumeratedTag_PDU);
|
|
|
|
return offset;
|
2005-11-16 07:13:12 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_PermissiveTag_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_PermissiveTag(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_PermissiveTag_PDU);
|
|
|
|
return offset;
|
2005-11-16 07:13:12 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_InformativeTag_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_InformativeTag(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_InformativeTag_PDU);
|
|
|
|
return offset;
|
2005-11-16 07:13:12 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_EquivalentLabels_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_EquivalentLabels(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_EquivalentLabels_PDU);
|
|
|
|
return offset;
|
2005-10-03 05:17:51 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_MLExpansionHistory_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_MLExpansionHistory(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_MLExpansionHistory_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_SigningCertificate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2007-05-13 20:58:29 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_SigningCertificate(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_SigningCertificate_PDU);
|
|
|
|
return offset;
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
2014-10-06 13:31:47 +00:00
|
|
|
static int dissect_SigningCertificateV2_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
|
|
|
|
int offset = 0;
|
2010-01-12 14:31:08 +00:00
|
|
|
asn1_ctx_t asn1_ctx;
|
|
|
|
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
|
2014-10-06 13:31:47 +00:00
|
|
|
offset = dissect_ess_SigningCertificateV2(FALSE, tvb, offset, &asn1_ctx, tree, hf_ess_SigningCertificateV2_PDU);
|
|
|
|
return offset;
|
2010-01-12 14:31:08 +00:00
|
|
|
}
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
|
|
|
|
/*--- End of included file: packet-ess-fn.c ---*/
|
2014-12-23 05:32:58 +00:00
|
|
|
#line 139 "../../asn1/ess/packet-ess-template.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/*--- proto_register_ess ----------------------------------------------*/
|
|
|
|
void proto_register_ess(void) {
|
|
|
|
|
|
|
|
/* List of fields */
|
|
|
|
static hf_register_info hf[] = {
|
2013-07-15 20:42:57 +00:00
|
|
|
{ &hf_ess_SecurityCategory_type_OID,
|
2004-11-22 03:36:26 +00:00
|
|
|
{ "type", "ess.type_OID", FT_STRING, BASE_NONE, NULL, 0,
|
|
|
|
"Type of Security Category", HFILL }},
|
2013-07-15 20:42:57 +00:00
|
|
|
{ &hf_ess_Category_attribute,
|
2010-04-23 12:43:14 +00:00
|
|
|
{ "Attribute", "ess.attribute", FT_STRING, BASE_NONE, NULL, 0,
|
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/*--- Included file: packet-ess-hfarr.c ---*/
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-hfarr.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_ReceiptRequest_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "ReceiptRequest", "ess.ReceiptRequest_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_ContentIdentifier_PDU,
|
|
|
|
{ "ContentIdentifier", "ess.ContentIdentifier",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_Receipt_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "Receipt", "ess.Receipt_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_ContentHints_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "ContentHints", "ess.ContentHints_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_MsgSigDigest_PDU,
|
|
|
|
{ "MsgSigDigest", "ess.MsgSigDigest",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_ContentReference_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "ContentReference", "ess.ContentReference_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2011-10-14 07:44:20 +00:00
|
|
|
{ &hf_ess_ess_ESSSecurityLabel_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "ESSSecurityLabel", "ess.ESSSecurityLabel_element",
|
2005-10-03 05:17:51 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_RestrictiveTag_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "RestrictiveTag", "ess.RestrictiveTag_element",
|
2005-11-16 07:13:12 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_EnumeratedTag_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "EnumeratedTag", "ess.EnumeratedTag_element",
|
2005-11-16 07:13:12 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_PermissiveTag_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "PermissiveTag", "ess.PermissiveTag_element",
|
2005-11-16 07:13:12 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_InformativeTag_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "InformativeTag", "ess.InformativeTag_element",
|
2005-11-16 07:13:12 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2005-10-03 05:17:51 +00:00
|
|
|
{ &hf_ess_EquivalentLabels_PDU,
|
|
|
|
{ "EquivalentLabels", "ess.EquivalentLabels",
|
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_MLExpansionHistory_PDU,
|
|
|
|
{ "MLExpansionHistory", "ess.MLExpansionHistory",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_SigningCertificate_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "SigningCertificate", "ess.SigningCertificate_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_SigningCertificateV2_PDU,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "SigningCertificateV2", "ess.SigningCertificateV2_element",
|
2010-01-12 14:31:08 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_signedContentIdentifier,
|
|
|
|
{ "signedContentIdentifier", "ess.signedContentIdentifier",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"ContentIdentifier", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_receiptsFrom,
|
|
|
|
{ "receiptsFrom", "ess.receiptsFrom",
|
2005-06-26 05:48:50 +00:00
|
|
|
FT_UINT32, BASE_DEC, VALS(ess_ReceiptsFrom_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_receiptsTo,
|
|
|
|
{ "receiptsTo", "ess.receiptsTo",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_receiptsTo_item,
|
2009-05-16 22:07:03 +00:00
|
|
|
{ "GeneralNames", "ess.GeneralNames",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_allOrFirstTier,
|
|
|
|
{ "allOrFirstTier", "ess.allOrFirstTier",
|
2005-06-26 05:48:50 +00:00
|
|
|
FT_INT32, BASE_DEC, VALS(ess_AllOrFirstTier_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_receiptList,
|
|
|
|
{ "receiptList", "ess.receiptList",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SEQUENCE_OF_GeneralNames", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_receiptList_item,
|
2009-05-16 22:07:03 +00:00
|
|
|
{ "GeneralNames", "ess.GeneralNames",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_version,
|
|
|
|
{ "version", "ess.version",
|
2005-06-26 05:48:50 +00:00
|
|
|
FT_INT32, BASE_DEC, VALS(ess_ESSVersion_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"ESSVersion", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_contentType,
|
|
|
|
{ "contentType", "ess.contentType",
|
2005-12-08 23:29:21 +00:00
|
|
|
FT_OID, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_originatorSignatureValue,
|
|
|
|
{ "originatorSignatureValue", "ess.originatorSignatureValue",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"OCTET_STRING", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_contentDescription,
|
|
|
|
{ "contentDescription", "ess.contentDescription",
|
|
|
|
FT_STRING, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"UTF8String_SIZE_1_MAX", HFILL }},
|
2005-10-03 05:17:51 +00:00
|
|
|
{ &hf_ess_security_policy_identifier,
|
|
|
|
{ "security-policy-identifier", "ess.security_policy_identifier",
|
2005-12-08 23:29:21 +00:00
|
|
|
FT_OID, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SecurityPolicyIdentifier", HFILL }},
|
2005-10-03 05:17:51 +00:00
|
|
|
{ &hf_ess_security_classification,
|
|
|
|
{ "security-classification", "ess.security_classification",
|
2010-01-12 14:31:08 +00:00
|
|
|
FT_UINT32, BASE_DEC, VALS(ess_SecurityClassification_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SecurityClassification", HFILL }},
|
2005-10-03 05:17:51 +00:00
|
|
|
{ &hf_ess_privacy_mark,
|
|
|
|
{ "privacy-mark", "ess.privacy_mark",
|
|
|
|
FT_UINT32, BASE_DEC, VALS(ess_ESSPrivacyMark_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"ESSPrivacyMark", HFILL }},
|
2005-10-03 05:17:51 +00:00
|
|
|
{ &hf_ess_security_categories,
|
|
|
|
{ "security-categories", "ess.security_categories",
|
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SecurityCategories", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_pString,
|
|
|
|
{ "pString", "ess.pString",
|
|
|
|
FT_STRING, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"PrintableString_SIZE_1_ub_privacy_mark_length", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_utf8String,
|
|
|
|
{ "utf8String", "ess.utf8String",
|
|
|
|
FT_STRING, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"UTF8String_SIZE_1_MAX", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_SecurityCategories_item,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "SecurityCategory", "ess.SecurityCategory_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_type,
|
|
|
|
{ "type", "ess.type",
|
2005-12-08 23:29:21 +00:00
|
|
|
FT_OID, BASE_NONE, NULL, 0,
|
2010-05-11 03:53:31 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_value,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "value", "ess.value_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 03:53:31 +00:00
|
|
|
NULL, HFILL }},
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_restrictiveTagName,
|
2005-11-16 07:13:12 +00:00
|
|
|
{ "tagName", "ess.tagName",
|
2005-12-08 23:29:21 +00:00
|
|
|
FT_OID, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"T_restrictiveTagName", HFILL }},
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_restrictiveAttributeFlags,
|
2005-11-16 07:13:12 +00:00
|
|
|
{ "attributeFlags", "ess.attributeFlags",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"T_restrictiveAttributeFlags", HFILL }},
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_tagName,
|
|
|
|
{ "tagName", "ess.tagName",
|
|
|
|
FT_OID, BASE_NONE, NULL, 0,
|
2010-05-11 03:53:31 +00:00
|
|
|
NULL, HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_attributeList,
|
|
|
|
{ "attributeList", "ess.attributeList",
|
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SET_OF_SecurityAttribute", HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_attributeList_item,
|
2009-05-16 22:07:03 +00:00
|
|
|
{ "SecurityAttribute", "ess.SecurityAttribute",
|
2005-11-16 07:13:12 +00:00
|
|
|
FT_INT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_permissiveTagName,
|
|
|
|
{ "tagName", "ess.tagName",
|
|
|
|
FT_OID, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"T_permissiveTagName", HFILL }},
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_permissiveAttributeFlags,
|
|
|
|
{ "attributeFlags", "ess.attributeFlags",
|
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"T_permissiveAttributeFlags", HFILL }},
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_informativeTagName,
|
|
|
|
{ "tagName", "ess.tagName",
|
|
|
|
FT_OID, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"T_informativeTagName", HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_attributes,
|
|
|
|
{ "attributes", "ess.attributes",
|
|
|
|
FT_UINT32, BASE_DEC, VALS(ess_FreeFormField_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"FreeFormField", HFILL }},
|
2010-04-23 12:43:14 +00:00
|
|
|
{ &hf_ess_informativeAttributeFlags,
|
2005-11-16 07:13:12 +00:00
|
|
|
{ "bitSetAttributes", "ess.bitSetAttributes",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"T_informativeAttributeFlags", HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_securityAttributes,
|
|
|
|
{ "securityAttributes", "ess.securityAttributes",
|
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SET_OF_SecurityAttribute", HFILL }},
|
2005-11-16 07:13:12 +00:00
|
|
|
{ &hf_ess_securityAttributes_item,
|
2009-05-16 22:07:03 +00:00
|
|
|
{ "SecurityAttribute", "ess.SecurityAttribute",
|
2005-11-16 07:13:12 +00:00
|
|
|
FT_INT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2005-10-03 05:17:51 +00:00
|
|
|
{ &hf_ess_EquivalentLabels_item,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "ESSSecurityLabel", "ess.ESSSecurityLabel_element",
|
2005-10-03 05:17:51 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_MLExpansionHistory_item,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "MLData", "ess.MLData_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_mailListIdentifier,
|
|
|
|
{ "mailListIdentifier", "ess.mailListIdentifier",
|
2005-06-26 05:48:50 +00:00
|
|
|
FT_UINT32, BASE_DEC, VALS(ess_EntityIdentifier_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"EntityIdentifier", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_expansionTime,
|
|
|
|
{ "expansionTime", "ess.expansionTime",
|
|
|
|
FT_STRING, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"GeneralizedTime", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_mlReceiptPolicy,
|
|
|
|
{ "mlReceiptPolicy", "ess.mlReceiptPolicy",
|
2005-06-26 05:48:50 +00:00
|
|
|
FT_UINT32, BASE_DEC, VALS(ess_MLReceiptPolicy_vals), 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_issuerAndSerialNumber,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "issuerAndSerialNumber", "ess.issuerAndSerialNumber_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_subjectKeyIdentifier,
|
|
|
|
{ "subjectKeyIdentifier", "ess.subjectKeyIdentifier",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_none,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "none", "ess.none_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 03:53:31 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_insteadOf,
|
|
|
|
{ "insteadOf", "ess.insteadOf",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SEQUENCE_SIZE_1_MAX_OF_GeneralNames", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_insteadOf_item,
|
2009-05-16 22:07:03 +00:00
|
|
|
{ "GeneralNames", "ess.GeneralNames",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_inAdditionTo,
|
|
|
|
{ "inAdditionTo", "ess.inAdditionTo",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SEQUENCE_SIZE_1_MAX_OF_GeneralNames", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_inAdditionTo_item,
|
2009-05-16 22:07:03 +00:00
|
|
|
{ "GeneralNames", "ess.GeneralNames",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_certs,
|
|
|
|
{ "certs", "ess.certs",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SEQUENCE_OF_ESSCertID", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_certs_item,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "ESSCertID", "ess.ESSCertID_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_policies,
|
|
|
|
{ "policies", "ess.policies",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SEQUENCE_OF_PolicyInformation", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_policies_item,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "PolicyInformation", "ess.PolicyInformation_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_certsV2,
|
|
|
|
{ "certs", "ess.certs",
|
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"SEQUENCE_OF_ESSCertIDv2", HFILL }},
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_certsV2_item,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "ESSCertIDv2", "ess.ESSCertIDv2_element",
|
2010-01-12 14:31:08 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2010-01-12 14:31:08 +00:00
|
|
|
{ &hf_ess_hashAlgorithm,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "hashAlgorithm", "ess.hashAlgorithm_element",
|
2010-01-12 14:31:08 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"AlgorithmIdentifier", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_certHash,
|
|
|
|
{ "certHash", "ess.certHash",
|
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
|
|
|
FT_BYTES, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"Hash", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_issuerSerial,
|
2013-05-27 20:26:49 +00:00
|
|
|
{ "issuerSerial", "ess.issuerSerial_element",
|
2004-11-22 03:36:26 +00:00
|
|
|
FT_NONE, BASE_NONE, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
NULL, HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_issuer,
|
|
|
|
{ "issuer", "ess.issuer",
|
2005-07-21 21:12:09 +00:00
|
|
|
FT_UINT32, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"GeneralNames", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
{ &hf_ess_serialNumber,
|
|
|
|
{ "serialNumber", "ess.serialNumber",
|
2015-01-18 10:58:02 +00:00
|
|
|
FT_INT64, BASE_DEC, NULL, 0,
|
2010-05-11 02:13:26 +00:00
|
|
|
"CertificateSerialNumber", HFILL }},
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/*--- End of included file: packet-ess-hfarr.c ---*/
|
2014-12-23 05:32:58 +00:00
|
|
|
#line 152 "../../asn1/ess/packet-ess-template.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
/* List of subtrees */
|
|
|
|
static gint *ett[] = {
|
2010-04-23 12:43:14 +00:00
|
|
|
&ett_Category_attributes,
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
/*--- Included file: packet-ess-ettarr.c ---*/
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-ettarr.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
&ett_ess_ReceiptRequest,
|
2010-01-12 14:31:08 +00:00
|
|
|
&ett_ess_SEQUENCE_SIZE_1_ub_receiptsTo_OF_GeneralNames,
|
2004-11-22 03:36:26 +00:00
|
|
|
&ett_ess_ReceiptsFrom,
|
2010-01-12 14:31:08 +00:00
|
|
|
&ett_ess_SEQUENCE_OF_GeneralNames,
|
2004-11-22 03:36:26 +00:00
|
|
|
&ett_ess_Receipt,
|
|
|
|
&ett_ess_ContentHints,
|
|
|
|
&ett_ess_ContentReference,
|
2005-10-03 05:17:51 +00:00
|
|
|
&ett_ess_ESSSecurityLabel,
|
2004-11-22 03:36:26 +00:00
|
|
|
&ett_ess_ESSPrivacyMark,
|
|
|
|
&ett_ess_SecurityCategories,
|
|
|
|
&ett_ess_SecurityCategory,
|
2005-11-16 07:13:12 +00:00
|
|
|
&ett_ess_RestrictiveTag,
|
|
|
|
&ett_ess_EnumeratedTag,
|
|
|
|
&ett_ess_SET_OF_SecurityAttribute,
|
|
|
|
&ett_ess_PermissiveTag,
|
|
|
|
&ett_ess_InformativeTag,
|
|
|
|
&ett_ess_FreeFormField,
|
2005-10-03 05:17:51 +00:00
|
|
|
&ett_ess_EquivalentLabels,
|
2004-11-22 03:36:26 +00:00
|
|
|
&ett_ess_MLExpansionHistory,
|
|
|
|
&ett_ess_MLData,
|
|
|
|
&ett_ess_EntityIdentifier,
|
|
|
|
&ett_ess_MLReceiptPolicy,
|
2010-01-12 14:31:08 +00:00
|
|
|
&ett_ess_SEQUENCE_SIZE_1_MAX_OF_GeneralNames,
|
2004-11-22 03:36:26 +00:00
|
|
|
&ett_ess_SigningCertificate,
|
2005-06-26 05:48:50 +00:00
|
|
|
&ett_ess_SEQUENCE_OF_ESSCertID,
|
|
|
|
&ett_ess_SEQUENCE_OF_PolicyInformation,
|
2010-01-12 14:31:08 +00:00
|
|
|
&ett_ess_SigningCertificateV2,
|
|
|
|
&ett_ess_SEQUENCE_OF_ESSCertIDv2,
|
|
|
|
&ett_ess_ESSCertIDv2,
|
2004-11-22 03:36:26 +00:00
|
|
|
&ett_ess_ESSCertID,
|
|
|
|
&ett_ess_IssuerSerial,
|
|
|
|
|
|
|
|
/*--- End of included file: packet-ess-ettarr.c ---*/
|
2014-12-23 05:32:58 +00:00
|
|
|
#line 158 "../../asn1/ess/packet-ess-template.c"
|
2010-04-23 12:43:14 +00:00
|
|
|
};
|
2013-07-15 20:42:57 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
static uat_field_t attributes_flds[] = {
|
|
|
|
UAT_FLD_CSTRING(ess_category_attributes,oid, "Tag Set", "Category Tag Set (Object Identifier)"),
|
|
|
|
UAT_FLD_DEC(ess_category_attributes,lacv, "Value", "Label And Cert Value"),
|
|
|
|
UAT_FLD_CSTRING(ess_category_attributes,name, "Name", "Category Name"),
|
|
|
|
UAT_END_FIELDS
|
2004-11-22 03:36:26 +00:00
|
|
|
};
|
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
uat_t *attributes_uat = uat_new("ESS Category Attributes",
|
|
|
|
sizeof(ess_category_attributes_t),
|
|
|
|
"ess_category_attributes",
|
|
|
|
TRUE,
|
2014-01-30 17:43:52 +00:00
|
|
|
&ess_category_attributes,
|
2010-04-23 12:43:14 +00:00
|
|
|
&num_ess_category_attributes,
|
UATs could be put into "categories". The categories were defined only
implicitly by the #define name and string they were defined to; not all
UATs neatly fit into any of the categories, so some of them were put
into categories that weren't obviously correct for them, and one - the
display filter macro UAT - wasn't put into any category at all (which
caused crashes when editing them, as the GUI code that handled UAT
changes from a dialog assumed the category field was non-null).
The category was, in practice, used only to decide, in the
aforementioned GUI code, whether the packet summary pane needed to be
updated or not. It also offered no option of "don't update the packet
summary pane *and* don't redissect anything", which is what would be
appropriate for the display filter macro UAT.
Replace the category with a set of fields indicating what the UAT
affects; we currently offer "dissection", which applies to most UATs
(any UAT in libwireshark presumably affects dissection at a minimum) and
"the set of named fields that exist". Changing any UAT that affects
dissection requires a redissection; changing any UAT that affects the
set of named fields that exist requires a redissection *and* rebuilding
the packet summary pane.
Perhaps we also need "filtering", so that if you change a display filter
macro, we re-filter, in case the display is currently filtered with a
display filter that uses a macro that changed.
svn path=/trunk/; revision=43603
2012-07-08 01:00:46 +00:00
|
|
|
UAT_AFFECTS_DISSECTION, /* affects dissection of packets, but not set of named fields */
|
2010-04-23 12:43:14 +00:00
|
|
|
"ChEssCategoryAttributes",
|
|
|
|
ess_copy_cb,
|
|
|
|
NULL,
|
|
|
|
ess_free_cb,
|
|
|
|
NULL,
|
|
|
|
attributes_flds);
|
|
|
|
|
|
|
|
static module_t *ess_module;
|
|
|
|
|
2004-11-22 03:36:26 +00:00
|
|
|
/* Register protocol */
|
|
|
|
proto_ess = proto_register_protocol(PNAME, PSNAME, PFNAME);
|
|
|
|
|
|
|
|
/* Register fields and subtrees */
|
|
|
|
proto_register_field_array(proto_ess, hf, array_length(hf));
|
|
|
|
proto_register_subtree_array(ett, array_length(ett));
|
2013-07-15 20:42:57 +00:00
|
|
|
|
2010-04-23 12:43:14 +00:00
|
|
|
ess_module = prefs_register_protocol(proto_ess, NULL);
|
|
|
|
|
|
|
|
prefs_register_uat_preference(ess_module, "attributes_table",
|
|
|
|
"ESS Category Attributes",
|
|
|
|
"ESS category attributes translation table",
|
|
|
|
attributes_uat);
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*--- proto_reg_handoff_ess -------------------------------------------*/
|
|
|
|
void proto_reg_handoff_ess(void) {
|
|
|
|
|
|
|
|
/*--- Included file: packet-ess-dis-tab.c ---*/
|
2011-05-12 11:06:42 +00:00
|
|
|
#line 1 "../../asn1/ess/packet-ess-dis-tab.c"
|
2014-10-06 13:31:47 +00:00
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.1", dissect_ReceiptRequest_PDU, proto_ess, "id-aa-receiptRequest");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.7", dissect_ContentIdentifier_PDU, proto_ess, "id-aa-contentIdentifier");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.1.1", dissect_Receipt_PDU, proto_ess, "id-ct-receipt");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.4", dissect_ContentHints_PDU, proto_ess, "id-aa-contentHint");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.5", dissect_MsgSigDigest_PDU, proto_ess, "id-aa-msgSigDigest");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.10", dissect_ContentReference_PDU, proto_ess, "id-aa-contentReference");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.2", dissect_ess_ESSSecurityLabel_PDU, proto_ess, "id-aa-securityLabel");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.9", dissect_EquivalentLabels_PDU, proto_ess, "id-aa-equivalentLabels");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.3", dissect_MLExpansionHistory_PDU, proto_ess, "id-aa-mlExpandHistory");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.12", dissect_SigningCertificate_PDU, proto_ess, "id-aa-signingCertificate");
|
|
|
|
new_register_ber_oid_dissector("1.2.840.113549.1.9.16.2.47", dissect_SigningCertificateV2_PDU, proto_ess, "id-aa-signingCertificateV2");
|
|
|
|
new_register_ber_oid_dissector("2.16.840.1.101.2.1.8.3.0", dissect_RestrictiveTag_PDU, proto_ess, "id-restrictiveAttributes");
|
|
|
|
new_register_ber_oid_dissector("2.16.840.1.101.2.1.8.3.1", dissect_EnumeratedTag_PDU, proto_ess, "id-enumeratedPermissiveAttributes");
|
|
|
|
new_register_ber_oid_dissector("2.16.840.1.101.2.1.8.3.2", dissect_PermissiveTag_PDU, proto_ess, "id-permissiveAttributes");
|
|
|
|
new_register_ber_oid_dissector("2.16.840.1.101.2.1.8.3.3", dissect_InformativeTag_PDU, proto_ess, "id-informativeAttributes");
|
|
|
|
new_register_ber_oid_dissector("2.16.840.1.101.2.1.8.3.4", dissect_EnumeratedTag_PDU, proto_ess, "id-enumeratedRestrictiveAttributes");
|
2004-11-22 03:36:26 +00:00
|
|
|
|
|
|
|
|
|
|
|
/*--- End of included file: packet-ess-dis-tab.c ---*/
|
2014-12-23 05:32:58 +00:00
|
|
|
#line 203 "../../asn1/ess/packet-ess-template.c"
|
2004-11-22 03:36:26 +00:00
|
|
|
}
|
|
|
|
|