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
690704d36e
Merge branch 'ssh-custom-socket-1.0' into ssh-custom-socket-2.0
...
Conflicts:
phpseclib/Net/SSH2.php
2015-07-17 13:11:57 -05:00
terrafrost
a19e2a0d21
SSH2: move where $host is defined
2015-07-17 13:08:24 -05:00
terrafrost
4d086bee86
Merge branch 'ssh-custom-socket-1.0' into ssh-custom-socket-2.0
...
Conflicts:
phpseclib/Net/SSH2.php
2015-07-17 12:43:50 -05:00
terrafrost
33a97391bc
SSH2: make it so you can connect using open sockets
2015-07-17 12:30:44 -05:00
Andreas Fischer
d9e9504fba
Merge branch 'PSR2-1.0' into PSR2-2.0
...
* PSR2-1.0:
Fix indentation phpcbf did not fix.
Remove PSR2.Methods.FunctionCallSignature.SpaceAfterOpenBracket exception.
Use phpcbf to fix PHP code to ruleset.
Ignore coding guidelines in ANSI switch block.
Base code sniffer ruleset on PSR2 rather than PEAR.
Update PHP Code Sniffer to 2.3.3
Conflicts:
build/code-sniffer-ruleset-tests.xml
build/code-sniffer-ruleset.xml
composer.lock
phpseclib/Crypt/DES.php
phpseclib/Crypt/Hash.php
phpseclib/Crypt/RSA.php
phpseclib/File/X509.php
phpseclib/Math/BigInteger.php
phpseclib/Net/SFTP.php
phpseclib/Net/SSH1.php
phpseclib/Net/SSH2.php
tests/Functional/Net/SFTPUserStoryTest.php
tests/Unit/Crypt/TwofishTest.php
2015-07-17 13:41:59 +02:00
Andreas Fischer
2013a31ecd
Use phpcbf to fix PHP code to ruleset.
2015-07-17 12:57:41 +02:00
Andreas Fischer
6cbe537ba6
Merge branch '1.0' into 2.0
...
* 1.0:
SSH2: limit the size of data that expect() looks at
Conflicts:
phpseclib/Net/SSH2.php
2015-07-17 11:17:32 +02:00
terrafrost
4dc79b96ed
SSH2: limit the size of data that expect() looks at
2015-07-14 19:05:52 -05:00
Andreas Fischer
f2773847a2
Merge branch '1.0' into 2.0
...
* 1.0:
Add support for RFC 4419: diffie-hellman-group-exchange-sha{1,256}
Conflicts:
phpseclib/Net/SSH2.php
2015-07-08 15:45:53 +02: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
Andreas Fischer
89cf423c58
Merge branch '1.0' into 2.0
...
* 1.0:
SSH2: fix for window sizes > 2,147,483,648
2015-06-27 21:58:45 +02:00
terrafrost
c0555581e7
SSH2: fix for window sizes > 2,147,483,648
2015-06-24 23:45:14 -05:00
Andreas Fischer
8e2f694129
Merge branch '1.0' into 2.0
...
* 1.0:
SSH2: string shift by 4 instead of by 1
SSH2: fix E_NOTICE involving global requests
2015-05-05 16:14:12 +02: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
661f3ce3b9
Merge branch '1.0' into 2.0
...
* 1.0:
Replace ; with : in case statement.
Conflicts:
phpseclib/Net/SFTP.php
phpseclib/Net/SSH2.php
2015-05-03 14:13:56 +02: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
047a75a636
Merge branch '2.0' of https://github.com/phpseclib/phpseclib into openssl-support-2.0
2015-04-10 23:08:08 -05:00
terrafrost
0b1d3aa7e9
SSH2: NET_SSH2_MASK_* -> self::MASK_*
2015-04-10 17:48:58 -05:00
terrafrost
d75f703c0a
rm PHP v4 compatability claim
2015-04-02 05:57:52 -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
terrafrost
023fef8d8b
Merge branch '2.0' of https://github.com/phpseclib/phpseclib into openssl-support-2.0
...
Conflicts:
phpseclib/Net/SSH2.php
2015-04-02 05:37:04 -05:00
terrafrost
ebcb3130b7
Merge branch 'openssl-support' into 2.0
...
Conflicts:
phpseclib/Crypt/AES.php
phpseclib/Crypt/Base.php
phpseclib/Crypt/Blowfish.php
phpseclib/Crypt/DES.php
phpseclib/Crypt/RC2.php
phpseclib/Crypt/RC4.php
phpseclib/Crypt/Rijndael.php
phpseclib/Crypt/TripleDES.php
phpseclib/Crypt/Twofish.php
phpseclib/Net/SSH2.php
tests/Functional/Net/SFTPLargeFileTest.php
tests/Unit/Crypt/AES/InternalTest.php
tests/Unit/Crypt/AES/McryptTest.php
tests/Unit/Crypt/AES/TestCase.php
2015-04-02 05:32:31 -05:00
Andreas Fischer
8101772ab4
Merge branch '1.0' into 2.0
...
* 1.0:
SSH2: rm unused $connectionTimeout variable
SSH2: rm redundant code and make php4 compatable
SSH2: timeout improvements
Conflicts:
phpseclib/Net/SSH2.php
2015-03-30 12:46:54 +02: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
33645f5297
SSH2: missed a file in the merge
2015-03-29 10:58:05 -05:00
terrafrost
a8e702b34f
Merge branch 'agentforwarding-1.0' into agentforwarding-2.0
...
Conflicts:
phpseclib/Net/SSH2.php
phpseclib/System/SSH/Agent.php
2015-03-29 10:32:30 -05: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
Andreas Fischer
1c923576c6
NET_SSH2_ -> self::
2015-01-04 11:38:03 +01:00
Andreas Fischer
ec21aa23f1
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:36:14 +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
Clint Nelissen
f3565346fa
Replaced get_class() calls with instanceof operators
2014-12-24 13:07:14 -08:00
Clint Nelissen
fe742e18d7
Namespaced Crypt Package
2014-12-16 16:16:54 -08:00
Clint Nelissen
dfb8d52806
Temporary constant fix
2014-12-15 14:29:34 -08:00
Clint Nelissen
628949fb73
Namespaced classes
2014-12-15 14:29:20 -08:00
Clint Nelissen
fddf20f89c
Namespaced classes
2014-12-15 09:25:46 -08: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
c4b103468c
Merge pull request #549 from bantu/fix-547
...
Change copyright years from roman numeral to decimal numbers.
* bantu/fix-547:
Change copyright years from roman numeral to decimal numbers.
Conflicts:
phpseclib/System/SSH_Agent.php
2014-12-10 00:06:08 +01:00
Andreas Fischer
0efae5a91e
Change copyright years from roman numeral to decimal numbers.
2014-12-10 00:04:08 +01:00
Clint Nelissen
0305a4827c
Moved globally defined constants to class constants
2014-12-09 10:46:30 -08:00
Clint Nelissen
ecb9c32f02
Merge branch 'php5' of https://github.com/phpseclib/phpseclib into NetPackageConstantsFix
...
Conflicts:
phpseclib/Net/SSH2.php
2014-12-08 10:40:57 -08:00
Andreas Fischer
e52a3aff5a
Merge branch 'master' into php5
...
* master:
SSH2: simplify _send_channel_packet
2014-12-06 12:25:16 +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
Clint Nelissen
99b9cc477d
Moved global constants to class constants
2014-12-04 13:45:13 -08:00
Andreas Fischer
638e62d60a
Remove LICENSE text from source code files.
2014-12-03 18:49:33 +01:00
Clint Nelissen
d6029bdb6a
Removed includes for Random.php and fixed up user_error message
2014-12-02 09:34:15 -08:00
Clint Nelissen
f5ed86e385
Renamed Random::crypt_random_string to Random::string
2014-12-02 09:20:40 -08:00
Clint Nelissen
c70702afbb
Namespaced Crypt\Random
2014-12-02 08:41:30 -08:00
Clint Nelissen
9c0c3faeb7
Initial commit
2014-12-01 18:54:44 -08:00
terrafrost
8fc4f4b70c
Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support
2014-11-29 07:46:06 -06:00
Andreas Fischer
43d2e9ef68
Merge branch 'master' into php5
...
* master:
SSH2: clarify exec() docblock comment
2014-11-20 10:58:33 +01:00
terrafrost
b1e6643032
SSH2: clarify exec() docblock comment
2014-11-19 22:38:19 -06:00
Andreas Fischer
10e5653324
Merge branch 'master' into php5
...
* master:
SSH2: fix issues with RSA key verification
Conflicts:
phpseclib/Net/SSH2.php
2014-11-07 13:13:38 +01: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
Andreas Fischer
92c3127448
Merge branch 'master' into php5
...
* master:
SSH2: removed redundant rtrim
2014-09-28 12:43:54 +02:00
Cezary Kluczyński
0692a1ea7d
SSH2: removed redundant rtrim
2014-09-28 12:39:54 +02:00
Andreas Fischer
cf921a347a
Merge branch 'master' into php5
...
* master:
SSH2: rm unused constant
2014-09-07 12:43:27 +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
Andreas Fischer
42e05a6714
Merge branch 'master' into php5
...
* master:
SSH2: don't count data length against window size
2014-09-03 20:44:53 +02: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
9dc92a82a4
Merge branch 'master' into php5
...
* master:
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:11 +02: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
e4516fb453
Merge branch 'master' into php5
...
* master:
Add some test cases for SHA512.
Use toBits() as there is no bits property.
SSH2: Disallow the none MAC.
2014-07-26 17:20:09 +02: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
fed60fe8ac
Merge branch 'master' into php5
...
* master:
ssh-hmac-sha2-256: Remove whitespace at end of line.
Added RFC6668
Add hmac-sha2-256 MAC support
2014-07-26 13:11:29 +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
f0d0158c2b
Merge branch 'master' into php5
...
* master:
Comment out (potentially) insecure ciphers arcfour and none.
2014-07-22 16:09:16 +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
Andreas Fischer
ae913d64c3
Merge branch 'master' into php5
...
* master:
SSH2: don't remove old $this->bitmap values
2014-07-21 23:53:34 +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
025a637053
Merge branch 'master' into php5
...
* master:
Make Net_SSH2::isConnected() return a boolean instead of int.
2014-07-20 23:31:30 +02:00
Andreas Fischer
678d0cc792
Make Net_SSH2::isConnected() return a boolean instead of int.
2014-07-20 23:03:06 +02:00
Andreas Fischer
c2f2f4a764
Merge branch 'master' into php5
...
* master:
SSH2: make isConnected return true if even if we're not logged in
2014-07-20 23:00:32 +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