summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/ieee1609dot2/Ieee1609Dot2Crl.asn
blob: acea51aad45b261b99a17871fe1fa35b952b354f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
-- https://forge.etsi.org/rep/ITS/asn1/ieee1609.2/-/blob/ieee/Ieee1609Dot2Crl.asn
--***************************************************************************--
--                     IEEE Std 1609.2: CRL Data Types                       --
--***************************************************************************--

/**
 * @note Section references in this file are to clauses in IEEE Std
 * 1609.2 unless indicated otherwise. Full forms of acronyms and
 * abbreviations used in this file are specified in 3.2.
 */

Ieee1609Dot2Crl {iso(1) identified-organization(3) ieee(111)
  standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
  crl(3) major-version-3(3) minor-version-2(2)}

DEFINITIONS AUTOMATIC TAGS ::= BEGIN

IMPORTS
  Ieee1609Dot2Data
FROM Ieee1609Dot2 {iso(1) identified-organization(3) ieee(111)
  standards-association-numbered-series-standards(2) wave-stds(1609)
  dot2(2) base(1) schema(1) major-version-2(2) minor-version-6(6)}
WITH SUCCESSORS

  Opaque,
  Psid
FROM Ieee1609Dot2BaseTypes {iso(1) identified-organization(3) ieee(111)
  standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
  base(1) base-types(2) major-version-2(2) minor-version-4(4)}
WITH SUCCESSORS

  CrlContents
FROM Ieee1609Dot2CrlBaseTypes {iso(1) identified-organization(3) ieee(111)
  standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2)
  crl(3) base-types(2) major-version-3(3) minor-version-2(2)}
WITH SUCCESSORS
;

/**
 * @brief This is the PSID for the CRL application.
 */
CrlPsid ::= Psid(256)

/**
 * @brief This structure is the SPDU used to contain a signed CRL. A valid 
 * signed CRL meets the validity criteria of 7.4.
 */
 /*
SecuredCrl ::= Ieee1609Dot2Data (WITH COMPONENTS {..., 
  content (WITH COMPONENTS {
    signedData  (WITH COMPONENTS {..., 
      tbsData (WITH COMPONENTS {
        payload (WITH COMPONENTS {..., 
          data (WITH COMPONENTS {...,
             content (WITH COMPONENTS {
                unsecuredData (CONTAINING CrlContents)
            })
          })
        }),
        headerInfo (WITH COMPONENTS {..., 
          psid (CrlPsid),
          generationTime ABSENT,
          expiryTime ABSENT,
          generationLocation ABSENT,
          p2pcdLearningRequest ABSENT,
          missingCrlIdentifier ABSENT,
          encryptionKey ABSENT
        })
      })
    })
  })
})
*/
/* Rewrite the above asn1 */
SecuredCrl ::= SEQUENCE {
  content         SecuredCrlContent
}

-- content
SecuredCrlContent ::=  CHOICE {
  signedData                   CrlSignedData
}

CrlSignedData ::= SEQUENCE { 
  tbsData   CrlToBeSignedData
}

CrlToBeSignedData ::= SEQUENCE { 
  payload    CrlSignedDataPayload,
  headerInfo HeaderInfo
}

CrlSignedDataPayload ::= SEQUENCE { 
  data        Ieee1609Dot2CrlData OPTIONAL
}

Ieee1609Dot2CrlData ::= SEQUENCE {
  content         Ieee1609Dot2CrlContent
}

Ieee1609Dot2CrlContent ::=  CHOICE { 
  unsecuredData                CrlContents
}
END