[][src]Struct ssh2::File

pub struct File<'sftp> { /* fields omitted */ }

A file handle to an SFTP connection.

Files behave similarly to std::old_io::File in that they are readable and writable and support operations like stat and seek.

Files are created through open, create, and open_mode on an instance of Sftp.

Methods

impl<'sftp> File<'sftp>[src]

pub fn setstat(&mut self, stat: FileStat) -> Result<(), Error>[src]

Set the metadata for this handle.

pub fn stat(&mut self) -> Result<FileStat, Error>[src]

Get the metadata for this handle.

pub fn statvfs(&mut self) -> Result<LIBSSH2_SFTP_STATVFS, Error>[src]

pub fn readdir(&mut self) -> Result<(PathBuf, FileStat), Error>[src]

Reads a block of data from a handle and returns file entry information for the next entry, if any.

Note that this provides raw access to the readdir function from libssh2. This will return an error when there are no more files to read, and files such as . and .. will be included in the return values.

Also note that the return paths will not be absolute paths, they are the filenames of the files in this directory.

pub fn fsync(&mut self) -> Result<(), Error>[src]

This function causes the remote server to synchronize the file data and metadata to disk (like fsync(2)).

For this to work requires fsync@openssh.com support on the server.

Trait Implementations

impl<'sftp> Drop for File<'sftp>[src]

impl<'sftp> Read for File<'sftp>[src]

fn read_vectored(&mut self, bufs: &mut [IoSliceMut]) -> Result<usize, Error>1.36.0[src]

Like read, except that it reads into a slice of buffers. Read more

unsafe fn initializer(&self) -> Initializer[src]

🔬 This is a nightly-only experimental API. (read_initializer)

Determines if this Reader can work with buffers of uninitialized memory. Read more

fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>1.0.0[src]

Read all bytes until EOF in this source, placing them into buf. Read more

fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>1.0.0[src]

Read all bytes until EOF in this source, appending them to buf. Read more

fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>1.6.0[src]

Read the exact number of bytes required to fill buf. Read more

fn by_ref(&mut self) -> &mut Self1.0.0[src]

Creates a "by reference" adaptor for this instance of Read. Read more

fn bytes(self) -> Bytes<Self>1.0.0[src]

Transforms this Read instance to an [Iterator] over its bytes. Read more

fn chain<R>(self, next: R) -> Chain<Self, R> where
    R: Read
1.0.0[src]

Creates an adaptor which will chain this stream with another. Read more

fn take(self, limit: u64) -> Take<Self>1.0.0[src]

Creates an adaptor which will read at most limit bytes from it. Read more

impl<'sftp> Seek for File<'sftp>[src]

fn seek(&mut self, how: SeekFrom) -> Result<u64>[src]

Move the file handle's internal pointer to an arbitrary location.

libssh2 implements file pointers as a localized concept to make file access appear more POSIX like. No packets are exchanged with the server during a seek operation. The localized file pointer is simply used as a convenience offset during read/write operations.

You MUST NOT seek during writing or reading a file with SFTP, as the internals use outstanding packets and changing the "file position" during transit will results in badness.

fn stream_len(&mut self) -> Result<u64, Error>[src]

🔬 This is a nightly-only experimental API. (seek_convenience)

Returns the length of this stream (in bytes). Read more

fn stream_position(&mut self) -> Result<u64, Error>[src]

🔬 This is a nightly-only experimental API. (seek_convenience)

Returns the current seek position from the start of the stream. Read more

impl<'sftp> Write for File<'sftp>[src]

fn write_vectored(&mut self, bufs: &[IoSlice]) -> Result<usize, Error>1.36.0[src]

Like write, except that it writes from a slice of buffers. Read more

fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>1.0.0[src]

Attempts to write an entire buffer into this writer. Read more

fn write_fmt(&mut self, fmt: Arguments) -> Result<(), Error>1.0.0[src]

Writes a formatted string into this writer, returning any error encountered. Read more

fn by_ref(&mut self) -> &mut Self1.0.0[src]

Creates a "by reference" adaptor for this instance of Write. Read more

Auto Trait Implementations

impl<'sftp> Unpin for File<'sftp>

impl<'sftp> !Send for File<'sftp>

impl<'sftp> !Sync for File<'sftp>

impl<'sftp> !UnwindSafe for File<'sftp>

impl<'sftp> !RefUnwindSafe for File<'sftp>

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]