2004-04-16 Carlos Guzman Alvarez <carlosga@telefonica.net>
authorCarlos Guzmán Álvarez <carlos@mono-cvs.ximian.com>
Fri, 16 Apr 2004 15:24:01 +0000 (15:24 -0000)
committerCarlos Guzmán Álvarez <carlos@mono-cvs.ximian.com>
Fri, 16 Apr 2004 15:24:01 +0000 (15:24 -0000)
* 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.

svn path=/trunk/mcs/; revision=25609

mcs/class/Mono.Security/ChangeLog
mcs/class/Mono.Security/Mono.Security.Protocol.Tls/ChangeLog
mcs/class/Mono.Security/Mono.Security.Protocol.Tls/TlsException.cs

index fc553334b96254eabac2b3f1abbe609472b8f1e9..5a5f18a3bde82c3863a526da49d5af44fd72de55 100644 (file)
@@ -1,3 +1,9 @@
+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:
index 4a205a7a1bb010ec071cf6849d9b981c501e4f55..0494994e063cea955dff7ef5f1ff6f4af4a21dbb 100644 (file)
@@ -1,14 +1,20 @@
+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-03-19 Carlos Guzman Alvarez  <carlosga@telefonica.net>
 
        * Mono.Security.Protocol.Tls/TlsServerSettings.cs:
 
-               - Added new CertificateRSA property.\r
-\r
-               - Added new UpdateCertfificateRSA method.\r
+               - Added new CertificateRSA property.
+
+               - Added new UpdateCertfificateRSA method.
 
-       * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
-\r
-               - Removed CertificateRSA() method.      \r
+       * Mono.Security.Protocol.Tls/CipherSuite.cs:
+
+               - Removed CertificateRSA() method.      
 
 2004-03-19  Sebastien Pouliot  <sebastien@ximian.com>
 
        * SslCipherSuite.cs: Fixed key generation for exportable ciphers.
        * TlsCipherSuite.cs: Fixed key generation for exportable ciphers.
 
-2004-03-16 Carlos Guzman Alvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/SslCipherSuite.cs:\r
-\r
-               - Added changes for allow it to work as server or client.\r
-\r
-2004-03-15 Carlos Guzman Alvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/TlsStream.cs:\r
-       * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/SslHandshakeHash.cs:\r
-       * Mono.Security.Protocol.Tls/RecordProtocol.cs:\r
-\r
+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:
+
                - Use Buffer.BlockCopy instead of System.Array.Copy
 
-2004-03-10 Carlos Guzman Alvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/Ciphersuite.cs:\r
-\r
-               - Added generation of the Server encryption algorithms.\r
-\r
-               - Modified encryption/decription methods for work\r
-               as client or server as needed.\r
-\r
-       * Mono.Security.Protocol.Tls/RecordProtocol.cs:\r
-       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:\r
-       * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:\r
-\r
-               - Added new ProcessChangeCipherSpec method.\r
-\r
-       * Mono.Security.Protocol.Tls/Context.cs:\r
-\r
-               - Added new PrintBuffer method ( for debug ).\r
-\r
-       * Mono.Security.Protocol.Tls/SslClientStream.cs:\r
-       * Mono.Security.Protocol.Tls/SslServerStream.cs:\r
-\r
-               - Callback cleanup.\r
+2004-03-10 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * 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/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/SslServerStream.cs:\r
-\r
+       * Mono.Security.Protocol.Tls/SslServerStream.cs:
+
                - Initial implementation of the doHandshake method.
 
-        - Added initial events implementation.\r
-\r
-       * Mono.Security.Protocol.Tls/Ciphersuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsCiphersuite.cs:\r
-       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:\r
-       * Mono.Security.Protocol.Tls/ServerRecordProtocol.cs:\r
-       * Mono.Security.Protocol.Tls/SslClientStream.cs:\r
-       * Mono.Security.Protocol.Tls/TlsServerSettings.cs:\r
-       * Mono.Security.Protocol.Tls/TlsClientSettings.cs:\r
-       * Mono.Security.Protocol.Tls/ClientContext.cs:\r
-\r
-               - Changes for make use of the renamed classes and enums.\r
-\r
-       * Mono.Security.Protocol.Tls/TlsContentType.cs:\r
-\r
-               - Renamed to ContentType.cs ( Enum and file )\r
\r
-       * Mono.Security.Protocol.Tls/TlsCiphersuiteCollection.cs:\r
-\r
-               - Renamed to CiphersuiteCollection.cs ( Class and file )\r
-\r
-       * Mono.Security.Protocol.Tls/TlsCiphersuiteFactory.cs:\r
-\r
-               - Renamed to CiphersuiteCollection.cs ( Class and file )\r
-\r
-       * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:\r
-\r
-               - Renamed to SslHandshakeHash.cs ( Class and file )\r
-\r
-       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
-\r
-               - Renamed to SslCipherSuite.cs ( Class and file )\r
-
-2004-02-26 Carlos Guzman Alvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/HandshakeState.cs:\r
-\r
-               - New file.\r
-\r
-       * Mono.Security.Protocol.Tls/SslClientStream.cs:\r
-       * Mono.Security.Protocol.Tls/SslServerStream.cs:\r
-       * Mono.Security.Protocol.Tls/Context.cs:\r
-       * Mono.Security.Protocol.Tls/ClientContext.cs:\r
-       * Mono.Security.Protocol.Tls/ClientRecordProtocol.cs:\r
-\r
+        - 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:
+
+               - Changes for make use of the renamed classes and enums.
+
+       * 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-02-26 Carlos Guzman Alvarez  <carlosga@telefonica.net>
+
+       * Mono.Security.Protocol.Tls/HandshakeState.cs:
+
+               - New file.
+
+       * 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:
+
                - Added changes for better handling of ClientHelloRequest messages.
 
 2004-02-25  Sebastien Pouliot  <sebastien@ximian.com>
        * HttpsClientStream.cs: New. Internal glue class between System.dll 
        WebConnection and SslClientStream to reduce reflection.
        * SslClientStream.cs: RaiseServerCertificateValidation is now virtual
-       to allow HttpsClientStream to override it.\r
+       to allow HttpsClientStream to override it.
 
 2004-02-24 Carlos Guzman Alvarez  <carlosga@telefonica.net>
 
-       * Mono.Security.Protocol.Tls/RecordProtocol.cs:\r
-       * Mono.Security.Protocol.Tls/SslClientStream.cs:\r
-       * Mono.Security.Protocol.Tls/SslServerStream.cs:\r
-\r
+       * 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-20 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
+2004-02-20 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
 
        * Mono.Security.Protocol.Tls.Handshake.Client/SslClientCertificate.cs:
 
         - Improved exception handling.
 
-2004-02-18 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:\r
-       * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:\r
-       * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:\r
-\r
-               - Added Serializable attribute.\r
-\r
-       * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsContext.cs:\r
-\r
-               - Added some optimizations proposed by Sebastien Pouliot.\r
-\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:\r
-\r
-               - Changes on Common Name detection and certificate error handling ( Thanks to Sebastien Pouliot for his feedback ).\r
+2004-02-18 Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       * 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-18  Sebastien Pouliot  <sebastien@ximian.com>
 
 
         - Removed test code.
 
-2003-11-17 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/SslClientStream.cs:\r
-\r
-               Removed ReadByte method, use innerStream.ReadByte() method instead.\r
-\r
-2003-11-13 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
-\r
-       * Added implementation of an SslClientStream class similar to the MS .NET Framework 1.2 documentation.\r
-\r
-               The next files are no more needed:\r
-\r
-                       - TlsSession.cs\r
-\r
-                       - TlsNetworkStream.cs\r
-\r
-                       - TlsSocket.cs\r
-\r
-                       - TlsSessionState.cs\r
-\r
-               The next files are renamed:\r
-\r
-                       - TlsSessionSettings.cs -> TlsClientSettings.cs\r
-\r
-                       - TlsSessionContext.cs -> TlsContext.cs\r
-\r
-               The next files are new:\r
-\r
-                       - SslClientStream.cs ( the name is non definitive yet )\r
-\r
-               The next files where changed to reflect the new canges:\r
-\r
-                       - TlsHandshakeMessage.cs\r
-\r
-                       - TlsClientCertificate.cs\r
-\r
-                       - TlsClientCertificateVerify.cs\r
-\r
-                       - TlsClientFinished.cs\r
-\r
-                       - TlsClientHello.cs\r
-\r
-                       - TlsClientKeyExchange.cs\r
-\r
-                       - TlsServerCertificate.cs\r
-\r
-                       - TlsServerCertificateRequest.cs\r
-\r
-                       - TlsServerFinished.cs\r
-\r
-                       - TlsServerHello.cs\r
-\r
-                       - TlsServerHelloDone.cs\r
-\r
-                       - TlsServerKeyExchange.cs\r
-\r
-                       - TlsAlert.cs\r
-\r
-                       - TlsCloseNotifyAlert.cs\r
-\r
-               \r
-2003-11-12 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:\r
-       \r
-               - Changes for give full error message only in debug mode ( Thanks to Sebastién Pouliot. )\r
-               \r
-       * Mono.Security.Protocol.Tls/TlsProtocol.cs:\r
-       \r
-               - Renamed to SecurityProtocolType.cs ( for match .NET 1.2 )\r
-       \r
-       * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:\r
-       \r
-               - Renamed to MD5SHA1.cs ( Thanks to Sebastién Pouliot. )\r
-               \r
-       * Mono.Security.Cryptography/TlsCompressionMethod.cs:\r
-       \r
-               - Renamed to SecurityCompressionType.\r
-               \r
-       * Mono.Security.Protocol.Tls/CipherAlgorithmType.cs:\r
-       * Mono.Security.Protocol.Tls/HashAlgorithmType.cs:\r
-       * Mono.Security.Protocol.Tls/ExchangeAlgorithmType.cs:\r
-       \r
-               - New enumerations that matches .NET 1.2 definitions with some minor differences.\r
-       \r
-       * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsCipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsSessionContext.cs:\r
-       \r
-               - Added changes for make use of new enumerations.\r
-       \r
-       * Mono.Security.Protocol.Tls/TlsClientStream.cs:\r
-       \r
-               - Added new informative properties that matches .NET 1.2 SslClientStream\r
-               ( Not all the properties are implemented yet ).\r
-\r
-\r
-2003-11-10 Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls.Alerts/TlsAlert.cs:\r
-\r
-               - Fixed invalid alert message.\r
-\r
-       * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
-       * Mono.Security.Cryptography/HMAC.cs:\r
-       * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:\r
-\r
-               - Changed ( Thanks to Sebastién Pouliot for his feedback )\r
-\r
-                       SHA1CryptoServiceProvider sha = new SHA1CryptoServiceProvider();\r
-                       MD5CryptoServiceProvider sha = new MD5CryptoServiceProvider();\r
-\r
-                       to\r
-\r
-                       HashAlgorithm sha = SHA1.Create();\r
-                       HashAlgorithm md5 = MD5.Create(); \r
-
-2003-11-04 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
-\r
-               - Added custom padding for record encryption.\r
-\r
-\r
-2003-11-03 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls.Handshake/TlsHandshakeMessages.cs:\r
-       \r
-               - Removed file.\r
-\r
-       * Mono.Security.Protocol.Tls/TlsSslHandshakeHash.cs:\r
-       \r
-               - New class for handshake hashes calculation on SSL3 protocol.\r
-\r
-       * Mono.Security.Protocol.Tls/TlsSessionContext.cs:\r
-       \r
-               - Fixed mac keys clearing for SSL3 protocol.\r
-\r
-       * Mono.Security.Protocol.Tls/TlsSslCipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:\r
-       \r
-               - Added changes for make use of new TlsSslHandshakeHash class.\r
-       \r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:\r
-       \r
-               - Added initial implementation for SSL3 protocol.\r
-       \r
-       * Mono.Security.Cryptography/MD5SHA1CryptoServiceProvider.cs:\r
-       \r
-               - New class for md5-sha hash calculation.\r
-                                                       \r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientFinished.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerFinished.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsHandshakeMessage.cs:\r
-       \r
-               - Make use of new MD5SHA1CryptoServiceProvider class.\r
-               \r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:\r
-       \r
-               - Added initial implementation (not finished).\r
-                       \r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:\r
-       \r
-               - Minor change to message processing.\r
-\r
-               - Changed verify method name to verifySignature.\r
-                       \r
-       * Mono.Security.Protocol.Tls/TlsSessionContext.cs:\r
-       \r
-               - Changed handshakeHashes member to be an TlsStream.\r
-\r
-2003-10-28 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
-\r
-       * Mono.Security.Protocol.Tls/CipherSuite.cs:\r
-       * Mono.Security.Protocol.Tls/TlsSessionSettings.cs:\r
-       * Mono.Security.Protocol.Tls/TlsServerSettings.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientCertificateVerify.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsClientKeyExchange.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerCertificate.cs:\r
-       * Mono.Security.Protocol.Tls.Handshake.Client/TlsServerKeyExchange.cs:\r
-\r
-               - Added changes for make use of X509 classes from mono.\r
-\r
-2003-10-23 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
-\r
-       * Added partial implementation of SSL3 protocol ( not finished yet ).\r
-\r
-       * TlsAbstractCipherSuite.cs: Renamed to CipherSuite.cs.\r
-\r
-       * Removed AssemblyInfo.cs file.\r
-\r
-2003-10-21 Carlos Guzmán Álvarez <carlosga@telefonica.net>\r
-\r
-       TlsCipherSuiteFactory.cs: Changed names of private methods.\r
-\r
-       TlsSslCipherSuite.cs: Replaced implementations of key generation methods with a throw new NotSupportedException().\r
-\r
-\r
-2003-10-20  Carlos Guzmán Álvarez  <carlosga@telefonica.net>\r
-\r
-       TlsCupherSuite.cs: Fixed padding length calculation on record encryption.\r
-       \r
-       TlsSessionContext.cs:   Added new CompressionMethod property.\r
-                                       Added new MAX_FRAGMENT_SIZE constant.\r
-\r
-       TlsSession.cs: Removed MaxFragmentSize property.\r
-\r
-       TlsSocket.cs: Replaced use of TlsSesison.MaxFragmentSize by TlsSessionContext.MAX_FAGMENT_SIZE\r
-       \r
-       TlsSessionSettings.cs: Added new CompressionMethod property.\r
-\r
-       * Abstracted CipherSuite classes for allow work with other protocol versions.\r
-\r
-       * Added new files :\r
-\r
-               TlsAbstractCipherSuite.cs \r
-                       \r
-               TlsSslCipherSuite.cs\r
-\r
-               TlsCipherSuiteFactory.cs\r
-\r
-               TlsCompressionMethod.cs\r
-\r
-       * Added new cipher suites definitions based on RFC3268 - (http://www.ietf.org/rfc/rfc3268.txt)\r
-\r
-       * Added two new supported ciphersuites for TLS protocol:\r
-\r
-               TLS_RSA_WITH_AES_256_CBC_SHA\r
-\r
-               TLS_RSA_WITH_AES_128_CBC_SHA\r
-\r
-       * Moved key generation stuff to specific cipher suite classes.\r
-\r
-2003-10-20  Pedro Martínez Juliá  <yoros@wanadoo.es>\r
-\r
-       * AssemblyInfo.cs: commented out KeyFile reference.\r
-\r
-       * TlsSession.cs: changed Math.Pow for System.Math.Pow because of MCS\r
-       bug with namespace resolving.\r
-\r
+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/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 ).
+
+       * TlsAbstractCipherSuite.cs: Renamed to CipherSuite.cs.
+
+       * Removed AssemblyInfo.cs file.
+
+2003-10-21 Carlos Guzmán Álvarez <carlosga@telefonica.net>
+
+       TlsCipherSuiteFactory.cs: Changed names of private methods.
+
+       TlsSslCipherSuite.cs: Replaced implementations of key generation methods with a throw new NotSupportedException().
+
+
+2003-10-20  Carlos Guzmán Álvarez  <carlosga@telefonica.net>
+
+       TlsCupherSuite.cs: Fixed padding length calculation on record encryption.
+       
+       TlsSessionContext.cs:   Added new CompressionMethod property.
+                                       Added new MAX_FRAGMENT_SIZE constant.
+
+       TlsSession.cs: Removed MaxFragmentSize property.
+
+       TlsSocket.cs: Replaced use of TlsSesison.MaxFragmentSize by TlsSessionContext.MAX_FAGMENT_SIZE
+       
+       TlsSessionSettings.cs: Added new CompressionMethod property.
+
+       * Abstracted CipherSuite classes for allow work with other protocol versions.
+
+       * Added new files :
+
+               TlsAbstractCipherSuite.cs 
+                       
+               TlsSslCipherSuite.cs
+
+               TlsCipherSuiteFactory.cs
+
+               TlsCompressionMethod.cs
+
+       * Added new cipher suites definitions based on RFC3268 - (http://www.ietf.org/rfc/rfc3268.txt)
+
+       * Added two new supported ciphersuites for TLS protocol:
+
+               TLS_RSA_WITH_AES_256_CBC_SHA
+
+               TLS_RSA_WITH_AES_128_CBC_SHA
+
+       * Moved key generation stuff to specific cipher suite classes.
+
+2003-10-20  Pedro Martínez Juliá  <yoros@wanadoo.es>
+
+       * AssemblyInfo.cs: commented out KeyFile reference.
+
+       * TlsSession.cs: changed Math.Pow for System.Math.Pow because of MCS
+       bug with namespace resolving.
+
index 065904cd3edc6ae7074d6637f5c1d8a5d007493b..6d03178aee838c41adadd66f4be7a55851bce176 100644 (file)
@@ -29,7 +29,7 @@ using System.Runtime.Serialization;
 namespace Mono.Security.Protocol.Tls
 {
        [Serializable]
-       internal sealed class TlsException : Exception
+       public sealed class TlsException : Exception
        {       
                #region Fields