220 lines
5.1 KiB
C#
220 lines
5.1 KiB
C#
using System;
|
|
using System.Collections;
|
|
|
|
namespace Mono.Security.X509
|
|
{
|
|
// Token: 0x02000044 RID: 68
|
|
[Serializable]
|
|
public class X509CertificateCollection : CollectionBase, IEnumerable
|
|
{
|
|
// Token: 0x06000302 RID: 770 RVA: 0x00016200 File Offset: 0x00014400
|
|
public X509CertificateCollection()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06000303 RID: 771 RVA: 0x00016208 File Offset: 0x00014408
|
|
public X509CertificateCollection(X509Certificate[] value)
|
|
{
|
|
this.AddRange(value);
|
|
}
|
|
|
|
// Token: 0x06000304 RID: 772 RVA: 0x00016218 File Offset: 0x00014418
|
|
public X509CertificateCollection(X509CertificateCollection value)
|
|
{
|
|
this.AddRange(value);
|
|
}
|
|
|
|
// Token: 0x06000305 RID: 773 RVA: 0x00016228 File Offset: 0x00014428
|
|
IEnumerator IEnumerable.GetEnumerator()
|
|
{
|
|
return base.InnerList.GetEnumerator();
|
|
}
|
|
|
|
// Token: 0x1700009E RID: 158
|
|
public X509Certificate this[int index]
|
|
{
|
|
get
|
|
{
|
|
return (X509Certificate)base.InnerList[index];
|
|
}
|
|
set
|
|
{
|
|
base.InnerList[index] = value;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06000308 RID: 776 RVA: 0x0001625C File Offset: 0x0001445C
|
|
public int Add(X509Certificate value)
|
|
{
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
return base.InnerList.Add(value);
|
|
}
|
|
|
|
// Token: 0x06000309 RID: 777 RVA: 0x0001627C File Offset: 0x0001447C
|
|
public void AddRange(X509Certificate[] value)
|
|
{
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
for (int i = 0; i < value.Length; i++)
|
|
{
|
|
base.InnerList.Add(value[i]);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600030A RID: 778 RVA: 0x000162C0 File Offset: 0x000144C0
|
|
public void AddRange(X509CertificateCollection value)
|
|
{
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
for (int i = 0; i < value.InnerList.Count; i++)
|
|
{
|
|
base.InnerList.Add(value[i]);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600030B RID: 779 RVA: 0x00016310 File Offset: 0x00014510
|
|
public bool Contains(X509Certificate value)
|
|
{
|
|
return this.IndexOf(value) != -1;
|
|
}
|
|
|
|
// Token: 0x0600030C RID: 780 RVA: 0x00016320 File Offset: 0x00014520
|
|
public void CopyTo(X509Certificate[] array, int index)
|
|
{
|
|
base.InnerList.CopyTo(array, index);
|
|
}
|
|
|
|
// Token: 0x0600030D RID: 781 RVA: 0x00016330 File Offset: 0x00014530
|
|
public new X509CertificateCollection.X509CertificateEnumerator GetEnumerator()
|
|
{
|
|
return new X509CertificateCollection.X509CertificateEnumerator(this);
|
|
}
|
|
|
|
// Token: 0x0600030E RID: 782 RVA: 0x00016338 File Offset: 0x00014538
|
|
public override int GetHashCode()
|
|
{
|
|
return base.InnerList.GetHashCode();
|
|
}
|
|
|
|
// Token: 0x0600030F RID: 783 RVA: 0x00016348 File Offset: 0x00014548
|
|
public int IndexOf(X509Certificate value)
|
|
{
|
|
if (value == null)
|
|
{
|
|
throw new ArgumentNullException("value");
|
|
}
|
|
byte[] hash = value.Hash;
|
|
for (int i = 0; i < base.InnerList.Count; i++)
|
|
{
|
|
X509Certificate x509Certificate = (X509Certificate)base.InnerList[i];
|
|
if (this.Compare(x509Certificate.Hash, hash))
|
|
{
|
|
return i;
|
|
}
|
|
}
|
|
return -1;
|
|
}
|
|
|
|
// Token: 0x06000310 RID: 784 RVA: 0x000163B0 File Offset: 0x000145B0
|
|
public void Insert(int index, X509Certificate value)
|
|
{
|
|
base.InnerList.Insert(index, value);
|
|
}
|
|
|
|
// Token: 0x06000311 RID: 785 RVA: 0x000163C0 File Offset: 0x000145C0
|
|
public void Remove(X509Certificate value)
|
|
{
|
|
base.InnerList.Remove(value);
|
|
}
|
|
|
|
// Token: 0x06000312 RID: 786 RVA: 0x000163D0 File Offset: 0x000145D0
|
|
private bool Compare(byte[] array1, byte[] array2)
|
|
{
|
|
if (array1 == null && array2 == null)
|
|
{
|
|
return true;
|
|
}
|
|
if (array1 == null || array2 == null)
|
|
{
|
|
return false;
|
|
}
|
|
if (array1.Length != array2.Length)
|
|
{
|
|
return false;
|
|
}
|
|
for (int i = 0; i < array1.Length; i++)
|
|
{
|
|
if (array1[i] != array2[i])
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
|
|
// Token: 0x02000045 RID: 69
|
|
public class X509CertificateEnumerator : IEnumerator
|
|
{
|
|
// Token: 0x06000313 RID: 787 RVA: 0x00016428 File Offset: 0x00014628
|
|
public X509CertificateEnumerator(X509CertificateCollection mappings)
|
|
{
|
|
this.enumerator = ((IEnumerable)mappings).GetEnumerator();
|
|
}
|
|
|
|
// Token: 0x1700009F RID: 159
|
|
// (get) Token: 0x06000314 RID: 788 RVA: 0x0001643C File Offset: 0x0001463C
|
|
object IEnumerator.Current
|
|
{
|
|
get
|
|
{
|
|
return this.enumerator.Current;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06000315 RID: 789 RVA: 0x0001644C File Offset: 0x0001464C
|
|
bool IEnumerator.MoveNext()
|
|
{
|
|
return this.enumerator.MoveNext();
|
|
}
|
|
|
|
// Token: 0x06000316 RID: 790 RVA: 0x0001645C File Offset: 0x0001465C
|
|
void IEnumerator.Reset()
|
|
{
|
|
this.enumerator.Reset();
|
|
}
|
|
|
|
// Token: 0x170000A0 RID: 160
|
|
// (get) Token: 0x06000317 RID: 791 RVA: 0x0001646C File Offset: 0x0001466C
|
|
public X509Certificate Current
|
|
{
|
|
get
|
|
{
|
|
return (X509Certificate)this.enumerator.Current;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06000318 RID: 792 RVA: 0x00016480 File Offset: 0x00014680
|
|
public bool MoveNext()
|
|
{
|
|
return this.enumerator.MoveNext();
|
|
}
|
|
|
|
// Token: 0x06000319 RID: 793 RVA: 0x00016490 File Offset: 0x00014690
|
|
public void Reset()
|
|
{
|
|
this.enumerator.Reset();
|
|
}
|
|
|
|
// Token: 0x04000178 RID: 376
|
|
private IEnumerator enumerator;
|
|
}
|
|
}
|
|
}
|