Lines Matching refs:self

157         self::TYPE_BOOLEAN              => true,
158 self::TYPE_INTEGER => true,
159 self::TYPE_BIT_STRING => 'bitString',
160 self::TYPE_OCTET_STRING => 'octetString',
161 self::TYPE_NULL => 'null',
162 self::TYPE_OBJECT_IDENTIFIER => 'objectIdentifier',
163 self::TYPE_REAL => true,
164 self::TYPE_ENUMERATED => 'enumerated',
165 self::TYPE_UTF8_STRING => 'utf8String',
166 self::TYPE_NUMERIC_STRING => 'numericString',
167 self::TYPE_PRINTABLE_STRING => 'printableString',
168 self::TYPE_TELETEX_STRING => 'teletexString',
169 self::TYPE_VIDEOTEX_STRING => 'videotexString',
170 self::TYPE_IA5_STRING => 'ia5String',
171 self::TYPE_UTC_TIME => 'utcTime',
172 self::TYPE_GENERALIZED_TIME => 'generalTime',
173 self::TYPE_GRAPHIC_STRING => 'graphicString',
174 self::TYPE_VISIBLE_STRING => 'visibleString',
175 self::TYPE_GENERAL_STRING => 'generalString',
176 self::TYPE_UNIVERSAL_STRING => 'universalString',
178 self::TYPE_BMP_STRING => 'bmpString'
191 self::TYPE_UTF8_STRING => 0,
192 self::TYPE_BMP_STRING => 2,
193 self::TYPE_UNIVERSAL_STRING => 4,
194 self::TYPE_PRINTABLE_STRING => 1,
195 self::TYPE_TELETEX_STRING => 1,
196 self::TYPE_IA5_STRING => 1,
197 self::TYPE_VISIBLE_STRING => 1,
215 self::$encoded = $encoded;
217 $decoded = [self::decode_ber($encoded)];
316 case self::CLASS_APPLICATION:
317 case self::CLASS_PRIVATE:
318 case self::CLASS_CONTEXT_SPECIFIC:
331 $temp = self::decode_ber($content, $start, $content_pos);
365 case self::TYPE_BOOLEAN:
372 case self::TYPE_INTEGER:
373 case self::TYPE_ENUMERATED:
379 case self::TYPE_REAL: // not currently supported
381 case self::TYPE_BIT_STRING:
388 $temp = self::decode_ber($content, $start, $content_pos);
396 if ($temp[$i]['type'] != self::TYPE_BIT_STRING) {
402 if ($temp[$last]['type'] != self::TYPE_BIT_STRING) {
408 case self::TYPE_OCTET_STRING:
415 $temp = self::decode_ber($content, $length + $start, $content_pos);
421 if ($temp['type'] != self::TYPE_OCTET_STRING) {
432 case self::TYPE_NULL:
438 case self::TYPE_SEQUENCE:
439 case self::TYPE_SET:
453 $temp = self::decode_ber($content, $start + $offset, $content_pos);
462 case self::TYPE_OBJECT_IDENTIFIER:
466 $current['content'] = self::decodeOID(substr($content, $content_pos));
478 case self::TYPE_NUMERIC_STRING:
480 case self::TYPE_PRINTABLE_STRING:
483 case self::TYPE_TELETEX_STRING:
486 case self::TYPE_VIDEOTEX_STRING:
488 case self::TYPE_VISIBLE_STRING:
490 case self::TYPE_IA5_STRING:
492 case self::TYPE_GRAPHIC_STRING:
494 case self::TYPE_GENERAL_STRING:
496 case self::TYPE_UTF8_STRING:
498 case self::TYPE_BMP_STRING:
504 case self::TYPE_UTC_TIME:
505 case self::TYPE_GENERALIZED_TIME:
509 $current['content'] = self::decodeTime(substr($content, $content_pos), $tag);
545 case $mapping['type'] == self::TYPE_ANY:
548 …if (isset($decoded['constant']) || !array_key_exists($intype, self::ANY_MAP) || (ord(self::$encode…
549 … return new Element(substr(self::$encoded, $decoded['start'], $decoded['length']));
551 $inmap = self::ANY_MAP[$intype];
553 … return [$inmap => self::asn1map($decoded, ['type' => $intype] + $mapping, $special)];
556 case $mapping['type'] == self::TYPE_CHOICE:
561 $value = self::asn1map($decoded, $option, $special);
563 case !isset($option['constant']) && $option['type'] == self::TYPE_CHOICE:
564 $v = self::asn1map($decoded, $option, $special);
598 case self::TYPE_SEQUENCE:
605 if (($map[] = self::asn1map($content, $child, $special)) === null) {
621 if ($child['type'] != self::TYPE_CHOICE) {
623 $childClass = $tempClass = self::CLASS_UNIVERSAL;
632 $childClass = self::CLASS_CONTEXT_SPECIFIC;
641 …hild['constant']) && array_search($child['type'], [$temp['type'], self::TYPE_ANY, self::TYPE_CHOIC…
648 $candidate = self::asn1map($temp, $child, $special);
670 case self::TYPE_SET:
677 if (($map[] = self::asn1map($content, $child, $special)) === null) {
687 $tempClass = self::CLASS_UNIVERSAL;
697 if ($child['type'] != self::TYPE_CHOICE) {
698 $childClass = self::CLASS_UNIVERSAL;
704 $childClass = self::CLASS_CONTEXT_SPECIFIC;
713 …hild['constant']) && array_search($child['type'], [$temp['type'], self::TYPE_ANY, self::TYPE_CHOIC…
719 $candidate = self::asn1map($temp, $child, $special);
746 case self::TYPE_OBJECT_IDENTIFIER:
747 …return isset(self::$oids[$decoded['content']]) ? self::$oids[$decoded['content']] : $decoded['cont…
748 case self::TYPE_UTC_TIME:
749 case self::TYPE_GENERALIZED_TIME:
758 $decoded['content'] = self::decodeTime($decoded['content'], $decoded['type']);
760 return $decoded['content'] ? $decoded['content']->format(self::$format) : false;
761 case self::TYPE_BIT_STRING:
791 case self::TYPE_OCTET_STRING:
793 case self::TYPE_NULL:
795 case self::TYPE_BOOLEAN:
796 case self::TYPE_NUMERIC_STRING:
797 case self::TYPE_PRINTABLE_STRING:
798 case self::TYPE_TELETEX_STRING:
799 case self::TYPE_VIDEOTEX_STRING:
800 case self::TYPE_IA5_STRING:
801 case self::TYPE_GRAPHIC_STRING:
802 case self::TYPE_VISIBLE_STRING:
803 case self::TYPE_GENERAL_STRING:
804 case self::TYPE_UNIVERSAL_STRING:
805 case self::TYPE_UTF8_STRING:
806 case self::TYPE_BMP_STRING:
808 case self::TYPE_INTEGER:
809 case self::TYPE_ENUMERATED:
861 self::$location = [];
862 return self::encode_der($source, $mapping, null, $special);
890 self::$location[] = $idx;
896 case self::TYPE_SET: // Children order is not important, thus process in sequence.
897 case self::TYPE_SEQUENCE:
906 $temp = self::encode_der($content, $child, null, $special);
917 if ($mapping['type'] == self::TYPE_SET) {
933 $temp = self::encode_der($source[$key], $child, $key, $special);
955 if (isset($child['explicit']) || $child['type'] == self::TYPE_CHOICE) {
956 … $subtag = chr((self::CLASS_CONTEXT_SPECIFIC << 6) | 0x20 | $child['constant']);
957 $temp = $subtag . self::encodeLength(strlen($temp)) . $temp;
959 … $subtag = chr((self::CLASS_CONTEXT_SPECIFIC << 6) | (ord($temp[0]) & 0x20) | $child['constant']);
966 case self::TYPE_CHOICE:
974 $temp = self::encode_der($source[$key], $child, $key, $special);
989 if (isset($child['explicit']) || $child['type'] == self::TYPE_CHOICE) {
990 … $subtag = chr((self::CLASS_CONTEXT_SPECIFIC << 6) | 0x20 | $child['constant']);
991 $temp = $subtag . self::encodeLength(strlen($temp)) . $temp;
993 … $subtag = chr((self::CLASS_CONTEXT_SPECIFIC << 6) | (ord($temp[0]) & 0x20) | $child['constant']);
1000 array_pop(self::$location);
1008 case self::TYPE_INTEGER:
1009 case self::TYPE_ENUMERATED:
1027 case self::TYPE_UTC_TIME:
1028 case self::TYPE_GENERALIZED_TIME:
1029 $format = $mapping['type'] == self::TYPE_UTC_TIME ? 'y' : 'Y';
1037 case self::TYPE_BIT_STRING:
1070 case self::TYPE_OCTET_STRING:
1077 case self::TYPE_OBJECT_IDENTIFIER:
1078 $value = self::encodeOID($source);
1080 case self::TYPE_ANY:
1081 $loc = self::$location;
1083 array_pop(self::$location);
1088 … return self::encode_der(null, ['type' => self::TYPE_NULL] + $mapping, null, $special);
1091 … return self::encode_der($source, ['type' => self::TYPE_INTEGER] + $mapping, null, $special);
1093 … return self::encode_der($source, ['type' => self::TYPE_REAL] + $mapping, null, $special);
1095 … return self::encode_der($source, ['type' => self::TYPE_BOOLEAN] + $mapping, null, $special);
1098 $outtype = array_search($typename, self::ANY_MAP, true);
1100 … return self::encode_der($source[$typename], ['type' => $outtype] + $mapping, null, $special);
1104 $filters = self::$filters;
1115 return self::encode_der($source, $filters + $mapping, null, $special);
1116 case self::TYPE_NULL:
1119 case self::TYPE_NUMERIC_STRING:
1120 case self::TYPE_TELETEX_STRING:
1121 case self::TYPE_PRINTABLE_STRING:
1122 case self::TYPE_UNIVERSAL_STRING:
1123 case self::TYPE_UTF8_STRING:
1124 case self::TYPE_BMP_STRING:
1125 case self::TYPE_IA5_STRING:
1126 case self::TYPE_VISIBLE_STRING:
1127 case self::TYPE_VIDEOTEX_STRING:
1128 case self::TYPE_GRAPHIC_STRING:
1129 case self::TYPE_GENERAL_STRING:
1132 case self::TYPE_BOOLEAN:
1136 … new \RuntimeException('Mapping provides no type definition for ' . implode('/', self::$location));
1140 array_pop(self::$location);
1144 if (isset($mapping['explicit']) || $mapping['type'] == self::TYPE_CHOICE) {
1145 $value = chr($tag) . self::encodeLength(strlen($value)) . $value;
1152 return chr($tag) . self::encodeLength(strlen($value)) . $value;
1227 $oid = isset(self::$reverseOIDs[$source]) ? self::$reverseOIDs[$source] : false;
1288 if ($tag == self::TYPE_UTC_TIME) {
1324 self::$format = $format;
1338 self::$reverseOIDs += $oids;
1339 self::$oids = array_flip(self::$reverseOIDs);
1353 self::$filters = $filters;
1368 … public static function convert($in, $from = self::TYPE_UTF8_STRING, $to = self::TYPE_UTF8_STRING)
1371 …if (!array_key_exists($from, self::STRING_TYPE_SIZE) || !array_key_exists($to, self::STRING_TYPE_S…
1374 $insize = self::STRING_TYPE_SIZE[$from];
1375 $outsize = self::STRING_TYPE_SIZE[$to];
1538 return isset(self::$reverseOIDs[$name]) ? self::$reverseOIDs[$name] : $name;