class Net::SFTP::Protocol::V06::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.
Public Instance Methods
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.
# File lib/net/sftp/protocol/06/base.rb, line 41 def block(handle, offset, length, mask) send_request(FXP_BLOCK, :string, handle, :int64, offset, :int64, length, :long, mask) end
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.
# File lib/net/sftp/protocol/06/base.rb, line 25 def link(new_link_path, existing_path, symlink) send_request(FXP_LINK, :string, new_link_path, :string, existing_path, :bool, symlink) end
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
).
# File lib/net/sftp/protocol/06/base.rb, line 50 def unblock(handle, offset, length) send_request(FXP_UNBLOCK, :string, handle, :int64, offset, :int64, length) end
Returns the protocol version implemented by this driver. (6, in this case)
# File lib/net/sftp/protocol/06/base.rb, line 18 def version 6 end
Protected Instance Methods
Returns the Attributes
class used by this version of the protocol (Net::SFTP::Protocol::V06::Attributes
, in this case)
# File lib/net/sftp/protocol/06/base.rb, line 58 def attribute_factory V06::Attributes end