0c7876ca39
Also supports the X.420 message store attributes, used over P7. svn path=/trunk/; revision=23981
269 lines
7.8 KiB
Groff
269 lines
7.8 KiB
Groff
-- $Id$
|
|
-- http://www.itu.int/ITU-T/asn1/database/itu-t/x/x420/1999/index.html
|
|
-- Module IPMSHeadingExtensions (X.420:06/1999)
|
|
IPMSHeadingExtensions {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
heading-extensions(6) version-1999(1)} DEFINITIONS IMPLICIT TAGS ::=
|
|
BEGIN
|
|
|
|
-- Prologue
|
|
-- Exports everything.
|
|
IMPORTS
|
|
-- IPMS Information Objects
|
|
IPMS-EXTENSION, ORDescriptor, RecipientSpecifier, ThisIPMField, BodyPart,
|
|
BodyPartNumber
|
|
--==
|
|
FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
information-objects(2) version-1999(1)}
|
|
-- MTS Abstract Service
|
|
ExtendedCertificates, SecurityLabel, UniversalOrBMPString{}
|
|
--==
|
|
FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
|
|
mts-abstract-service(1) version-1999(1)}
|
|
-- Directory Authentication Framework
|
|
AlgorithmIdentifier, SIGNATURE{}, SIGNED{}
|
|
--==
|
|
FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1)
|
|
authenticationFramework(7) 3}
|
|
-- Directory Certificate Extensions
|
|
CertificateAssertion
|
|
--==
|
|
FROM CertificateExtensions {joint-iso-itu-t ds(5) module(1)
|
|
certificateExtensions(26) 0}
|
|
-- IPMS upper bounds
|
|
ub-alpha-code-length, ub-circulation-list-members, ub-distribution-codes,
|
|
ub-extended-subject-length, ub-information-categories,
|
|
ub-information-category-length, ub-manual-handling-instruction-length,
|
|
ub-manual-handling-instructions, ub-originators-reference-length,
|
|
ub-precedence
|
|
--==
|
|
FROM IPMSUpperBounds {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
upper-bounds(10) version-1999(1)}
|
|
-- IPMS Object Identifiers
|
|
id-hex-authorization-time, id-hex-auto-submitted,
|
|
id-hex-body-part-signatures, id-hex-circulation-list-recipients,
|
|
id-hex-distribution-codes, id-hex-extended-subject, id-hex-incomplete-copy,
|
|
id-hex-information-category, id-hex-ipm-security-label, id-hex-languages,
|
|
id-hex-manual-handling-instructions, id-hex-originators-reference,
|
|
id-hex-precedence-policy-id, id-rex-circulation-list-indicator,
|
|
id-rex-precedence
|
|
--==
|
|
FROM IPMSObjectIdentifiers {joint-iso-itu-t mhs(6) ipms(1) modules(0)
|
|
object-identifiers(0) version-1999(1)};
|
|
|
|
-- Incomplete Copy
|
|
incomplete-copy IPMS-EXTENSION ::= {
|
|
VALUE IncompleteCopy,
|
|
IDENTIFIED BY id-hex-incomplete-copy
|
|
}
|
|
|
|
IncompleteCopy ::= NULL
|
|
|
|
-- Languages
|
|
languages IPMS-EXTENSION ::= {
|
|
VALUE --SET OF Language-- Languages,
|
|
IDENTIFIED BY id-hex-languages
|
|
}
|
|
|
|
--WS: Support dissection of extension
|
|
Languages ::= SET OF Language
|
|
|
|
Language ::= PrintableString(SIZE (2 | 5))
|
|
|
|
-- Auto-submitted
|
|
auto-submitted IPMS-EXTENSION ::= {
|
|
VALUE AutoSubmitted,
|
|
IDENTIFIED BY id-hex-auto-submitted
|
|
}
|
|
|
|
AutoSubmitted ::= ENUMERATED {
|
|
not-auto-submitted(0), auto-generated(1), auto-replied(2)}
|
|
|
|
body-part-signatures IPMS-EXTENSION ::= {
|
|
VALUE BodyPartSignatures,
|
|
IDENTIFIED BY id-hex-body-part-signatures
|
|
}
|
|
|
|
BodyPartSignatures ::=
|
|
SET OF
|
|
SET {body-part-number BodyPartNumber,
|
|
body-part-signature BodyPartSignature,
|
|
originator-certificate-selector [1] CertificateAssertion OPTIONAL,
|
|
originator-certificates [0] ExtendedCertificates OPTIONAL,
|
|
...}
|
|
|
|
--BodyPartNumber ::= INTEGER(1..MAX)
|
|
|
|
-- WS: Import Signature definition
|
|
Signature ::= SEQUENCE {
|
|
algorithmIdentifier AlgorithmIdentifier,
|
|
encrypted BIT STRING
|
|
}
|
|
|
|
BodyPartSignature ::= Signature
|
|
-- SIGNATURE
|
|
-- {SEQUENCE {signature-algorithm-identifier AlgorithmIdentifier,
|
|
-- body-part BodyPart,
|
|
-- body-part-security-label SecurityLabel OPTIONAL
|
|
-- }}
|
|
|
|
ipm-security-label IPMS-EXTENSION ::= {
|
|
VALUE IPMSecurityLabel,
|
|
IDENTIFIED BY id-hex-ipm-security-label
|
|
}
|
|
|
|
IPMSecurityLabel ::= SEQUENCE {
|
|
content-security-label [0] SecurityLabel,
|
|
heading-security-label [1] SecurityLabel OPTIONAL,
|
|
body-part-security-labels [2] SEQUENCE OF BodyPartSecurityLabel OPTIONAL
|
|
}
|
|
|
|
BodyPartSecurityLabel ::= CHOICE {
|
|
body-part-unlabelled [0] NULL,
|
|
body-part-security-label [1] SecurityLabel
|
|
}
|
|
|
|
-- Authorization Time
|
|
authorization-time IPMS-EXTENSION ::= {
|
|
VALUE AuthorizationTime,
|
|
IDENTIFIED BY id-hex-authorization-time
|
|
}
|
|
|
|
AuthorizationTime ::= GeneralizedTime
|
|
|
|
-- Circulation List
|
|
circulation-list-recipients IPMS-EXTENSION ::= {
|
|
VALUE CirculationList,
|
|
IDENTIFIED BY id-hex-circulation-list-recipients
|
|
}
|
|
|
|
CirculationList ::=
|
|
SEQUENCE (SIZE (2..ub-circulation-list-members)) OF CirculationMember
|
|
|
|
CirculationMember ::= SET {
|
|
circulation-recipient
|
|
RecipientSpecifier
|
|
(WITH COMPONENTS {
|
|
...,
|
|
recipient (WITH COMPONENTS {
|
|
...,
|
|
formal-name PRESENT
|
|
})
|
|
}),
|
|
checked Checkmark OPTIONAL
|
|
}
|
|
|
|
Checkmark ::= CHOICE {
|
|
simple NULL,
|
|
timestamped CirculationTime,
|
|
signed CirculationSignature
|
|
}
|
|
|
|
CirculationTime ::= GeneralizedTime
|
|
|
|
--WS: expand SIGNED MACRO manually
|
|
CirculationSignatureData ::=
|
|
-- SIGNED
|
|
-- {-- SEQUENCE {algorithm-identifier CirculationSignatureAlgorithmIdentifier,
|
|
this-IPM ThisIPMField,
|
|
timestamp CirculationTime}--}
|
|
|
|
CirculationSignature ::= SEQUENCE {
|
|
circulation-signature-data CirculationSignatureData,
|
|
algorithm-identifier AlgorithmIdentifier,
|
|
encrypted BIT STRING
|
|
}
|
|
|
|
CirculationSignatureAlgorithmIdentifier ::= AlgorithmIdentifier
|
|
|
|
-- Circulation List Indicator
|
|
circulation-list-indicator IPMS-EXTENSION ::= {
|
|
VALUE NULL,
|
|
IDENTIFIED BY id-rex-circulation-list-indicator
|
|
}
|
|
|
|
--WS: Allow dissection.
|
|
CirculationListIndicator ::= NULL
|
|
|
|
-- Distribution Codes
|
|
distribution-codes IPMS-EXTENSION ::= {
|
|
VALUE DistributionCodes,
|
|
IDENTIFIED BY id-hex-distribution-codes
|
|
}
|
|
|
|
DistributionCodes ::=
|
|
SEQUENCE (SIZE (1..ub-distribution-codes)) OF DistributionCode
|
|
|
|
DistributionCode ::= SEQUENCE {
|
|
oid-code OBJECT IDENTIFIER OPTIONAL,
|
|
alphanumeric-code AlphaCode OPTIONAL,
|
|
or-descriptor [0] ORDescriptor OPTIONAL
|
|
}
|
|
|
|
AlphaCode ::= UniversalOrBMPString{ub-alpha-code-length}
|
|
|
|
-- Extended Subject
|
|
extended-subject IPMS-EXTENSION ::= {
|
|
VALUE ExtendedSubject,
|
|
IDENTIFIED BY id-hex-extended-subject
|
|
}
|
|
|
|
ExtendedSubject ::= UniversalOrBMPString{ub-extended-subject-length}
|
|
|
|
-- Information category
|
|
information-category IPMS-EXTENSION ::= {
|
|
VALUE InformationCategories,
|
|
IDENTIFIED BY id-hex-information-category
|
|
}
|
|
|
|
InformationCategories ::=
|
|
SEQUENCE (SIZE (1..ub-information-categories)) OF InformationCategory
|
|
|
|
InformationCategory ::= SEQUENCE {
|
|
reference [0] OBJECT IDENTIFIER OPTIONAL,
|
|
description [1] DescriptionString OPTIONAL
|
|
}
|
|
|
|
DescriptionString ::= UniversalOrBMPString{ub-information-category-length}
|
|
|
|
-- Manual handling Instructions
|
|
manual-handling-instructions IPMS-EXTENSION ::= {
|
|
VALUE ManualHandlingInstructions,
|
|
IDENTIFIED BY id-hex-manual-handling-instructions
|
|
}
|
|
|
|
ManualHandlingInstructions ::=
|
|
SEQUENCE (SIZE (1..ub-manual-handling-instructions)) OF
|
|
ManualHandlingInstruction
|
|
|
|
ManualHandlingInstruction ::=
|
|
UniversalOrBMPString{ub-manual-handling-instruction-length}
|
|
|
|
-- Originator's Reference
|
|
originators-reference IPMS-EXTENSION ::= {
|
|
VALUE OriginatorsReference,
|
|
IDENTIFIED BY id-hex-originators-reference
|
|
}
|
|
|
|
OriginatorsReference ::= UniversalOrBMPString{ub-originators-reference-length}
|
|
|
|
-- Precedence Policy Identifier
|
|
precedence-policy-identifier IPMS-EXTENSION ::= {
|
|
VALUE PrecedencePolicyIdentifier,
|
|
IDENTIFIED BY id-hex-precedence-policy-id
|
|
}
|
|
|
|
PrecedencePolicyIdentifier ::= OBJECT IDENTIFIER
|
|
|
|
-- Precedence
|
|
precedence IPMS-EXTENSION ::= {
|
|
VALUE Precedence,
|
|
IDENTIFIED BY id-rex-precedence
|
|
}
|
|
|
|
Precedence ::= INTEGER(0..ub-precedence)
|
|
|
|
END -- of IPMSHeadingExtensions
|
|
|
|
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
|
|
|