Pure-PHP implementations of SFTP.

author Jim Wigginton
version 0.1.0
access public
package Net_SFTP

 Methods

Default Constructor.

Net_SFTP(String $host, \optional $port, \optional $timeout) : \Net_SFTP

Connects to an SFTP server

access public

Parameters

$host

String

$port

\optional

Integer $port

$timeout

\optional

Integer $timeout

Returns

Default Constructor.

Net_SSH2(String $host, \optional $port, \optional $timeout) : \Net_SSH2
Inherited

Connects to an SSHv2 server

access public
inherited_from \Net_SSH2::Net_SSH2()

Parameters

$host

String

$port

\optional

Integer $port

$timeout

\optional

Integer $timeout

Returns

Destructor.

__destruct() 
Inherited

Will be called, automatically, if you're supporting just PHP5. If you're supporting PHP4, you'll need to call disconnect().

access public
inherited_from \Net_SSH2::__destruct()

Closes and flushes a channel

_close_channel(Integer $client_channel) : Boolean
Inherited

Net_SSH2 doesn't properly close most channels. For exec() channels are normally closed by the server and for SFTP channels are presumably closed when the client disconnects. This functions is intended for SCP more than anything.

access private
inherited_from \Net_SSH2::_close_channel()

Parameters

$client_channel

Integer

Returns

Boolean

Define Array

_define_array() 
Inherited

Takes any number of arrays whose indices are integers and whose values are strings and defines a bunch of named constants from it, using the value as the name of the constant and the index as the value of the constant. If any of the constants that would be defined already exists, none of the constants will be defined.

access private
inherited_from \Net_SSH2::_define_array()

Disconnect

_disconnect(Integer $reason) : Boolean

access private

Parameters

$reason

Integer

Returns

Boolean

Filter Binary Packets

_filter($payload) : String
Inherited

Because some binary packets need to be ignored...

see \global\Net_SSH2::_get_binary_packet()
access private
inherited_from \Net_SSH2::_filter()

Parameters

$payload

Returns

String

Formats a log for printing

_format_log(Array $message_log, Array $message_number_log) : String
Inherited

access private
inherited_from \Net_SSH2::_format_log()

Parameters

$message_log

Array

$message_number_log

Array

Returns

String

Gets Binary Packets

_get_binary_packet() : String
Inherited

See '6. Binary Packet Protocol' of rfc4253 for more info.

see \global\Net_SSH2::_send_binary_packet()
access private
inherited_from \Net_SSH2::_get_binary_packet()

Returns

String

Gets channel data

_get_channel_packet($client_channel, $skip_extended) : Mixed
Inherited

Returns the data as a string if it's available and false if not.

access private
inherited_from \Net_SSH2::_get_channel_packet()

Parameters

$client_channel

$skip_extended

Returns

Mixed

Receives SFTP Packets

_get_sftp_packet() : String

See '6. General Packet Format' of draft-ietf-secsh-filexfer-13 for more info.

Incidentally, the number of SSH_MSG_CHANNEL_DATA messages has no bearing on the number of SFTP packets present. There can be one SSH_MSG_CHANNEL_DATA messages containing two SFTP packets or there can be two SSH_MSG_CHANNEL_DATA messages containing one SFTP packet.

see \global\Net_SFTP::_send_sftp_packet()
access private

Returns

String

Creates an interactive shell

_initShell() : Boolean
Inherited

see \global\Net_SSH2::read()
see \global\Net_SSH2::write()
access private
inherited_from \Net_SSH2::_initShell()

Returns

Boolean

Key Exchange

_key_exchange(String $kexinit_payload_server) 
Inherited

access private
inherited_from \Net_SSH2::_key_exchange()

Parameters

$kexinit_payload_server

String

Handle the keyboard-interactive requests / responses.

_keyboard_interactive_process() : Boolean
Inherited

access private
inherited_from \Net_SSH2::_keyboard_interactive_process()

Returns

Boolean

Reads a list, be it detailed or not, of files in the given directory

_list(\optional $dir, $raw) : Mixed

access private

Parameters

$dir

\optional

String $dir

$raw

Returns

Mixed

Parse Attributes

_parseAttributes(String $response) : Array

See '7. File Attributes' of draft-ietf-secsh-filexfer-13 for more info.

access private

Parameters

$response

String

Returns

Array

Parse Longname

_parseLongname(String $longname) : Mixed

SFTPv3 doesn't provide any easy way of identifying a file type. You could try to open a file as a directory and see if an error is returned or you could try to parse the SFTPv3-specific longname field of the SSH_FXP_NAME packet. That's what this function does. The result is returned using the SFTPv4 type constants.

If the longname is in an unrecognized format bool(false) is returned.

access private

Parameters

$longname

String

Returns

Mixed

Reads multiple successive SSH_FXP_WRITE responses

_read_put_responses(Integer $i) : Boolean

Sending an SSH_FXP_WRITE packet and immediately reading its response isn't as efficient as blindly sending out $i SSH_FXP_WRITEs, in succession, and then reading $i responses.

access private

Parameters

$i

Integer

Returns

Boolean

Canonicalize the Server-Side Path Name

_realpath(String $dir) : Mixed

SFTP doesn't provide a mechanism by which the current working directory can be changed, so we'll emulate it. Returns the absolute (canonicalized) path. If $mode is set to NET_SFTP_CONFIRM_DIR (as opposed to NET_SFTP_CONFIRM_NONE, which is what it is set to by default), false is returned if $dir is not a valid directory.

see \global\Net_SFTP::chdir()
access private

Parameters

$dir

String

Returns

Mixed

Sends Binary Packets

_send_binary_packet(String $data) : Boolean
Inherited

See '6. Binary Packet Protocol' of rfc4253 for more info.

see \global\Net_SSH2::_get_binary_packet()
access private
inherited_from \Net_SSH2::_send_binary_packet()

Parameters

$data

String

Returns

Boolean

Sends channel data

_send_channel_packet(Integer $client_channel, String $data) : Boolean
Inherited

Spans multiple SSH_MSG_CHANNEL_DATAs if appropriate

access private
inherited_from \Net_SSH2::_send_channel_packet()

Parameters

$client_channel

Integer

$data

String

Returns

Boolean

Sends SFTP Packets

_send_sftp_packet(Integer $type, String $data) : Boolean

See '6. General Packet Format' of draft-ietf-secsh-filexfer-13 for more info.

see \global\Net_SFTP::_get_sftp_packet()
see \global\Net_SSH2::_send_channel_packet()
access private

Parameters

$type

Integer

$data

String

Returns

Boolean

Returns the file size, in bytes, or false, on failure

_size(String $filename) : Mixed

Determines the size without calling Net_SFTP::_realpath()

access private

Parameters

$filename

String

Returns

Mixed

Returns general information about a file or symbolic link

_stat(String $filename, Integer $type) : Mixed

Determines information without calling Net_SFTP::_realpath(). The second parameter can be either NET_SFTP_STAT or NET_SFTP_LSTAT.

access private

Parameters

$filename

String

$type

Integer

Returns

Mixed

String Shift

_string_shift(String $string, \optional $index) : String
Inherited

Inspired by array_shift

access private
inherited_from \Net_SSH2::_string_shift()

Parameters

$string

String

$index

\optional

Integer $index

Returns

String

Changes the current directory

chdir(String $dir) : Boolean

access public

Parameters

$dir

String

Returns

Boolean

Set permissions on a file.

chmod(Integer $mode, String $filename) : Mixed

Returns the new file permissions on success or FALSE on error.

access public

Parameters

$mode

Integer

$filename

String

Returns

Mixed

Deletes a file on the SFTP server.

delete(String $path) : Boolean

access public

Parameters

$path

String

Returns

Boolean

Disconnect

disconnect() 
Inherited

access public
inherited_from \Net_SSH2::disconnect()

Execute Command

exec(String $command, \optional $block) : String
Inherited

If $block is set to false then Net_SSH2::_get_channel_packet(NET_SSH2_CHANNEL_EXEC) will need to be called manually. In all likelihood, this is not a feature you want to be taking advantage of.

access public
inherited_from \Net_SSH2::exec()

Parameters

$command

String

$block

\optional

Boolean $block

Returns

String

Downloads a file from the SFTP server.

get(String $remote_file, \optional $local_file) : Mixed

Returns a string containing the contents of $remote_file if $local_file is left undefined or a boolean false if the operation was unsuccessful. If $local_file is defined, returns true or false depending on the success of the operation

access public

Parameters

$remote_file

String

$local_file

\optional

String $local_file

Returns

Mixed

Return a list of the compression algorithms the server supports, when receiving stuff from the client.

getCompressionAlgorithmsClient2Server() : Array
Inherited

access public
inherited_from \Net_SSH2::getCompressionAlgorithmsClient2Server()

Returns

Array

Return a list of the compression algorithms the server supports, when sending stuff to the client.

getCompressionAlgorithmsServer2Client() : Array
Inherited

access public
inherited_from \Net_SSH2::getCompressionAlgorithmsServer2Client()

Returns

Array

Return a list of the (symmetric key) encryption algorithms the server supports, when receiving stuff from the client.

getEncryptionAlgorithmsClient2Server() : Array
Inherited

access public
inherited_from \Net_SSH2::getEncryptionAlgorithmsClient2Server()

Returns

Array

Return a list of the (symmetric key) encryption algorithms the server supports, when sending stuff to the client.

getEncryptionAlgorithmsServer2Client() : Array
Inherited

access public
inherited_from \Net_SSH2::getEncryptionAlgorithmsServer2Client()

Returns

Array

Returns all errors

getErrors() : String
Inherited

access public
inherited_from \Net_SSH2::getErrors()

Returns

String

Return a list of the key exchange algorithms the server supports.

getKexAlgorithms() : Array
Inherited

access public
inherited_from \Net_SSH2::getKexAlgorithms()

Returns

Array

Return a list of the languages the server supports, when receiving stuff from the client.

getLanguagesClient2Server() : Array
Inherited

access public
inherited_from \Net_SSH2::getLanguagesClient2Server()

Returns

Array

Return a list of the languages the server supports, when sending stuff to the client.

getLanguagesServer2Client() : Array
Inherited

access public
inherited_from \Net_SSH2::getLanguagesServer2Client()

Returns

Array

Returns the last error

getLastError() : String
Inherited

access public
inherited_from \Net_SSH2::getLastError()

Returns

String

Returns the last error

getLastSFTPError() : String

access public

Returns

String

Returns a log of the packets that have been sent and received.

getLog() : String
Inherited

Returns a string if NET_SSH2_LOGGING == NET_SSH2_LOG_COMPLEX, an array if NET_SSH2_LOGGING == NET_SSH2_LOG_SIMPLE and false if !defined('NET_SSH2_LOGGING')

access public
inherited_from \Net_SSH2::getLog()

Returns

Stringor Array

Return a list of the MAC algorithms the server supports, when receiving stuff from the client.

getMACAlgorithmsClient2Server() : Array
Inherited

access public
inherited_from \Net_SSH2::getMACAlgorithmsClient2Server()

Returns

Array

Return a list of the MAC algorithms the server supports, when sending stuff to the client.

getMACAlgorithmsServer2Client() : Array
Inherited

access public
inherited_from \Net_SSH2::getMACAlgorithmsServer2Client()

Returns

Array

Returns all errors

getSFTPErrors() : String

access public

Returns

String

Returns a log of the packets that have been sent and received.

getSFTPLog() : String

Returns a string if NET_SFTP_LOGGING == NET_SFTP_LOG_COMPLEX, an array if NET_SFTP_LOGGING == NET_SFTP_LOG_SIMPLE and false if !defined('NET_SFTP_LOGGING')

access public

Returns

Stringor Array

Return a list of the host key (public key) algorithms the server supports.

getServerHostKeyAlgorithms() : Array
Inherited

access public
inherited_from \Net_SSH2::getServerHostKeyAlgorithms()

Returns

Array

Return the server identification.

getServerIdentification() : String
Inherited

access public
inherited_from \Net_SSH2::getServerIdentification()

Returns

String

Returns the server public host key.

getServerPublicHostKey() : Mixed
Inherited

Caching this the first time you connect to a server and checking the result on subsequent connections is recommended. Returns false if the server signature is not signed correctly with the public host key.

access public
inherited_from \Net_SSH2::getServerPublicHostKey()

Returns

Mixed

Get supported SFTP versions

getSupportedVersions() : Array

access public

Returns

Array

Returns general information about a file or symbolic link.

lstat(String $filename) : Mixed

Returns an array on success and false otherwise.

access public

Parameters

$filename

String

Returns

Mixed

Creates a directory.

mkdir(String $dir) : Boolean

access public

Parameters

$dir

String

Returns

Boolean

Returns a list of files in the given directory

nlist(\optional $dir) : Mixed

access public

Parameters

$dir

\optional

String $dir

Returns

Mixed

Returns the current directory name

pwd() : Mixed

access public

Returns

Mixed

Returns a detailed list of files in the given directory

rawlist(\optional $dir) : Mixed

access public

Parameters

$dir

\optional

String $dir

Returns

Mixed

Returns the output of an interactive shell

read(String $expect, Integer $mode) : String
Inherited

Returns when there's a match for $expect, which can take the form of a string literal or, if $mode == NET_SSH2_READ_REGEX, a regular expression.

see \global\Net_SSH2::read()
access public
inherited_from \Net_SSH2::read()

Parameters

$expect

String

$mode

Integer

Returns

String

Renames a file or a directory on the SFTP server

rename(String $oldname, String $newname) : Boolean

access public

Parameters

$oldname

String

$newname

String

Returns

Boolean

Removes a directory.

rmdir(String $dir) : Boolean

access public

Parameters

$dir

String

Returns

Boolean

Returns the file size, in bytes, or false, on failure

size(String $filename) : Mixed

Files larger than 4GB will show up as being exactly 4GB.

access public

Parameters

$filename

String

Returns

Mixed

Returns general information about a file.

stat(String $filename) : Mixed

Returns an array on success and false otherwise.

access public

Parameters

$filename

String

Returns

Mixed

Inputs a command into an interactive shell.

write(String $cmd) : Boolean
Inherited

see \global\Net_SSH1::interactiveWrite()
access public
inherited_from \Net_SSH2::write()

Parameters

$cmd

String

Returns

Boolean

 Properties

 

Execution Bitmap

$bitmap : Integer
Inherited

The bits that are set reprsent functions that have been called already. This is used to determine if a requisite function has been successfully executed. If not, an error should be thrown.

access private
inherited_from \Net_SSH2::$$bitmap
 

Channel Buffers

$channel_buffers : Array
Inherited

If a client requests a packet from one channel but receives two packets from another those packets should be placed in a buffer

see \global\Net_SSH2::_get_channel_packet()
see \global\Net_SSH2::exec()
access private
inherited_from \Net_SSH2::$$channel_buffers
 

SSH_MSG_CHANNEL_EXTENDED_DATA's data_type_codes

$channel_extended_data_type_codes : Array
Inherited

link http://tools.ietf.org/html/rfc4254#section-5.2
see \global\Net_SSH2::Net_SSH2()
access private
inherited_from \Net_SSH2::$$channel_extended_data_type_codes
 

SSH_MSG_CHANNEL_OPEN_FAILURE 'reason codes', defined in RFC4254

$channel_open_failure_reasons : Array
Inherited

see \global\Net_SSH2::Net_SSH2()
access private
inherited_from \Net_SSH2::$$channel_open_failure_reasons
 

Channel Status

$channel_status : Array
Inherited

Contains the type of the last sent message

see \global\Net_SSH2::_get_channel_packet()
access private
inherited_from \Net_SSH2::$$channel_status
 

Compression Algorithms: Client to Server

$compression_algorithms_client_to_server : Array
Inherited

see \global\Net_SSH2::getCompressionAlgorithmsClient2Server()
access private
inherited_from \Net_SSH2::$$compression_algorithms_client_to_server
 

Compression Algorithms: Server to Client

$compression_algorithms_server_to_client : Array
Inherited

see \global\Net_SSH2::getCompressionAlgorithmsServer2Client()
access private
inherited_from \Net_SSH2::$$compression_algorithms_server_to_client
 

Server to Client Encryption Object

$decrypt : Object
Inherited

see \global\Net_SSH2::_get_binary_packet()
access private
inherited_from \Net_SSH2::$$decrypt
 

Block Size for Client to Server Encryption

$decrypt_block_size : Integer
Inherited

see \global\Net_SSH2::Net_SSH2()
see \global\Net_SSH2::_get_binary_packet()
access private
inherited_from \Net_SSH2::$$decrypt_block_size
 

Disconnection Message 'reason codes' defined in RFC4253

$disconnect_reasons : Array
Inherited

see \global\Net_SSH2::Net_SSH2()
access private
inherited_from \Net_SSH2::$$disconnect_reasons
 

Client to Server Encryption Object

$encrypt : Object
Inherited

see \global\Net_SSH2::_send_binary_packet()
access private
inherited_from \Net_SSH2::$$encrypt
 

Block Size for Server to Client Encryption

$encrypt_block_size : Integer
Inherited

"Note that the length of the concatenation of 'packet_length', 'padding_length', 'payload', and 'random padding' MUST be a multiple of the cipher block size or 8, whichever is larger. This constraint MUST be enforced, even when using stream ciphers."

-- http://tools.ietf.org/html/rfc4253#section-6

see \global\Net_SSH2::Net_SSH2()
see \global\Net_SSH2::_send_binary_packet()
access private
inherited_from \Net_SSH2::$$encrypt_block_size
 

Encryption Algorithms: Client to Server

$encryption_algorithms_client_to_server : Array
Inherited

see \global\Net_SSH2::getEncryptionAlgorithmsClient2Server()
access private
inherited_from \Net_SSH2::$$encryption_algorithms_client_to_server
 

Encryption Algorithms: Server to Client

$encryption_algorithms_server_to_client : Array
Inherited

see \global\Net_SSH2::getEncryptionAlgorithmsServer2Client()
access private
inherited_from \Net_SSH2::$$encryption_algorithms_server_to_client
 

Error information

$errors : String
Inherited

see \global\Net_SSH2::getErrors()
see \global\Net_SSH2::getLastError()
access private
inherited_from \Net_SSH2::$$errors
 

Exchange hash

$exchange_hash : String
Inherited

The current exchange hash

see \global\Net_SSH2::_key_exchange()
access private
inherited_from \Net_SSH2::$$exchange_hash
 

Extensions supported by the server

$extensions : Array

see \global\Net_SFTP::_initChannel()
access private
 

File Type

$fileType : Integer

see \global\Net_SFTP::_parseLongname()
access private
 

The Socket Object

$fsock : Object
Inherited

access private
inherited_from \Net_SSH2::$$fsock
 

Get Sequence Number

$get_seq_no : Integer
Inherited

See 'Section 6.4. Data Integrity' of rfc4253 for more info.

see \global\Net_SSH2::_get_binary_packet()
access private
inherited_from \Net_SSH2::$$get_seq_no
 

Server to Client HMAC Object

$hmac_check : Object
Inherited

see \global\Net_SSH2::_get_binary_packet()
access private
inherited_from \Net_SSH2::$$hmac_check
 

Client to Server HMAC Object

$hmac_create : Object
Inherited

see \global\Net_SSH2::_send_binary_packet()
access private
inherited_from \Net_SSH2::$$hmac_create
 

Size of server to client HMAC

$hmac_size : Integer
Inherited

We need to know how big the HMAC will be for the server to client direction so that we know how many bytes to read. For the client to server side, the HMAC object will make the HMAC as long as it needs to be. All we need to do is append it.

see \global\Net_SSH2::_get_binary_packet()
access private
inherited_from \Net_SSH2::$$hmac_size
 

The SSH identifier

$identifier : String
Inherited

access private
inherited_from \Net_SSH2::$$identifier
 

Interactive Buffer

$interactiveBuffer : Array
Inherited

see \global\Net_SSH2::read()
access private
inherited_from \Net_SSH2::$$interactiveBuffer
 

Key Exchange Algorithms

$kex_algorithms : Array
Inherited

see \global\Net_SSH2::getKexAlgorithims()
access private
inherited_from \Net_SSH2::$$kex_algorithms
 

Languages: Client to Server

$languages_client_to_server : Array
Inherited

see \global\Net_SSH2::getLanguagesClient2Server()
access private
inherited_from \Net_SSH2::$$languages_client_to_server
 

Languages: Server to Client

$languages_server_to_client : Array
Inherited

see \global\Net_SSH2::getLanguagesServer2Client()
access private
inherited_from \Net_SSH2::$$languages_server_to_client
 

MAC Algorithms: Client to Server

$mac_algorithms_client_to_server : Array
Inherited

see \global\Net_SSH2::getMACAlgorithmsClient2Server()
access private
inherited_from \Net_SSH2::$$mac_algorithms_client_to_server
 

MAC Algorithms: Server to Client

$mac_algorithms_server_to_client : Array
Inherited

see \global\Net_SSH2::getMACAlgorithmsServer2Client()
access private
inherited_from \Net_SSH2::$$mac_algorithms_server_to_client
 

Message Log

$message_log : Array
Inherited

see \global\Net_SSH2::getLog()
access private
inherited_from \Net_SSH2::$$message_log
 

Message Number Log

$message_number_log : Array
Inherited

see \global\Net_SSH2::getLog()
access private
inherited_from \Net_SSH2::$$message_number_log
 

Message Numbers

$message_numbers : Array
Inherited

see \global\Net_SSH2::Net_SSH2()
access private
inherited_from \Net_SSH2::$$message_numbers
 

Packet Buffer

$packet_buffer : String

see \global\Net_SFTP::_get_sftp_packet()
access private
 

Packet Log

$packet_log : Array

see \global\Net_SFTP::getLog()
access private
 

Packet Size

$packet_size_client_to_server : Array
Inherited

Maximum packet size indexed by channel

see \global\Net_SSH2::_send_channel_packet()
access private
inherited_from \Net_SSH2::$$packet_size_client_to_server
 

The Packet Type

$packet_type : Integer

The request ID exists in the off chance that a packet is sent out-of-order. Of course, this library doesn't support concurrent actions, so it's somewhat academic, here.

see \global\Net_SFTP::_get_sftp_packet()
access private
 

Packet Type Log

$packet_type_log : Array

see \global\Net_SFTP::getLog()
access private
 

Packet Types

$packet_types : Array

see \global\Net_SFTP::Net_SFTP()
access private
 

Current working directory

$pwd : String

see \global\Net_SFTP::_realpath()
see \global\Net_SFTP::chdir()
access private
 

The Request ID

$request_id : Integer

The request ID exists in the off chance that a packet is sent out-of-order. Of course, this library doesn't support concurrent actions, so it's somewhat academic, here.

see \global\Net_SFTP::_send_sftp_packet()
access private
 

Send Sequence Number

$send_seq_no : Integer
Inherited

See 'Section 6.4. Data Integrity' of rfc4253 for more info.

see \global\Net_SSH2::_send_binary_packet()
access private
inherited_from \Net_SSH2::$$send_seq_no
 

Server Channels

$server_channels : Array
Inherited

Maps client channels to server channels

see \global\Net_SSH2::_get_channel_packet()
see \global\Net_SSH2::exec()
access private
inherited_from \Net_SSH2::$$server_channels
 

Server Host Key Algorithms

$server_host_key_algorithms : Array
Inherited

see \global\Net_SSH2::getServerHostKeyAlgorithms()
access private
inherited_from \Net_SSH2::$$server_host_key_algorithms
 

Server Identifier

$server_identifier : String
Inherited

see \global\Net_SSH2::getServerIdentification()
access private
inherited_from \Net_SSH2::$$server_identifier
 

Server Public Host Key

$server_public_host_key : String
Inherited

see \global\Net_SSH2::getServerPublicHostKey()
access private
inherited_from \Net_SSH2::$$server_public_host_key
 

Session identifer

$session_id : String
Inherited

"The exchange hash H from the first key exchange is additionally used as the session identifier, which is a unique identifier for this connection."

-- http://tools.ietf.org/html/rfc4253#section-7.2

see \global\Net_SSH2::_key_exchange()
access private
inherited_from \Net_SSH2::$$session_id
 

Error information

$sftp_errors : String

see \global\Net_SFTP::getSFTPErrors()
see \global\Net_SFTP::getLastSFTPError()
access private
 

Server signature

$signature : String
Inherited

Verified against $this->session_id

see \global\Net_SSH2::getServerPublicHostKey()
access private
inherited_from \Net_SSH2::$$signature
 

Server signature format

$signature_format : String
Inherited

ssh-rsa or ssh-dss.

see \global\Net_SSH2::getServerPublicHostKey()
access private
inherited_from \Net_SSH2::$$signature_format
 

Status Codes

$status_codes : Array

see \global\Net_SFTP::Net_SFTP()
access private
 

Terminal Modes

$terminal_modes : Array
Inherited

link http://tools.ietf.org/html/rfc4254#section-8
see \global\Net_SSH2::Net_SSH2()
access private
inherited_from \Net_SSH2::$$terminal_modes
 

Server SFTP version

$version : Integer

see \global\Net_SFTP::_initChannel()
access private
 

The Window Size

$window_size : Integer
Inherited

Bytes the other party can send before it must wait for the window to be adjusted (0x7FFFFFFF = 4GB)

see \global\Net_SSH2::_send_channel_packet()
see \global\Net_SSH2::exec()
access private
inherited_from \Net_SSH2::$$window_size
 

Window size

$window_size_client_to_server : Array
Inherited

Window size indexed by channel

see \global\Net_SSH2::_send_channel_packet()
access private
inherited_from \Net_SSH2::$$window_size_client_to_server