terrafrost
e50d8ea51c
Merge branch '1.0' into ssh2-fix-multi-channel-1.0
2017-09-06 00:30:11 -05:00
terrafrost
a3325d102e
SSH2: don't choke when getting response from diff channel in exec()
2017-08-29 00:17:48 -05:00
terrafrost
c7e67721a2
SSH2: CS adjustment
2017-08-28 22:44:58 -05:00
terrafrost
e5b4eef91f
SSH2: workaround for bad arcfour256 implementations
2017-08-26 20:17:59 -05:00
terrafrost
9cbfd23cb6
SSH2: assume any SSH server >= 1.99 supports SSH2
2017-08-24 23:52:27 -05:00
terrafrost
7ccb0d0b02
SSH2: send KEXINIT packet and identification string first or last
2017-08-07 00:34:58 -05:00
Moritz Kornher
7606f81279
Add new mode READ_NEXT to only ready the next packet from the channel.
2017-06-19 22:33:08 -05:00
Sidney Souza
4d36e67bee
Fix Invalid HMAC for D-link DES-3028
...
When I tried connect to a dlink switch the Net_SSH2 does not choose
the correct algorithms for hmac causing an Invalid HMAC error. However,
after I commented the line 1280 everything work magnificently
2017-06-12 22:36:30 -05:00
terrafrost
8abc0ee60c
SSH2: include <pre> tags in getLog result when SAPI isn't CLI
2017-03-01 22:26:29 -06:00
terrafrost
785b477605
Merge branch 'pty-enhancement' into 1.0
2016-12-24 20:28:19 -06:00
vladimirghetau
d80794b1d9
exec authentication, code reuse
2016-12-17 16:37:04 -06:00
terrafrost
b26f14e5fe
SSH2: make it so disabling PTY closes exec() channel if it's open
2016-12-17 16:09:48 -06:00
terrafrost
d0cb855bbc
Merge branch '1.0-suppress-unpack-errors' into 1.0
2016-11-29 19:16:16 -06:00
terrafrost
7cb66ea56e
SSH2: don't use timeout value of 0 for fsockopen
2016-11-20 11:08:53 -06:00
terrafrost
48cf16599b
suppress unpack() PHP warnings
2016-11-19 22:39:36 -06:00
terrafrost
535104cb84
SSH2: send the identifier first, before reading it
2016-11-08 09:11:57 -06:00
terrafrost
845135f887
add PHP5-style constructors along side PHP4-style ones
2016-09-10 10:41:05 -07:00
klemens
dca95ac662
spelling fixes
2016-08-04 00:19:27 -05:00
terrafrost
7bc0e61c1d
SSH2: fix "Expected SSH_FXP_STATUS or ..." error
2016-06-29 00:30:28 -05:00
artyhedgehog
0dd04d1e9b
Fixed confusing SSH2::getErrors return type
2016-05-06 11:49:24 -05:00
terrafrost
57063f3604
SSH2: add isAuthenticated() method
2015-12-15 23:19:05 -06:00
terrafrost
ee0f45fea6
update identifier to current version
2015-12-05 10:33:28 -06:00
splitice
77d5f8da20
Fix PHP invalid index warning
2015-11-24 09:13:30 +01:00
terrafrost
2048a49aac
use self:: in phpdoc comments to reduce merge conflicts
2015-10-11 12:22:07 -05:00
terrafrost
19229ed224
phpDoc changes
2015-10-05 13:22:51 -05:00
Graham Campbell
dd031a1702
PHPDoc fixes
2015-09-06 12:28:08 +01:00
Graham Campbell
cd0e10cf9d
Fixed lots of phpdoc typos
2015-09-02 00:37:54 +01:00
Graham Campbell
5890f3da98
Fixed invalid param phpdoc
2015-09-02 00:22:30 +01:00
Andreas Fischer
65010d08e6
Add encryption_algorithm_to_key_size method.
2015-07-24 12:31:50 +02:00
Andreas Fischer
06ec04e3fe
Merge pull request #746 from terrafrost/ssh-custom-socket-1.0
...
SSH2: make it so you can connect using open sockets / 1.0 branch
* terrafrost/ssh-custom-socket-1.0:
SSH2: move where $host is defined
SSH2: make it so you can connect using open sockets
2015-07-21 12:53:24 +02:00
Andreas Fischer
1473da35e6
SSH2: Introduce _array_intersect_first function.
...
+ No more empty for-loop bodies
+ No more counting variables $i leaked into outer context
+ No more unintuitive $i == count(...) comparisons
+ No more array / hash table access of the form $kex_algorithms[$i]
- Function call overhead; not in the performance critical path, though.
2015-07-17 22:28:32 +02:00
terrafrost
a19e2a0d21
SSH2: move where $host is defined
2015-07-17 13:08:24 -05:00
terrafrost
33a97391bc
SSH2: make it so you can connect using open sockets
2015-07-17 12:30:44 -05:00
Andreas Fischer
2013a31ecd
Use phpcbf to fix PHP code to ruleset.
2015-07-17 12:57:41 +02:00
terrafrost
4dc79b96ed
SSH2: limit the size of data that expect() looks at
2015-07-14 19:05:52 -05:00
Andreas Fischer
cdda621903
Merge pull request #714 from bantu/diffie-hellman-group-exchange-sha256
...
Add support for RFC 4419: diffie-hellman-group-exchange-sha{1,256}
* bantu/diffie-hellman-group-exchange-sha256:
Add support for RFC 4419: diffie-hellman-group-exchange-sha{1,256}
2015-07-08 15:43:46 +02:00
Andreas Fischer
abeda5237f
Add support for RFC 4419: diffie-hellman-group-exchange-sha{1,256}
2015-07-08 00:00:40 +02:00
terrafrost
c0555581e7
SSH2: fix for window sizes > 2,147,483,648
2015-06-24 23:45:14 -05:00
Andreas Fischer
5bd7a73a71
Merge pull request #674 from terrafrost/ssh2-global-request
...
fix E_NOTICE with SSH2 global requests
* terrafrost/ssh2-global-request:
SSH2: string shift by 4 instead of by 1
SSH2: fix E_NOTICE involving global requests
2015-05-05 16:14:12 +02:00
terrafrost
684d6eed0e
SSH2: string shift by 4 instead of by 1
2015-05-04 08:22:27 -05:00
Andreas Fischer
5d2590feb0
Replace ; with : in case statement.
2015-05-03 13:18:23 +02:00
terrafrost
b59d821bbe
SSH2: fix E_NOTICE involving global requests
2015-04-30 21:34:07 -05:00
terrafrost
e510dc878b
Merge branch '1.0' of https://github.com/phpseclib/phpseclib into openssl-support
...
Conflicts:
phpseclib/Net/SSH2.php
2015-04-02 05:40:14 -05:00
Andreas Fischer
c0370ee91d
Merge pull request #639 from terrafrost/banner-timeout
...
improve error handling with protocol version exchange
* terrafrost/banner-timeout:
SSH2: rm unused $connectionTimeout variable
SSH2: rm redundant code and make php4 compatable
SSH2: timeout improvements
2015-03-30 12:37:46 +02:00
terrafrost
bb01002233
Merge remote-tracking branch 'agentforwarding/feature/ssh_agent_forwarding' into agentforwarding-1.0
2015-03-28 21:03:17 -05:00
terrafrost
1294b08675
SSH2: rm unused $connectionTimeout variable
2015-03-27 22:32:38 -05:00
montdidier
9723acc885
preference isset over array_key_exists, return false on failure, break after return channel opened
2015-03-24 13:38:56 +08:00
terrafrost
dfd57dfb89
SSH2: rm redundant code and make php4 compatable
2015-03-19 22:39:43 -05:00
terrafrost
23c65c3839
SSH2: timeout improvements
...
make it so that the timeout in the constructor behaves in the same
way that timeout's set via setTimeout() do. eg. isTimeout() tells
you if a timeout was thrown etc.
2015-03-19 07:53:19 -05:00
montdidier
1803bcac0b
moved agent forwarding channel handling to filter method and reusing existing open channels to request forwarding
2015-02-06 11:28:23 +08:00
terrafrost
009d883d4c
Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support
2015-01-14 20:13:08 -06:00
montdidier
dd0b3e6bd5
addresses low hanging fruit comments from terrafrost and bantu
2015-01-12 17:13:33 +08:00
Andreas Fischer
3c99773184
Merge pull request #588 from terrafrost/disconnect-fix
...
SSH2: update conditions under which _disconnect's code is executed
* terrafrost/disconnect-fix:
SSH2: update conditions under which _disconnect's code is executed
2015-01-04 11:57:52 +01:00
terrafrost
be168e262f
Crypt/Base: stream ciphers cannot be run in continuous mode with OpenSSL
2014-12-31 14:10:53 -06:00
terrafrost
5a91539148
SSH2: rm unsupported algorithms if OpenSSL is being used
2014-12-29 22:10:26 -06:00
montdidier
aca4ba3286
SSH agent forwarding implementation
2014-12-30 10:44:31 +08:00
terrafrost
472e006b6c
SSH2: update conditions under which _disconnect's code is executed
2014-12-29 08:37:44 -06:00
terrafrost
c5f74eb3a3
Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support
2014-12-13 14:15:34 -06:00
Andreas Fischer
0efae5a91e
Change copyright years from roman numeral to decimal numbers.
2014-12-10 00:04:08 +01:00
terrafrost
96eb1f3797
SSH2: simplify _send_channel_packet
...
the last _send_channel_packet was unnecessarily complex. this lead
to a number of problems. for example,
the window size was checked for adjustments in two places. in the
second place it receives a window adjustment packet and just assumes
that the window adjustment packet was big enough for the rest of the
data.
(thanks, pixall!)
2014-12-05 22:01:39 -06:00
terrafrost
8fc4f4b70c
Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support
2014-11-29 07:46:06 -06:00
terrafrost
b1e6643032
SSH2: clarify exec() docblock comment
2014-11-19 22:38:19 -06:00
terrafrost
3eac2582d6
SSH2: fix issues with RSA key verification
...
Sometimes SSH servers will null pad their RSA keys. this null padding
broke Net/SSH2.php's RSA implementation (Crypt/RSA.php's implementation
works just fine). Also, the -3 was counting the initial "\0" of $h
twice so adjust it to -2.
2014-11-06 11:58:03 -06:00
terrafrost
361b59fff9
SSH2: make setCryptoEngine() less cumbersome
2014-10-11 23:40:56 -05:00
terrafrost
959c0cefae
SSH2: add setCryptoEngine() function
2014-10-11 23:26:46 -05:00
terrafrost
ff4d563f4f
SSH2: CS adjustments
2014-10-11 23:20:44 -05:00
Cezary Kluczyński
0692a1ea7d
SSH2: removed redundant rtrim
2014-09-28 12:39:54 +02:00
terrafrost
67279d7811
SSH2: rm unused constant
...
it doesn't need to be defined since the strlen($this->last_interactive_response)
check in _login_helper serves the same purpose that NET_SSH_MASK_LOGIN_INTERACTIVE
was intended to serve
2014-09-06 20:30:01 -05:00
terrafrost
9e71e0bce8
SSH2: don't count data length against window size
...
it is my hope that the issues 8c9e7a890e
and ccb1c3e2bd
sought to resolve were
fixed 9f8d8a7bf6
and
7a2c7a414c
.
2014-08-30 15:26:23 -05:00
Andreas Fischer
1de939fb4a
Merge pull request #427 from terrafrost/ssh2-show-methods-before-login
...
SSH2: make it so negotiated algorithms can be seen before login
* terrafrost/ssh2-show-methods-before-login:
SSH2: white space adjustment
SSH: update getServerPublicHostKey() to use new _connect() method
SSH2: fix if statement for conditional _connect() call
simplify calls to $this->_connect()
SSH2: make it so negotiated algorithms can be seen before login
2014-08-10 12:10:04 +02:00
terrafrost
04e263bb8c
SSH2: white space adjustment
2014-08-10 02:09:28 -05:00
terrafrost
085fb0ebb8
SSH: update getServerPublicHostKey() to use new _connect() method
2014-08-06 14:42:08 -05:00
terrafrost
5b019b22d9
SSH2: fix if statement for conditional _connect() call
2014-08-05 19:30:14 -05:00
terrafrost
dffef50838
simplify calls to $this->_connect()
2014-08-04 20:11:34 -05:00
Andreas Fischer
2ccb301c4c
Merge pull request #425 from bantu/ssh-remove-none-mac
...
SSH2: Disallow the none MAC.
* bantu/ssh-remove-none-mac:
SSH2: Disallow the none MAC.
2014-07-26 13:14:39 +02:00
Andreas Fischer
4be4533a6e
ssh-hmac-sha2-256: Remove whitespace at end of line.
2014-07-26 13:02:52 +02:00
terrafrost
49079fa1b4
SSH2: make it so negotiated algorithms can be seen before login
2014-07-25 10:03:31 -05:00
Dag Wieers
1a330b68e2
Added RFC6668
...
Added the requested changed.
2014-07-25 14:10:01 +02:00
Dag Wieers
86d17c6989
Add hmac-sha2-256 MAC support
...
This small patch adds hmac-sha2-256 support separately as requested in #423 .
Some security standards now recommend to disable MD5 and SHA1, and use SHA2 instead. This change was tested using SHA2 against RHEL6's OpenSSH v5.3p1 and Solaris 11. And was also tested with RHEL5's OpenSSH 4.3p2 which doesn't include SHA2.
2014-07-25 12:28:08 +02:00
Andreas Fischer
1aecc5e3d8
SSH2: Disallow the none MAC.
2014-07-25 12:18:11 +02:00
Andreas Fischer
a0a23cbaf1
Merge pull request #406 from bantu/remove-ssh-arcfour
...
Remove the arcfour and none ciphers from SSH2.
* bantu/remove-ssh-arcfour:
Comment out (potentially) insecure ciphers arcfour and none.
2014-07-22 16:09:14 +02:00
terrafrost
9dd3db4a49
SSH2: don't remove old $this->bitmap values
2014-07-21 16:41:39 -05:00
Andreas Fischer
84ac305704
Comment out (potentially) insecure ciphers arcfour and none.
2014-07-21 12:16:49 +02:00
Andreas Fischer
678d0cc792
Make Net_SSH2::isConnected() return a boolean instead of int.
2014-07-20 23:03:06 +02:00
terrafrost
ac2fc96263
SSH2: make isConnected return true if even if we're not logged in
2014-07-20 11:24:16 -05:00
liutec
10597aed64
Removed white-spaces from line ends
2014-06-22 22:30:52 +03:00
liutec
8e1df6e3c3
Allow setting the terminal window size
2014-06-20 13:04:17 +03:00
Andreas Fischer
709c7c4d48
Merge pull request #385 from bantu/a-random-change
...
Random: include the Crypt_* classes if they're available
* bantu/a-random-change:
phpseclib_is_includable() -> phpseclib_resolve_include_path()
Drop Net_SSH2::_is_includable() method.
Random: a few changes to the stream_resolve_include_path_function
Replace stream_resolve_include_path with phpseclib_is_includable.
Random: add explanatory comment
SSH2: replace _is_includable() with stream_resolve_include_path
Random: include the Crypt_* classes if they're available
2014-06-19 16:08:59 +02:00
Andreas Fischer
fd65c55720
phpseclib_is_includable() -> phpseclib_resolve_include_path()
2014-06-19 14:57:09 +02:00
Andreas Fischer
1afbea613d
Drop Net_SSH2::_is_includable() method.
2014-06-18 23:41:26 +02:00
Andreas Fischer
9c90beaf82
Replace stream_resolve_include_path with phpseclib_is_includable.
2014-06-17 14:38:24 +02:00
terrafrost
5f56781261
SSH2: make it so you can verify server public host key without logging on
2014-06-16 10:19:34 -05:00
terrafrost
4401b7e21e
SSH2: replace _is_includable() with stream_resolve_include_path
2014-06-16 09:47:13 -05:00
terrafrost
246e9e154f
SSH2: make $mac_algorithms non-static
...
none of the other statically defined variables have the potential
to change as multiple Net_SSH2 objects are created but this one does.
ie. if you connect to one SSH-2.0-SSHD server then no subsequent server
will use hmac-sha1-96 even if it could
2014-06-10 23:08:56 -05:00
Andreas Fischer
e6f87318f5
Adjust documentation to coding guidelines: No () around include.
2014-06-01 23:28:49 +02:00
terrafrost
db32efb276
SSH2: 0x7FFFFFFF -> $this->window_size in one more place
2014-05-26 17:57:14 -05:00
terrafrost
0dd929341b
SSH2: make it so callback functions can make exec() return early
2014-05-26 17:37:32 -05:00
terrafrost
efd3b96dc8
SSH2: improve handling of incomplete packets
2014-04-18 16:58:00 -05:00
Andreas Fischer
b676cc2690
Merge pull request #241 from mpscholten/ssh2-tests
...
Added some simple Net_SSH2 tests
* mpscholten/ssh2-tests:
Added some simple Net_SSH2 tests
Conflicts:
tests/Net/SSH2Test.php
2014-04-18 16:54:24 +02:00
terrafrost
79719e8f74
SSH2: move _connect() call to _login() from login()
...
Per bantu, this is required for it to work with Net/SFTP.php
2014-04-08 08:48:12 -05:00