1<?php
2
3/**
4 * TBSCertList
5 *
6 * PHP version 5
7 *
8 * @author    Jim Wigginton <terrafrost@php.net>
9 * @copyright 2016 Jim Wigginton
10 * @license   http://www.opensource.org/licenses/mit-license.html  MIT License
11 * @link      http://phpseclib.sourceforge.net
12 */
13
14namespace phpseclib3\File\ASN1\Maps;
15
16use phpseclib3\File\ASN1;
17
18/**
19 * TBSCertList
20 *
21 * @author  Jim Wigginton <terrafrost@php.net>
22 */
23abstract class TBSCertList
24{
25    const MAP = [
26        'type' => ASN1::TYPE_SEQUENCE,
27        'children' => [
28            'version' => [
29                'type' => ASN1::TYPE_INTEGER,
30                'mapping' => ['v1', 'v2', 'v3'],
31                'optional' => true,
32                'default' => 'v2'
33            ],
34            'signature' => AlgorithmIdentifier::MAP,
35            'issuer' => Name::MAP,
36            'thisUpdate' => Time::MAP,
37            'nextUpdate' => [
38                'optional' => true
39            ] + Time::MAP,
40            'revokedCertificates' => [
41                'type' => ASN1::TYPE_SEQUENCE,
42                'optional' => true,
43                'min' => 0,
44                'max' => -1,
45                'children' => RevokedCertificate::MAP
46            ],
47            'crlExtensions' => [
48                'constant' => 0,
49                'optional' => true,
50                'explicit' => true
51            ] + Extensions::MAP
52        ]
53    ];
54}
55