Initial commit.
Restructured code for all algorithms. Added support for sending and receiving of basic messages in SshClient (Disconnect, Unimplemented, Debug). Other minor improvements.
Added error handling for received messages that are malformed.
Made initial implementation of DH key exchange (currently not working).
Added system for importing/exporting DSS & RSA keys from/to streams/files.
Completed working implementation of DH key exchange.
Improved error handling in SshClient.
SshClient can now either take a Stream or IConnection object in its constructor. TcpConnection implements IConnection and is currently the only connection type in use.
Implemented packet decryption (not fully working?). Packet encryption is incomplete.
Added MAC verifier for received packets (working).
Implemented IDisposable interface correctly for algorithms and other classes.
Various bug fixes.
Fixed sending and receiving of encrypted packets.
Finished initial implementation of SSH Transport Layer protocol.
Refactored/tidied up parts of SshClient class.
Added SshAuthenticationService and SshConnectionService (both inheriting from SshService). Added support in SshClient for arbitrary SSH services (the two just stated are default).
Fixed sending of banner message in SshAuthenticationService.
Finished and tested implementation of zlib compression (seems to work perfectly).
SshClient will now automatically re-exchange keys after a certain number of bytes have been transmitted (uses MeasuredStream object).
Added code to all properties/non-private methods of IDisposable classes to check whether objects have been disposed yet.
Added Twofish cipher (untested).
Removed SshPacket (decided that code is more suitably placed in SshClient).
Split single project of solution into two projects ("SSH.NET" and "Windows SSH Server").
Started implementation of SshConnectionService.
Minor refactoring.
Abstracted host key loading away from SshClient.
Added Started and Stopped events to SshService.
TcpConnection now handles SocketException errors instead of SshClient.
Task list updated.
Changed CryptoStream buffer hack in SshClient so that it no longer uses Reflection. (Still needs a proper solution.)
Completed public key authentication method in SshAuthenticationService. Restructured event system for this class.
Added preliminary XML formats for server config in Config dir.
Minor bug fixes.
Added Server Manager project, which is a GUI management console (WCF based).
Server project is for background Windows Service.
Currently resolving issue with Diffie-Hellman key signature verification for OpenSSH client.
Set up framework in code for Windows Service (and service installer) for SSH server.
Fixed problem with OpenSSH client connecting. (Client does terminates ID string with only LF rather than CR LF.)
Completed and tested implementation of hostbased authentication. keyboard-interactive auth method is in progress.
Completed and tested Windows service installer for Server project. Service implementation is currently only basicly functional.
Enabled Server executable to run either as a Windows service or a user interface. This is automatically detected in the Program class.
keyboard-interactive auth method now sends info request message and partially handles info response message.
Implemented Pause and Continue feature for service class.
Fixed bug in SshStreamReader (ReadUInt* called wrong methods).
Added application manifest (app.manifest) file to Server project - indicates that admin priveleges are required to run executable.
Finished implementation of Windows event logging in SshService. Event log uses resource DLL (Server/EventLogMsgs.dll) for display text. Resource DLL is compiled from Server/EventLogMsgs.mc using Server/compile-res.ps1 script.