1
0
mirror of https://github.com/danog/tgseclib.git synced 2024-11-27 04:34:45 +01:00
Commit Graph

1206 Commits

Author SHA1 Message Date
terrafrost
5321b9b610 Merge branch 'phpdoc-1.0' into 1.0
Conflicts:
	phpseclib/Crypt/Base.php
	phpseclib/Crypt/DES.php
	phpseclib/Crypt/Rijndael.php
2015-10-13 08:52:52 -05:00
terrafrost
666092c889 Merge branch 'getkeylength' into 1.0 2015-10-12 22:59:46 -05:00
terrafrost
5f1ff099da Crypt/Base: one more cs update 2015-10-12 22:52:56 -05: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
terrafrost
d91158f6ef rename key_size -> key_length 2015-10-04 21:06:17 -05:00
terrafrost
27034825f3 cs changes per bantu 2015-10-04 16:29:48 -05:00
terrafrost
6688f650f1 SFTP: don't start in local file middle when uploading to middle of
the remote file
2015-09-29 21:39:35 -05:00
terrafrost
e2a2ad8c91 SFTP: backport DavidAnderson684's changes to 1.0 branch 2015-09-27 10:56:05 -05:00
terrafrost
8691035228 Crypt/Base: add getBlockLength() method 2015-09-24 09:29:00 -05:00
terrafrost
bfba3db1a7 Crypt: make it so the key length can be explicitly set for all ciphers 2015-09-20 12:24:06 -05:00
terrafrost
833da775b6 BigInteger: fix PHP7 error
$x = gmp_init(6); empty($x); demonstrates the problem
2015-09-13 19:13:31 -05:00
Graham Campbell
010c1285ba Fixed another case 2015-09-06 23:05:41 +01:00
Graham Campbell
b1db7f05d9 Minor tweaks 2015-09-06 23:01:03 +01:00
Graham Campbell
06a1d3d981 Fixed error 2015-09-06 22:19:34 +01:00
Graham Campbell
eec8c9cb5d More fixes 2015-09-06 12:39:14 +01:00
Graham Campbell
dd031a1702 PHPDoc fixes 2015-09-06 12:28:08 +01:00
Marc Delisle
01e7c65f07 Typo in variable name 2015-09-05 12:13:11 -04:00
Andreas Fischer
e08e2fd300 Merge pull request #791 from cweagans/switch-to-extension-loaded-1.0
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
2015-09-04 15:04:17 +02:00
Cameron Eagans
8206061a30 Remove unnecessary parens 2015-09-02 15:22:37 -04:00
Andreas Fischer
e1bd0dfaf5 Merge pull request #801 from GrahamForks/1.0-phpdoc
[1.0] PHPDoc Fixes

* GrahamForks/1.0-phpdoc:
  Fixed lots of phpdoc typos
  Fixed invalid param phpdoc
2015-09-02 20:43:38 +02: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
Cameron Eagans
2b75c37cc9 Convert most instances of function_exists() to extension_loaded() where applicable 2015-09-01 14:32:22 -04:00
terrafrost
abbee318cc X509: updates to getOID() as suggested by bantu 2015-08-31 15:20:38 -05:00
terrafrost
d7d9d782b0 X509: add getOID() method 2015-08-29 22:15:04 -05:00
terrafrost
15c9f99721 RSA: fix regression for PSS signatures 2015-08-11 07:27:56 -05: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
847082ac74 Fix indentation phpcbf did not fix. 2015-07-17 12:57:41 +02:00
Andreas Fischer
5eb205b237 Remove PSR2.Methods.FunctionCallSignature.SpaceAfterOpenBracket exception. 2015-07-17 12:57:41 +02:00
Andreas Fischer
2013a31ecd Use phpcbf to fix PHP code to ruleset. 2015-07-17 12:57:41 +02:00
Andreas Fischer
6c76df46d4 Ignore coding guidelines in ANSI switch block. 2015-07-17 12:57:05 +02:00
terrafrost
862b63e9e5 SFTP: stat cache updates 2015-07-17 12:34:56 +02:00
Andreas Fischer
12ccc402b1 Merge pull request #740 from terrafrost/x509-serialnumber-1.0
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
2015-07-17 12:30:53 +02:00
terrafrost
0d3a117608 X509: add a comment to explain the bitmask 2015-07-17 00:45:20 -05:00
terrafrost
693804e62a X509: move where Crypt/Random loading is done 2015-07-16 11:50:22 -05:00
terrafrost
374f8db2e3 X509: use a random serial number 2015-07-16 11:31:20 -05: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
Andreas Fischer
7f1dfba50d Merge pull request #730 from terrafrost/disable-stat-cache-1.0
SFTP: don't update stat cache when it's been disabled

* terrafrost/disable-stat-cache-1.0:
  SFTP: don't update stat cache when it's been disabled
2015-07-06 23:48:28 +02:00
Andreas Fischer
643103449c Merge pull request #731 from terrafrost/sftp-recur-delete-stat-cache-1.0
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
2015-07-06 23:37:55 +02:00
terrafrost
c460e511a0 SFTP: update how recursive delete's update stat cache 2015-07-04 13:09:26 -05:00
terrafrost
109ae38e48 SFTP: don't update stat cache when it's been disabled 2015-07-04 12:19:35 -05:00
Andreas Fischer
727677d4e1 Merge pull request #713 from bantu/SFTPStreamTest
[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()
2015-07-04 14:28:06 +02:00
terrafrost
77c757d095 X509: set one more parameter to null 2015-06-29 22:10:18 -05:00
terrafrost
6c2798be90 X509: set another parameters field to null 2015-06-29 21:53:27 -05:00
terrafrost
46a3c0fbbb X509: set parameter field to null for RSA keys 2015-06-28 11:32:42 -05:00
Andreas Fischer
1ad66ad1ea Merge pull request #719 from terrafrost/lstat-fix-1.0
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 .
2015-06-27 21:59:45 +02:00
terrafrost
d1d415618a SFTP: update conditions under which cache for lstat / . is used 2015-06-26 23:34:14 -05:00
Andreas Fischer
d71da6b02b Explicitly set size to 0 when creating or truncating. 2015-06-25 14:26:35 +02:00
Andreas Fischer
9e07fb704b mode[0] of 'c' is not supposed to truncate. 2015-06-25 14:24:58 +02:00
Andreas Fischer
f0957021a1 Need to create the file when it does not exist and mode[0] is not 'r'. 2015-06-25 14:24:18 +02:00
terrafrost
c0555581e7 SSH2: fix for window sizes > 2,147,483,648 2015-06-24 23:45:14 -05:00
terrafrost
6bc3513914 SFTP: stat cache updates 2015-06-20 19:33:19 -05:00
Andreas Fischer
a79b4ac6ad Merge pull request #699 from terrafrost/asn1-fix-1.0
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
2015-06-16 16:30:35 +02:00
Andreas Fischer
956607d4e0 Merge pull request #692 from terrafrost/rsa-none-1.0
add "none" encryption mode for 1.0 branch

* terrafrost/rsa-none-1.0:
  Tests/RSA: pack expected result
  Tests/RSA: re-added accidentally removed $rsa initialization
  Tests/RSA: fix error
  Tests/RSA: hard-coded key and result
  RSA: add "none" encryption mode
2015-06-09 17:18:47 +02:00
terrafrost
11000a93b9 ASN1: handle malformed input better 2015-06-07 09:59:13 -05:00
terrafrost
d3a5398fe4 ASN1: constructed context-specific tags can have x sub elements
previously it only worked for when there was one sub element.
2015-06-03 23:48:43 -05:00
terrafrost
1d924cfc7b RSA: add "none" encryption mode 2015-05-25 22:30:38 -05:00
terrafrost
48191bdeec ANSI: fix typo 2015-05-23 17:39:17 -05:00
terrafrost
2bb70a1c22 ANSI: rendering improvements 2015-05-23 16:51:57 -05:00
terrafrost
cc0420b36b ANSI: improve vt100 terminal emulation
store each coordinate's attributes independently and add support
for a few more escape codes
2015-05-23 11:55:03 -05:00
terrafrost
2fee2d4f98 backport e3betht's PR to 1.0 2015-05-07 00:26:39 -05:00
terrafrost
f19bf7a07d RSA: backport getPublicKeyFingerprint from Lukas-W's PR 2015-05-06 22:55:12 -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
andrey012
e7719f765c callbacks - two PRs conflict sorted out.
First one: e9b698fd65, fba6894474, 1cd286642e
Second one: 16430d4d2e, 0cc6125f87
2015-05-02 15:27:57 +03:00
andrey012
f4a93c790f Merge branch '1.0' into sftp-put-callback-for-1.0 2015-05-02 15:24:31 +03:00
andrey012
0cc6125f87 documentation fix 2015-05-02 14:28:19 +03:00
terrafrost
b59d821bbe SSH2: fix E_NOTICE involving global requests 2015-04-30 21:34:07 -05:00
terrafrost
1d772c3a6f Merge remote-tracking branch 'audrey/sftp-put-callback-for-1.0' into 1.0 2015-04-16 07:45:24 -05:00
terrafrost
9f626c67b6 Merge remote-tracking branch 'graham/1.0-phpdoc' into 1.0-phpdoc 2015-04-16 00:31:54 -05:00
terrafrost
b47813cf47 Merge remote-tracking branch 'DavidAnderson84/patch-4' into 1.0 2015-04-15 23:52:00 -05:00
andrey012
16430d4d2e support for callback function for SFTP::put function - in order to pipe data directly to remote server without putting it into file or keeping in memory. This can be useful particularly for dumping big databases directly to remote server. 2015-04-15 03:29:01 +03:00
terrafrost
f5f714b197 Merge branch 'openssl-support' of https://github.com/terrafrost/phpseclib into openssl-support 2015-04-02 07:05:10 -05:00
terrafrost
adad5fa157 Crypt/*: update some docblock comments 2015-04-02 07:04:02 -05:00
terrafrost
87e0f05ada Merge branch 'openssl-support' of https://github.com/terrafrost/phpseclib into openssl-support 2015-04-02 05:58:58 -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
e9fe245132 Crypt/Base: update some comments 2015-03-30 23:43:28 -05:00
terrafrost
1a51226d84 Crypt/Base; prioritize OpenSSL over mcrypt 2015-03-30 23:33:52 -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
Andreas Fischer
6dc32808f1 Merge pull request #644 from terrafrost/agentforwarding-1.0
Agent Forwarding for 1.0 branch

* terrafrost/agentforwarding-1.0:
  removed unwarrented user_error
  preference isset over array_key_exists, return false on failure, break after return channel opened
  moved agent forwarding channel handling to filter method and reusing existing open channels to request forwarding
  removed stopSSHForwarding
  determining what failure to expect
  addresses low hanging fruit comments from terrafrost and bantu
  removed superfluous default case
  SSH agent forwarding implementation
2015-03-30 12:22:57 +02:00
terrafrost
6bd4e6018e Crypt/Base: rm redundant null padding 2015-03-29 15:26:15 -05:00
Graham Campbell
e50cbacd4e Fixed some phpdocs 2015-03-29 17:07:17 +01: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
3ff4212b92 removed unwarrented user_error 2015-03-24 13:40:42 +08: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
terrafrost
8f81fc8f28 Merge branch '1.0' of https://github.com/phpseclib/phpseclib into openssl-support 2015-03-15 02:45:32 -05:00
terrafrost
9a400c4094 Crypt/Base: engine wasn't being set correctly 2015-03-15 02:44:13 -05:00
terrafrost
7ac2470c98 Merge branch '1.0' of https://github.com/phpseclib/phpseclib into x509-custom-extensions 2015-03-09 01:38:33 -05:00
terrafrost
e686c095b6 X509: always base64-encode extensions for which _getMapping returns a bool 2015-03-01 12:05:49 -06:00
terrafrost
7e2dd90140 X509: make it so you can use File_ASN1_Element for custom X.509 extensions 2015-03-01 11:57:36 -06:00
terrafrost
3f3e0cac98 setengine changes per bantu 2015-02-24 00:05:00 -06: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
montdidier
25b328c440 removed stopSSHForwarding 2015-02-05 13:19:57 +08:00
terrafrost
a95160cb44 Crypt/Base: fix issue with CBC mode encryption with continuous buffers 2015-01-31 19:11:32 -06:00
terrafrost
e93dc8d272 RC2: OpenSSL is pretty restricted in where it can be used 2015-01-29 23:19:34 -06:00
terrafrost
e9470d1fc5 TripleDES: updates to accomodate inner chaining 2015-01-17 09:42:47 -06: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
fd6aa5258c Merge pull request #606 from terrafrost/asn-csr-2
ASN1 / CSR fixes

* terrafrost/asn-csr-2:
  ASN1: empty constructed context-specific tags error'd out
2015-01-11 16:05:19 +01:00
terrafrost
84325d415e ASN1: empty constructed context-specific tags error'd out
eg. an attributes field in a CSR that's blank
2015-01-10 23:58:50 -06:00
Ha Phan
b0129e9125 Compare numeric part of OpenSSL version 2015-01-08 20:55:14 +07: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
b24e7c3fc9 Crypt/Base: don't modify the IV when the mode isn't continuous for CFB 2015-01-01 00:27:30 -06:00
terrafrost
7b58268d58 Crypt/Base: fix bug with openssl non-continuous CTR mode 2014-12-31 23:38:55 -06:00
terrafrost
b831724e1a Crypt/Base: don't always treat CTR as being continuous w/ OpenSSL 2014-12-31 22:24:56 -06:00
terrafrost
c6c1e8dcb0 Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support 2014-12-31 14:38:22 -06:00
terrafrost
be168e262f Crypt/Base: stream ciphers cannot be run in continuous mode with OpenSSL 2014-12-31 14:10:53 -06:00
terrafrost
e3487c8adb RC4: use the parent encrypt / decrypt methods if openssl is being used 2014-12-30 23:33:12 -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
Graham Campbell
bd0537fec5 "@access static" isn't a thing 2014-12-27 15:38:14 +00:00
David Anderson
1cd286642e Change dochint as requested 2014-12-27 14:10:44 +00:00
David Anderson
fba6894474 Add docblock 2014-12-27 14:02:29 +00:00
David Anderson
e9b698fd65 Add callback to SFTP.php
Currently, Net_SCP::put() has a callback parameter, allowing the consumer to monitor/log/report progress (or whatever they please).

This patch adds the same feature, working in the same way, to Net_SFTP::put()
2014-12-27 13:55:00 +00:00
Clint Nelissen
01d7c96a11 Fix undefined $raw error 2014-12-26 10:37:46 +01:00
terrafrost
f91c4ccf60 DES: apparently TripleDES extends DES
this was not always the case:

See c4752cbeba
2014-12-20 11:14:29 -06:00
terrafrost
5d0cb1cee9 Crypt/Base: more fixes to pre 5.4.0 padding adjustments 2014-12-14 12:00:34 -06:00
terrafrost
d9adb66609 Crypt/Base: fix typo 2014-12-14 11:03:12 -06:00
terrafrost
4cc23b7006 Crypt/Base: $block_size -> $this->block_size 2014-12-14 10:48:18 -06:00
terrafrost
31af2b3ed3 Crypt/Base: fix decryption for ECB / CBC on PHP < 5.4.0 2014-12-14 10:40:40 -06:00
terrafrost
51c0deba45 Crypt/Base: update one more comment 2014-12-13 14:22:12 -06:00
terrafrost
7d31f924a8 Crypt/Base: clean up comments 2014-12-13 14:20:25 -06:00
terrafrost
c5f74eb3a3 Merge branch 'master' of https://github.com/phpseclib/phpseclib into openssl-support 2014-12-13 14:15:34 -06:00
terrafrost
8d8c2693c5 Crypt: rm @version stuff 2014-12-13 14:13:24 -06:00
terrafrost
f5f9c3d409 Crypt: replace CRYPT_MODE_INTERNAL/MCRYPT/OPENSSL with CRYPT_ENGINE_* 2014-12-13 13:58:41 -06:00
Andreas Fischer
0efae5a91e Change copyright years from roman numeral to decimal numbers. 2014-12-10 00:04:08 +01:00
terrafrost
9a55ab1892 Blowfish: syntax error 2014-12-07 14:43:30 -06:00
terrafrost
69614034ec Crypt_Base: fix to the IV handling of the last commit 2014-12-07 07:35:30 -06:00
terrafrost
b35cedcb15 Crypt_Base: deal with IV's more appropriately 2014-12-06 23:36:26 -06: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
Andreas Fischer
262da528a0 Merge pull request #527 from DavidAnderson684/patch-2
Quote shell argument with escapeshellarg()

* DavidAnderson684/patch-2:
  Quote shell argument with escapeshellarg()
2014-12-04 20:00:41 +01:00
Andreas Fischer
f40bb9190f SCP: Add missing space after case statement. 2014-12-04 18:42:47 +01:00
David Anderson
14dc468b70 Quote shell argument with escapeshellarg()
Currently, the call to "scp -t" or "scp -f" just uses naive quoting - i.e. a couple of quote marks are thrown in.

But, this can easily be escaped from - if the filename has a quote mark of its own in it, for example.

e.g. if the filename is as follows, then bad things will happen:

 ";rm -rf /

Instead, escapeshellarg should be used, to make sure it gets escaped properly.
2014-12-04 16:50:23 +00:00
David Anderson
647a1e9a5e Avoid calling fclose(false)
The previous code would always call fclose(false) if the file was not successfully opened - resulting in a PHP notice.
2014-12-03 19:29:46 +00:00
terrafrost
129dc320b0 Crypt_Base: fix the rest of the E_NOTICEs 2014-11-29 22:26:42 -06:00
terrafrost
6c09d6f565 Crypt_Base: fix E_NOTICEs 2014-11-29 16:18:17 -06:00
terrafrost
866b690248 Crypt: CS adjustments 2014-11-29 09:52:14 -06:00
terrafrost
8476ae6383 Crypt_Base: openssl_(en|de)crypt's parameters changed in PHP 5.4.0 2014-11-29 09:48:45 -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
f6e0c4b506 Crypt: add OpenSSL support
aside from the addition of OpenSSL support a few other changes have been included:

- setEngine(), as added by petrich, is depricated (not that it was ever in trunk to begin with)
  it has been replaced with isValidEngine() and setPreferredEngine().
- replace _generate_xor() with increment_str()
  _increment_str() had extra functionality that wasn't being used. ie. it could concatenate
  multiple successive string increments to one another automatically. but not only was that
  functionality not used - it also made the function less versatile. _increment_str() can be
  used more easily for iterative brute forcing (for example)
- rename Crypt_Base::_stringShift to Crypt_Base::_string_shift (for consistency)
- more expansive unit test coverage
2014-11-29 07:39:21 -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
Andreas Fischer
5c3058cc4b SFTP: Use hexdec() and bin2hex() for filesize calculation. 2014-10-19 21:07:12 +02:00
Andreas Fischer
1b57990e94 Merge pull request #492 from bantu/sftp-large-file-comment
SFTP: Replace incorrect comment about filesize. There is no 4 GiB limit.

* bantu/sftp-large-file-comment:
  SFTP: Replace incorrect comment about filesize. There is no 4 GiB limit.
2014-10-19 20:53:09 +02:00
Andreas Fischer
ad03d84461 Restore compatibility with PHP 5.6.1 by using explicit array indexes.
This seems to be caused by the resolution of PHP Ticket 67985.
2014-10-19 20:24:13 +02:00
Andreas Fischer
5b932495cc SFTP: Replace incorrect comment about filesize. There is no 4 GiB limit. 2014-10-15 17:27:48 +02:00
terrafrost
c8b55b8929 Rijndael: calling $rijndael->setEngine() didn't have any effect
(CRYPT_RIJNDAEL_MODE constant was always over-riding it)
2014-10-12 00:52:52 -05: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
terrafrost
beb3d0db79 Merge remote-tracking branch 'petrich/master' into petrich
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
2014-10-11 22:56:32 -05:00
Andreas Fischer
ce3cf60b10 Correct constant: NET_SFTP_BLOCK_DEVICE -> NET_SFTP_TYPE_BLOCK_DEVICE 2014-10-09 23:24:30 +02:00
Vladimir Volodko
6715c41e1f Fix Net_SFTP::filetype() block device recognition. 2014-10-09 12:46:58 +07:00
Cezary Kluczyński
0692a1ea7d SSH2: removed redundant rtrim 2014-09-28 12:39:54 +02:00
terrafrost
a43dd38365 BigInteger: accomodate GMP change in PHP 5.6 2014-09-27 12:52:54 -05:00
terrafrost
a2f4a2cbba ASN1: add unit test for non-constructed context-specific change 2014-09-22 23:03:06 -05:00
terrafrost
c6ad2b69ba ASN1: fix issue with non-constructed context-specific tags 2014-09-22 01:01:34 -05:00
Andreas Fischer
3f3b9b90fb Merge pull request #469 from terrafrost/rsa-xml-unsigned
RSA: make XML keys use unsigned integers

* terrafrost/rsa-xml-unsigned:
  RSA: syntax error in unit tests
  RSA: make unit tests perform string comparisons sans white space chars
  RSA: update unit test
  RSA: add unit test
  RSA: make XML keys use unsigned integers
2014-09-09 16:41:58 +02:00
terrafrost
c489852332 RSA: update unit test 2014-09-09 00:28:38 -05: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
713393c8ad RSA: make XML keys use unsigned integers
PKCS1 / PKCS8 keys need *signed* integers because of section 8.3.3
at http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#page=7
2014-09-06 11:13:11 -05:00
Andreas Fischer
5e9d41f403 Merge pull request #462 from terrafrost/asn1-handle-indef-lengths
ASN1: rewrite _decode_der

* terrafrost/asn1-handle-indef-lengths:
  ASN1: one more unit test change
  ASN1: another unit test update
  ASN1: unit test adjustments
  ASN1: cs adjustments to unit test
  ASN1: add unit tests for indefinite length decoding
  ASN1: CS adjustment (rm whitespace at eol)
  ASN1: rewrite _decode_der
2014-09-04 22:20:27 +02:00
terrafrost
3bb123c3d5 ASN1: CS adjustment (rm whitespace at eol) 2014-08-30 19:44:12 -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
terrafrost
e258e001fa ASN1: rewrite _decode_der
this rewrite makes phpseclib better able to handle indef lengths,
which had previously been untested.
2014-08-25 10:12:56 -05:00
Vitaliy Zaytsev
2ee0529c9d Replaced "case true:" with "default:" 2014-08-25 19:58:38 +07:00
Vitaliy Zaytsev
cf10e07660 Error: "Constant CRYPT_RSA_MODE already defined"
It happens if defined(MATH_BIGINTEGER_OPENSSL_DISABLE) && !function_exists('openssl_pkey_get_details')
2014-08-25 19:03:24 +07:00
terrafrost
74feca9cf2 SFTP: cs adjustment 2014-08-19 14:20:20 -05:00
terrafrost
cb66c561c2 SFTP: optimize conditional calls to fclose in get() method 2014-08-19 14:05:24 -05:00
terrafrost
29e0143308 SFTP: grammar 2014-08-16 15:49:38 -05:00
terrafrost
7ed53f2428 SFTP: fix issue with uploading via a resource 2014-08-16 13:56:34 -05:00
terrafrost
e48ee12940 SFTP: make it so files can be downloaded into resources or upload
from resources
2014-08-16 12:49:55 -05:00
terrafrost
aa0e7347ef AES: a few final changes 2014-08-14 23:09:17 -05:00
terrafrost
35fd2888ea Rijndael, AES: adjustments to what key sizes are and aren't allowed 2014-08-13 09:56:49 -05:00
Andreas Fischer
cb8f991752 Merge pull request #448 from terrafrost/bits-change
BigInteger:  small optimization to bitwise_not

* terrafrost/bits-change:
  BigInteger: fix previous fix
  BigInteger:  small optimization to bitwise_not
2014-08-12 11:30:21 +02:00
terrafrost
33182bb2de BigInteger: fix previous fix 2014-08-10 14:47:08 -05:00
Andreas Fischer
63974e9bbc Merge pull request #446 from terrafrost/hash-96-2
Hash: add sha256-96 and sha512-96

* terrafrost/hash-96-2:
  Hash: apply fixes to sha512 unit tests as well
  Hash: one more fix to unit test
  Hash: fix unit tests
  Hash: add unit tests
  Hash: add sha256-96 and sha512-96
2014-08-10 17:59:03 +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
4ce7a0f63a BigInteger: small optimization to bitwise_not 2014-08-10 02:03:58 -05:00
terrafrost
085fb0ebb8 SSH: update getServerPublicHostKey() to use new _connect() method 2014-08-06 14:42:08 -05:00
terrafrost
88d6517d93 Hash: add sha256-96 and sha512-96
IPSec uses them and some versions of OpenSSH use them (even though RFC6668 makes no mention of them)
2014-08-05 23:27:11 -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
737c8a9d0f Use toBits() as there is no bits property. 2014-07-26 13:43:57 +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
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