private void checkValues(
			IssuingDistributionPoint	point,
			DistributionPointName		distributionPoint,
			bool						onlyContainsUserCerts,
			bool						onlyContainsCACerts,
			ReasonFlags					onlySomeReasons,
			bool						indirectCRL,
			bool						onlyContainsAttributeCerts)
		{
			if (point.OnlyContainsUserCerts != onlyContainsUserCerts)
			{
				Fail("mismatch on onlyContainsUserCerts");
			}

			if (point.OnlyContainsCACerts != onlyContainsCACerts)
			{
				Fail("mismatch on onlyContainsCACerts");
			}

			if (point.IsIndirectCrl != indirectCRL)
			{
				Fail("mismatch on indirectCRL");
			}

			if (point.OnlyContainsAttributeCerts != onlyContainsAttributeCerts)
			{
				Fail("mismatch on onlyContainsAttributeCerts");
			}

			if (!isEquiv(onlySomeReasons, point.OnlySomeReasons))
			{
				Fail("mismatch on onlySomeReasons");
			}

			if (!isEquiv(distributionPoint, point.DistributionPoint))
			{
				Fail("mismatch on distributionPoint");
			}
		}
		private void checkPoint(
			int						size,
			DistributionPointName	distributionPoint,
			bool					onlyContainsUserCerts,
			bool					onlyContainsCACerts,
			ReasonFlags				onlySomeReasons,
			bool					indirectCRL,
			bool					onlyContainsAttributeCerts)
		{
			IssuingDistributionPoint point = new IssuingDistributionPoint(distributionPoint, onlyContainsUserCerts, onlyContainsCACerts, onlySomeReasons, indirectCRL, onlyContainsAttributeCerts);

			checkValues(point, distributionPoint, onlyContainsUserCerts, onlyContainsCACerts, onlySomeReasons, indirectCRL, onlyContainsAttributeCerts);

			Asn1Sequence seq = Asn1Sequence.GetInstance(Asn1Object.FromByteArray(point.GetEncoded()));

			if (seq.Count != size)
			{
				Fail("size mismatch");
			}

			point = IssuingDistributionPoint.GetInstance(seq);

			checkValues(point, distributionPoint, onlyContainsUserCerts, onlyContainsCACerts, onlySomeReasons, indirectCRL, onlyContainsAttributeCerts);
		}
Exemplo n.º 3
0
 public static IssuingDistributionPoint GetInstance(Asn1TaggedObject obj, bool explicitly)
 {
     return(IssuingDistributionPoint.GetInstance(Asn1Sequence.GetInstance(obj, explicitly)));
 }