+2004-09-07 Sebastien Pouliot <sebastien@ximian.com>
+
+ * Mono.Security_test.dll.sources: Merge new unit tests from HEAD.
+
+2004-05-11 Carlos Guzman Alvarez <carlosga@telefonica.net>\r
+\r
+ * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:\r
+
+ - 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>\r
+\r
+ * Mono.Security.Protocol.Tls/Alert.cs:\r
+ * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
+ * Mono.Security.Protocol.Tls/CipherSuiteCollection.cs:\r
+ * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:\r
+ * Mono.Security.Protocol.Tls/Context.cs:\r
+ * Mono.Security.Protocol.Tls/RecordProtocol.cs:\r
+ * Mono.Security.Protocol.Tls/SecurityCompressionType.cs:\r
+ * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:\r
+ * Mono.Security.Protocol.Tls/SslServerStream.cs:\r
+ * Mono.Security.Protocol.Tls/TlsClientSettings.cs:\r
+\r
+ - Changes for fix FxCop Rules.
+
+ - Reworked CipherSuiteCollection class.\r
+\r
+ * Mono.Security.Protocol.Tls.Handshake/HandshakeMessage.cs:\r
+\r
+ - Changes for fix FxCop Rules.\r
+
+2004-04-21 Carlos Guzman Alvarez <carlosga@telefonica.net>\r
+\r
+ * Mono.Security.Protocol.Tls/DebugHelper.cs:\r
+\r
+ - New class.\r
+\r
+ * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:\r
+ * Mono.Security.Protocol.Tls/RecordProtocol.cs:\r
+ * Mono.Security.Protocol.Tls/Context.cs:\r
+ * Mono.Security.Protocol.Tls/Context.cs:\r
+ * Mono.Security.Protocol.Tls/SslCipherSuite.cs:\r
+ * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:\r
+ * Mono.Security.Protocol.Tls/SslClientStream.cs:\r
+\r
+ - Added debug capabilities.\r
+\r
+ * Mono.Security.Protocol.Tls/ServerContext.cs:\r
+\r
+ - Added initialization of requested CertificateTypes and CA's\r
+\r
+ * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificate.cs:\r
+ * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:\r
+ * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:\r
+ * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerHello.cs:\r
+ * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:\r
+\r
+ - Modfied exception handling\r
+\r
+ - Added debug capabilities.\r
+\r
+\r
+ * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificateRequest.cs:\r
+\r
+ - Modify SSL implementation.\r
+\r
+ * Mono.Security.Protocol.Tls.Handshake.Server/TlsServerCertificateRequest.cs:\r
+\r
+ - Initial implementation.\r
+\r
+ * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientCertificateVerify.cs:\r
+ * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientFinished.cs:\r
+ * Mono.Security.Protocol.Tls.Handshake.Server/TlsClientHello.cs:\r
+\r
+ - Modfied exception handling\r
+
+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 )