2011-02-11  Sebastien Pouliot  <sebastien@ximian.com>

	* corlib/Mono.Security.X509/X509Store.cs: *
	Mono.Security/Mono.Security.X509/X509Store.cs: Fix key pair
	persistence to load key pairs from the same location (machine or
	user) as the requested certificate. This avoids an internal
	exception (on missing local machine directory) that stop the
	evaluation of the certificate validity (i.e. no user store check)
	*
	System/System.Security.Cryptography.X509Certificates/X509Chain.cs:
	Ensure that a missing local machine directory does not result in a
	NRE while loading CRL (which would fail the certificate being
	validated)

2010-11-03  Sebastien Pouliot  <sebastien@ximian.com>

	* mcs/class/corlib/Mono.Security.X509/X509Store.cs: *
	mcs/class/Mono.Security/Mono.Security.X509/X509Store.cs: Replace
	INSIDE_CORLIB by !NET_2_1 so the new feature is available to
	mono/full framework but not where CspParameters (or file system,
	or key persistance) might not be possible

2010-11-03  Marek Habersack  <grendel@twistedcode.net>

	Fix mixed newlines

2010-11-02  Sebastien Pouliot  <sebastien@ximian.com>

	* mcs/class/corlib/Mono.Security.X509/X509Store.cs: *
	mcs/class/Mono.Security/Mono.Security.X509/X509Store.cs: Add if
	!INSIDE_CORLIB around code that use CspParameters in order to
	allow compilation to work when bootstraping the moonlight profile

2010-10-20  Pablo Ruiz Garcia  <pablo.ruiz@gmail.com>

	[API] X509 related enhacemnts to allow 1) associating keystore's
	private keys with their corresponding public certificates found at
	X509Stores, and 2) importing private keys to X509Stores along with
	certificates.

	mcs/class/corlib/Mono.Security.X509/X509Store.cs:
	mcs/class/Mono.Security/Mono.Security.X509/X509Store.cs:
	mcs/class/corlib/Mono.Security.X509/X509StoreManager.cs:
	mcs/class/Mono.Security/Mono.Security.X509/X509StoreManager.cs:
	Modified MSX.X509Store to allow importing privateKeys along
	certificates (by using RSACryptoServiceProvider and
	KeyPairPersister). Fixed X509Store to use certificate's hash as
	CspParameters.KeyContainerName.

	mcs/tools/security/certmgr.cs: Added a new -importKey action to
	certmgr, which allows importing a PKCS12 contained key into our
	KeyPair store. Added a more (verbose) output to certmgr's -list
	action.

	man/certmgr.1: Updated certmgr man page ti reflect -importKey
	addition.

	mcs/class/corlib/System.Security.Cryptography/CspParameters.cs:
	mcs/class/corlib/System.Security.Cryptography/RSACryptoServiceProvider.cs:
	Implemented RSACryptoServiceProvider.CspKeyContainerInfo getter
	RSACryptoServiceProvider will not take into account
	CspParameterFlags.UseExistingKey by throwing a
	CryptographicException if keyset identified by KeyContainerName
	does not exists.

2010-05-10  Sebastien Pouliot  <sebastien@ximian.com>

	* X509CertificateCollection.cs:
	* X509Certificate.cs:
	* X509Extension.cs:
	* X509Extensions.cs:
		Keep them public for Moonlight. Other types in other
		assemblies needs it and the linker will eventually 
		internalize everything.

2010-03-16  Jb Evain  <jbevain@novell.com>

	* X509Certificate.cs: use MOONLIGHT symbol to disambiguate
	MonoTouch and Moonlight code.

2009-04-30  Sebastien Pouliot  <sebastien@ximian.com> 

	* X509Certificate.cs: Adapt to work with only [DSA|RSA]Managed when
	built for NET_2_1, i.e. remove use of [DSA|RSA]CryptoServiceProvider

2008-09-12  Sebastien Pouliot  <sebastien@ximian.com>

	* PKCS12.cs, X509Store.cs: Use File.Create instead of OpenWrite to
	make sure nothing else if left at the end of the file. Issue reported
	by Christophe Chevalier.

2008-06-03  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Accept text before the PEM certificate itself.
	[Fix bug #396486]

2008-01-10  Sebastien Pouliot  <sebastien@ximian.com>

	* PKCS12.cs, X509Certificate.cs, X509Chain.cs, X509Extension.cs:
	Synchronize/update with Mono.Security assembly

2006-12-14  Sebastien Pouliot  <sebastien@ximian.com>

	* X501Name.cs: Added support for (some cases of) T.61 strings, like
	the latin-1 encoded accentued characters founds in some DN. Fix bug 
	#77295.

2006-12-11  Sebastien Pouliot  <sebastien@ximian.com>

	* PKCS12.cs: Synchronize source with Mono.Security.dll
	* X501Name.cs: Synchronize source with Mono.Security.dll
	* X509Certificate.cs: Synchronize source with Mono.Security.dll
	* X509CRL.cs: Synchronize source with Mono.Security.dll
	* X509Store.cs: Synchronize source with Mono.Security.dll
	* X509Stores.cs: Synchronize source with Mono.Security.dll
	* X520Attributes.cs: Synchronize source with Mono.Security.dll

2006-11-13  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Add support for PEM encoded (base64) x.509 
	certificates (supported in 2.0).

2006-11-08  Sebastien Pouliot  <sebastien@ximian.com>

	* X501Name.cs: Refactor ToString method to allow most options available 
	when using fx 2.0.
	* X509Certificate.cs: Add methods to retrieve the Issuer and Subject
	Distinguished Names in binary (ASN.1) form. Reverse (actually correct)
	the text representation of Issuer and Subject for 2.0.
	* X520Attributes.cs: Keep in sync with latest version from 
	Mono.Security.dll assembly (required for X501Name update).

2006-10-08  Sebastien Pouliot  <sebastien@ximian.com>

	* PKCS12.cs: Synch implementation with Mono.Security.dll. Fix bug
	#79617.

2006-09-05  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Keep in sync with Mono.Security.dll (#79262).

2006-01-04  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Extension.cs: Keep in sync with Mono.Security.dll.

2005-11-18  Sebastien Pouliot  <sebastien@ximian.com> 

	* X509Extension.cs: Keep in sync with Mono.Security.dll.

2005-10-11  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Fixed bug #76407. ValidFrom and ValidUntil are
	local date/time so IsCurrent most also use a local date/time.
	* X509CRL.cs: Updated from Mono.Security.dll (same IsCurrent problem
	and another previously fixed bug).

2005-09-09  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Fixed version property (bug #76012). Added
	ISerializable (for 2.0 so we're not breaking current compatibility).

2005-04-27  Sebastien Pouliot  <sebastien@ximian.com>

	* PKCS12.cs: New. Copied from Mono.Security.dll to allow support of
	PKCS#12 files in X509Certificate for 2.0.
	* X509Certificate.cs: Added new features required to support 2.0.

2005-02-25  Sebastien Pouliot  <sebastien@ximian.com>

	* X501Name.cs: In sync with Mono.Security.dll version.
	* X520Attributes.cs: In sync with Mono.Security.dll version.

2005-01-10  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Fixed NullReferenceException when asking for
	data that wasn't a proper X.509 certificate.

2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Fixed warning (l4) for unused variable.
	* X509Extension.cs: Fixed warning (l4) for unused variable.

2004-09-07  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Chain.cs: Merge from Mono.Security. Fix two bugs (chain 
	construction from collection) and Reset-ing empty chain.

2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>

	* X509Certificate.cs: Rethrow original exception when parsing X.509 
	certificates (inside a CryptographicException) so people can see if 
	their changes affects certificate decoding.

2004-04-28  Sebastien Pouliot  <sebastien@ximian.com>

	* X501Name.cs: In sync with Mono.Security.dll version.
	* X509CRL.cs: New in corlib. In sync with Mono.Security.dll version.
	* X509Certificate.cs: In sync with Mono.Security.dll version.
	* X509CertificateCollection.cs: In sync with Mono.Security.dll version.
	* X509Chain.cs: In sync with Mono.Security.dll version.
	* X509ChainStatusFlag.cs: New in corlib. In sync with Mono.Security.dll
	version.
	* X509Extension.cs: In sync with Mono.Security.dll version.
	* X509Extensions.cs: In sync with Mono.Security.dll version.
	* X509Store.cs: New in corlib. In sync with Mono.Security.dll version.
	* X509StoreManager.cs: New in corlib. In sync with Mono.Security.dll version.
	* X509Stores.cs: New in corlib. In sync with Mono.Security.dll version.
	* X520Attributes.cs: In sync with Mono.Security.dll version.

2003-12-15  Sebastien Pouliot  <spouliot@videotron.ca>

	* TrustAnchors.cs: Added a new trusted root, Thawte, for code signing.

2003-10-12  Sebastien Pouliot  <spouliot@videotron.ca>

	* ITrustAnchors.cs: Added from Mono.Security assembly to
	support Authenticode in X509Certificate.CreateFromSignedFile
	* TestAnchors.cs: Added from Mono.Security assembly to
	support Authenticode in X509Certificate.CreateFromSignedFile
	* TrustAnchors.cs: Added from Mono.Security assembly to
	support Authenticode in X509Certificate.CreateFromSignedFile
	* X509CertificateCollection.cs: Added from Mono.Security assembly to
	support Authenticode in X509Certificate.CreateFromSignedFile
	* X509Chain.cs: Added from Mono.Security assembly to
	support Authenticode in X509Certificate.CreateFromSignedFile

2003-05-16  Sebastien Pouliot  <spouliot@videotron.ca>

	* X509Certificate.cs: Added support for "really" NULL key parameters
	(i.e. not ASN.1	encoded NULL).

2003-03-15  Sebastien Pouliot  <spouliot@videotron.ca>

	* X501Name.cs: New. X.501 Distinguished Names stuff
	* X509Certificate.cs: New. A more complete class to handle X.509
	certificates.
	* X509Extension.cs: New. A base class for all X.509 extensions.
	* X509Extensions.cs: New. X509Extension collection.
	* X520Attributes.cs: New. X.520 attributes (mainly for X501 names)
