100 lines
3.0 KiB
C#
100 lines
3.0 KiB
C#
using System;
|
|
using System.Collections;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix
|
|
{
|
|
// Token: 0x02001978 RID: 6520
|
|
[Token(Token = "0x2001978")]
|
|
public class PkixCertPathBuilder
|
|
{
|
|
// Token: 0x06009B14 RID: 39700 RVA: 0x0020230C File Offset: 0x0020050C
|
|
[Token(Token = "0x6009B14")]
|
|
[Address(RVA = "0x1CC9F30", Offset = "0x1CC8D30", VA = "0x181CC9F30", Slot = "4")]
|
|
public virtual PkixCertPathBuilderResult Build(PkixBuilderParameters pkixParams)
|
|
{
|
|
int num;
|
|
ICollection collection;
|
|
do
|
|
{
|
|
num = 0;
|
|
HashSet hashSet = new HashSet();
|
|
IList additionalStores = pkixParams.GetAdditionalStores();
|
|
}
|
|
while (collection != 0);
|
|
PkixCertPathBuilderResult pkixCertPathBuilderResult;
|
|
if (Platform.CreateArrayList() != 0)
|
|
{
|
|
while (pkixCertPathBuilderResult == 0)
|
|
{
|
|
}
|
|
}
|
|
if (pkixCertPathBuilderResult != 0)
|
|
{
|
|
}
|
|
if (num == 0 && (pkixCertPathBuilderResult != 0 || this.certPathException == pkixCertPathBuilderResult))
|
|
{
|
|
return pkixCertPathBuilderResult;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06009B15 RID: 39701 RVA: 0x002023D0 File Offset: 0x002005D0
|
|
[Token(Token = "0x6009B15")]
|
|
[Address(RVA = "0x1CCA570", Offset = "0x1CC9370", VA = "0x181CCA570", Slot = "5")]
|
|
protected virtual PkixCertPathBuilderResult Build(X509Certificate tbvCert, PkixBuilderParameters pkixParams, IList tbvPath)
|
|
{
|
|
PkixCertPathValidator pkixCertPathValidator = new PkixCertPathValidator();
|
|
bool flag;
|
|
int count;
|
|
if (!flag)
|
|
{
|
|
PkixCertPathValidatorUtilities.AddAdditionalStoresFromAltNames(tbvCert, pkixParams);
|
|
HashSet hashSet = new HashSet();
|
|
ICollection collection = PkixCertPathValidatorUtilities.FindIssuerCerts(tbvCert, pkixParams);
|
|
if (hashSet.GetEnumerator() == 0)
|
|
{
|
|
count = hashSet.Count;
|
|
PkixCertPathBuilderResult pkixCertPathBuilderResult;
|
|
if (count != 0)
|
|
{
|
|
while (pkixCertPathBuilderResult == 0)
|
|
{
|
|
}
|
|
}
|
|
int num = 0;
|
|
if (pkixCertPathBuilderResult != 0)
|
|
{
|
|
}
|
|
if (num == 0)
|
|
{
|
|
goto IL_4A;
|
|
}
|
|
}
|
|
Exception ex = new Exception("No issuer certificate for certificate in certification path found.");
|
|
throw new NullReferenceException();
|
|
}
|
|
IL_4A:
|
|
PkixCertPath pkixCertPath = new PkixCertPath(tbvPath);
|
|
int stringLength = count.ToString().m_stringLength;
|
|
PkixCertPathBuilderResult pkixCertPathBuilderResult2;
|
|
return pkixCertPathBuilderResult2;
|
|
}
|
|
|
|
// Token: 0x06009B16 RID: 39702 RVA: 0x002024B8 File Offset: 0x002006B8
|
|
[Token(Token = "0x6009B16")]
|
|
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
|
public PkixCertPathBuilder()
|
|
{
|
|
}
|
|
|
|
// Token: 0x040068DC RID: 26844
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x40068DC")]
|
|
private Exception certPathException;
|
|
}
|
|
}
|