UINTN Index;\r
STACK_OF(X509_ATTRIBUTE) *Sk;\r
X509_ATTRIBUTE *Xa;\r
+ ASN1_OBJECT *XaObj;\r
ASN1_TYPE *Asn1Type;\r
ASN1_OCTET_STRING *EncDigest;\r
UINT8 *TSToken;\r
// Search valid RFC3161 timestamp counterSignature based on OBJID.\r
//\r
Xa = sk_X509_ATTRIBUTE_value (Sk, (int)Index);\r
- if ((Xa->object->length != sizeof (mSpcRFC3161OidValue)) ||\r
- (CompareMem (Xa->object->data, mSpcRFC3161OidValue, sizeof (mSpcRFC3161OidValue)) != 0)) {\r
+ if (Xa == NULL) {\r
continue;\r
}\r
- Asn1Type = sk_ASN1_TYPE_value (Xa->value.set, 0);\r
+ XaObj = X509_ATTRIBUTE_get0_object(Xa);\r
+ if (XaObj == NULL) {\r
+ continue;\r
+ }\r
+ if ((XaObj->length != sizeof (mSpcRFC3161OidValue)) ||\r
+ (CompareMem (XaObj->data, mSpcRFC3161OidValue, sizeof (mSpcRFC3161OidValue)) != 0)) {\r
+ continue;\r
+ }\r
+ Asn1Type = X509_ATTRIBUTE_get0_type(Xa, 0);\r
}\r
\r
if (Asn1Type == NULL) {\r