Rebex



Rebex SSH Shell for .NET Release History

2011-03-09 Version 1.0.4086.0 #

  • Terminal: HistoryMaxLength property added to TerminalControl.
  • Terminal: Added regular-expression-based VirtualTerminal.Expect method.
  • Terminal: Prompt doesn't have to be set when a question prompt is specified in a ReadLine/ReadAll call.
  • Terminal: Shell class in ShellMode.Prompt works with *BSD now.
  • Terminal: VirtualTerminal.Expect behaves the same way no matter whether expected string comes at an end of a block of data or not and always stops at the first occurance.
  • Terminal: VirtualTerminal.DataReceived property added to make it possible to easily retrieve data received by Expect and Process methods.
  • SSH Core: Added workaround for old SSH servers that miscalulate HMAC-SHA1 keys.
  • SSH Core: Added SshParameters.AuthenticationMethods to make it possible to only enable desired authentication methods.
  • SSH Core: SendEof method added to SshChannel to make it possible to achieve plink-like functionality.
  • SSH Core: Fixed a bug in SSH channel window size adjustment code which could cause a timeout on servers which send oversized packets.
  • SSH Core: Fixed a bug that prevented SSH key renegotiation requests from being processed, resulting in a timeout.
  • SSH Core: Abort flag checking messages removed from Debug log.

2011-02-11 Version 1.0.4060.0 #

  • Terminal: During Select Character Set control sequence, character set is immediately invoked into GL.
  • Terminal: Added support for Pick terminals.
  • Terminal: Added ActionRequested event to TerminalControl and VirtualTerminal objects to make it possible to handle action requests from the server.
  • Terminal: CursorText and CursorMouse properties added to TerminalControl object.
  • SSH Core: AuthenticationRequest event added to make it possible to deal with all kinds of "keyboard-interactive" authentication prompts.
  • SSH Core: Fixed a possible race condition that might have occured when using the same SshSession intance from multiple threads.
  • SSH Core: Enhanced automated "keyboard-interactive" authentication to support more variants of password prompt.
  • SSH Core: Fixed a bug in ZLIB decompression routines.
  • SSH Core: SshSession.Encoding property added.
  • SSH Core: Added SshOptions.WaitForServerWelcomeMessage option.
  • ProxySocket: Added a new ILogWriter implementation that logs all messages to .NET's System.Diagnostics.Trace.
  • Security: Added a new overload of SshPrivateKey.Save to make it possible to save keys in SSLEay/OpenSSH format (in addition to PuTTY .ppk and PKCS #8 formats).
  • Security: Added CertificateChain.Save method to save the chain in .p7b format.
  • Security: Fixed a bug in DistinguishedName object that caused the elementes of string representation of DNs to be reversed.
  • Security: Added CryptoHelper.ForceManagedAes flag as a workaround to .NET's leaking AesCryptoServiceProvider.

2010-07-20 Version 1.0.3854.0 #

  • SSH Shell: Ssh class inherits from NetworkSession base class that implements some common properties.
  • Terminal: Added new SendToServer method overload to TerminalControl and VirtualTerminal that makes it possible to easily simulate function keys.
  • Terminal: New BreakSequence option added to TerminalOptions.
  • SSH Core: In FIPS-only mode, a CryptoAPI implementation of AES is used if available.
  • SSH Core: Added support for aes*-ctr and 3des-ctr ciphers.
  • SSH Core: SshSession class inherits from NetworkSession base class that implements some common properties.
  • SSH Core: SshChannel.ExtendedDataReceived event added to make it possible to receive extended data.

2010-05-20 Version 1.0.3793.0 #

  • SSH Shell: Added experimental support for CSH to Shell class.
  • SSH Shell: Added Ssh.Bind method to make it possible to bind the Ssh object to an existing SSH session.
  • Terminal: Fixed a bug that caused cursor to be redrawn incorrectly in some cases.
  • SSH Core: Added a workaround for a server that announces support for "password" authentication but requires "keyboard-interactive" instead.
  • SSH Core: Fixed a bug in ZLIB compression routines that caused compatibility problems with GlobalScape and BitVise servers when compression was enabled.
  • SSH Core: Fixed a bug that caused SSH session to hang if a broken (incomplete) SSH packet arrived (rare).

2010-03-11 Version 1.0.3723.0 #

  • SSH Shell: Added Terminal.GetSelectedText method to make it possible to retrieve the currently selected text.
  • SSH Shell: Ssh.Login method now accepts empty usernames.
  • SSH Shell: SshTerminalControl.LogWriter property added to make logging easier.
  • Terminal: Instances of Shell class returned from Ssh.StartShell i Prompt mode now refuse to work if the prompt was not set.
  • Terminal: SshShell instances returned by Ssh.StartCommand no longer stop on prompt-like text when ReadAll is called.
  • Terminal: Added TerminalPalette.Sco palette.
  • Terminal: Changed TerminalControl.Save and VirtualTerminal.Save in ANSI mode to not write the final <CR><LF> sequence.
  • Terminal: Fixed a bug in "CSI 0 J" escape sequence interpreter that caused the whole line to be cleared (instead of only a part of it).
  • Terminal: TerminalOptions.PersistColorsOnSgr added to make it possible to specify whether "CSI 0 m" escape sequence (default rendition) whould reset colors as well.
  • Terminal: TerminalScreen.GetRegion and TerminalScreen.GetRegionText methods added to make it easily possible to retrieve a part of the screen content.
  • Terminal: Block selection mode added (accessible through TerminalControl.SelectionMode property or using the Ctrl key).
  • Terminal: Added TerminalControl.MousePasteEnabled to make it possible to disable automated paste on right mouse button click.
  • Terminal: Terminal emulator now supports CSI 10, CSI 11 and CSI 12 escape sequences.
  • Terminal: Added SendToserver(byte[]) method to TerminalControl and VirtualTerminal classes.
  • Terminal: Added experimental support for Wyse 60 terminals.
  • Terminal: Fixed a bug that occasionally caused InvalidOperationException to be thrown on disconnected channels.
  • Terminal: Added support for CFT and CBT escape sequences to terminal emulator.
  • Terminal: New overload of TerminalScreen.Clear method added to make it possible to clear the history buffer as well.
  • Terminal: Redefined background color in custom color scheme mode is now applied to all parts of the terminal screen.
  • SSH Core: Added SshFingerprint.Compute and SshFingerprint.FromBase64String methods to make it possible to easily calculate a fingerprint of the supplied public key.
  • SSH Core: ZLIB compression is now switched off by default (caused problems with some servers).
  • SSH Core: Client KEX_INIT packet is sent without waiting for the server side one (this is the only proper behavior).
  • SSH Core: Added SshSession.KeepAlive method to make it possible to periodically "ping" the SSH connection to keep it working and detect failures.
  • ProxySocket: The underscore character is now allowed in hostnames (this is non-standard, but used by Windows).
  • ProxySocket: FileLogWriter is capable of logging into a single file from multiple applications now.
  • ProxySocket: ProxySocket.Send behavior changed to always send all the data or fail.
  • Security: Added Certificate.LoadDerWithKey method to make it possible to easily load certificates with private keys in external file (Unix-style).
  • Security: Support for PKCS #7 EnvelopedData encrypted using RC2 with effective key length not equal to key data length.
  • Security: Fixed a bug in EnvelopedData class that cause a NullReferenceException to be raised when unsupported encryption algorithm is encoutered.
  • Security: Internal ModPow method optimized.
  • Security: Key generation support removed from RSAManaged a DSAManaged. No part of any of our components ever used it at it was prohibitively slow anyway.

2009-10-27 Version 1.0.3588.0 #

  • SSH Shell: Added workaround for SSH packets 101 that some SSH servers were observed to use.
  • Terminal: Fixed a bug that caused Disconnect event not to be raised when some types of connection failures occured.
  • Terminal: TerminalControl now correctly resizes itself when hosted in WPF.
  • SSH Core: Fixed a bug in ArcFour cipher implementation that made it unusable.
  • SSH Core: Fixed a bug that caused an SSH welcome message to be parsed incorrectly when split accross multiple packets.
  • SSH Core: Added support for ZLIB transfer compression.
  • ProxySocket: Proxy object now has Encoding property that makes it possible to specify character set to be used for parsing server responses.
  • ProxySocket: ProxySocketException.ErrorCode property now returns HTTP and Socket4/Socks5 error codes when available.
  • ProxySocket: SspiAuthentication and GssApiProvider classes added that provide GSSAPI/SSPI functionality.
  • Security: Certificate's CRL distribution point list can be accessed using GetCrlDistributionPoints method.

2009-07-17 Version 1.0.3484.0 #

  • SSH Core: Fixed a bug in GSSAPI authentication that caused it to work improperly in 32bit .NET Framework.

2009-07-13 Version 1.0.3479.0 #

  • SSH Shell: Added support for break request defined by RFC 4335.
  • SSH Shell: Added Shell.GetExitCode method to make it possible to retrieve process exit code (if available).
  • Terminal: Fixed bad exception message in TerminalControl.Bind method.
  • Terminal: TerminalOptions serialization fixed to work correctly with serialized data from older releases.
  • Terminal: Fixed a bug in the logging code for SshChannel.SetTerminalSize method.
  • SSH Core: Support for GSSAPI authentication (gssapi-with-mic) added. Kerberos (not on .NET CF) and NTLM mechanisms are supported. MS SSPI is used as an underlying authentication provider.
  • SSH Core: SshFingerprint class extended to support multiple hash algorithms.
  • SSH Core: Added BannerReceived event that ca be used to receive banner messages sent by the server.
  • SSH Core: Added FingerprintCheck event as an alternative way to check server fingerprint.
  • SSH Core: Support for authentication using both username/password and public key at the same time made compatible with Maverick SSHD server.
  • Security: .PFX/P12 private key file loading support for Windows Mobile 5 and newer.
  • Security: Added support for signatures based on SHA-2 (SHA-256, SHA-384 and SHA-512).
  • Security: If .NET 3.5 is available, a new and much faster AES implementation is used instead of RijndaelManaged.
  • Security: Behavior of certificate finders in CMS/PKCS #7 was enhanced - embedded certificates are always searched now.

2009-05-20 Version 1.0.3428.0 #

  • Terminal: Poll method added into IShellChannel.
  • Terminal: Fixed a bug that caused the Enter key not to be echoed when local echo is on.
  • SSH Core: Added FIPS 140-2 compliant mode that is automatically enabled on systems where only compliant algorithms are allowed.
  • SSH Core: Added a new exception status - PasswordChangeRequired - that is used when a password change is required before authentication can be successfully completed.

2009-02-19 Version 1.0.3333.0 #

  • SSH Shell: Shell.Close method added to make it possible to gracefully close an SSH shell session.
  • Terminal: Added a variant of Shell.SendCommand method that makes it possible to send 'invisible' data such as passwords.
  • Terminal: Prompt-matching in Shell class changed to make it possible to match beginning of a line.
  • SSH Core: Banner message is now logged when using the LogWriter fuctionality.
  • SSH Core: Added workaround for badly-formed DSA signature produced by SSH Secure Shell 3.1.0 (and possibly other versions).
  • SSH Core: Added a workaround to the Compact Framework version for VanDyke VShell server that sends primes that are one bit longer than expected.
  • ProxySocket: Fixed a bug in Socks4/Socks5 proxy code that made it impossible to use FTP in active mode with these proxies.
  • Security: CertificateStore.FindCertificate overloads that accept DistinguishedName now search for certificates signed by intermediate CAs as well.
  • Security: Enhanced treatment of empty passwords in the PFX loader.
  • Security: Certificates with SubjectAlternativeName extension marked as critical are now treated as not having any e-mail address assigned to them if no e-mail address is found in the extension data.
  • Security: Fixed a bug in DiffeHellmanManaged.ImportParameters method that made it impossible to import key with all parameters filled.

2009-01-14 Version 1.0.3300.0 #

  • SSH Shell: Added scroll-back buffer support.
  • SSH Shell: Asynchronous operations now use a thread pool.
  • SSH Shell: Asynchronous method threads are now named.
  • Terminal: Added Expect method to make scripting possible easily.
  • Terminal: Added drawing routines for most box-drawing and block element characters that are either not present or improperly drawn in majority of fonts.
  • Terminal: Added custom palette support.
  • Terminal: Added support for custom color schemes to TerminalOptions class.
  • Terminal: Fixed a bug that caused an extra column to appear in a newly-created terminal control.
  • Terminal: Added support for 'ksh' shell.
  • Terminal: Added support for setting the font using the Control's Font property (previously, TerminalFont had to be used).
  • Terminal: Added the ability to scroll while selecting a long chunk of text.
  • Terminal: Fixed a bug that caused the terminal control to resize several times when minimized and maximized again.
  • Terminal: Added DataReceived event to TerminalControl and VirtualTerminal classes.
  • Terminal: Added AutoAdjustTerminalFont, UserInputEnabled, ScrollBarEnabled and ScrollbackResetOnDisplayActivity properties to TerminalControl class.
  • SSH Core: Added support for saving PuTTY private keys.
  • SSH Core: Added ChangePassword method to SshSession class to make it possible to change user password.
  • SSH Core: Added support for servers that don't require a password.
  • SSH Core: Fixed a bug in SshSession that caused problems when multiple channels through the same SSH session were used at the same time.
  • Security: Added support for reading and setting private key comment.
  • Security: Added RootCertificate and LeafCertificate properties to CertificateChain class.
  • Security: Added GetCommonName method to DistinguishedName class.
  • Security: Added IEnumerator support to CertificateChain.
  • Security: Added Equals method to DistinguishedName class.
  • Security: Fixed a bug in OID decoding routine that cased it to occasionally hang on roken input data.
  • Security: Added new Certificate.LoadPfx to make it possible to load keys into machine store.
  • Security: Fixed a problem in Certificate.Decrypt method that made the decryption fail with some rare certificates.
  • Security: Added Certificate.Associate method to make it possible to associate a RSA/DSA crypto service provider with access to a private key with a certificate.

2008-07-24 Version 1.0.3127.0

  • Initial public release.