<PackageReference Include="SSH.NET" Version="2016.1.0-beta3" />

ISftpSession

using Renci.SshNet.Sftp.Responses; using System; using System.Collections.Generic; using System.Threading; namespace Renci.SshNet.Sftp { internal interface ISftpSession : ISubsystemSession, IDisposable { uint ProtocolVersion { get; } string WorkingDirectory { get; } void ChangeDirectory(string path); string GetCanonicalPath(string path); SftpFileAttributes RequestFStat(byte[] handle, bool nullOnError); SftpFileAttributes RequestStat(string path, bool nullOnError = false); SFtpStatAsyncResult BeginStat(string path, AsyncCallback callback, object state); SftpFileAttributes EndStat(SFtpStatAsyncResult asyncResult); SftpFileAttributes RequestLStat(string path); SFtpStatAsyncResult BeginLStat(string path, AsyncCallback callback, object state); SftpFileAttributes EndLStat(SFtpStatAsyncResult asyncResult); void RequestMkDir(string path); byte[] RequestOpen(string path, Flags flags, bool nullOnError = false); SftpOpenAsyncResult BeginOpen(string path, Flags flags, AsyncCallback callback, object state); byte[] EndOpen(SftpOpenAsyncResult asyncResult); byte[] RequestOpenDir(string path, bool nullOnError = false); void RequestPosixRename(string oldPath, string newPath); byte[] RequestRead(byte[] handle, ulong offset, uint length); SftpReadAsyncResult BeginRead(byte[] handle, ulong offset, uint length, AsyncCallback callback, object state); byte[] EndRead(SftpReadAsyncResult asyncResult); KeyValuePair<string, SftpFileAttributes>[] RequestReadDir(byte[] handle); SftpRealPathAsyncResult BeginRealPath(string path, AsyncCallback callback, object state); string EndRealPath(SftpRealPathAsyncResult asyncResult); void RequestRemove(string path); void RequestRename(string oldPath, string newPath); void RequestRmDir(string path); void RequestSetStat(string path, SftpFileAttributes attributes); SftpFileSytemInformation RequestStatVfs(string path, bool nullOnError = false); void RequestSymLink(string linkpath, string targetpath); void RequestFSetStat(byte[] handle, SftpFileAttributes attributes); void RequestWrite(byte[] handle, ulong serverOffset, byte[] data, int offset, int length, AutoResetEvent wait, Action<SftpStatusResponse> writeCompleted = null); void RequestClose(byte[] handle); SftpCloseAsyncResult BeginClose(byte[] handle, AsyncCallback callback, object state); void EndClose(SftpCloseAsyncResult asyncResult); uint CalculateOptimalReadLength(uint bufferSize); uint CalculateOptimalWriteLength(uint bufferSize, byte[] handle); ISftpFileReader CreateFileReader(byte[] handle, ISftpSession sftpSession, uint chunkSize, int maxPendingReads, long? fileSize); } }