[pgsqlclient-checkins] pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake TlsServerCertificate
Status: Inactive
Brought to you by:
carlosga_fb
|
From: <car...@us...> - 2003-09-12 23:49:39
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake
In directory sc8-pr-cvs1:/tmp/cvs-serv21627
Modified Files:
TlsServerCertificate.cs TlsServerCertificateRequest.cs
TlsServerFinished.cs TlsServerHandshakeMessage.cs
TlsServerHello.cs TlsServerHelloDone.cs
TlsServerKeyExchange.cs
Log Message:
Changed received messages parsing, not finished and needs testing
Index: TlsServerCertificate.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake/TlsServerCertificate.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** TlsServerCertificate.cs 1 Sep 2003 10:21:20 -0000 1.3
--- TlsServerCertificate.cs 12 Sep 2003 23:49:35 -0000 1.4
***************
*** 44,49 ****
#region CONSTRUCTORS
! public TlsServerCertificate(TlsSession session, byte[] data)
! : base(session, TlsHandshakeType.Certificate, data)
{
}
--- 44,49 ----
#region CONSTRUCTORS
! public TlsServerCertificate(TlsSession session, TlsStreamReader reader)
! : base(session, TlsHandshakeType.Certificate, reader)
{
}
***************
*** 68,72 ****
// Read Length
! int length = ReadInt24();
int count = 0;
--- 68,72 ----
// Read Length
! int length = Reader.ReadInt24();
int count = 0;
***************
*** 74,86 ****
{
// Skip next 3 bytes
! int skip = ReadInt24();
// Read certificate length
! int certLength = ReadInt24();
if (certLength > 0)
{
// Read certificate
! X509Certificate certificate = new X509Certificate(ReadBytes(certLength));
certificates.Add(certificate);
--- 74,86 ----
{
// Skip next 3 bytes
! int skip = Reader.ReadInt24();
// Read certificate length
! int certLength = Reader.ReadInt24();
if (certLength > 0)
{
// Read certificate
! X509Certificate certificate = new X509Certificate(Reader.ReadBytes(certLength));
certificates.Add(certificate);
Index: TlsServerCertificateRequest.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake/TlsServerCertificateRequest.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** TlsServerCertificateRequest.cs 1 Sep 2003 10:21:20 -0000 1.2
--- TlsServerCertificateRequest.cs 12 Sep 2003 23:49:35 -0000 1.3
***************
*** 25,30 ****
#region CONSTRUCTORS
! public TlsServerCertificateRequest(TlsSession session, byte[] data)
! : base(session, TlsHandshakeType.ServerHello, data)
{
}
--- 25,30 ----
#region CONSTRUCTORS
! public TlsServerCertificateRequest(TlsSession session, TlsStreamReader reader)
! : base(session, TlsHandshakeType.ServerHello, reader)
{
}
Index: TlsServerFinished.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake/TlsServerFinished.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** TlsServerFinished.cs 1 Sep 2003 10:21:20 -0000 1.3
--- TlsServerFinished.cs 12 Sep 2003 23:49:35 -0000 1.4
***************
*** 26,31 ****
#region CONSTRUCTORS
! public TlsServerFinished(TlsSession session, byte[] data)
! : base(session, TlsHandshakeType.ServerHello, data)
{
}
--- 26,31 ----
#region CONSTRUCTORS
! public TlsServerFinished(TlsSession session, TlsStreamReader reader)
! : base(session, TlsHandshakeType.ServerHello, reader)
{
}
***************
*** 48,53 ****
protected override void Parse()
{
! int length = this.ReadInt24();
! byte[] serverPRF = this.ReadBytes(length);
TlsStreamWriter hashes = new TlsStreamWriter();
--- 48,53 ----
protected override void Parse()
{
! int length = Reader.ReadInt24();
! byte[] serverPRF = Reader.ReadBytes(length);
TlsStreamWriter hashes = new TlsStreamWriter();
Index: TlsServerHandshakeMessage.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake/TlsServerHandshakeMessage.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** TlsServerHandshakeMessage.cs 1 Sep 2003 10:21:20 -0000 1.2
--- TlsServerHandshakeMessage.cs 12 Sep 2003 23:49:35 -0000 1.3
***************
*** 21,25 ****
namespace System.Security.Tls.Handshake
{
! internal abstract class TlsServerHandshakeMessage : TlsStreamReader
{
#region FIELDS
--- 21,25 ----
namespace System.Security.Tls.Handshake
{
! internal abstract class TlsServerHandshakeMessage
{
#region FIELDS
***************
*** 27,30 ****
--- 27,31 ----
private TlsSession session;
private TlsHandshakeType handshakeType;
+ private TlsStreamReader reader;
#endregion
***************
*** 42,45 ****
--- 43,51 ----
}
+ protected TlsStreamReader Reader
+ {
+ get { return reader; }
+ }
+
#endregion
***************
*** 48,58 ****
public TlsServerHandshakeMessage(TlsSession session,
TlsHandshakeType handshakeType,
! byte[] data) : base(data)
{
this.session = session;
this.handshakeType = handshakeType;
// skip first byte
! ReadByte();
// Parse message
--- 54,65 ----
public TlsServerHandshakeMessage(TlsSession session,
TlsHandshakeType handshakeType,
! TlsStreamReader reader)
{
this.session = session;
this.handshakeType = handshakeType;
+ this.reader = reader;
// skip first byte
! Reader.ReadByte();
// Parse message
***************
*** 72,77 ****
public virtual void UpdateSession()
{
! this.session.HandshakeHashes.Update(this.GetBytes());
! this.Reset();
}
--- 79,84 ----
public virtual void UpdateSession()
{
! this.session.HandshakeHashes.Update(reader.GetBytes());
! reader.Reset();
}
Index: TlsServerHello.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake/TlsServerHello.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** TlsServerHello.cs 1 Sep 2003 10:21:20 -0000 1.2
--- TlsServerHello.cs 12 Sep 2003 23:49:35 -0000 1.3
***************
*** 36,41 ****
#region CONSTRUCTORS
! public TlsServerHello(TlsSession session, byte[] data)
! : base(session, TlsHandshakeType.ServerHello, data)
{
}
--- 36,41 ----
#region CONSTRUCTORS
! public TlsServerHello(TlsSession session, TlsStreamReader reader)
! : base(session, TlsHandshakeType.ServerHello, reader)
{
}
***************
*** 63,83 ****
{
// Read message length
! this.length = ReadInt24();
// Read protocol version
! this.protocol = (TlsProtocol)ReadShort();
// Read random - Unix time + Random bytes
! this.random = ReadBytes(32);
// Read Session id
! int length = (int)ReadByte();
if (length > 0)
{
! this.sessionId = ReadBytes(length);
}
// Read cipher suite
! short cipherCode = ReadShort();
if (Session.SupportedCiphers.IndexOf(cipherCode) == -1)
{
--- 63,83 ----
{
// Read message length
! this.length = Reader.ReadInt24();
// Read protocol version
! this.protocol = (TlsProtocol)Reader.ReadShort();
// Read random - Unix time + Random bytes
! this.random = Reader.ReadBytes(32);
// Read Session id
! int length = (int)Reader.ReadByte();
if (length > 0)
{
! this.sessionId = Reader.ReadBytes(length);
}
// Read cipher suite
! short cipherCode = Reader.ReadShort();
if (Session.SupportedCiphers.IndexOf(cipherCode) == -1)
{
***************
*** 88,92 ****
// Read compression methods ( always 0 )
! compressionMethod = ReadByte();
}
--- 88,92 ----
// Read compression methods ( always 0 )
! compressionMethod = Reader.ReadByte();
}
Index: TlsServerHelloDone.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake/TlsServerHelloDone.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** TlsServerHelloDone.cs 1 Sep 2003 10:21:20 -0000 1.2
--- TlsServerHelloDone.cs 12 Sep 2003 23:49:35 -0000 1.3
***************
*** 25,30 ****
#region CONSTRUCTORS
! public TlsServerHelloDone(TlsSession session, byte[] data)
! : base(session, TlsHandshakeType.ServerHello, data)
{
}
--- 25,30 ----
#region CONSTRUCTORS
! public TlsServerHelloDone(TlsSession session, TlsStreamReader reader)
! : base(session, TlsHandshakeType.ServerHello, reader)
{
}
Index: TlsServerKeyExchange.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PgSqlClient.Security.Tls/source/Handshake/TlsServerKeyExchange.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** TlsServerKeyExchange.cs 1 Sep 2003 10:21:20 -0000 1.3
--- TlsServerKeyExchange.cs 12 Sep 2003 23:49:35 -0000 1.4
***************
*** 34,39 ****
#region CONSTRUCTORS
! public TlsServerKeyExchange(TlsSession session, byte[] data)
! : base(session, TlsHandshakeType.ServerKeyExchange, data)
{
verify();
--- 34,39 ----
#region CONSTRUCTORS
! public TlsServerKeyExchange(TlsSession session, TlsStreamReader reader)
! : base(session, TlsHandshakeType.ServerKeyExchange, reader)
{
verify();
***************
*** 59,77 ****
protected override void Parse()
{
! int length = this.ReadInt24();
rsaParams = new RSAParameters();
// Read modulus
! length = this.ReadShort();
! rsaParams.Modulus = this.ReadBytes(length);
// Read exponent
! length = this.ReadShort();
! rsaParams.Exponent = this.ReadBytes(length);
// Read signed params
! length = this.ReadShort();
! signedParams = this.ReadBytes(length);
}
--- 59,77 ----
protected override void Parse()
{
! int length = Reader.ReadInt24();
rsaParams = new RSAParameters();
// Read modulus
! length = Reader.ReadShort();
! rsaParams.Modulus = Reader.ReadBytes(length);
// Read exponent
! length = Reader.ReadShort();
! rsaParams.Exponent = Reader.ReadBytes(length);
// Read signed params
! length = Reader.ReadShort();
! signedParams = Reader.ReadBytes(length);
}
|