Issues (15)

src/structures/CRL.php (1 issue)

Labels
Severity
1
<?php
2
3
namespace vakata\asn1\structures;
4
5
use \vakata\asn1\ASN1;
0 ignored issues
show
The type \vakata\asn1\ASN1 was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
6
7
/**
8
 * A class for CRL parsing
9
 */
10
class CRL extends Structure
11
{
12
    public static function map()
13
    {
14
        return [
15
            'tag' => ASN1::TYPE_SEQUENCE,
16
            'children' => [
17
                'tbsCertList' => [
18
                    'tag' => ASN1::TYPE_SEQUENCE,
19
                    'children' => [
20
                        'version' => [
21
                            'tag' => ASN1::TYPE_INTEGER,
22
                            'map' => [1=>'v1','v2','v3'],
23
                            'optional' => true
24
                        ],
25
                        'signature' => Common::AlgorithmIdentifier(),
26
                        'issuer' => Common::RDNSequence(),
27
                        'thisUpdate' => [
28
                            'tag' => ASN1::TYPE_CHOICE,
29
                            'children' => [
30
                                [ 'tag' => ASN1::TYPE_GENERALIZED_TIME ],
31
                                [ 'tag' => ASN1::TYPE_UTC_TIME ]
32
                            ]
33
                        ],
34
                        'nextUpdate' => [
35
                            'tag' => ASN1::TYPE_CHOICE,
36
                            'optional' => true,
37
                            'children' => [
38
                                [ 'tag' => ASN1::TYPE_GENERALIZED_TIME ],
39
                                [ 'tag' => ASN1::TYPE_UTC_TIME ]
40
                            ]
41
                        ],
42
                        'revokedCertificates' => [
43
                            'tag' => ASN1::TYPE_SEQUENCE,
44
                            'optional' => true,
45
                            'repeat' => [
46
                                'tag' => ASN1::TYPE_SEQUENCE,
47
                                'children' => [
48
                                    'userCertificate' => [
49
                                        'tag' => ASN1::TYPE_INTEGER,
50
                                        'base' => 16
51
                                    ],
52
                                    'revocationDate' => [
53
                                        'tag' => ASN1::TYPE_CHOICE,
54
                                        'children' => [
55
                                            [ 'tag' => ASN1::TYPE_GENERALIZED_TIME ],
56
                                            [ 'tag' => ASN1::TYPE_UTC_TIME ]
57
                                        ]
58
                                    ],
59
                                    'extensions' => Common::extensions()
60
                                ]
61
                            ]
62
                        ],
63
                        'extensions' => Common::extensions() + [ 'name' => 0, 'implicit' => false, 'optional' => true ]
64
                    ]
65
                ],
66
                'signatureAlgorithm' => Common::AlgorithmIdentifier(),
67
                'signatureValue' => [
68
                    'tag' => ASN1::TYPE_BIT_STRING,
69
                ]
70
            ]
71
        ];
72
    }
73
}
74