@@ -268,8 +268,8 @@ private static boolean compareSignedData(ASN1Sequence outSignedData, ASN1Sequenc
268268 return false ;
269269 }
270270
271- ASN1Sequence outContent = (ASN1Sequence ) ((ASN1TaggedObject ) outSignedData .getObjectAt (1 )).getObject ();
272- ASN1Sequence cmpContent = (ASN1Sequence ) ((ASN1TaggedObject ) cmpSignedData .getObjectAt (1 )).getObject ();
271+ ASN1Sequence outContent = (ASN1Sequence ) ((ASN1TaggedObject ) outSignedData .getObjectAt (1 )).getBaseObject (). toASN1Primitive ();
272+ ASN1Sequence cmpContent = (ASN1Sequence ) ((ASN1TaggedObject ) cmpSignedData .getObjectAt (1 )).getBaseObject (). toASN1Primitive ();
273273 if (outContent .size () != cmpContent .size ()) {
274274 addError (errorText , "Signatures base elements counts are different" ,
275275 String .valueOf (outContent .size ()),
@@ -359,7 +359,7 @@ private static boolean compareAsn1Structures(ASN1Primitive out, ASN1Primitive cm
359359
360360 if (cmp instanceof ASN1TaggedObject ) {
361361 return compareAsn1Structures (
362- ((ASN1TaggedObject ) out ).getObject () , ((ASN1TaggedObject ) cmp ).getObject (), errorText );
362+ ((ASN1TaggedObject ) out ).getBaseObject (). toASN1Primitive () , ((ASN1TaggedObject ) cmp ).getBaseObject (). toASN1Primitive (), errorText );
363363 } else if (cmp instanceof ASN1Sequence ) {
364364 if (!compareContainers (((ASN1Sequence ) out ).toArray (), ((ASN1Sequence ) cmp ).toArray (), errorText )) {
365365 addError (errorText , "ASN1Sequence objects are different" );
@@ -464,17 +464,17 @@ private static boolean compareRevocationInfoArchivalAttribute(ASN1Encodable[] ou
464464 return false ;
465465 }
466466
467- if (!(outTaggedObject .getObject () instanceof ASN1Sequence )
468- || !(cmpTaggedObject .getObject () instanceof ASN1Sequence )) {
467+ if (!(outTaggedObject .getBaseObject (). toASN1Primitive () instanceof ASN1Sequence )
468+ || !(cmpTaggedObject .getBaseObject (). toASN1Primitive () instanceof ASN1Sequence )) {
469469 addError (errorText , structureIsInvalidError ,
470470 String .join ("" , Arrays .stream (out ).map (e -> ASN1Dump .dumpAsString (e )).collect (Collectors .toList ())),
471471 String .join ("" , Arrays .stream (cmp ).map (e -> ASN1Dump .dumpAsString (e )).collect (Collectors .toList ())));
472472 return false ;
473473 }
474474
475475 // revocation entries can be either CRLs or OCSPs in most cases
476- ASN1Sequence outRevocationEntries = (ASN1Sequence ) outTaggedObject .getObject ();
477- ASN1Sequence cmpRevocationEntries = (ASN1Sequence ) cmpTaggedObject .getObject ();
476+ ASN1Sequence outRevocationEntries = (ASN1Sequence ) outTaggedObject .getBaseObject (). toASN1Primitive ();
477+ ASN1Sequence cmpRevocationEntries = (ASN1Sequence ) cmpTaggedObject .getBaseObject (). toASN1Primitive ();
478478 if (outRevocationEntries .size () != cmpRevocationEntries .size ()) {
479479 addError (errorText ,
480480 "Signature revocation info archival attributes have different number of entries" ,
0 commit comments