1<?php
2
3/**
4 * IssuingDistributionPoint
5 *
6 * PHP version 5
7 *
8 * @category  File
9 * @package   ASN1
10 * @author    Jim Wigginton <terrafrost@php.net>
11 * @copyright 2016 Jim Wigginton
12 * @license   http://www.opensource.org/licenses/mit-license.html  MIT License
13 * @link      http://phpseclib.sourceforge.net
14 */
15
16namespace phpseclib3\File\ASN1\Maps;
17
18use phpseclib3\File\ASN1;
19
20/**
21 * IssuingDistributionPoint
22 *
23 * @package ASN1
24 * @author  Jim Wigginton <terrafrost@php.net>
25 * @access  public
26 */
27abstract class IssuingDistributionPoint
28{
29    const MAP = [
30        'type' => ASN1::TYPE_SEQUENCE,
31        'children' => [
32            'distributionPoint' => [
33                'constant' => 0,
34                'optional' => true,
35                'explicit' => true
36            ] + DistributionPointName::MAP,
37            'onlyContainsUserCerts' => [
38                'type' => ASN1::TYPE_BOOLEAN,
39                'constant' => 1,
40                'optional' => true,
41                'default' => false,
42                'implicit' => true
43            ],
44            'onlyContainsCACerts' => [
45                'type' => ASN1::TYPE_BOOLEAN,
46                'constant' => 2,
47                'optional' => true,
48                'default' => false,
49                'implicit' => true
50            ],
51            'onlySomeReasons' => [
52                'constant' => 3,
53                'optional' => true,
54                'implicit' => true
55            ] + ReasonFlags::MAP,
56            'indirectCRL' => [
57                'type' => ASN1::TYPE_BOOLEAN,
58                'constant' => 4,
59                'optional' => true,
60                'default' => false,
61                'implicit' => true
62            ],
63            'onlyContainsAttributeCerts' => [
64                'type' => ASN1::TYPE_BOOLEAN,
65                'constant' => 5,
66                'optional' => true,
67                'default' => false,
68                'implicit' => true
69            ]
70        ]
71    ];
72}
73