[−][src]Struct ssh2::File
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
.
Implementations
impl File
[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 Drop for File
[src]
impl Read for File
[src]
fn read(&mut self, buf: &mut [u8]) -> Result<usize>
[src]
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
1.36.0[src]
fn is_read_vectored(&self) -> bool
[src]
unsafe fn initializer(&self) -> Initializer
[src]
fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>
1.0.0[src]
fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
1.0.0[src]
fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
1.6.0[src]
fn by_ref(&mut self) -> &mut Self
1.0.0[src]
fn bytes(self) -> Bytes<Self>
1.0.0[src]
fn chain<R>(self, next: R) -> Chain<Self, R> where
R: Read,
1.0.0[src]
R: Read,
fn take(self, limit: u64) -> Take<Self>
1.0.0[src]
impl Seek for File
[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]
fn stream_position(&mut self) -> Result<u64, Error>
[src]
impl Send for File
[src]
impl Sync for File
[src]
impl Write for File
[src]
fn write(&mut self, buf: &[u8]) -> Result<usize>
[src]
fn flush(&mut self) -> Result<()>
[src]
fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
1.36.0[src]
fn is_write_vectored(&self) -> bool
[src]
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0[src]
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
[src]
fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>
1.0.0[src]
fn by_ref(&mut self) -> &mut Self
1.0.0[src]
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,