1
0
mirror of https://github.com/danog/tgseclib.git synced 2024-12-17 03:16:56 +01:00
Commit Graph

1519 Commits

Author SHA1 Message Date
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
2f27620409 Add #@+ block for properties used by internal implementation. 2014-12-08 16:02:39 +01:00
Andreas Fischer
8ecf956499 Move in-code comments to property doc blocks. 2014-12-07 23:00:59 +01:00
Clint Nelissen
f5d6b7423d Refactor defined MATH_BIGINTEGER_ constants into class constants. 2014-12-07 22:33:39 +01:00
terrafrost
9a55ab1892 Blowfish: syntax error 2014-12-07 14:43:30 -06:00
Andreas Fischer
7b7e7d8de5 Add public keyword to Crypt\Random::string(). 2014-12-07 15:14:34 +01: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
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
Andreas Fischer
da2ea27e7a Merge pull request #523 from cnelissen/FilePackageConstantsFix
File package constants fix

* cnelissen/FilePackageConstantsFix:
  Docblock fix
  Moved global constants into class constants and updated all references
2014-12-05 01:00:01 +01:00
Clint Nelissen
99b9cc477d Moved global constants to class constants 2014-12-04 13:45:13 -08:00
Andreas Fischer
01650cf7d7 Merge pull request #524 from cnelissen/SystemPackageConstantsFix
System package constants fix

* cnelissen/SystemPackageConstantsFix:
  Added SSH_AGENT_FAILURE constant back in
  Missed a couple SYSTEM_ prefixes
  Moved global constants to class constants
2014-12-04 20:05:55 +01:00
Andreas Fischer
a3f52dcf61 Merge branch 'master' into php5
* master:
  Quote shell argument with escapeshellarg()
2014-12-04 20:00:45 +01: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
243ad0c54a Merge branch 'master' into php5
* master:
  SCP: Add missing space after case statement.
2014-12-04 19:56:34 +01:00
Clint Nelissen
f085f91d16 Added SSH_AGENT_FAILURE constant back in 2014-12-04 10:38:58 -08: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
Clint Nelissen
e8c93d8cfe Docblock fix 2014-12-04 08:30:07 -08:00
Clint Nelissen
19b4d0ec0c Missed a couple SYSTEM_ prefixes 2014-12-04 08:28:05 -08:00
Clint Nelissen
f7fb93276a Moved global constants to class constants 2014-12-03 18:44:30 -08:00
Clint Nelissen
a9925941b0 Moved global constants into class constants and updated all references 2014-12-03 18:20:10 -08:00
Andreas Fischer
b771ca36cf Merge pull request #519 from bantu/remove-license-text
Remove LICENSE text from source code files.

* bantu/remove-license-text:
  Remove LICENSE text from source code files.
2014-12-03 23:13:00 +01:00
Andreas Fischer
632c47e55f Merge branch 'master' into php5
* master:
  Avoid calling fclose(false)
2014-12-03 23:08:56 +01: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
Andreas Fischer
638e62d60a Remove LICENSE text from source code files. 2014-12-03 18:49:33 +01:00
Andreas Fischer
dbbc21cb64 Merge pull request #510 from cnelissen/FixFileAsn1Classes
Split File_ASN1 and File_ASN1_Element into separate files

* cnelissen/FixFileAsn1Classes:
  Code sniffer php version fix
  Removed duplicated docblock text
  Codesniff fix
  Split File_ASN1 and File_ASN1_Element into separate files
2014-12-03 18:38:23 +01:00
Andreas Fischer
cc4aac1f29 Merge pull request #509 from cnelissen/FixSSHAgentClasses
Split System_SSH_Agent and System_SSH_Agent_Identity into separate files

* cnelissen/FixSSHAgentClasses:
  Code sniff php version fix
  Removed duplicated docblock text
  Split System_SSH_Agent and System_SSH_Agent_Identity into separate files
2014-12-03 18:38:17 +01:00
Clint Nelissen
ef3c96a46f Code sniff php version fix 2014-12-03 08:59:01 -08:00
Clint Nelissen
9bb9f54773 Code sniffer php version fix 2014-12-03 08:57:41 -08: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
45ed270556 Removed duplicated docblock text 2014-12-02 08:18:43 -08:00
Clint Nelissen
7fe4007053 Removed duplicated docblock text 2014-12-02 08:17:53 -08:00
Clint Nelissen
3129faf05d Codesniff fix 2014-12-01 19:28:02 -08:00
Clint Nelissen
feca21da2b Split File_ASN1 and File_ASN1_Element into separate files 2014-12-01 19:26:52 -08:00
Clint Nelissen
b32c05b64e Split System_SSH_Agent and System_SSH_Agent_Identity into separate files 2014-12-01 19:18:58 -08:00
Clint Nelissen
bc3deb191f Code sniff fix 2014-12-01 19:01:00 -08:00
Clint Nelissen
9c0c3faeb7 Initial commit 2014-12-01 18:54:44 -08: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
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
Andreas Fischer
8af52e2954 Merge branch 'master' into php5
* master:
  SFTP: Use hexdec() and bin2hex() for filesize calculation.
2014-10-19 21:32:23 +02:00
Andreas Fischer
5c3058cc4b SFTP: Use hexdec() and bin2hex() for filesize calculation. 2014-10-19 21:07:12 +02:00
Andreas Fischer
45ce4b24ef Merge branch 'master' into php5
* master:
  SFTP: Replace incorrect comment about filesize. There is no 4 GiB limit.

Conflicts:
	phpseclib/Net/SFTP.php
2014-10-19 20:54:50 +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
0e38dc4951 Merge branch 'master' into php5
* master:
  Restore compatibility with PHP 5.6.1 by using explicit array indexes.
2014-10-19 20:46:15 +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
e682e20df4 Merge branch 'master' into php5
* master:
  Correct constant: NET_SFTP_BLOCK_DEVICE -> NET_SFTP_TYPE_BLOCK_DEVICE
2014-10-09 23:51:33 +02:00
Andreas Fischer
ce3cf60b10 Correct constant: NET_SFTP_BLOCK_DEVICE -> NET_SFTP_TYPE_BLOCK_DEVICE 2014-10-09 23:24:30 +02:00
Andreas Fischer
645c16d0f5 Merge branch 'master' into php5
* master:
  Fix Net_SFTP::filetype() block device recognition.
2014-10-09 23:19:23 +02:00
Vladimir Volodko
6715c41e1f Fix Net_SFTP::filetype() block device recognition. 2014-10-09 12:46:58 +07: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
da02246cc4 Merge branch 'master' into php5
* master:
  BigInteger: accomodate GMP change in PHP 5.6
2014-09-27 22:57:59 +02:00
terrafrost
a43dd38365 BigInteger: accomodate GMP change in PHP 5.6 2014-09-27 12:52:54 -05:00
Andreas Fischer
eff5f64560 Merge branch 'master' into php5
* master:
  ASN1: fix unit test
  ASN1: add unit test for non-constructed context-specific change
  ASN1: fix issue with non-constructed context-specific tags
  README: update download link to 0.3.8
2014-09-24 16:50:12 +02: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
5fa5a137dc Merge branch 'master' into php5
* master:
  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:42:07 +02: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
Andreas Fischer
e85321959e SSH1: Math_BigInteger is supposed to be BigInteger. 2014-09-07 22:26:22 +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
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
6cb0528d6e Merge branch 'master' into php5
* master:
  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

Conflicts:
	phpseclib/File/ASN1.php
2014-09-04 22:22:16 +02: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
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
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
Andreas Fischer
830667ce75 Merge branch 'master' into php5
* master:
  Replaced "case true:" with "default:"
  Error: "Constant CRYPT_RSA_MODE already defined"
2014-08-25 15:16:34 +02: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
Andreas Fischer
a15079676c Merge branch 'master' into php5
* master:
  SFTP: cs adjustment
  SFTP: optimize conditional calls to fclose in get() method
  SFTP: grammar
  SFTP: fix issue with uploading via a resource
  SFTP: make it so files can be downloaded into resources or upload   from resources
2014-08-19 22:25:07 +02: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
Andreas Fischer
6ba2b374e5 Merge branch 'master' into php5
* master:
  AES: don't do mcrypt unit tests if mcrypt extension is not available
  AES: a few final changes
  AES: set CRYPT_RIJNDAEL_MODE as well in unit tests
  AES: CS changes to unit tests
  AES: more unit test fixes
  AES: unit test updates
  AES: more unit test fixes
  AES: add new lines to end of unit tests
  AES: CS adjustments to unit tests
  AES: first attempt at unit tests for key padding
  Rijndael, AES: adjustments to what key sizes are and aren't allowed
2014-08-15 16:27:36 +02: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
c59750562a Merge branch 'master' into php5
* master:
  BigInteger: fix previous fix
  BigInteger:  small optimization to bitwise_not
2014-08-12 11:30:30 +02: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
83485c130f Merge branch 'master' into php5
* master:
  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:08 +02: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
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
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
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
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
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
bb1c36893f Merge branch 'master' into php5
* master:
  Do not check filename over and over again, remove '.' and '..' from the map instead.
2014-07-24 17:32:38 +02:00
Andreas Fischer
880bc9d9e6 Merge pull request #420 from bantu/sftp-skip-current-dir-by-removal
SFTP: Do not check filename over and over again, remove '.' and '..' from the map instead.

* bantu/sftp-skip-current-dir-by-removal:
  Do not check filename over and over again, remove '.' and '..' from the map instead.
2014-07-24 17:32:38 +02:00
Andreas Fischer
8862b3c97a Merge branch 'master' into php5
* master:
  Only fclose($fp) when $mode & NET_SFTP_LOCAL_FILE.
2014-07-24 17:04:25 +02:00
Andreas Fischer
48a2613cde Merge pull request #421 from bantu/issue/418
SFTP: Only fclose($fp) when $mode & NET_SFTP_LOCAL_FILE.

* bantu/issue/418:
  Only fclose($fp) when $mode & NET_SFTP_LOCAL_FILE.
2014-07-24 17:04:24 +02:00
Andreas Fischer
47695777f8 Merge branch 'master' into php5
* master:
  Net_SFTP::_list() only takes two parameters.
2014-07-24 17:02:47 +02:00
Andreas Fischer
952d2166bf Net_SFTP::_list() only takes two parameters. 2014-07-24 11:09:37 +02:00
Andreas Fischer
695d1e9038 Only fclose($fp) when $mode & NET_SFTP_LOCAL_FILE. 2014-07-24 11:06:24 +02:00
Andreas Fischer
84a9a300d4 Do not check filename over and over again, remove '.' and '..' from the map instead. 2014-07-24 11:00:55 +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
Andreas Fischer
cc64ef9d3f Merge pull request #412 from terrafrost/ssh2-connected
SSH2: make isConnected return true if even if we're not logged in

* terrafrost/ssh2-connected:
  SSH2: make isConnected return true if even if we're not logged in
2014-07-20 23:00:30 +02:00
Andreas Fischer
d29ad3afa9 Merge branch 'master' into php5
* master:
  SFTP: stat cache fixes
  SFTP: return $sftp object in new unit test method
  SFTP: add unit test for stat cache fix
2014-07-20 21:41:51 +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
terrafrost
a84861bb52 SFTP: stat cache fixes 2014-07-19 21:31:58 -05:00
Andreas Fischer
8e0b9b2d64 Merge branch 'master' into php5
* master:
  SFTP: fix an issue with the stat cache
  README: update download link to latest version
2014-07-12 12:08:36 +02:00
terrafrost
fe7fd97b59 SFTP: fix an issue with the stat cache 2014-07-11 12:14:26 -05:00
Andreas Fischer
d198756a76 Merge branch 'master' into php5
* master:
  SCP: always encapsulate filenames within double quotes
  SCP: add support for file names with spaces
2014-07-05 17:40:07 +02:00
Andreas Fischer
ba24e04729 Merge pull request #394 from terrafrost/scp-spaces
SCP: add support for file names with spaces

* terrafrost/scp-spaces:
  SCP: always encapsulate filenames within double quotes
  SCP: add support for file names with spaces
2014-07-05 17:40:01 +02:00
terrafrost
aec33901fc SCP: always encapsulate filenames within double quotes 2014-07-03 13:36:24 -05:00
Andreas Fischer
970c55d6cc Remove side-effect from Net/SFTP/Stream.php. 2014-06-27 14:22:47 +02:00
Andreas Fischer
d25d115747 Merge branch 'master' into php5
* master:
  Use get_called_class() if available.
  Add Net_SFTP_Stream::register() for easier autoloading.
  Add unit test for (to be added) Net_SFTP_Stream::register().
2014-06-27 14:14:18 +02:00
terrafrost
9edf905939 SCP: add support for file names with spaces 2014-06-26 20:41:43 -05:00
Andreas Fischer
0f672dde52 Use get_called_class() if available. 2014-06-27 00:35:19 +02:00
Andreas Fischer
73f961cb7d Add Net_SFTP_Stream::register() for easier autoloading. 2014-06-27 00:22:41 +02:00
Andreas Fischer
510d5e1778 Merge branch 'master' into php5
* master:
  SFTP: return $sftp object in unit tests
  SFTP: fix unit test
  SFTP: syntax error in unit test
  SFTP: add unit tests for symlinks
  SFTP: add readlink and symlink functions
2014-06-23 16:37:56 +02:00
Andreas Fischer
949cfcc867 Merge pull request #386 from terrafrost/symlink
SFTP: add readlink and symlink functions

* terrafrost/symlink:
  SFTP: return $sftp object in unit tests
  SFTP: fix unit test
  SFTP: syntax error in unit test
  SFTP: add unit tests for symlinks
  SFTP: add readlink and symlink functions
2014-06-23 16:37:55 +02:00
Andreas Fischer
ca4f6a21eb Merge branch 'master' into php5
* master:
  Removed white-spaces from line ends
  Allow setting the terminal window size
2014-06-23 16:36:23 +02: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
b50ef2dc64 Replace phpseclib_resolve_include_path with stream_resolve_include_path. 2014-06-19 16:14:15 +02:00
Andreas Fischer
f85d333912 Merge branch 'master' into php5
* master:
  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

Conflicts:
	tests/bootstrap.php
2014-06-19 16:09:23 +02: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
terrafrost
96ccca2817 Random: a few changes to the stream_resolve_include_path_function 2014-06-18 22:03:09 +02:00
terrafrost
a65b820b54 SFTP: add readlink and symlink functions 2014-06-18 11:34:50 -05:00
Andreas Fischer
9c90beaf82 Replace stream_resolve_include_path with phpseclib_is_includable. 2014-06-17 14:38:24 +02:00
Andreas Fischer
563b8af6ce Merge branch 'master' into php5
* master:
  SSH2: rm redundant part of SSH2 unit test
  SSH2: add unit test for getServerPublicHostKey
  SSH2: make it so you can verify server public host key without logging on
2014-06-17 11:37:37 +02:00
Andreas Fischer
9716d9b7e5 Merge pull request #380 from terrafrost/server-host-key
SSH2: make it so you can verify server public host key without logging on

* terrafrost/server-host-key:
  SSH2: rm redundant part of SSH2 unit test
  SSH2: add unit test for getServerPublicHostKey
  SSH2: make it so you can verify server public host key without logging on
2014-06-17 11:37:36 +02:00
Andreas Fischer
8ba3dd0846 Merge branch 'master' into php5
* master:
  Crypt/Base: readability improvement
  RSA: CS adjustments
  RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
  RSA: add PKCS8 unit tests
  RSA: add support for saving encrypted PKCS8 keys
  Crypt/Base: adjust default key size for pbkdf1
  RSA: add support for loading PKCS8 encrypted private keys
  Crypt/Base: add support for pbkdf1
  RSA: add support for saving to PKCS8 (unencrypted)
2014-06-17 00:36:54 +02:00
Andreas Fischer
f807d8799e Merge pull request #370 from terrafrost/pkcs8
RSA: add support for PKCS8 encoded private keys

* terrafrost/pkcs8:
  Crypt/Base: readability improvement
  RSA: CS adjustments
  RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
  RSA: add PKCS8 unit tests
  RSA: add support for saving encrypted PKCS8 keys
  Crypt/Base: adjust default key size for pbkdf1
  RSA: add support for loading PKCS8 encrypted private keys
  Crypt/Base: add support for pbkdf1
  RSA: add support for saving to PKCS8 (unencrypted)
2014-06-17 00:36:54 +02:00
Andreas Fischer
b56c6a535e HHVM does not like it when we call an non-existent parent constructor. 2014-06-16 22:18:19 +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
Andreas Fischer
67aedc240b Change constructors from class name to __construct().
This has been produced as follows:
<?php
$replace = $files = [];
$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($argv[1]));
foreach ($it as $fileinfo) {
    if ($fileinfo->getExtension() === 'php') {
        $file = $fileinfo->getPathname();
        $content = file_get_contents($file);
        $files[$file] = $content;
        $tokens = token_get_all($content);
        foreach ($tokens as $key => $value) {
            if ($value[0] === T_CLASS) {
                $class = $tokens[$key + 2][1];
                $replace += array(
                    "$class::$class(" => "$class::__construct(",
                    "parent::$class(" => "parent::__construct(",
                    "function $class(" => "function __construct(",
                );
            }
        }
    }
}
foreach ($files as $file => $content) {
    file_put_contents(
        $file,
        str_replace(
            array_keys($replace),
            array_values($replace),
            $content
        )
    );
}
2014-06-16 17:06:34 +02:00
Andreas Fischer
ac449e1965 Merge branch 'master' into php5
* master:
  Always correctly link to the constructor of Crypt_Base.
2014-06-16 17:03:52 +02:00
Andreas Fischer
765154f54e Merge pull request #378 from bantu/UselessOverridingMethod
Always correctly link to the constructor of Crypt_Base.

* bantu/UselessOverridingMethod:
  Always correctly link to the constructor of Crypt_Base.
2014-06-16 17:03:51 +02:00
Andreas Fischer
fc417115be Merge branch 'master' into php5
* master:
  BigInteger: one more change to the comments
  BigInteger: update comments
  BigInteger: unit test update
  BigInteger: change argument names for random / randomPrime
  BigInteger: fix unit tests
  BigInteger: fix syntax error
  BigInteger: make it so you can do $min->random($max)

Conflicts:
	phpseclib/Math/BigInteger.php
2014-06-16 17:00:00 +02:00
terrafrost
0bafe1e6c6 Crypt/Base: readability improvement 2014-06-16 09:57:04 -05:00
Andreas Fischer
088e31b6ea Merge pull request #373 from terrafrost/another-random-change
BigInteger: make it so you can do $min->random($max)

* terrafrost/another-random-change:
  BigInteger: one more change to the comments
  BigInteger: update comments
  BigInteger: unit test update
  BigInteger: change argument names for random / randomPrime
  BigInteger: fix unit tests
  BigInteger: fix syntax error
  BigInteger: make it so you can do $min->random($max)
2014-06-16 16:54:00 +02:00
terrafrost
82b5e02f06 Random: add explanatory comment 2014-06-16 09:53:55 -05:00
terrafrost
4401b7e21e SSH2: replace _is_includable() with stream_resolve_include_path 2014-06-16 09:47:13 -05:00
Andreas Fischer
d38886c2a9 Always correctly link to the constructor of Crypt_Base. 2014-06-16 16:42:18 +02:00
terrafrost
638e6c78ec Random: include the Crypt_* classes if they're available
also error out if none are available
2014-06-16 09:40:27 -05:00
Andreas Fischer
c2a6667ed2 Merge branch 'master' into php5
* master:
  Remove unnecessary constructors.
2014-06-16 16:29:29 +02:00
Andreas Fischer
c05cfe4c10 Merge pull request #376 from bantu/UselessOverridingMethod
Remove unnecessary constructors.

* bantu/UselessOverridingMethod:
  Remove unnecessary constructors.
2014-06-16 16:29:28 +02:00
Andreas Fischer
635c524b6b Merge branch 'master' into php5
* master:
  RC4: speedups
2014-06-16 16:28:29 +02:00
Andreas Fischer
5cc024a3b5 Merge pull request #377 from terrafrost/rc4-changes
RC4: speedups

* terrafrost/rc4-changes:
  RC4: speedups
2014-06-16 16:28:29 +02:00
terrafrost
4b9eb4af27 BigInteger: one more change to the comments 2014-06-16 09:23:34 -05:00
terrafrost
0938cba3c3 RC4: speedups 2014-06-16 09:19:14 -05:00
Andreas Fischer
91e78c2106 Remove unnecessary constructors. 2014-06-16 16:14:35 +02:00
terrafrost
0eb0ae7ff7 BigInteger: update comments 2014-06-16 09:09:26 -05:00
terrafrost
34a971d317 BigInteger: change argument names for random / randomPrime 2014-06-14 23:49:57 -05:00
terrafrost
f8f0bd44b7 BigInteger: fix syntax error 2014-06-14 19:20:05 -05:00
terrafrost
46166c7351 BigInteger: make it so you can do $min->random($max)
...and $min->randomPrime($max) as well
2014-06-14 14:07:33 -05:00
Andreas Fischer
6a8ac88a0c Merge branch 'master' into php5
* master:
  RC2: speed-ups and CS changes
2014-06-13 23:49:53 +02:00
terrafrost
04d66db309 RC2: speed-ups and CS changes 2014-06-13 16:30:12 -05:00
terrafrost
d8b235141e RSA: CS adjustments 2014-06-13 13:17:37 -05:00
terrafrost
83301097ea RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
also make CRYPT_RSA_PUBLIC_FORMAT_PKCS8 the default format
2014-06-13 13:11:59 -05:00
terrafrost
4434d91f25 RSA: add support for saving encrypted PKCS8 keys 2014-06-13 11:43:32 -05:00
terrafrost
d474f56f60 Crypt/Base: adjust default key size for pbkdf1 2014-06-13 10:39:57 -05:00
terrafrost
abae026264 RSA: add support for loading PKCS8 encrypted private keys 2014-06-13 08:56:00 -05:00
terrafrost
21c6a15df3 Crypt/Base: add support for pbkdf1 2014-06-13 08:54:30 -05:00
terrafrost
0a5e26a648 RSA: add support for saving to PKCS8 (unencrypted) 2014-06-12 22:03:00 -05:00
Andreas Fischer
76ac2a863d Merge branch 'master' into php5
* master:
  RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format
2014-06-11 08:05:49 +02:00
Andreas Fischer
90bc07e292 Merge pull request #366 from terrafrost/rsa-format-change
RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format

* terrafrost/rsa-format-change:
  RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format
2014-06-11 08:05:48 +02:00
Andreas Fischer
14ba37c539 Merge branch 'master' into php5
* master:
  SSH2: make $mac_algorithms non-static
2014-06-11 07:49:02 +02: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
terrafrost
72a0913d39 RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format
CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW and CRYPT_RSA_PUBLIC_FORMAT_PKCS1
produce two very similar looking keys but they are not the same.
As dissection OpenSSL's asn1parse would reveal CRYPT_RSA_PUBLIC_FORMAT_PKCS1
has the fact that it is an RSA key embedded within it whereas
CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW does not. phpseclib now resolves
this ambiguity in the same way that OpenSSH's ssh-keygen does.

Despite this change CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW is still incompatible
with OpenSSL's rsautl (CRYPT_RSA_PUBLIC_FORMAT_PKCS1 is compatible). I guess
this incompatibility isn't just due to the headers but is also due to the
overall structure of the format.
2014-06-10 22:16:59 -05:00
Andreas Fischer
f40bc4d3b8 Merge branch 'master' into php5
* master:
  SFTP: update one last comment
  SFTP: update unit test comments
  SFTP: add new line to end of unit test
  SFTP: assertEquals -> assertSame
  SFTP: reset sort options every time and update unit test
  SFTP: rm whitespace
  SFTP: define $sortOptions
  SFTP: add the ability for nlist() and rawlist() to be sorted
2014-06-09 20:19:39 +02:00
Andreas Fischer
6e796d091a Merge pull request #364 from terrafrost/sftp-sort2
SFTP: add the ability for nlist() and rawlist() to be sorted

* terrafrost/sftp-sort2:
  SFTP: update one last comment
  SFTP: update unit test comments
  SFTP: add new line to end of unit test
  SFTP: assertEquals -> assertSame
  SFTP: reset sort options every time and update unit test
  SFTP: rm whitespace
  SFTP: define $sortOptions
  SFTP: add the ability for nlist() and rawlist() to be sorted
2014-06-09 20:19:33 +02:00
terrafrost
0e2b2a416b SFTP: reset sort options every time and update unit test 2014-06-09 09:22:30 -05:00
terrafrost
8dff207ed3 SFTP: rm whitespace 2014-06-05 15:06:50 -05:00
terrafrost
8c0f710083 SFTP: define $sortOptions 2014-06-05 10:50:13 -05:00
Andreas Fischer
b217994534 Add missing use BigInteger statement to X509. 2014-06-05 17:08:36 +02:00
terrafrost
b64573f4b5 SFTP: add the ability for nlist() and rawlist() to be sorted 2014-06-05 09:56:49 -05:00
Andreas Fischer
2a9d7e5e03 Merge branch 'master' into php5
* master:
  X509: Unit test CS changes
  X509: move location of SPKAC unit test
  X509: CS adjustments
  X509: PHP4 compat changes
  RSA: PHP4 compat changes
  X509: rm trailing white space from unit test
  X509: add SPKAC unit test
  X509: add signSPKAC() and saveSPKAC() methods
2014-06-05 16:56:36 +02:00
terrafrost
daa466db94 Merge branch 'master' of https://github.com/phpseclib/phpseclib into spkac 2014-06-05 08:40:49 -05:00
terrafrost
b1ad911d20 X509: CS adjustments 2014-06-05 08:33:27 -05:00
terrafrost
aabc5cf822 X509: PHP4 compat changes 2014-06-05 08:10:52 -05:00
terrafrost
af0040b813 RSA: PHP4 compat changes 2014-06-05 08:10:20 -05:00
terrafrost
dce03bb003 X509: add signSPKAC() and saveSPKAC() methods 2014-06-03 23:44:09 -05:00
Andreas Fischer
a643e5bfb5 Correct the remaining case by using instanceof. 2014-06-02 20:24:25 +02:00
Andreas Fischer
f2f5fcd70a Update users of Math_BigInteger. 2014-06-02 20:19:00 +02:00
Andreas Fischer
65ec4dc8bc Some more documentation polishing in Math/BigInteger.php. 2014-06-02 20:19:00 +02:00
Andreas Fischer
a011596578 Replace new Math_BigInteger with new static. 2014-06-02 20:19:00 +02:00
Andreas Fischer
740422c65f Reference to instances as BigInteger instead of Math_BigInteger. 2014-06-02 20:19:00 +02:00
Andreas Fischer
00f77ab341 Use namespace in example code. 2014-06-02 20:19:00 +02:00
Andreas Fischer
ae4099dc64 Remove any include statement. 2014-06-02 20:19:00 +02:00
Andreas Fischer
8dff257cae Add namespace statement. Rename class. 2014-06-02 20:17:18 +02:00
Andreas Fischer
7d9598a21e Use __construct. 2014-06-02 20:17:18 +02:00
Andreas Fischer
6f4a873cad Merge branch 'master' into php5
* master:
  Adjust documentation to coding guidelines: No () around include.
2014-06-02 12:51:24 +02:00
Andreas Fischer
e6f87318f5 Adjust documentation to coding guidelines: No () around include. 2014-06-01 23:28:49 +02:00
Andreas Fischer
02e06a2c55 Merge branch 'master' into php5
* master:
  RSA: update unit test file
  RSA: auto-detect public keys vs private keys
2014-06-01 22:17:38 +02:00
Andreas Fischer
07e1f954de Merge pull request #325 from terrafrost/rsa-public-key
RSA: auto-detect public keys vs private keys

* terrafrost/rsa-public-key:
  RSA: update unit test file
  RSA: auto-detect public keys vs private keys
2014-06-01 22:17:38 +02:00
Andreas Fischer
eb12b347b7 Merge pull request #353 from terrafrost/biginteger-function-exists
BigInteger: "be less overly clever loading Crypt/Random"

* terrafrost/biginteger-function-exists:
  BigInteger: "be less overly clever loading Crypt/Random"
2014-05-30 15:50:36 +02:00
Andreas Fischer
4a89349615 Merge branch 'master' into php5
* master:
  BigInteger: "be less overly clever loading Crypt/Random"
2014-05-30 15:50:36 +02:00
Andreas Fischer
7e2289656a Merge branch 'master' into php5
* master:
  SFTP/Stream: fix capatilization
  SFTP/Stream: add explanation as to why nlist() is used here
  SFTP/Stream: use $scheme instead of 'sftp'
2014-05-30 00:00:05 +02:00
terrafrost
7252017268 SFTP/Stream: fix capatilization 2014-05-29 16:49:04 -05:00
terrafrost
7c08ab71d3 BigInteger: "be less overly clever loading Crypt/Random"
pretty much the same as this commit:

28f18f83ec
2014-05-29 16:31:26 -05:00
terrafrost
c0e3795319 SFTP/Stream: add explanation as to why nlist() is used here 2014-05-29 16:23:28 -05:00
terrafrost
3dd92e56e4 SFTP/Stream: use $scheme instead of 'sftp'
This makes it easier for someone to change the scheme (which can be
done by changng the stream_wrapper_register call at the bottom
of the file)
2014-05-29 16:14:03 -05:00
Andreas Fischer
712f820a26 Merge branch 'master' into php5
* master:
  SSH2: 0x7FFFFFFF -> $this->window_size in one more place
  SSH2: make it so callback functions can make exec() return early
2014-05-28 00:39:40 +02:00
Andreas Fischer
aa5f9b77ec Merge pull request #349 from terrafrost/ssh2-exec-callback-termination
SSH2: make it so callback functions can make exec() return early

* terrafrost/ssh2-exec-callback-termination:
  SSH2: 0x7FFFFFFF -> $this->window_size in one more place
  SSH2: make it so callback functions can make exec() return early
2014-05-28 00:39:40 +02:00
Andreas Fischer
5ff1c9a349 Merge branch 'master' into php5
* master:
  SFTP: NULL -> null
  SFTP: fix syntax error
  SFTP: add more stat functions
2014-05-28 00:02:23 +02:00
Andreas Fischer
fc57e3f9c9 Merge pull request #348 from terrafrost/more-sftp-changes
More sftp changes

* terrafrost/more-sftp-changes:
  SFTP: NULL -> null
  SFTP: fix syntax error
  SFTP: add more stat functions
2014-05-28 00:02:20 +02:00
Andreas Fischer
958430b5a8 Merge branch 'master' into php5
* master:
  Random: wrap crypt_random_string in a function_exists call
2014-05-27 12:24:52 +02:00
terrafrost
015d628183 Random: wrap crypt_random_string in a function_exists call 2014-05-26 18:32:36 -05: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
c100264b65 SFTP: NULL -> null 2014-05-26 16:32:57 -05:00
terrafrost
46ae0da314 SFTP: fix syntax error 2014-05-26 15:42:14 -05:00
terrafrost
a7fa4cc4ff SFTP: add more stat functions
also don't use stat cache for SFTP/Stream.php
2014-05-26 15:39:30 -05:00
Andreas Fischer
518eb861e9 Merge branch 'master' into php5
* master:
  SFTP: Use the correct stat cache property: stat_cache
2014-05-22 15:27:56 +02:00
Andreas Fischer
f1fbf9c5ae SFTP: Use the correct stat cache property: stat_cache 2014-05-22 13:32:39 +02:00
Andreas Fischer
39b9ffffdf Merge branch 'master' into php5
* master:
  SFTP: last commit had a few ommissions
  SFTP Functional tests: Make use of assertNotSame
  SFTP Functional tests: Keep story linear.
  SFTP: add more unit tests
2014-05-22 13:25:57 +02:00
terrafrost
1ddcd6d873 SFTP: last commit had a few ommissions 2014-05-21 19:55:12 -05:00
Andreas Fischer
4524b9f663 Merge branch 'master' into php5
* master:
  SFTP: stat cache updates
  SFTP: Rudimentary tests for file_exists(), is_file(), is_dir().
2014-05-21 17:55:42 +02:00
terrafrost
4d9214970b SFTP: stat cache updates 2014-05-21 10:20:36 -05:00
Andreas Fischer
6b2b01347f Merge branch 'master' into php5
* master:
  SFTP: use_cache -> use_stat_cache
  SFTP: switch from using file existence cache to stat cache, like PHP
  SFTP: add support for recursive nlist and rawlist
  SFTP: add file_exists, is_dir and is_file functions
2014-05-18 23:21:17 +02:00
Andreas Fischer
7d2a3279c6 Merge pull request #338 from terrafrost/sftp-changes-20140510
SFTP: add file_exists, is_dir and is_file functions

* terrafrost/sftp-changes-20140510:
  SFTP: use_cache -> use_stat_cache
  SFTP: switch from using file existence cache to stat cache, like PHP
  SFTP: add support for recursive nlist and rawlist
  SFTP: add file_exists, is_dir and is_file functions
2014-05-18 23:20:58 +02:00
terrafrost
36fa9e4e48 SFTP: use_cache -> use_stat_cache 2014-05-18 15:55:12 -05:00
terrafrost
e09a6968da SFTP: switch from using file existence cache to stat cache, like PHP
also add a few new functions - is_link and filesize
2014-05-18 15:34:10 -05:00
terrafrost
0a0398268a SFTP: add support for recursive nlist and rawlist 2014-05-13 17:10:32 -05:00
terrafrost
77641003fa SFTP: add file_exists, is_dir and is_file functions
also expand caching layer
2014-05-10 19:52:38 -05:00
Andreas Fischer
b7ebb1e0e3 Merge branch 'master' into php5
* master:
  BigInteger: speedup internal mode slightly
2014-05-06 00:49:46 +02:00
Andreas Fischer
3a309d36ed Merge pull request #335 from terrafrost/internal-mode-speedup
BigInteger: speedup internal mode slightly

* terrafrost/internal-mode-speedup:
  BigInteger: speedup internal mode slightly
2014-05-06 00:49:44 +02:00
Andreas Fischer
1821f6b28f Merge branch 'master' into php5
* master:
  ASN1: let strings in as well
  ASN1: make File_ASN1 accept int primitives and not just Math_BigInteger objects when an integer is expected
2014-05-06 00:41:59 +02:00
terrafrost
1b9c599476 ASN1: let strings in as well 2014-05-05 17:38:33 -05:00
terrafrost
7a9ea673ca ASN1: make File_ASN1 accept int primitives and not just Math_BigInteger objects when an integer is expected
The code to convert the regular integer type into the appropriate format could all just be in-line'd when an integer primitive is used but this approach is easier to read.
2014-05-05 16:39:35 -05:00
terrafrost
309c8fd555 BigInteger: speedup internal mode slightly
Changes should yield a slight speedup per the analysis at https://github.com/phpseclib/phpseclib/pull/317#issuecomment-42122335
2014-05-05 11:34:45 -05:00
Andreas Fischer
1d01f56f28 Merge branch 'master' into php5
* master:
  BigInteger: update comments and add test case
  BigInteger: fix some int64 issues
2014-04-29 16:32:59 +02:00
Andreas Fischer
431e3a04c7 Merge branch 'int64-fix'
* int64-fix:
  BigInteger: update comments and add test case
  BigInteger: fix some int64 issues
2014-04-29 16:32:49 +02:00
terrafrost
9eb6e1ed67 BigInteger: update comments and add test case 2014-04-29 16:32:25 +02:00
terrafrost
e4ff01f054 BigInteger: fix some int64 issues 2014-04-29 16:32:25 +02:00
Andreas Fischer
8eeb201de8 Merge branch 'master' into php5
* master:
  CS: Fix "PEAR.Functions.FunctionCallSignature.Indent" sniff.
2014-04-24 00:41:20 +02:00
Andreas Fischer
c0bdf1bd90 CS: Fix "PEAR.Functions.FunctionCallSignature.Indent" sniff. 2014-04-24 00:26:02 +02:00
Andreas Fischer
b3081f2a61 Merge branch 'master' into php5
* master:
  SSH2: improve handling of incomplete packets
2014-04-19 15:46:56 +02:00
Andreas Fischer
b90deb5e83 Merge pull request #328 from terrafrost/get_binary_packet
SSH2: improve handling of incomplete packets

* terrafrost/get_binary_packet:
  SSH2: improve handling of incomplete packets
2014-04-19 15:44:29 +02:00
Andreas Fischer
5cfe1560a0 Merge branch 'master' into php5
* master:
  BigInteger: explain precense of uncallable code
2014-04-19 14:05:12 +02:00
terrafrost
0cbb631852 BigInteger: explain precense of uncallable code 2014-04-18 23:43:03 -05:00
terrafrost
efd3b96dc8 SSH2: improve handling of incomplete packets 2014-04-18 16:58:00 -05:00
Andreas Fischer
a7da467819 Merge branch 'master' into php5
* master:
  Added some simple Net_SSH2 tests
2014-04-18 16:55:42 +02: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
Andreas Fischer
bf7abfcfce Merge branch 'master' into php5
* master:
  ASN1: test case updates
  ASN1: add test cases for latest changes
  ASN1: CS update
  ASN1: make developing new ASN.1 scripts a little easier
  ASN1: make it so bit string's can have an optional minimum size
  ASN1: explicit application tags didn't work (although implicit ones did)
2014-04-18 16:48:05 +02:00
Andreas Fischer
14cfcc1b53 Merge pull request #310 from terrafrost/keberos-fix
ASN1 changes

* terrafrost/keberos-fix:
  ASN1: test case updates
  ASN1: add test cases for latest changes
  ASN1: CS update
  ASN1: make developing new ASN.1 scripts a little easier
  ASN1: make it so bit string's can have an optional minimum size
  ASN1: explicit application tags didn't work (although implicit ones did)
2014-04-18 16:47:48 +02:00
terrafrost
317efaf28a RSA: auto-detect public keys vs private keys 2014-04-17 10:30:32 -05:00
Andreas Fischer
7348ab6ef7 Remove deprecated method Math_BigInteger::setRandomGenerator(). 2014-04-13 01:04:37 +02:00
terrafrost
10be403aff ASN1: CS update 2014-04-12 12:01:04 -05:00
terrafrost
61cd5e4f5a ASN1: make developing new ASN.1 scripts a little easier 2014-04-10 13:49:28 -05:00
Andreas Fischer
58cdf692f8 Merge branch 'master' into php5
* master:
  SSH2: move _connect() call to _login() from login()
  SSH2: phpdoc updates
  SSH: clarify role of constructor / connection timeout
  SSH1: do fsockopen() call when login has been called
  SSH2: != -> |=
  SSH2: phpdoc changes
  SSH2: syntax error
  SSH2: timeout set in constructor != timeout set by setTimeout()
  SSH2: add phpdoc header
  SSH2: connect to server in login() function

Conflicts:
	phpseclib/Net/SSH2.php
2014-04-10 18:00:38 +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
terrafrost
0ad0bb4c37 SSH2: phpdoc updates 2014-04-07 15:43:31 -05:00
terrafrost
677a291cb3 SSH: clarify role of constructor / connection timeout
Also, in Net_SSH2::_connect() $host is used in multiple places. Rather than changing all references to {$this->host}:{$this->port} preserve existing $host reference and update it accordingly
2014-04-07 10:26:46 -05:00
terrafrost
24bb941799 SSH1: do fsockopen() call when login has been called 2014-04-07 00:30:50 -05:00
terrafrost
6fcfe5c885 SSH2: != -> |= 2014-04-07 00:25:38 -05:00
terrafrost
8f08301744 SSH2: phpdoc changes 2014-04-07 00:19:35 -05:00
terrafrost
ab341df973 SSH2: syntax error 2014-04-07 00:16:54 -05:00
terrafrost
f27a49299e SSH2: timeout set in constructor != timeout set by setTimeout() 2014-04-07 00:02:03 -05:00
terrafrost
fc748346fc SSH2: add phpdoc header 2014-04-06 23:56:21 -05:00
terrafrost
a14e71f38b SSH2: connect to server in login() function
this change will make it so some parameters can be set after the
Net_SSH2 object has been created. eg. instead of doing
define('NET_SSH2_LOGGING', NET_SSH2_LOG_COMPLEX) one can now do
$ssh->setLogging(...) or something.
2014-04-06 23:45:25 -05:00
terrafrost
c8bf68ac02 ASN1: make it so bit string's can have an optional minimum size 2014-04-05 18:07:35 -05:00
Andreas Fischer
0288817203 Remove the phpseclib/System/SSH_Agent.php BC file. 2014-04-01 23:15:16 +02:00
Andreas Fischer
b7729feea0 Merge branch 'master' into php5
* master:
  SSH_Agent: add new line at end of file to comply with CS
  SSH_Agent: another CS update
  SSH_Agent: CS updates
  SSH_Agent: mv SSH_Agent to SSH/Agent and create SSH_Agent for BC
2014-04-01 23:14:44 +02:00
Andreas Fischer
a455c1771e Merge pull request #304 from bantu/ssh-agent-psr0-fix
SSH_Agent: mv SSH_Agent to SSH/Agent and create SSH_Agent for BC

* bantu/ssh-agent-psr0-fix:
  SSH_Agent: add new line at end of file to comply with CS
  SSH_Agent: another CS update
  SSH_Agent: CS updates
  SSH_Agent: mv SSH_Agent to SSH/Agent and create SSH_Agent for BC
2014-04-01 23:13:58 +02:00
Andreas Fischer
6f4ddf0e33 SSH_Agent: add new line at end of file to comply with CS 2014-04-01 22:54:26 +02:00
terrafrost
1694012f78 SSH_Agent: another CS update 2014-03-30 16:37:11 -05:00
terrafrost
50b250ce69 SSH_Agent: CS updates 2014-03-30 16:32:05 -05:00
Andreas Fischer
51fbabd6d6 Merge branch 'master' into php5
* master:
  add error suppression to phpinfo()
2014-03-30 17:23:42 +02:00
terrafrost
a8c2ff0fb0 add error suppression to phpinfo()
bad timezone settings can make phpinfo() throw errors so we'll just
suppress them. if there are legit non-timezone errors with php install
those will probably be hit in other parts of the code
2014-03-30 10:15:08 -05:00
terrafrost
924014fe72 SSH_Agent: mv SSH_Agent to SSH/Agent and create SSH_Agent for BC 2014-03-30 08:49:22 -05:00
terrafrost
a478b74860 ASN1: explicit application tags didn't work (although implicit ones did) 2014-03-30 01:11:47 -05:00
terrafrost
a9bdce9469 Merge remote-tracking branch 'origin/master' into php5 2014-03-29 15:28:50 -05:00
terrafrost
38502615d3 Merge remote-tracking branch 'michael/fix_cert_time_encoding' into php5 2014-03-29 15:28:39 -05:00
terrafrost
dfa583b9ea X509: Array -> array (CS consistency) 2014-03-29 15:26:50 -05:00
terrafrost
ea4dc53a06 Merge remote-tracking branch 'michael/fix_cert_time_encoding' 2014-03-29 15:25:32 -05:00
Michael Braun
457f8fbb99 fix certificate date encoding
RFC 3280 requires in section
 - 4.1.2.5 Validity
 - 5.1.2.4 This Update
 - 5.1.2.5 Next Update
 - 5.1.2.6 Revoked Certificates
that dates are to be encoded as utcTime iff they are before 2050 and
as generalTime otherwise.

Currently, phpseclib does not respect this by always choosing generalTime.
Further, the format used interally to represent dates only keeps two digits,
so dates in 2050 and later cannot be represented in this format.

This patch fixes this by
 1. changing the interal format to be capable of unambiguously representing
    dates in 2050 or later (i.e. use four digits to represent the year),
 2. choosing between utcTime and generalTime accordingly.

Without this patch, openssl_x509_parse complains:
 Warning: openssl_x509_parse(): illegal ASN1 data type for timestamp
2014-03-28 15:02:50 +01:00
Andreas Fischer
483b8a7d3c Merge branch 'master' into php5
* master:
  fix more ssh channel issues
2014-03-21 18:27:13 +01:00
terrafrost
7a2c7a414c fix more ssh channel issues
In logs that were provided to me phpseclib sent a packet that was 2536 bytes long (excluding the bytes denoting the channel and data length) but the length packet said it was 32764 bytes long (ie. $max_size).

So when $max_size is less than the data being sent and has to be adjusted by a new window adjust message from the server and the adjustment makes $max_Size bigger than the data being sent over problems arise.

SSH's window size has caused issues before. Overall I don't think the SSH specs really explain the window size very well. I opened up an errata on SSH's RFC a while back about the issue.
2014-03-21 02:53:43 -05:00
Andreas Fischer
aecf89c031 Merge branch 'master' into php5
* master:
  Drop meaningless, outdated, inconsistent version tags in doc blocks.
2014-03-13 00:03:38 +01:00
Andreas Fischer
fb1296bbec Drop meaningless, outdated, inconsistent version tags in doc blocks.
find phpseclib -type f -name "*.php" -exec sed -i '/@version/d' {} \;
2014-03-11 15:58:33 +01:00
Andreas Fischer
cb56e676dc Merge branch 'master' into php5
* master:
  Tests for bug280.
  Also replace this with call_user_func
  Use call_user_func, as this will work on PHP < 5.4, whereas $callback() does not
2014-03-06 12:05:17 +01:00
Andreas Fischer
aa64ddfd4d Merge pull request #280 from nickygerritsen/master
Use call_user_func, as this will work on PHP < 5.4, whereas $callback() does not

* nickygerritsen/master:
  Also replace this with call_user_func
  Use call_user_func, as this will work on PHP < 5.4, whereas $callback() does not
2014-03-06 12:01:14 +01:00
Andreas Fischer
e4d0906cee Merge branch 'master' into php5
* master:
  typofixes - https://github.com/vlajos/misspell_fixer
2014-03-06 10:46:26 +01:00
Veres Lajos
930a3fb4d2 typofixes - https://github.com/vlajos/misspell_fixer 2014-03-05 23:41:20 +00:00
Nicky Gerritsen
b5e579f6c0 Also replace this with call_user_func 2014-03-05 18:38:33 +01:00
Nicky Gerritsen
97d1e75a51 Use call_user_func, as this will work on PHP < 5.4, whereas $callback() does not 2014-03-05 15:44:17 +01:00
Andreas Fischer
201b55866e Merge branch 'master' into php5
* master:
  Remove HTML from BigInteger code example.
2014-03-01 01:40:53 +01:00
Andreas Fischer
c1597f4533 Remove HTML from BigInteger code example. 2014-03-01 01:40:28 +01:00
Andreas Fischer
907f062096 Merge branch 'master' into php5
* master:
  Set permissions of phpseclib/Crypt/RC2.php to 644.
2014-03-01 00:57:05 +01:00
Andreas Fischer
f744fbbcc9 Set permissions of phpseclib/Crypt/RC2.php to 644. 2014-03-01 00:56:08 +01:00
Andreas Fischer
2785826d94 Merge branch 'master' into php5
* master:
  composer: add System to psr-0 autoload section
  update README.md to show latest version
  SSH_Agent: a few changes per bantu
2014-02-28 23:17:46 +01:00
terrafrost
b3a1f52bff SSH_Agent: a few changes per bantu 2014-02-21 23:15:24 -06:00
Andreas Fischer
88e6eef90f Merge branch 'master' into php5
* master:
  Add newline at EOF to phpseclib/System/SSH_Agent.php.
  SSH_Agent: phpdoc updates
  SSH_Agent: misc updates
  SSH2: add ssh-agent support
2014-02-21 19:42:36 +01:00
Andreas Fischer
e08c7244e2 Add newline at EOF to phpseclib/System/SSH_Agent.php. 2014-02-21 19:22:09 +01:00
Andreas Fischer
053a9ac9af Merge pull request #265 from terrafrost/ssh-agent
SSH2: add ssh-agent support

* terrafrost/ssh-agent:
  SSH_Agent: phpdoc updates
  SSH_Agent: misc updates
  SSH2: add ssh-agent support
2014-02-21 19:17:51 +01:00
terrafrost
b4b93b80f5 SSH_Agent: phpdoc updates 2014-02-20 13:38:07 -06:00
terrafrost
405ff3f7b4 SSH_Agent: misc updates 2014-02-19 10:13:54 -06:00
Andreas Fischer
51d30ed66f Merge branch 'master' into php5
* master:
  CS: Each file MUST end with exactly one newline character
2014-02-11 01:00:52 +01:00
Andreas Fischer
56f1ada5c1 CS: Each file MUST end with exactly one newline character 2014-02-10 14:51:35 +01:00
terrafrost
e90648c7a5 SSH2: add ssh-agent support 2014-02-10 00:04:16 -06:00
Andreas Fischer
addd2ac320 Merge branch 'master' into php5
* master:
  SSH2: ignore exit_status channel requests
2014-02-03 16:56:46 +01:00
Andreas Fischer
f4dbcb1b78 Merge pull request #264 from terrafrost/exit-status
SSH2: ignore exit_status channel requests

* terrafrost/exit-status:
  SSH2: ignore exit_status channel requests
2014-02-03 16:56:36 +01:00
terrafrost
cd9801db8a SSH2: ignore exit_status channel requests
Fixes #258
2014-02-02 23:42:06 -06:00
Hans-Jürgen Petrich
50f46959ed Ciphers: Adding setEngine() and some optimizations
Ciphers: Adding setEngine() and some optimizations
2014-01-31 06:13:14 +07:00
Andreas Fischer
0c4cc0bd0e Merge branch 'master' into php5
* master:
  Cleaned up whitespace

Conflicts:
	composer.json
2014-01-18 18:58:55 +01:00
Graham Campbell
1c2796e3eb Cleaned up whitespace 2014-01-18 17:29:25 +00:00
Marc Philip Scholten
b7092ebc21 Added some simple Net_SSH2 tests
Placed helper at top again in my test

Removed a whitespace
2013-12-28 21:29:52 +01:00
terrafrost
777db22709 Merge branch 'php5' of https://github.com/phpseclib/phpseclib into php5 2013-12-28 13:56:27 -06:00
terrafrost
05077cf0f3 Merge branch 'ssh2-identifier' into php5 2013-12-28 13:50:05 -06:00
terrafrost
268ec2e5d1 Merge branch 'ssh2-identifier' 2013-12-28 13:49:05 -06:00
terrafrost
0ccac2c998 SSH2: add new line in docblock comment 2013-12-28 13:47:24 -06:00
Marc Philip Scholten
19be15c4c4 Fixed typos 2013-12-28 18:16:09 +01:00
Andreas Fischer
d48e284cae Merge branch 'master' into php5
* master:
  SFTP: make get() return correctly sized strings
2013-12-28 13:41:09 +01:00
Andreas Fischer
b9e785f292 Merge branch 'master' into php5
* master:
  RSA: remove unit test for time being - it's going to be renamed and rewritten
  RSA: update comments for _extractBER
  RSA: more verbose RSA key handling
2013-12-28 13:40:49 +01:00
terrafrost
466f9354df SFTP: make get() return correctly sized strings 2013-12-27 11:08:33 -06:00
terrafrost
a1b749a0a0 Merge branch 'master' into php5 2013-12-27 10:25:19 -06:00
terrafrost
d2c4ccfc28 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-12-27 10:24:47 -06:00
Marc Philip Scholten
ad0c7c52bd Fixed cs 2013-12-26 21:02:18 +01:00
Marc Philip Scholten
b0de383f95 Replaced else { if ()...} with elseif() {} 2013-12-26 21:02:17 +01:00
Marc Philip Scholten
357d4253ee Fixed typo 2013-12-26 21:00:58 +01:00
Marc Philip Scholten
4817d28a54 Refactored Net_SSH2::$identifier and added unit tests
Added return tag
2013-12-26 21:00:58 +01:00
Andreas Fischer
28f6f19abe Merge branch 'master' into php5
* master:
  SSH2: better accomodate Phar's
2013-12-26 19:43:34 +01:00
Andreas Fischer
f63798b923 Merge pull request #233 from terrafrost/phar-fix
SSH2: better accomodate Phar's

* terrafrost/phar-fix:
  SSH2: better accomodate Phar's
2013-12-26 19:43:26 +01:00
Andreas Fischer
060ae325b7 Merge branch 'master' into php5
* master:
  Fixed classname of test
  Fixed some wrong @see annotations
  Fixed /e preg_replace modifier exactly like in 0dc8b27a6a
  Added Net_SSH1::_format_log test
2013-12-26 18:41:32 +01:00
Andreas Fischer
9c7c01c337 Merge pull request #223 from mpscholten/fix-ssh1-php55
Fix Net_SSH1 on Php5.5 (/e preg_replace modifier)

* mpscholten/fix-ssh1-php55:
  Fixed classname of test
  Fixed some wrong @see annotations
  Fixed /e preg_replace modifier exactly like in 0dc8b27a6a
  Added Net_SSH1::_format_log test
2013-12-26 18:41:25 +01:00
Marc Philip Scholten
6d8c02c432 Fixed some wrong @see annotations 2013-12-26 12:09:40 +01:00
Andreas Fischer
83fbeac766 Merge branch 'master' into php5
* master:
  Fix indentation of _append_log in SSH1 and SSH2.
2013-12-26 12:00:42 +01:00
Andreas Fischer
0f69d35584 Fix indentation of _append_log in SSH1 and SSH2. 2013-12-26 11:45:24 +01:00
Andreas Fischer
231f5a2697 Merge branch 'master' into php5
* master:
  Use NET_SSH1_ instead of NET_SSH2_ prefix in SSH1.
2013-12-26 11:42:19 +01:00
Andreas Fischer
2da2f5d29f Merge pull request #227 from bantu/ssh2-constant-prefix-ssh1
Use NET_SSH1_ instead of NET_SSH2_ prefix in SSH1.

* bantu/ssh2-constant-prefix-ssh1:
  Use NET_SSH1_ instead of NET_SSH2_ prefix in SSH1.
2013-12-26 11:42:11 +01:00
Andreas Fischer
7f6ac90380 Merge branch 'master' into php5
* master:
  CS: Add useful whitespace CodeSniffer rules.
2013-12-26 11:39:25 +01:00
Andreas Fischer
0dd5a9ba9f Merge pull request #228 from bantu/cs-whitespace
CS: Add useful whitespace CodeSniffer rules.

* bantu/cs-whitespace:
  CS: Add useful whitespace CodeSniffer rules.
2013-12-26 11:38:17 +01:00
terrafrost
70b9a69c46 SSH2: better accomodate Phar's 2013-12-26 01:55:05 -06:00
terrafrost
b23a693ae5 RSA: update comments for _extractBER 2013-12-26 01:46:58 -06:00
Andreas Fischer
c033e4ea57 Merge branch 'master' into php5
* master:
  SFTP: add explanation for use of 4294967296
  SSH2: typos in last commit
  Compatibility fixes
2013-12-26 00:37:08 +01:00
Andreas Fischer
8bb80b3df0 CS: Add useful whitespace CodeSniffer rules. 2013-12-26 00:33:08 +01:00
Andreas Fischer
4290a5c216 Use NET_SSH1_ instead of NET_SSH2_ prefix in SSH1. 2013-12-26 00:26:36 +01:00
terrafrost
172f15f5df SFTP: add explanation for use of 4294967296 2013-12-24 23:44:21 -06:00
terrafrost
3a0193875a RSA: more verbose RSA key handling 2013-12-24 18:37:43 -06:00
terrafrost
8424a464a6 SSH2: typos in last commit 2013-12-22 18:25:00 -06:00
terrafrost
0f5b3ea416 Compatibility fixes
- PHP4 doesn't allow method chaining
- $_SESSION isn't always defined
- on PHP5.1 and earlier using 0x100000000 instead of 4294967296 gives E_NOTICE
- array('Net_SSH2', 'func_name') doesn't work so we fix this by passing $this to it.
  to make that work on PHP4 pass by call-time reference. normally this would result
  in a fatal error on PHP5.4+ but doesn't seem to in this case. the following URL
  elaborates:

  http://stackoverflow.com/q/20732563/569976
2013-12-22 18:14:49 -06:00
terrafrost
4bd9a546ab Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-12-22 11:53:35 -06:00
terrafrost
c26594ba08 Merge remote-tracking branch 'upstream/php5' into php5 2013-12-22 11:50:11 -06:00
Marc Philip Scholten
ea8cadddad Fixed /e preg_replace modifier exactly like in 0dc8b27a6a 2013-12-18 16:39:36 +01:00
Andreas Fischer
d311698340 Merge branch 'master' into php5
* master:
  SSH2: fix E_DEPRECATED on PHP5.5
2013-12-17 20:56:06 +01:00
terrafrost
6ac922726d SSH2: fix E_DEPRECATED on PHP5.5 2013-12-16 11:27:12 -06:00
terrafrost
1599d2e8d1 SCP: use the new "mode" for _close_channel 2013-12-15 12:07:17 -06:00
terrafrost
c01b8fc4ed SCP: Tweaks
sending the close channel packet right after the eof seems to make some scp transfers terminate prematurely.

unfortunately, sometimes this behavior is undesirable as it is in this case:

http://www.frostjedi.com/phpbb3/viewtopic.php?f=46&t=29457

hence the $want_reply parameter

also, this commit makes the scp packet length account for the length portion
2013-12-15 00:43:20 -06:00
Andreas Fischer
03b08ceaa0 Merge branch 'master' into php5
* master:
  CS: Fix "PEAR.Commenting.ClassComment.WrongTagOrder" sniff.
2013-12-11 23:30:19 +01:00
Andreas Fischer
f0f029b2c1 CS: Fix "PEAR.Commenting.ClassComment.WrongTagOrder" sniff. 2013-12-11 18:33:18 +01:00
Andreas Fischer
3729ba3e44 Merge branch 'master' into php5
* master:
  CS: Fix "PEAR.Commenting.FileComment.TagIndent" sniff.
2013-12-10 22:29:11 +01:00
Andreas Fischer
3db1fbb072 CS: Fix "PEAR.Commenting.FileComment.TagIndent" sniff. 2013-12-10 20:10:37 +01:00
Andreas Fischer
9c0b5e1453 Merge branch 'master' into php5
* master:
  CS: Fix "PEAR.Formatting.MultiLineAssignment.EqualSignLine" sniff.
2013-12-10 12:42:25 +01:00
Andreas Fischer
cee0f3343b CS: Fix "PEAR.Formatting.MultiLineAssignment.EqualSignLine" sniff. 2013-12-07 20:47:30 +01:00
Andreas Fischer
452d3dc359 Merge branch 'master' into php5
* master:
  CS: Fix "PEAR.Files.IncludingFile.UseIncludeOnce" sniff.
2013-12-06 12:20:42 +01:00
Andreas Fischer
6d1fb9f7db CS: Fix "PEAR.Files.IncludingFile.UseIncludeOnce" sniff. 2013-12-06 01:03:34 +01:00
Andreas Fischer
64691f2aec Merge branch 'master' into php5
* master:
  Fix "PEAR.Files.IncludingFile.BracketsNotRequired" sniff.
2013-12-06 00:58:00 +01:00
Andreas Fischer
bc6ff96292 Fix "PEAR.Files.IncludingFile.BracketsNotRequired" sniff. 2013-12-05 23:17:40 +01:00
Andreas Fischer
d696f22b89 Merge pull request #201 from mpscholten/php5-ssh2-microtime
Replaced php4 hack for microtime(true) with real microtime(true)

* mpscholten/php5-ssh2-microtime:
  Replaced php4 hack for microtime(true) with real microtime(true)
2013-12-05 20:54:11 +01:00
Marc Philip Scholten
d6c70a76d9 Replaced php4 hack for microtime(true) with real microtime(true) 2013-12-05 18:46:46 +01:00
Andreas Fischer
ef2c50f9e0 Ignore coding style for "HAC 4.49" block in Math/BigInteger.php. 2013-12-03 21:04:13 +01:00
Andreas Fischer
161bb7d362 CS: Fix PEAR.ControlStructures.ControlSignature sniff. 2013-12-03 21:04:13 +01:00
Andreas Fischer
9ca5f83dec CS: Fix Generic.Functions.FunctionCallArgumentSpacing.NoSpaceAfterComma sniff. 2013-12-03 20:52:08 +01:00
Andreas Fischer
e09f1b730e CodeSniffer: Fix PEAR.Classes.ClassDeclaration.OpenBraceNewLine sniff. 2013-12-03 19:34:41 +01:00
Andreas Fischer
ca9c8b107b CodeSniffer: Fix Generic.PHP.LowerCaseConstant.Found sniff. 2013-12-03 18:54:43 +01:00
Andreas Fischer
399308f98a Merge pull request #180 from mpscholten/removed-vim-comments
Removed vim comments

* mpscholten/removed-vim-comments:
  Removed vim comments
2013-11-23 21:16:25 +01:00
Marc Philip Scholten
3bfd884813 Removed vim comments
Reformated files
2013-11-23 19:42:26 +01:00
phonzie
3afa655f57 SSH2: Continue Subsystem Implementation.
Removed unused piece of code @2352.
Added $this->_get_interactive_channel() to reset(). Unless we don't want to close the subsystem channel?? Leaving that decision up to you.
2013-11-20 16:17:23 -05:00
phonzie
702ade7d12 SFTP: Removed dead code
variable: $initialize = true, ironically - is initialized but never used.
Feel free to deny if this is reserved for future implementation(s).
2013-11-20 15:02:04 -05:00
terrafrost
fcfc0e2c00 SFTP: don't do $dir[-1] check if $dir === '' 2013-11-20 09:33:47 -06:00
terrafrost
187f40a247 Merge pull request #173 from h4cc/patch-1
Making Net_SFTP::chdir capable of handling the empty string.
2013-11-20 07:29:16 -08:00
terrafrost
478dd38e8f SFTP/Stream: log when constructor is called 2013-11-20 09:11:14 -06:00
Julius Beckmann
44078e5f40 Making Net_SFTP::chdir capable of handling the empty string.
Updated patch after hint from bantu.
2013-11-20 15:08:50 +01:00
Julius Beckmann
9ea67f9edb Making Net_SFTP::chdir capable of handling the empty string.
Fixing a ugly notice when using the empty string as parameter for chdir:
  Notice: Uninitialized string offset: -1 in Net/SFTP.php line 617
2013-11-20 14:49:16 +01:00
Vincent Petry
2517dd4a61 Initing eof to false
The call _stream_eof() must return a boolean, not null.
Returning null makes PHP believe that the method wasn't implemented.

Fixes #170
2013-11-19 23:13:10 +01:00
phonzie
8dd12ed467 SFTP_Stream: Fixed typo in _parse_path
typo: isset($this->contenxt)
should be $this->context
2013-11-19 14:23:54 -05:00
phonzie
eb3bffaa00 Update SSH2.php
Use of undefined property: "$this->bitmask".

In context, it seems that it should reference the "bitmap" property.
2013-11-15 13:34:31 -05:00
terrafrost
300a3afe8d Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-11-10 22:38:36 -06:00
terrafrost
755f0f17a5 RSA: putty keys weren't being formatted correctly 2013-11-10 22:27:48 -06:00
Andreas Fischer
2241d0e6f4 Partial revert of 9f1108e52e.
This change should not be necessary.
2013-11-06 23:12:00 +01:00
Frank de Jonge
4976cd1622 Fixed coding style to comply with other not defined statements 2013-11-05 13:01:03 +01:00
Frank de Jonge
9f1108e52e Check wether CRYPT_RANDOM_IS_WINDOWS is defined before defining it. 2013-11-05 11:27:16 +01:00
Jesse Schalken
71ae795460 Fixed typo in object class name comparison 2013-11-04 17:48:01 +11:00
Brian Nesbitt
ccad4b7d08 Added a callable to put for progress updates
This in combination with https://github.com/maximebf/ConsoleKit ProgressBar makes me feel good.
2013-11-01 12:15:28 -04:00
terrafrost
c6a52cb1b1 SSH2: add preliminary support for custom SSH subsystems 2013-10-25 12:35:30 -05:00
terrafrost
15677715e3 RSA: only set $this->current when it's already set 2013-10-24 15:48:15 -05:00
terrafrost
5888c6cef6 SCP: if exec() failed return false immediately 2013-10-21 15:15:31 -05:00
terrafrost
1e3ff81e7d RSA: make RSA objects clonable 2013-10-18 13:24:06 -05:00
terrafrost
22502c24cd ASN1: variable functions had to be strings before PHP 5.4 2013-10-12 12:19:54 -05:00
terrafrost
a577a09a4f X509: make it so ip addresses and domain names can be used together 2013-10-09 14:51:34 -05:00
terrafrost
9b53c45f04 ASN1,X509: add support for ip addresses in subjaltname
(among other places)
2013-10-09 14:25:52 -05:00
terrafrost
9c5563503e RSA: public key was never getting set 2013-10-06 02:23:57 -05:00
terrafrost
402b7e8176 RSA: if setPublicKey is called unneccessarily return false 2013-10-05 21:30:57 -05:00
terrafrost
d2f6362878 X509: assume anything being passed into setPublicKey() is a public key 2013-10-05 21:28:33 -05:00
terrafrost
77447a3fc7 BigInteger, RSA: updates to OpenSSL version detection code 2013-09-20 12:14:01 -05:00
terrafrost
71743ce243 SFTP: change max sftp packet size
1 << 20 isn't as reliable as 1 << 15 and doesn't seem to result in significant speedup either
2013-09-12 10:16:41 -05:00
terrafrost
eb61afd22f SFTP: make "queue size" settable by a constant 2013-09-12 09:10:36 -05:00
terrafrost
48b13bc1d7 SSH2: make it so realtime logs filter out password's
"Complex" logs already do this - just not realtime logs
2013-09-12 08:45:13 -05:00
terrafrost
9f8d8a7bf6 SSH2: window size handling adjustments 2013-09-12 08:29:14 -05:00
terrafrost
2b3fe58dbc RSA: fix E_NOTICE 2013-09-11 21:13:23 -05:00
terrafrost
815f609887 RSA: check to see if MATH_BIGINTEGER_MODE_DISABLE is defined 2013-09-11 11:48:40 -05:00
terrafrost
54f0f2131b RSA, BigInteger: add more openssl checks 2013-09-10 11:07:56 -05:00
terrafrost
56f1b6f411 SCP: better binary local file support for put() 2013-09-04 02:14:36 -05:00
terrafrost
bafbf1276e SCP: make it so local files can be uploaded 2013-09-02 22:33:50 -05:00
terrafrost
f16a1135c6 SCP: get() doesn't return true on success 2013-09-02 21:18:57 -05:00
terrafrost
24a06eeff3 SSH2: neither of the DSA signature values should be 0 2013-08-31 00:22:47 -05:00
terrafrost
ebb1d53af5 SFTP: another comment typo 2013-08-29 16:38:05 -05:00
terrafrost
69bc362a83 SFTP: update comment typo 2013-08-29 11:09:47 -05:00
terrafrost
bf6d1bc253 SFTP_Stream: fix errors when context isn't defined 2013-08-28 13:55:14 -05:00
terrafrost
df45abcda0 SSH2: try to execute commands via interactive shell even if no pty 2013-08-20 23:52:15 -05:00
terrafrost
55d43a9972 ANSI: </underline> -> </u> 2013-08-11 09:07:22 -05:00
terrafrost
ffca003225 SFTP: CS adjustment 2013-08-07 09:22:52 -05:00
terrafrost
442922ff0a BigInteger: refactor random number generation code somewhat 2013-08-06 23:17:49 -05:00
terrafrost
7b5542cc8a X509: re-use existing BER extraction code 2013-08-02 10:52:58 -05:00
terrafrost
0149644210 RSA: fix error when exponent isn't co-prime to lcm 2013-07-31 21:50:40 -05:00
terrafrost
73f167e99e X509: load Math/BigInteger for ASN1 description 2013-07-30 16:07:40 -05:00
Andreas Fischer
25a60ff9a3 SFTP: Fix syntax error "unexpected T_SL, expecting ',' or ';'".
Regression from d95f5946eb.
2013-07-27 15:55:48 +02:00
terrafrost
d714dd35f0 X509: $csr -> $spkac in loadSPKAC() function 2013-07-26 16:10:34 -05:00
terrafrost
d52f217512 X509: change return value for validateSignature when cert isn't loaded 2013-07-26 15:40:16 -05:00
terrafrost
d95f5946eb SFTP: use variable sizes for get() 2013-07-26 10:20:59 -05:00
terrafrost
093a182904 SSH2: Logging updates 2013-07-26 09:57:20 -05:00
terrafrost
bf6da217c1 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-07-22 23:53:45 -05:00
terrafrost
8c9e7a890e SSH2: more window size adjustments 2013-07-22 23:48:28 -05:00
terrafrost
78f9fadd3d SSH2: don't remove first byte from complex logs 2013-07-19 10:34:11 -05:00
terrafrost
415df3bd45 SSH2: attribute newly added comment 2013-07-18 10:35:39 -05:00
terrafrost
b0090e2ebc Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-07-17 23:26:39 -05:00
terrafrost
ccb1c3e2bd SSH2: include string length in window size adjustments 2013-07-17 23:21:25 -05:00
terrafrost
ae2a0886a5 RSA: remove extra new line 2013-07-16 11:21:46 -05:00
terrafrost
e295d51409 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-07-14 04:42:15 -05:00
terrafrost
01bb284119 X509: adjust case of id-at-stateorprovinceName
Re: https://github.com/phpseclib/phpseclib/issues/130
2013-07-14 04:40:12 -05:00
terrafrost
84093715c2 Merge pull request #129 from johnsterling/string-shift-alt
Optimization by replacing _string_shift()
2013-07-14 02:17:39 -07:00
terrafrost
ffdcf843c1 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-07-14 04:10:54 -05:00
terrafrost
0f96fae818 SSH2: channel handling adjustments
- keep track of server -> client window size and look out for NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST packets as appropriate
- send client -> server window size packets based on channel of received packet - not of desired channel
- buffer incoming packets based on received packets channel - not on desired channel
2013-07-14 04:09:16 -05:00
John Sterling
5e0d58f082 SFTP: Add optimization for put() with NET_SFTP_LOCAL_FILE
Use substr() instead of _string_shift().
2013-07-11 17:32:49 -04:00
terrafrost
309f79ecea SSH2: attempt to handle case where window size is smaller than packet size 2013-07-07 16:10:12 -05:00
terrafrost
327a3b8bc8 SSH2: Keep track of client -> server window size 2013-07-07 15:57:15 -05:00
terrafrost
a6289036a0 SSH2: fix possible E_NOTICE 2013-07-07 15:49:49 -05:00
Patrick Monnerat
23d48c4fc5 ASN1: Integers should by at least 1 byte long.
Fixes https://github.com/phpseclib/phpseclib/issues/126.
2013-07-01 14:38:35 +02:00
Patrick Monnerat
e644c42efa RC2: Changes according to arguments in https://github.com/phpseclib/phpseclib/pull/124 2013-06-28 16:32:06 +02:00
Patrick Monnerat
a76558541c Merge branch 'master' of https://github.com/petrich/phpseclib into petrich-master
Apply pull request https://github.com/phpseclib/phpseclib/pull/124
2013-06-28 11:37:40 +02:00
Hans-Jürgen Petrich
f102ce62e2 Crypt_Base: removed die(1)
re:
89ea2da86b (commitcomment-3505770)
2013-06-26 13:15:04 +07:00
Hans-Jürgen Petrich
af1700a025 Crypt_base: Typo 2013-06-26 11:55:19 +07:00
Hans-Jürgen Petrich
89ea2da86b Crypt_*: CS and comments
- Crypt_* Some CS
- Crypt_Base: better comments for phpseclib developers
- Crypt_Base::_createInlineCryptFunction(): better namespace for
internal variables (all now prefixed with an underscore to avoid
conflicts)
2013-06-26 11:50:40 +07:00
terrafrost
76ea505af8 SSH2: use Crypt_Rijndael instead of Crypt_AES
Crypt_AES is pretty much just a wrapper now
2013-06-25 16:44:22 -05:00
terrafrost
3b56c695e2 SFTP: get() didn't return data 2013-06-25 16:37:20 -05:00
terrafrost
7863f476d2 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-06-25 15:22:20 -05:00
terrafrost
a3e6e1578b SSH2: revamp dynamic listing of crypto algorithms 2013-06-25 15:21:43 -05:00
Hans-Jürgen Petrich
b5da66e979 RC2: Optimizations, inline-crypt bug fix 2013-06-25 13:38:50 +07:00
Patrick Monnerat
b247ad1743 Add Crypt RC2 algorithm. 2013-06-24 19:17:13 +02:00
terrafrost
adf8afd4eb SSH2: build supported cipher list off of files that are present 2013-06-20 20:51:50 -05:00
terrafrost
2edc9fc0a9 SSH2: reorder cipher preferences 2013-06-20 17:14:20 -05:00
terrafrost
4de71168d8 RSA: loading XML private keys didn't always work 2013-06-20 17:05:29 -05:00
terrafrost
30408ff8fb BigInteger: define $p 2013-06-18 09:31:33 -04:00
terrafrost
c0fa1ee0b9 SFTP: didn't define a constant 2013-06-12 14:16:47 -05:00
terrafrost
7b3434c01f Merge remote-tracking branch 'origin/master' into Crypt_Base
Conflicts:
	phpseclib/Crypt/DES.php
	phpseclib/Crypt/RC4.php
2013-06-11 14:59:13 -05:00
terrafrost
05715e13e7 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-06-11 12:51:10 -05:00
terrafrost
cbe156f0cb SFTP: Update how resumes work 2013-06-11 12:49:45 -05:00
terrafrost
17d73a4e35 AES: use ()'s for require_once
All other require_once's use them so for consistency this one ought to too
2013-06-10 16:39:49 -05:00
terrafrost
5c3c9f990f SFTP: remove isset() from constructor 2013-06-10 15:42:35 -05:00
terrafrost
799c8e322f Merge pull request #119 from VaclavSir/sftp_default_port
Net_SFTP_Stream: Use default SFTP port, if no port specified
2013-06-10 13:40:54 -07:00
Vaclav Sir
b0ee4d5591 Net_SFTP_Stream: Use default SFTP port, if not set otherwise. 2013-06-10 21:40:03 +02:00
terrafrost
a83ff6cad8 SFTP: add _close_handle() function and close handle on put failure 2013-06-10 13:21:58 -05:00
terrafrost
d79ce65fe3 SSH2: close channel and break after exit-signal
Prior to efdec7b118 exit-signal's would re-use exit-status's channel closing code. after that commit, however, exit-status specific code was added, which meant that falling through, without the break, broke things
2013-06-10 10:57:34 -05:00