Subversion Repositories oidplus

Rev

Rev 846 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
827 daniel-mar 1
<?php
2
 
3
/**
4
 * GeneralName
5
 *
6
 * PHP version 5
7
 *
874 daniel-mar 8
 * @category  File
9
 * @package   ASN1
827 daniel-mar 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
 
16
namespace phpseclib3\File\ASN1\Maps;
17
 
18
use phpseclib3\File\ASN1;
19
 
20
/**
21
 * GeneralName
22
 *
874 daniel-mar 23
 * @package ASN1
827 daniel-mar 24
 * @author  Jim Wigginton <terrafrost@php.net>
874 daniel-mar 25
 * @access  public
827 daniel-mar 26
 */
27
abstract class GeneralName
28
{
29
    const MAP = [
30
        'type' => ASN1::TYPE_CHOICE,
31
        'children' => [
32
            'otherName' => [
33
                'constant' => 0,
34
                'optional' => true,
35
                'implicit' => true
36
            ] + AnotherName::MAP,
37
            'rfc822Name' => [
38
                'type' => ASN1::TYPE_IA5_STRING,
39
                'constant' => 1,
40
                'optional' => true,
41
                'implicit' => true
42
            ],
43
            'dNSName' => [
44
                'type' => ASN1::TYPE_IA5_STRING,
45
                'constant' => 2,
46
                'optional' => true,
47
                'implicit' => true
48
            ],
49
            'x400Address' => [
50
                'constant' => 3,
51
                'optional' => true,
52
                'implicit' => true
53
            ] + ORAddress::MAP,
54
            'directoryName' => [
55
                'constant' => 4,
56
                'optional' => true,
57
                'explicit' => true
58
            ] + Name::MAP,
59
            'ediPartyName' => [
60
                'constant' => 5,
61
                'optional' => true,
62
                'implicit' => true
63
            ] + EDIPartyName::MAP,
64
            'uniformResourceIdentifier' => [
65
                'type' => ASN1::TYPE_IA5_STRING,
66
                'constant' => 6,
67
                'optional' => true,
68
                'implicit' => true
69
            ],
70
            'iPAddress' => [
71
                'type' => ASN1::TYPE_OCTET_STRING,
72
                'constant' => 7,
73
                'optional' => true,
74
                'implicit' => true
75
            ],
76
            'registeredID' => [
77
                'type' => ASN1::TYPE_OBJECT_IDENTIFIER,
78
                'constant' => 8,
79
                'optional' => true,
80
                'implicit' => true
81
            ]
82
        ]
83
    ];
84
}