| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Merge pull request #421 from mfazekas/read-data-return-before-raiseignore-disconnect-exception-when-all-closed | Miklós Fazekas | 2016-08-14 | 2 | -2/+23 |
| |\ | | | | | non blocking next_packet shall return the available data before raisi… | ||||
| | * | non blocking next_packet shall return the available data before raising ↵ | Miklos Fazekas | 2016-08-14 | 2 | -2/+23 |
| | | | | | | | | | disconnect | ||||
| * | | Merge pull request #418 from mfazekas/beta2-preparev4.0.0.beta2 | Miklós Fazekas | 2016-08-08 | 3 | -3/+7 |
| |\ \ | |/ |/| | Fixed raiseUnlessLoaded undefined ERROR issue | ||||
| | * | Fixed raiseUnlessLoaded undefined ERROR issue | Miklos Fazekas | 2016-08-08 | 3 | -3/+7 |
| |/ | |||||
| * | Merge pull request #410 from mfazekas/try-jruby-9.1.2.0v4.0.0.beta1 | Miklós Fazekas | 2016-07-23 | 3 | -6/+6 |
| |\ | | | | | Try jruby 9.1.2.0 | ||||
| | * | Try 9.1.2.0 | Miklos Fazekas | 2016-07-23 | 3 | -6/+6 |
| | | | |||||
| * | | Merge pull request #409 from mfazekas/fix-240-iv-error | Miklós Fazekas | 2016-07-23 | 2 | -1/+2 |
| |\ \ | |/ | | | Fixed 2.4.0 preview error | ||||
| | * | Fixed 2.4.0 preview error | Miklos Fazekas | 2016-07-23 | 2 | -1/+2 |
| | | | |||||
| * | | Merge pull request #408 from mfazekas/prepare-400beta | Miklós Fazekas | 2016-07-23 | 2 | -2/+6 |
| |\ \ | |/ | | | prepare for 4.0.0.beta1 | ||||
| | * | prepare for 4.0.0.beta1 | Miklos Fazekas | 2016-07-23 | 2 | -2/+6 |
| | | | |||||
| * | | Merge pull request #385 from elconas/fix_issue_235-rebase2 | Miklós Fazekas | 2016-07-23 | 1 | -1/+1 |
| |\ \ | |/ |/| | Fix issue #235 | ||||
| | * | Added Fix for ansible in https://github.com/net-ssh/net-ssh/pull/383 | elconas | 2016-06-10 | 1 | -0/+1 |
| | | | |||||
| | * | Fix https://github.com/net-ssh/net-ssh/issues/235 | elconas | 2016-06-10 | 1 | -1/+1 |
| | | | |||||
| * | | Merge pull request #407 from mfazekas/utf8 | Miklós Fazekas | 2016-07-23 | 11 | -10/+85 |
| |\ \ | | | | | | | Utf8 | ||||
| | * | | UTF-8: Optimize away dup when it's safe, added integrations tests | Miklos Fazekas | 2016-07-23 | 10 | -7/+65 |
| | | | | |||||
| | * | | Prevent encoding issues building UTF8 buffers | Iristyle | 2016-07-23 | 3 | -3/+20 |
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Prior to this change, attempting to send UTF8 commands through SSH, or attempting to copy files with UTF8 filenames could fail. This was particularly easy to trigger by attempting to execute commands that were 128 bytes or longer. - monkey patch net-ssh gem to allow UTF-8 strings >= 128 bytes The buffer @content is often built as a UTF-8 string, until the point at which it appends data that cannot be encoded as a UTF-8 sequence. One case occurs when the call to write_string is made to append a string that exceeds 127 bytes in length. The SSH2 format says that strings must be length prefixed, and when the value [128] has pack("N*") called against it, the resultant 4 byte network order representation does not have a valid UTF-8 equivalent, resulting in an ASCII-8BIT / BINARY string. [127].pack('N*').encode('utf-8') => "\u0000\u0000\u0000\u007F" [128].pack('N*').encode('utf-8') Encoding::UndefinedConversionError: "\x80" from ASCII-8BIT to UTF-8 Ruby has a subtle behavior where appending a BINARY string to an existing UTF-8 string is allowed and the resultant string changes encoding to BINARY. However, once this has happened, the string can no longer have UTF-8 encoded strings appended as Ruby will raise an Encoding:CompatibilityError Appending BINARY to UTF-8 always creates BINARY: "foo".encode('utf-8') << [128].pack('N*') => "foo\x00\x00\x00\x80" Appending UTF-8 representable strings to existing strings: Ruby 2.1.7 keeps the string as its default UTF-8 "foo" << [127].pack('N*') => "foo\u0000\u0000\u0000\u007F" Ruby 1.9.3 keeps UTF-8 strings as UTF-8 "foo".encode('utf-8') << [127].pack('N*') => "foo\u0000\u0000\u0000\u007F" Ruby 1.9.3 defaults to US-ASCII which changes it to BINARY pry(main)> "foo" << [127].pack('N*') => "foo\x00\x00\x00\x7F" The simple solution is to call force_encoding on UTF-8 strings prior to appending them to @content, given it's always OK to append ASCII-8BIT / BINARY strings to existing strings, but appending UTF-8 to BINARY raises errors. "\x80".force_encoding('ASCII-8BIT') << "\u16A0" Encoding::CompatibilityError: incompatible character encodings: ASCII-8BIT and UTF-8 force_encoding in this case, will simply translate a valid UTF-8 string to its BINARY equivalent "\u16A0".force_encoding('BINARY') => "\xE1\x9A\xA0" Correct conversion per http://www.fileformat.info/info/unicode/char/16a0/index.htm | ||||
| * | | Merge pull request #398 from mfazekas/fix-read-keyblob | Miklós Fazekas | 2016-07-19 | 5 | -15/+41 |
| |\ \ | | | | | | | Raise better error in read_keyblob if rbnacl is not available | ||||
| | * | | Raise better errors if ED25519 support is not available | Miklos Fazekas | 2016-07-19 | 5 | -15/+41 |
| |/ / | |||||
| * | | Merge pull request #386 from mfazekas/fix-ansible-2 | Miklós Fazekas | 2016-06-10 | 1 | -0/+1 |
| |\ \ | |/ |/| | Added Fix for ansible in https://github.com/net-ssh/net-ssh/pull/383 | ||||
| | * | Added Fix for ansible in https://github.com/net-ssh/net-ssh/pull/383 | elconas | 2016-06-10 | 1 | -0/+1 |
| |/ | |||||
| * | Merge pull request #371 from KaneMorgan/default-options | Miklós Fazekas | 2016-05-16 | 2 | -9/+20 |
| |\ | | | | | set default options before checking for nils | ||||
| | * | set default options before checking for nils | Kane Morgan | 2016-05-15 | 2 | -9/+20 |
| | | | |||||
| * | | Merge pull request #372 from mfazekas/fix-ci | Miklós Fazekas | 2016-05-16 | 4 | -5/+6 |
| |\ \ | |/ |/| | Fix rbnacl-libsodium issue on windows, fix CI | ||||
| | * | Fix rbnacl-libsodium issue on windows, fix CI | Miklos Fazekas | 2016-05-16 | 4 | -5/+6 |
| |/ | |||||
| * | Merge pull request #367 from eligible/minimum_dh_bits | Miklós Fazekas | 2016-05-09 | 5 | -6/+22 |
| |\ | | | | | Adds minimum_dh_bits option. | ||||
| | * | Fix rubocop issue | Aaron Bedra | 2016-05-05 | 1 | -5/+2 |
| | | | |||||
| | * | Adds minimum_dh_bits option. | Aaron Bedra | 2016-05-05 | 5 | -6/+25 |
| |/ | | | | | | | This commit introduces a new option, minimum_dh_bits. This option allows the user to specify the minimum required bits for a diffie helman key exchange in situations where the minimum hardcoded value of 1024 is too weak. | ||||
| * | Windows ci | Miklos Fazekas | 2016-05-03 | 1 | -2/+4 |
| | | |||||
| * | Merge pull request #364 from mfazekas/400alpha4v4.0.0.alpha4 | Miklós Fazekas | 2016-05-02 | 2 | -1/+10 |
| |\ | | | | | alpha4 release prepare | ||||
| | * | alpha4 release prepare | Miklos Fazekas | 2016-05-02 | 2 | -1/+10 |
| | | | |||||
| * | | Merge pull request #354 from mfazekas/appveyor | Miklós Fazekas | 2016-05-02 | 1 | -0/+18 |
| |\ \ | |/ |/| | appveyor - windows ci | ||||
| | * | Update appveyor.yml | Miklós Fazekas | 2016-05-02 | 1 | -3/+3 |
| | | | |||||
| | * | appveyor | Miklos Fazekas | 2016-04-13 | 1 | -0/+18 |
| | | | |||||
| * | | Merge pull request #309 from mfazekas/event-loop | Miklós Fazekas | 2016-05-02 | 5 | -22/+155 |
| |\ \ | | | | | | | EventLoop abstraction | ||||
| | * | | EventLoop abstraction | Miklos Fazekas | 2016-04-16 | 5 | -22/+155 |
| | |/ | |||||
| * | | Merge pull request #363 from mfazekas/rbnacl-is-optional | Miklós Fazekas | 2016-05-02 | 10 | -54/+103 |
| |\ \ | | | | | | | Make rbnacl dependency optional | ||||
| | * | | Make rbnacl dependency optional | Miklos Fazekas | 2016-05-02 | 10 | -54/+103 |
| |/ / | |||||
| * | | Merge pull request #359 from mfazekas/send-kexinit-asap | Miklós Fazekas | 2016-05-01 | 5 | -5/+12 |
| |\ \ | | | | | | | Send KEXINIT asap | ||||
| | * | | Fix bundler version in travis.yml | Miklos Fazekas | 2016-05-01 | 1 | -3/+3 |
| | | | | |||||
| | * | | Send KEXINIT without waiting from server. | Miklos Fazekas | 2016-05-01 | 4 | -2/+9 |
| | | | | |||||
| * | | | Merge pull request #360 from alongoldboim/add_socket_option | Miklós Fazekas | 2016-04-28 | 6 | -10/+21 |
| |\ \ \ | |/ / |/| | | Added ability to specify agent socket | ||||
| | * | | Added ability to specify agent socket | Alon Goldboim | 2016-04-28 | 6 | -10/+21 |
| |/ / | |||||
| * | | Merge pull request #355 from KaneMorgan/nil-start-options | Miklós Fazekas | 2016-04-20 | 2 | -1/+20 |
| |\ \ | |/ |/| | Prevents users explicitly passing in nils in options by accident whic… | ||||
| | * | Prevent nils being explicitly passed in at start up time | Kane Morgan | 2016-04-17 | 2 | -1/+20 |
| |/ | |||||
| * | Update README.rdoc | Miklós Fazekas | 2016-04-08 | 1 | -2/+0 |
| | | |||||
| * | Merge pull request #353 from mfazekas/test-tests | Miklós Fazekas | 2016-04-08 | 7 | -9/+118 |
| |\ | | | | | Added tests for Net::SSH::Test | ||||
| | * | Added tests for Net::SSH::Test | Miklos Fazekas | 2016-04-08 | 7 | -9/+118 |
| |/ | |||||
| * | Merge pull request #283 from p0deje/test_channel_requests_pty | Miklós Fazekas | 2016-04-08 | 3 | -0/+17 |
| |\ | | | | | Add Net::SSH::Test::Channel#sends_request_pty for scripting PTY requests | ||||
| | * | Add Net::SSH::Test::Channel#sends_request_pty for scripting PTY requests | Alex Rodionov | 2015-11-17 | 3 | -0/+17 |
| | | | | | | | | | Fixes net-ssh/net-ssh#184. | ||||
| * | | Merge pull request #352 from mfazekas/prompt | Miklós Fazekas | 2016-04-08 | 19 | -151/+240 |
| |\ \ | | | | | | | Refactor prompting to a class that can be customized | ||||
