| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #if !BESTHTTP_DISABLE_ALTERNATE_SSL && (!UNITY_WEBGL || UNITY_EDITOR)
- #pragma warning disable
- using System;
- namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp
- {
- public class CrlID
- : Asn1Encodable
- {
- private readonly DerIA5String crlUrl;
- private readonly DerInteger crlNum;
- private readonly Asn1GeneralizedTime crlTime;
- // TODO Add GetInstance method(s) and make this private?
- public CrlID(Asn1Sequence seq)
- {
- foreach (Asn1TaggedObject o in seq)
- {
- switch (o.TagNo)
- {
- case 0:
- crlUrl = DerIA5String.GetInstance(o, true);
- break;
- case 1:
- crlNum = DerInteger.GetInstance(o, true);
- break;
- case 2:
- crlTime = Asn1GeneralizedTime.GetInstance(o, true);
- break;
- default:
- throw new ArgumentException("unknown tag number: " + o.TagNo);
- }
- }
- }
- public DerIA5String CrlUrl
- {
- get { return crlUrl; }
- }
- public DerInteger CrlNum
- {
- get { return crlNum; }
- }
- public Asn1GeneralizedTime CrlTime
- {
- get { return crlTime; }
- }
- /**
- * Produce an object suitable for an Asn1OutputStream.
- * <pre>
- * CrlID ::= Sequence {
- * crlUrl [0] EXPLICIT IA5String OPTIONAL,
- * crlNum [1] EXPLICIT Integer OPTIONAL,
- * crlTime [2] EXPLICIT GeneralizedTime OPTIONAL }
- * </pre>
- */
- public override Asn1Object ToAsn1Object()
- {
- Asn1EncodableVector v = new Asn1EncodableVector();
- v.AddOptionalTagged(true, 0, crlUrl);
- v.AddOptionalTagged(true, 1, crlNum);
- v.AddOptionalTagged(true, 2, crlTime);
- return new DerSequence(v);
- }
- }
- }
- #pragma warning restore
- #endif
|