Files
Dec2017-Script-Dump/mscorlib/Mono/Security/X509/X509CertificateCollection.cs
T
2026-06-04 11:42:34 +02:00

220 lines
5.2 KiB
C#

using System;
using System.Collections;
namespace Mono.Security.X509
{
// Token: 0x020000BD RID: 189
[Serializable]
internal class X509CertificateCollection : CollectionBase, IEnumerable
{
// Token: 0x06000A50 RID: 2640 RVA: 0x0002E1C4 File Offset: 0x0002C3C4
public X509CertificateCollection()
{
}
// Token: 0x06000A51 RID: 2641 RVA: 0x0002E1CC File Offset: 0x0002C3CC
public X509CertificateCollection(X509Certificate[] value)
{
this.AddRange(value);
}
// Token: 0x06000A52 RID: 2642 RVA: 0x0002E1DC File Offset: 0x0002C3DC
public X509CertificateCollection(X509CertificateCollection value)
{
this.AddRange(value);
}
// Token: 0x06000A53 RID: 2643 RVA: 0x0002E1EC File Offset: 0x0002C3EC
IEnumerator IEnumerable.GetEnumerator()
{
return base.InnerList.GetEnumerator();
}
// Token: 0x1700014F RID: 335
public X509Certificate this[int index]
{
get
{
return (X509Certificate)base.InnerList[index];
}
set
{
base.InnerList[index] = value;
}
}
// Token: 0x06000A56 RID: 2646 RVA: 0x0002E220 File Offset: 0x0002C420
public int Add(X509Certificate value)
{
if (value == null)
{
throw new ArgumentNullException("value");
}
return base.InnerList.Add(value);
}
// Token: 0x06000A57 RID: 2647 RVA: 0x0002E240 File Offset: 0x0002C440
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: 0x06000A58 RID: 2648 RVA: 0x0002E284 File Offset: 0x0002C484
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: 0x06000A59 RID: 2649 RVA: 0x0002E2D4 File Offset: 0x0002C4D4
public bool Contains(X509Certificate value)
{
return this.IndexOf(value) != -1;
}
// Token: 0x06000A5A RID: 2650 RVA: 0x0002E2E4 File Offset: 0x0002C4E4
public void CopyTo(X509Certificate[] array, int index)
{
base.InnerList.CopyTo(array, index);
}
// Token: 0x06000A5B RID: 2651 RVA: 0x0002E2F4 File Offset: 0x0002C4F4
public new X509CertificateCollection.X509CertificateEnumerator GetEnumerator()
{
return new X509CertificateCollection.X509CertificateEnumerator(this);
}
// Token: 0x06000A5C RID: 2652 RVA: 0x0002E2FC File Offset: 0x0002C4FC
public override int GetHashCode()
{
return base.InnerList.GetHashCode();
}
// Token: 0x06000A5D RID: 2653 RVA: 0x0002E30C File Offset: 0x0002C50C
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: 0x06000A5E RID: 2654 RVA: 0x0002E374 File Offset: 0x0002C574
public void Insert(int index, X509Certificate value)
{
base.InnerList.Insert(index, value);
}
// Token: 0x06000A5F RID: 2655 RVA: 0x0002E384 File Offset: 0x0002C584
public void Remove(X509Certificate value)
{
base.InnerList.Remove(value);
}
// Token: 0x06000A60 RID: 2656 RVA: 0x0002E394 File Offset: 0x0002C594
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: 0x020000BE RID: 190
public class X509CertificateEnumerator : IEnumerator
{
// Token: 0x06000A61 RID: 2657 RVA: 0x0002E3EC File Offset: 0x0002C5EC
public X509CertificateEnumerator(X509CertificateCollection mappings)
{
this.enumerator = ((IEnumerable)mappings).GetEnumerator();
}
// Token: 0x17000150 RID: 336
// (get) Token: 0x06000A62 RID: 2658 RVA: 0x0002E400 File Offset: 0x0002C600
object IEnumerator.Current
{
get
{
return this.enumerator.Current;
}
}
// Token: 0x06000A63 RID: 2659 RVA: 0x0002E410 File Offset: 0x0002C610
bool IEnumerator.MoveNext()
{
return this.enumerator.MoveNext();
}
// Token: 0x06000A64 RID: 2660 RVA: 0x0002E420 File Offset: 0x0002C620
void IEnumerator.Reset()
{
this.enumerator.Reset();
}
// Token: 0x17000151 RID: 337
// (get) Token: 0x06000A65 RID: 2661 RVA: 0x0002E430 File Offset: 0x0002C630
public X509Certificate Current
{
get
{
return (X509Certificate)this.enumerator.Current;
}
}
// Token: 0x06000A66 RID: 2662 RVA: 0x0002E444 File Offset: 0x0002C644
public bool MoveNext()
{
return this.enumerator.MoveNext();
}
// Token: 0x06000A67 RID: 2663 RVA: 0x0002E454 File Offset: 0x0002C654
public void Reset()
{
this.enumerator.Reset();
}
// Token: 0x040002AC RID: 684
private IEnumerator enumerator;
}
}
}