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

	* Mono.Security_test.dll.sources: Added SubjectAltNameExtension unit
	tests to the build. Patch by David Wolinsky

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

	* Mono.Security_test.dll.sources: Added X509Certificate unit tests to
	the build.

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

	* Mono.Security_test.dll.sources: Added Mono.Security.X509.Extensions.
	KeyUsageExtensionTest, ExtendedKeyUsageExtensionTest and 
	BasicConstraintsExtensionTest unit tests to the build.

2005-10-04  Zoltan Varga  <vargaz@freemail.hu>

	* Makefile (LIBRARY_USE_INTERMEDIATE_FILE): Set this flag.

2005-06-30  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security_test.dll.sources: Added Mono.Security.X509.X509CrlTest
	to the build.

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

	* Mono.Security.dll.sources: Added GeneralNames to Mono.Security.X509.
	Extensions to share code between existing extensions.

2004-12-06  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security_test.dll.sources: Added Mono.Security.Cryptography.
	RSAManagedTest to the build.

2004-11-23  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security_test.dll.sources: Added Mono.Security.Cryptography.
	PKCS1Test to the build.

2004-10-19  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security_test.dll.sources: Added more unit tests BigInteger.

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

	* Mono.Security.dll.sources: Added support for SHA224 hash algorithm
	in Mono.Security.Cryptography.
	* Mono.Security_test.dll.sources: Added unit tests for SHA224 hash
	algorithm.

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

	* Mono.Security_test.dll.sources: Added unit tests for Authenticode
	Deformatter.

2004-07-27 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientKeyExchange.cs:

		- Fixed usage of the private key selection
		delegate (Thanks to Matthijs ter Woord for his feedback)

2004-05-11 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:

		- Added fix for better handling of exceptions when
		building the X509 Certificate chain.

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

	* Mono.Security_test.dll.sources: Added unit tests for Mono.Security.
	Protocol.Ntlm.MessabeBase and Mono.Security.ASN1Convert.

2004-05-09 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/Alert.cs:
	* Mono.Security.Protocol.Tls/CipherSuite.cs:
	* Mono.Security.Protocol.Tls/CipherSuiteCollection.cs:
	* Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/Context.cs:
	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/SecurityCompressionType.cs:
	* Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/SslServerStream.cs:
	* Mono.Security.Protocol.Tls/TlsClientSettings.cs:

		- Changes for fix FxCop Rules.

		- Reworked CipherSuiteCollection class.

	* Mono.Security.Protocol.Tls.Handshake/HandshakeMessage.cs:

		- Changes for fix FxCop Rules.

2004-04-21 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/DebugHelper.cs:

		- New class.

	* Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/Context.cs:
	* Mono.Security.Protocol.Tls/Context.cs:
	* Mono.Security.Protocol.Tls/SslCipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
	* Mono.Security.Protocol.Tls/SslClientStream.cs:

		- Added debug capabilities.

	* Mono.Security.Protocol.Tls/ServerContext.cs:

		- Added initialization of requested CertificateTypes and CA's

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerHello.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:

		- Modfied exception handling

		- Added debug capabilities.


	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificateRequest.cs:

		- Modify SSL implementation.

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerCertificateRequest.cs:

		- Initial implementation.

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientFinished.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:

		- Modfied exception handling

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

	* Mono.Security.dll.sources: Added AssemblyInfo.cs, Locale.cs and
	BitConverterLE.cs to build.

2004-04-16 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/TlsException.cs:

		- Make it public until npgsql people can fix their sources.

2004-04-15 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/SslServerStream.cs:
	* Mono.Security.Protocol.Tls/Alert.cs:
	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/Context.cs:
	* Mono.Security.Protocol.Tls/TlsException.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerHello.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientFinished.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:

		- Reworked Alert and Exception (TlsException) handling.

	* Mono.Security.Protocol.Tls/TlsClientSettings.cs:

		- Added new CertificateRSA property.

	* Mono.Security.Protocol.Tls/SslHandshakeHash.cs:
		
		- Added two new methods: CreateSignature and VerifySignature.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:

		- Added Ssl3 implementation.

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:	

		- Added initial implementation.

2004-03-23  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security_test.dll.sources: Added unit tests for CryptoConvert.

2004-03-19 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:

		- Fixed cipher suite selection.

	* Mono.Security.Protocol.Tls/TlsServerSettings.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:

		- Added new CertificateRSA property.

		- Added new UpdateCertfificateRSA method.

	* Mono.Security.Protocol.Tls/CipherSuite.cs:

		- Removed CertificateRSA() method.	

2004-03-17 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificate.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerKeyExchange.cs:

		- Initial implementation.


2004-03-16 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/SslCipherSuite.cs:

		- Added changes for allow it to work as server or client.


2004-03-15 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/TlsStream.cs:
	* Mono.Security.Protocol.Tls/CipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
	* Mono.Security.Protocol.Tls/SslHandshakeHash.cs:
	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Cryptography/MD5SHA1.cs:

		- Use Buffer.BlockCopy instead of System.Array.Copy

2004-03-10 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificateRequest.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerCertificateRequest.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerFinished.cs:

		- Fixed meesage type definition.

	* Mono.Security.Protocol.Tls/Ciphersuite.cs:

		- Added generation of the Server encryption algorithms.

		- Modified encryption/decription methods for work
		as client or server as needed.

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientKeyExchange.cs:

		- Finished processing of the message contents.

	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:

		- Added new ProcessChangeCipherSpec method.

	* Mono.Security.Protocol.Tls/Context.cs:

		- Added new PrintBuffer method ( for debug ).

	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/SslServerStream.cs:

		- Callback cleanup.

2004-03-06 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsClientKeyExchange.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerHello.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerHelloDone.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerCertificate.cs:

		- Initial implementation ( not finished ) 

	* Mono.Security.Protocol.Tls/SslServerStream.cs:

		- Initial implementation of the doHandshake method.

        - Added initial events implementation.

	* Mono.Security.Protocol.Tls/Ciphersuite.cs:
	* Mono.Security.Protocol.Tls/TlsCiphersuite.cs:
	* Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:
	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/TlsServerSettings.cs:
	* Mono.Security.Protocol.Tls/TlsClientSettings.cs:
	* Mono.Security.Protocol.Tls/ClientContext.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/*.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/*.cs:

		- Changes for make use of the renamed classes and enums.

	* Mono.Security.Protocol.Tls.Handshake/TlsHandshakeType.cs:

		- Renamed to HandshakeType.cs (Enum and file)

	* Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:

		- Renamed to HandshakeMessage.cs (Class and file)

	* Mono.Security.Protocol.Tls.Handshake/TlsClientCertificateType.cs:

		- Renamed to ClientCertificateType.cs (Enum and file)

	* Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:

		- Renamed to Alert (Class, enums and file)

	* Mono.Security.Protocol.Tls/TlsContentType.cs:

		- Renamed to ContentType.cs ( Enum and file )
 
	* Mono.Security.Protocol.Tls/TlsCiphersuiteCollection.cs:

		- Renamed to CiphersuiteCollection.cs ( Class and file )

	* Mono.Security.Protocol.Tls/TlsCiphersuiteFactory.cs:

		- Renamed to CiphersuiteCollection.cs ( Class and file )

	* Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:

		- Renamed to SslHandshakeHash.cs ( Class and file )

	* Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:

		- Renamed to SslCipherSuite.cs ( Class and file )

2004-03-04 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerHelloDone.cs:
	* Mono.Security.Protocol.Tls.Handshake.Server/TlsServerHelloDone.cs:

        - Fixed message type.

2004-02-26 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/HandshakeState.cs:

		- New file.

	* Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:

		- Modified the level of some alerts according to the RFC.

	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/SslServerStream.cs:
	* Mono.Security.Protocol.Tls/Context.cs:
	* Mono.Security.Protocol.Tls/ClientContext.cs:
	* Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:

		- Added changes for better handling of ClientHelloRequest messages.

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

	* Mono.Security.dll.sources: Added new internal class HttpsClientStream
	in Mono.Security.Protocol.Tls to the build.

2004-02-24 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Alerts/TlsCloseNotifyAlert.cs:

		- Removed File.

	* Mono.Security.Protocol.Tls.Alerts/TlsAlerts.cs:
	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/SslServerStream.cs:

		- Reimplementation of TLS/SSL Alert Protocol.

2004-02-23 Carlos Guzman Alvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/TlsContext.cs:

		- Removed file, implementation is now present in:

			Context.cs
			ClientContext.cs
			ServerContext.cs

	* Mono.Security.Protocol.Tls/Context.cs:
	* Mono.Security.Protocol.Tls/ClientContext.cs:
	* Mono.Security.Protocol.Tls/ServerContext.cs:
	* Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:

		 - New classes.

	* Mono.Security.Protocol.Tls/SslServerStream.cs:

		- Added implementation for properties, and read/write methods
		as in SslClientStream.

		- doHandshake method is not implemented yet.

	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/Ciphersuite.cs:
	* Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
	* Mono.Security.Protocol.Tls.Alerts/TlsCloseNotifyAlert.cs:
	* Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/*.cs:

		- Added changes for make use of the new Context implementation.

	* Mono.Security.Protocol.Tls.Handshake.Server/*.cs:

        - New classes with method signatures only for the server handshake
        implementation.

2004-02-21  Carlos Guzman Alvarez  <carlosga@telefonica.net>

    * TlsServerHello: Fix for handle SecurityProtocolType.Default.

2004-02-20  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security.dll.sources: Added new file X509ChainStatusFlags in
	Mono.Security.X509 namespace.

2004-02-20 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/TlsContext.cs:

		- Added changes for handle te SecurityProtocolType enum
		as a Flags enum.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:

		- Let the Ssl3 message to be process in the same way as the Tls1.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:
		
		- Added changes for use the Protocol version send by the server

	* Mono.Security.Protocol.Tls/CipherSuite.cs:

		- Compute the premaster secret using the protocol version sent in 
		the ClientHello message instead of the actual protocol version.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:

        - Commented the server cert validation.

	* Mono.Security.Protocol.Tls.Alerts/TlsWarningEventAgrs.cs:

		- Removed no more needed file.

	* Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:

		- Added 4 new properties:

			* Message

			* IsWarning

			* IsFatal

			* IsCloseNotify

		- Return always the same message when working in release mode
		(The authentication or decryption has failed.)

	* Mono.Security.Protocol.Tls/SslClientStream.cs:

		- Changes to the sync code.

		- Record protocol stuff moved to the new classes.

		- Removed Warning event.

		- Added control over the CloseNotify Alert
		to BeginRead method.

		- Return true in the server certificate validation method
		if there are no errors.

	* Mono.Security.Protocol.Tls/RecordProtocol.cs:
	* Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:

		- New classes for handle the SSL/TLS record protocol.

2004-02-18 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/SslClientStream.cs:

        - Implement CheckCertRevocationStatus ( not used yet )

	* Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
	* Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
	* Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:

		- Added Serializable attribute.

	* Mono.Security.Protocol.Tls/CipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsContext.cs:

		- Added some optimizations proposed by Sebastien Pouliot.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:

		- Changes on Common Name detection and certificate error handling ( Thanks to Sebastien Pouliot for his feedback ).

2004-02-17 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/SslClientStream.cs:

		- Added changes to security properties for check that the handshake is finished.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:

		- Raise the Client Certificate event.

	* Mono.Security.Protocol.Tls/CipherSuite.cs:
	* Mono.Security.Protocol.Tls/SslClientStream.cs:
	* Mono.Security.Protocol.Tls/SecurityProtocolType.cs:
	* Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsCipherSuiteCollection.cs:
	* Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
	* Mono.Security.Protocol.Tls/TlsContext.cs:
	* Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessage.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientHello.cs:

		- Change the SecurityProtocolType enum to mtch .NET 1.2 documentation definition.

	* Mono.Security.Protocol.Tls/SslClientStream.cs:

		- Impement SelectedClientCertificate and ServerCertificate properties.

 	* Mono.Security.Protocol.Tls/SslClientStream.cs:

        - Added changes for bring async methods to work ( Thanks to Sebastien Pouliot )

        - Reworked the record fragmentation.

        - Fix for send the close notify alert in the Close method
        only if the Handshake is fully negotiated.

2004-02-16 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

 	* Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:

        - Changed ciphersuites order of preference ( Thanks to Sebastien Pouliot for his feedback ).

2004-02-15 Carlos Guzmán Álvarez  <carlosga@te...>
 
 	* Mono.Security.Protocol.Tls/SslClientStream.cs:
 
 		- Added specific control od available data for Network Streams
 		on Read ( Thanks to Francisco Figueiredo Jr. for his feedback ).
 
 		- Removed test code.

2004-02-14 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

    * Mono.Security.Protocol.Tls/SslClientStream.cs:

        - Removed test code.

    * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:

        - Removed test code.

2004-02-13  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security.dll.sources: Added Diffie-Hellman contribution from
	Pieter Philippaerts (mentalis.org) to Mono.Security.Cryptography.
	* Mono.Security_test.dll.sources: Added Diffie-Hellman unit tests.

2004-02-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

    * Mono.Security.Cryptography/PKCS1.cs:

        - Added little change for allow the class to be used with
        hash implementations that doesn't have an oid like the MD5SHA1 hash.

    * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:

        - Throw exception if the Private Key is null.

    * Mono.Security.Protocol.Tls/SslServerStream.cs:

        - Ssl Server class without implementation ( methods signatures only )
        That matches the described in the .NET 1.2 documentation.

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

	* Mono.Security_test.dll.sources Added Mono.Math BigInteger unit test
	to the build (as they cannot be executed with corlib).

2004-02-09 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

    * Changed the license header to all the sources files
    to remove accents.

    * Mono.Security.Protocol.Tls/TlsSessionState.cs:

        - Removed old file.

	* Mono.Security.Protocol.Tls/SslClientStream.cs:

		- Try to improve record reading.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:

		- Send always the first certificate.

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:

		- Added changes for correct verification of the signed data sent 
		by the server.

	* Mono.Security.Cryptography/PKCS1.cs:

		- Added change to Encode_v15 method for allow correct
		encoding of hash algorithms that doesn't have an OID
		like the MD5SHA1 hash used in SSL/TLS protocols.

	* Added files from mono:: project that are going to be needed
	for client authentication:

		Mono.Math/*

		Mono.Math.Prime/*

		Mono.Math.Prime.Generator/*

		Mono.Security.Cryptography/RSAManaged.cs

	* Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:

		- Create RSA as an RSAManaged instance.
		
	* Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
	* Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:
		
		- Changed key field to be of RSA type.

	* Mono.Security.Protocol.Tls/RSASslSignatureFormatter.cs:
	* Mono.Security.Protocol.Tls/RSASslSignatureDeformatter.cs:

		- Added new classes for implement in the future RSA-SSL signatures.

	* Changed #region names in all source files.

	* Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
		
		- Fixed message (but not working yet - we need RSA signing 
		capabilitites with MD5SHA1 hash).	

	* Mono.Security.Protocol.Handshake.Client/TlsServerCertificate.cs:
	
		- Retrict certificate validation to the first validation.
		( real validation needs to be made using a chain )
		
		- Improved domain validation by making a IP checking between
		the target host IP and the certificate domain IP.

		- Fixed error list handling on certificate validation.	

	* Mono.Security.Protocol.Tls/SslClientStream.cs:

		- Added new exceptions.


2004-02-06  Sebastien Pouliot  <sebastien@ximian.com>

	* Mono.Security.dll.sources: Added KeyPairPersistence and it's 
	dependencies in Mono.Xml (MiniParser and SecurityParser). Also 
	added CryptoTools and SymmetricTransforms in Mono.Sec.Crypt.
	* Mono.Security_test.dll.sources: Added unit tests for 
	KeyPairPersistence.

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

	* Mono.Security.dll.sources: Added PKCS#12 support for X.509 certificates.
	* Mono.Security_test.dll.sources: Added unit tests for PKCS#12.

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

	* Mono.Security.dll.sources: Added Mono.Security.Protocol.Ntlm namespace
	* Mono.Security_test.dll.sources: Added Mono.Security.Protocol.Ntlm unit
	tests.

2003-11-27  Sebastien Pouliot  <spouliot@videotron.ca>

	* Mono.Security.dll.sources: Added MD4, MD4Managed and PKCS8 to build.
	* Mono.Security_test.dll.sources: Added unit tests for MD4, MD4Managed
	and PKCS8.
	
2003-11-22 Carlos Guzman Alvarez <carlosga@telefonica.net>

	* Changed line endings to unix format in SSL/TLS sources.
	
	* Mono.Security.CryptographyoHMD5SHA1CryptoServiceProvider.cs:
	
	    - Removed file (now it's called MD5SHA1.cs)
	
	* Mono.Security.Protocol.Tls/TlsCipherSuiteFactory.cs:
	
	    - Removed comments from AES ciphersuites.


2003-11-17 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/SslClientStream.cs:

		Removed ReadByte method, use innerStream.ReadByte() method instead.

2003-11-13 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Added implementation of an SslClientStream class similar to the MS .NET Framework 1.2 documentation.

		The next files are no more needed:

			- TlsSession.cs

			- TlsNetworkStream.cs

			- TlsSocket.cs

			- TlsSessionState.cs

		The next files are renamed:

			- TlsSessionSettings.cs -> TlsClientSettings.cs

			- TlsSessionContext.cs -> TlsContext.cs

		The next files are new:

			- SslClientStream.cs ( the name is non definitive yet )

		The next files where changed to reflect the new canges:

			- TlsHandshakeMessage.cs

			- TlsClientCertificate.cs

			- TlsClientCertificateVerify.cs

			- TlsClientFinished.cs

			- TlsClientHello.cs

			- TlsClientKeyExchange.cs

			- TlsServerCertificate.cs

			- TlsServerCertificateRequest.cs

			- TlsServerFinished.cs

			- TlsServerHello.cs

			- TlsServerHelloDone.cs

			- TlsServerKeyExchange.cs

			- TlsAlert.cs

			- TlsCloseNotifyAlert.cs

		
2003-11-12 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:
	
		- Changes for give full error message only in debug mode ( Thanks to Sebastién Pouliot. )
		
	* Mono.Security.Protocol.Tls/TlsProtocol.cs:
	
		- Renamed to SecurityProtocolType.cs ( for match .NET 1.2 )
	
	* Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
	
		- Renamed to MD5SHA1.cs ( Thanks to Sebastién Pouliot. )
		
	* Mono.Security.Cryptography/TlsCompressionMethod.cs:
	
		- Renamed to SecurityCompressionType.
		
	* Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:
	* Mono.Security.Protocol.Tls/HashAlgorithmType.cs:
	* Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:
	
		- New enumerations that matches .NET 1.2 definitions with some minor differences.
	
	* Mono.Security.Protocol.Tls/CipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsCipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsSessionContext.cs:
	
		- Added changes for make use of new enumerations.
	
	* Mono.Security.Protocol.Tls/TlsClientStream.cs:
	
		- Added new informative properties that matches .NET 1.2 SslClientStream
		( Not all the properties are implemented yet ).


2003-11-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:

		- Fixed invalid alert message.

	* Mono.Security.Protocol.Tls/CipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
	* Mono.Security.Cryptography/HMAC.cs:
	* Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:

		- Changed ( Thanks to Sebastién Pouliot for his feedback )

			SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();
			MD5CryptoServiceProvider sha = new MD5CryptoServiceProvider();

			to

			HashAlgorithm sha = SHA1.Create();
			HashAlgorithm md5 = MD5.Create(); 


2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:

		- Commented server certificate signature verification.

	* Mono.Security.Protocol.Tls/TlsServerSettings.cs:

		- Renamed ServerCertificates property to Certificates.


2003-11-04 Carlos Guzmán Álvarez (carlosga@telefonica.net)

	* Updated SSL/TLS implementation files with unix like line endings.

2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/CipherSuite.cs:

		- Added custom padding for record encryption.


2003-11-03 Carlos Guzmán Álvarez <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessages.cs:
	
		- Removed file.

	* Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:
	
		- New class for handshake hashes calculation on SSL3 protocol.

	* Mono.Security.Protocol.Tls/TlsSessionContext.cs:
	
		- Fixed mac keys clearing for SSL3 protocol.

	* Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
	
		- Added changes for make use of new TlsSslHandshakeHash class.
	
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
	
		- Added initial implementation for SSL3 protocol.
	
	* Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:
	
		- New class for md5-sha hash calculation.
							
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsHandshakeMessage.cs:
	
		- Make use of new MD5SHA1CryptoServiceProvider class.
		
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
	
		- Added initial implementation (not finished).
			
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:
	
		- Minor change to message processing.

		- Changed verify method name to verifySignature.
			
	* Mono.Security.Protocol.Tls/TlsSessionContext.cs:
	
		- Changed handshakeHashes member to be an TlsStream.

2003-10-28 Carlos Guzmán Álvarez <carlosga@telefonica.net>

	* Mono.Security.Protocol.Tls/CipherSuite.cs:
	* Mono.Security.Protocol.Tls/TlsSessionSettings.cs:
	* Mono.Security.Protocol.Tls/TlsServerSettings.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:
	* Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:

		- Added changes for make use of X509 classes from mono.

2003-10-23 Carlos Guzmán Álvarez <carlosga@telefonica.net>

	* Added partial implementation of SSL3 protocol ( not finished yet ) to the TLS sources.

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

	* Mono.Security.dll.sources: Removed AssemblyInfo.cs from build.
	This file is for TLS not for the complete Mono.Security assembly.

2003-10-20  Duncan Mak  <duncan@ximian.com>

	* Mono.Security.dll.sources: Added TlsAbstractCipherSuite.cs,
	TlsCipherSuiteFactory.cs and TlsCompressMethod.cs. This fixes the
	build.

2003-10-20  Carlos Guzmán Álvarez  <carlosga@telefonica.net>

	* Mono.Security.dll.sources: Added references for new Tls files.

2003-10-20  Pedro Martínez Juliá  <yoros@wanadoo.es>

	* Mono.Security.dll.sources: Added references for Tls files.

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

	* KeyAttributesExtension.cs: New. Added for WSE.

2003-09-01  Sebastien Pouliot  <spouliot@videotron.ca>

	* Mono.Security.dll.sources: Added support for Authenticode(tm)
	signatures.

2003-07-30  Sebastien Pouliot  <spouliot@videotron.ca>

	* Mono.Security.dll.sources: Added ExtendedKeyUsageExtension.cs 
	certificate extension (so MakeCert can now create SSL certificates).

2003-07-28  Sebastien Pouliot  <spouliot@videotron.ca>

	* Mono.Security.dll.sources: Added missing SubjectAltNameExtension.cs

2003-06-14  Sebastien Pouliot  <spouliot@videotron.ca>

	* list.unix. Added SubjectAltNameExtension.cs

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

	* list.unix: New. All C# files required to build the assembly.
	* makefile.gnu: New. Makefile to build the assembly under Linux.
	* Mono.Security.build: New. NAnt build file. 

