@@ -563,6 +563,30 @@ private static Map<ASN1ObjectIdentifier, String> getSymLookup(final Ruby runtime
563563 // OpenSSL::ASN1::BMPSTRING (30) :
564564 { "BMPSTRING" , org .bouncycastle .asn1 .DERBMPString .class , "BMPString" }};
565565
566+ final static int EOC = 0 ; // OpenSSL::ASN1::EOC (0)
567+ final static int BOOLEAN = 1 ; // OpenSSL::ASN1::BOOLEAN (1)
568+ final static int INTEGER = 2 ; // OpenSSL::ASN1::INTEGER (2)
569+ final static int BIT_STRING = 3 ; // OpenSSL::ASN1::BIT_STRING (3)
570+ final static int OCTET_STRING = 4 ; // OpenSSL::ASN1::OCTET_STRING (4)
571+ final static int NULL = 5 ; // OpenSSL::ASN1::NULL (5)
572+ final static int OBJECT = 6 ; // OpenSSL::ASN1::OBJECT (6)
573+ final static int ENUMERATED = 10 ; // OpenSSL::ASN1::ENUMERATED (10)
574+ final static int UTF8STRING = 12 ; // OpenSSL::ASN1::UTF8STRING (12)
575+ final static int SEQUENCE = 16 ; // OpenSSL::ASN1::SEQUENCE (16)
576+ final static int SET = 17 ; // OpenSSL::ASN1::SET (17)
577+ final static int NUMERICSTRING = 18 ; // OpenSSL::ASN1::NUMERICSTRING (18)
578+ final static int PRINTABLESTRING = 19 ; // OpenSSL::ASN1::PRINTABLESTRING (19)
579+ final static int T61STRING = 20 ; // OpenSSL::ASN1::T61STRING (20)
580+ final static int VIDEOTEXSTRING = 21 ; // OpenSSL::ASN1::VIDEOTEXSTRING (21)
581+ final static int IA5STRING = 22 ; // OpenSSL::ASN1::IA5STRING (22)
582+ final static int UTCTIME = 23 ; // OpenSSL::ASN1::UTCTIME (23)
583+ final static int GENERALIZEDTIME = 24 ; // OpenSSL::ASN1::GENERALIZEDTIME (24)
584+ final static int GRAPHICSTRING = 25 ; // OpenSSL::ASN1::GRAPHICSTRING (25)
585+ final static int ISO64STRING = 26 ; // OpenSSL::ASN1::ISO64STRING (26)
586+ final static int GENERALSTRING = 27 ; // OpenSSL::ASN1::GENERALSTRING (27)
587+ final static int UNIVERSALSTRING = 28 ; // OpenSSL::ASN1::UNIVERSALSTRING (28)
588+ final static int BMPSTRING = 30 ; // OpenSSL::ASN1::BMPSTRING (30)
589+
566590 private final static Map <Class <?>, Integer > JCLASS_TO_ID = new HashMap <Class <?>, Integer >(24 , 1 );
567591 private final static Map <String , Integer > RCLASS_TO_ID = new HashMap <String , Integer >(28 , 1 );
568592
@@ -575,33 +599,35 @@ private static Map<ASN1ObjectIdentifier, String> getSymLookup(final Ruby runtime
575599 if ( info [2 ] != null ) {
576600 RCLASS_TO_ID .put ((String ) info [2 ], Integer .valueOf (i ));
577601 }
602+
603+ switch (i ) {
604+ case EOC : assert "EOC" .equals (info [0 ]); break ;
605+ case BOOLEAN : assert "BOOLEAN" .equals (info [0 ]); break ;
606+ case INTEGER : assert "INTEGER" .equals (info [0 ]); break ;
607+ case BIT_STRING : assert "BIT_STRING" .equals (info [0 ]); break ;
608+ case OCTET_STRING : assert "OCTET_STRING" .equals (info [0 ]); break ;
609+ case NULL : assert "NULL" .equals (info [0 ]); break ;
610+ case OBJECT : assert "OBJECT" .equals (info [0 ]); break ;
611+ case ENUMERATED : assert "ENUMERATED" .equals (info [0 ]); break ;
612+ case UTF8STRING : assert "UTF8STRING" .equals (info [0 ]); break ;
613+ case SEQUENCE : assert "SEQUENCE" .equals (info [0 ]); break ;
614+ case SET : assert "SET" .equals (info [0 ]); break ;
615+ case NUMERICSTRING : assert "NUMERICSTRING" .equals (info [0 ]); break ;
616+ case PRINTABLESTRING : assert "PRINTABLESTRING" .equals (info [0 ]); break ;
617+ case T61STRING : assert "T61STRING" .equals (info [0 ]); break ;
618+ case VIDEOTEXSTRING : assert "VIDEOTEXSTRING" .equals (info [0 ]); break ;
619+ case IA5STRING : assert "IA5STRING" .equals (info [0 ]); break ;
620+ case UTCTIME : assert "UTCTIME" .equals (info [0 ]); break ;
621+ case GENERALIZEDTIME : assert "GENERALIZEDTIME" .equals (info [0 ]); break ;
622+ case GRAPHICSTRING : assert "GRAPHICSTRING" .equals (info [0 ]); break ;
623+ case ISO64STRING : assert "ISO64STRING" .equals (info [0 ]); break ;
624+ case GENERALSTRING : assert "GENERALSTRING" .equals (info [0 ]); break ;
625+ case UNIVERSALSTRING : assert "UNIVERSALSTRING" .equals (info [0 ]); break ;
626+ case BMPSTRING : assert "BMPSTRING" .equals (info [0 ]); break ;
627+ }
578628 }
579629 }
580630
581- private final static int EOC = 0 ; // OpenSSL::ASN1::EOC (0)
582- //private final static int BOOLEAN = 1; // OpenSSL::ASN1::BOOLEAN (1)
583- //private final static int INTEGER = 2; // OpenSSL::ASN1::INTEGER (2)
584- private final static int BIT_STRING = 3 ; // OpenSSL::ASN1::BIT_STRING (3)
585- private final static int OCTET_STRING = 4 ; // OpenSSL::ASN1::OCTET_STRING (4)
586- //private final static int NULL = 5; // OpenSSL::ASN1::NULL (5)
587- //private final static int OBJECT = 6; // OpenSSL::ASN1::OBJECT (6)
588- //private final static int ENUMARATED = 10; // OpenSSL::ASN1::ENUMERATED (10)
589- //private final static int UTFSTRING = 12; // OpenSSL::ASN1::UTF8STRING (12)
590- private final static int SEQUENCE = 16 ; // OpenSSL::ASN1::SEQUENCE (16)
591- private final static int SET = 17 ; // OpenSSL::ASN1::SET (17)
592- //private final static int NUMERICSTRING = 18; // OpenSSL::ASN1::NUMERICSTRING (18)
593- // OpenSSL::ASN1::PRINTABLESTRING (19)
594- // OpenSSL::ASN1::T61STRING (20)
595- // OpenSSL::ASN1::VIDEOTEXSTRING (21)
596- // OpenSSL::ASN1::IA5STRING (22)
597- // OpenSSL::ASN1::UTCTIME (23)
598- // OpenSSL::ASN1::GENERALIZEDTIME (24)
599- // OpenSSL::ASN1::GRAPHICSTRING (25)
600- // OpenSSL::ASN1::ISO64STRING (26)
601- // OpenSSL::ASN1::GENERALSTRING (27)
602- // OpenSSL::ASN1::UNIVERSALSTRING (28)
603- // OpenSSL::ASN1::BMPSTRING (30)
604-
605631 private static Integer typeId (Class <?> type ) {
606632 Integer id = null ;
607633 while ( type != Object .class && id == null ) {
0 commit comments