Class: Net::SFTP::Protocol::V06::Base

Class | Net::SFTP::Protocol::V06::Base
In: | lib/net/sftp/protocol/06/base.rb
Parent: | V05::Base

Wraps the low-level SFTP calls for version 6 of the SFTP protocol.

None of these protocol methods block—all of them return immediately, requiring the SSH event loop to be run while the server response is pending.

You will almost certainly never need to use this driver directly. Please see Net::SFTP::Session for the recommended interface.

### Methods

attribute_factory block link symlink unblock version

### Public Instance methods

block(handle, offset, length, mask)

Sends a FXP_BLOCK packet to the server to request that a byte-range lock be obtained on the given `handle`, for the given byte `offset` and `length`. The `mask` parameter is a bitfield indicating what kind of lock to acquire, and must be a combination of one or more of the Net::SFTP::Constants::LockTypes constants.

link(new_link_path, existing_path, symlink)

Sends a FXP_LINK packet to the server to request that a link be created at `new_link_path`, pointing to `existing_path`. If `symlink` is true, a symbolic link will be created; otherwise a hard link will be created.

symlink(path, target)

Provided for backwards compatibility; v6 of the SFTP protocol removes the older FXP_SYMLINK packet type, so this method simply calls the link method.

unblock(handle, offset, length)

Sends a FXP_UNBLOCK packet to the server to request that a previously acquired byte-range lock be released on the given `handle`, for the given byte `offset` and `length`. The `handle`, `offset`, and `length` must all exactly match the parameters that were given when the lock was originally acquired (see block).

version()

Returns the protocol version implemented by this driver. (6, in this case)

### Protected Instance methods

attribute_factory()

Returns the Attributes class used by this version of the protocol (Net::SFTP::Protocol::V06::Attributes, in this case)

[Validate]