[master] More work on Hash.php
* bantu/hash-rewrite:
Hash: Cover remaining uncovered line.
Hash: Update incorrect documentation, use max line length 80.
Hash: Remove constructor return value documentation.
Hash: Do not assign false to length property. It's documented as an int.
Hash: Rename properly l to length.
Slightly rework of HashTest.php.
* 1.0:
Fixed another case
Minor tweaks
Fixed error
More fixes
PHPDoc fixes
Conflicts:
phpseclib/Crypt/Random.php
phpseclib/Math/BigInteger.php
phpseclib/Net/SSH2.php
tests/Functional/Net/SFTPUserStoryTest.php
Hash: rm internal and mhash support (5.3 has hash ext built-in)
* terrafrost/hash-rewrite:
Tests/Hash: tiger is buggy in PHP 5.3
Hash: rm internal and mhash implementations (5.3 has hash built in)
Exception support for SSHv1
* metaclassing/sshv1-exceptions:
I misinterpreted the meaning of === true and messed up quotes on one throw
Tried to replicate SSHv2 exception support into SSHv1
* 2.0:
Remove unnecessary parens
Convert most instances of function_exists() to extension_loaded() where applicable
Remove conditions for PHP < 5.3.0 for this branch
Switch to extension_loaded('gmp')
Switch to extension_loaded instead of function_exists where it makes sense
Switch to extension loaded (2.0)
* cweagans/switch-to-extension-loaded-2.0:
Remove conditions for PHP < 5.3.0 for this branch
Switch to extension_loaded('gmp')
Switch to extension_loaded instead of function_exists where it makes sense
Switch to extension loaded (1.0)
* cweagans/switch-to-extension-loaded-1.0:
Remove unnecessary parens
Convert most instances of function_exists() to extension_loaded() where applicable
* 2.0:
Backport to 2.0: Add PHP7 to Travis CI.
Remove duplicate allow_failures section
Test on PHP 7 & allow failures
Coding standards fix
Switch from EngineException to Error
Remove string assignment
Use random_bytes() when appropriate.
Use random_bytes() when appropriate (2.0)
* cweagans/php7-random-bytes-2.0:
Remove duplicate allow_failures section
Test on PHP 7 & allow failures
Coding standards fix
Switch from EngineException to Error
Remove string assignment
Use random_bytes() when appropriate.
[2.0] SSH2: Remove all static variables as loadable classes may change at runtime.
* bantu/ssh2-function-key_exchange-no-static:
SSH2: Remove all static variables as loadable classes may change at runtime.
SSH2: make it so you can connect using open sockets / 2.0 branch
* terrafrost/ssh-custom-socket-2.0:
SSH2: move where $host is defined
SSH2: make it so you can connect using open sockets
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
+ 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.
* 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
X509: use a random serial number for 2.0 branch
* terrafrost/x509-serialnumber-2.0:
X509: add a comment to explain the bitmask
X509: move where Crypt/Random loading is done
X509: use a random serial number
X509: use a random serial number for 1.0 branch
* terrafrost/x509-serialnumber-1.0:
X509: add a comment to explain the bitmask
X509: move where Crypt/Random loading is done
X509: use a random serial number
To accomodate this decrypt() can no longer return false. If padding is enabled and the padding length is invalid (the only condition under which false was returned) an InvalidInputException will be thrown.
Also, previously, when encrypting, if the padding was disabled and the plaintext wasn't a multiple of the block size a E_USER_NOTICE would be issued via user_error() and then padding would be enabled. Now it's not enabled - an exception is thrown suggesting that you might want to enable padding and that's that.
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}
SFTP: delete stat cache for recursive deletes / 1.0 branch
* terrafrost/sftp-recur-delete-stat-cache-1.0:
SFTP: update how recursive delete's update stat cache
Tests/SFTP: add unit test
[1.0] Various fixes to fopen mode handling in SFTP Stream
* bantu/SFTPStreamTest:
Explicitly set size to 0 when creating or truncating.
mode[0] of 'c' is not supposed to truncate.
Need to create the file when it does not exist and mode[0] is not 'r'.
Add SFTPStreamTest::testFopenFcloseCreatesFile()
Various fixes to fopen mode handling in SFTP Stream
* bantu/SFTPStreamTest:
Explicitly set size to 0 when creating or truncating.
mode[0] of 'c' is not supposed to truncate.
Need to create the file when it does not exist and mode[0] is not 'r'.
Add SFTPStreamTest::testFopenFcloseCreatesFile()
Conflicts:
tests/Functional/Net/SFTPLargeFileTest.php
* 1.0:
Tests/SFTP: $lstat->$stat
Tests/SFTP: just check to see that stat / lstat return an array
SFTP: update conditions under which cache for lstat / . is used
Tests/SFTP: add test for stat's on .
SFTP: update conditions under which cache for lstat / . is used for 1.0 branch
* terrafrost/lstat-fix-1.0:
Tests/SFTP: $lstat->$stat
Tests/SFTP: just check to see that stat / lstat return an array
SFTP: update conditions under which cache for lstat / . is used
Tests/SFTP: add test for stat's on .
ASN1 parsing fix for issue mainly effecting CSR's for 2.0 branch
* terrafrost/asn1-fix-2.0:
Tests/X509: PHP5 adjustments
ASN1: handle malformed input better
Tests/X509/CSR: add unit test for ASN1 changes
ASN1: constructed context-specific tags can have x sub elements
ASN1 parsing fix for issue mainly effecting CSR's for 1.0 branch
* terrafrost/asn1-fix-1.0:
ASN1: handle malformed input better
Tests/X509/CSR: add unit test for ASN1 changes
ASN1: constructed context-specific tags can have x sub elements