summary refs log tree commit diff
path: root/Crypto/src/pkcs/X509CertificateEntry.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Crypto/src/pkcs/X509CertificateEntry.cs')
-rw-r--r--Crypto/src/pkcs/X509CertificateEntry.cs60
1 files changed, 60 insertions, 0 deletions
diff --git a/Crypto/src/pkcs/X509CertificateEntry.cs b/Crypto/src/pkcs/X509CertificateEntry.cs
new file mode 100644

index 000000000..2f81dd87b --- /dev/null +++ b/Crypto/src/pkcs/X509CertificateEntry.cs
@@ -0,0 +1,60 @@ +using System; +using System.Collections; + +using Org.BouncyCastle.Utilities; +using Org.BouncyCastle.X509; + +namespace Org.BouncyCastle.Pkcs +{ + public class X509CertificateEntry + : Pkcs12Entry + { + private readonly X509Certificate cert; + + public X509CertificateEntry( + X509Certificate cert) + : base(Platform.CreateHashtable()) + { + this.cert = cert; + } + +#if !(SILVERLIGHT || PORTABLE) + [Obsolete] + public X509CertificateEntry( + X509Certificate cert, + Hashtable attributes) + : base(attributes) + { + this.cert = cert; + } +#endif + + public X509CertificateEntry( + X509Certificate cert, + IDictionary attributes) + : base(attributes) + { + this.cert = cert; + } + + public X509Certificate Certificate + { + get { return this.cert; } + } + + public override bool Equals(object obj) + { + X509CertificateEntry other = obj as X509CertificateEntry; + + if (other == null) + return false; + + return cert.Equals(other.cert); + } + + public override int GetHashCode() + { + return ~cert.GetHashCode(); + } + } +}