SFTP: delete stat cache for recursive deletes / 1.0 branch
* terrafrost/sftp-recur-delete-stat-cache-1.0:
SFTP: update how recursive delete's update stat cache
Tests/SFTP: add unit test
[1.0] Various fixes to fopen mode handling in SFTP Stream
* bantu/SFTPStreamTest:
Explicitly set size to 0 when creating or truncating.
mode[0] of 'c' is not supposed to truncate.
Need to create the file when it does not exist and mode[0] is not 'r'.
Add SFTPStreamTest::testFopenFcloseCreatesFile()
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 .
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
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.
SSH2: update conditions under which _disconnect's code is executed
* terrafrost/disconnect-fix:
SSH2: update conditions under which _disconnect's code is executed
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()
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!)
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.
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.
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
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
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.
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.
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
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
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