<doc>
  <assembly>
    <name>Rebex.Sftp</name>
  </assembly>
  <members>
    <member name="T:Rebex.Net.Scp">
      <summary>
            Provides methods for communication using SCP.
            </summary>
      <remarks>All members of this class are thread-safe.</remarks>
    </member>
    <member name="F:Rebex.Net.Scp.DefaultPort">
      <summary>
            Default SCP port (22).
            </summary>
    </member>
    <member name="E:Rebex.Net.Scp.BannerReceived">
      <summary>
            Occurs when a banner message is received from the server.
            </summary>
    </member>
    <member name="E:Rebex.Net.Scp.FingerprintCheck">
      <summary>
            Occurs when a fingerprint is received from the server and needs to be validated.
            </summary>
    </member>
    <member name="E:Rebex.Net.Scp.AuthenticationRequest">
      <summary>
            Occurs when an authentication request is received from the server that cannot be answered programmatically.
            </summary>
    </member>
    <member name="E:Rebex.Net.Scp.TransferProgress">
      <summary>
            Occurs when data is send or received.
            </summary>
    </member>
    <member name="E:Rebex.Net.Scp.BatchTransferProgress">
      <summary>
            Occurs when a significant action occurs in <see cref="M:Rebex.Net.Scp.Download(System.String,System.String)" /> or <see cref="M:Rebex.Net.Scp.Upload(System.String,System.String)" /> methods.
            </summary>
      <remarks>
            Use this to be informed about current suboperations.
            </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.OnTransferProgress(Rebex.Net.ScpTransferProgressEventArgs)">
      <summary>
            Raises the <see cref="E:Rebex.Net.Scp.TransferProgress" /> event.
            </summary>
      <param name="e">A <see cref="T:Rebex.Net.ScpTransferProgressEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:Rebex.Net.Scp.OnBatchTransferProgress(Rebex.Net.ScpBatchTransferProgressEventArgs)">
      <summary>
            Raises the <see cref="E:Rebex.Net.Scp.BatchTransferProgress" /> event.
            </summary>
      <param name="e">A <see cref="T:Rebex.Net.ScpBatchTransferProgressEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:Rebex.Net.Scp.#ctor">
      <summary>
            Initializes a new instance of the Scp class.
            </summary>
    </member>
    <member name="M:Rebex.Net.Scp.Dispose">
      <summary>
            Disposes the <see cref="T:Rebex.Net.Scp" /> object and all the socket objects.
            </summary>
      <remarks>
            Calling this method ensures that all resources are freed.
            It is not necessary to call this method if the SCP session is
            successfully closed using <see cref="M:Rebex.Net.Scp.Disconnect">Disconnect</see> method.
            </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.Dispose(System.Boolean)">
      <summary>
            Releases the unmanaged resources used by the <see cref="T:Rebex.Net.Scp" />
            and optionally releases the managed resources.
            </summary>
      <param name="disposing">
        <b>true</b> to release both managed and unmanaged resources; <b>false</b> to release only unmanaged resources.</param>
    </member>
    <member name="M:Rebex.Net.Scp.Finalize">
      <summary>
            Finalizer. Called by garbage collector during object destruction.
            </summary>
    </member>
    <member name="M:Rebex.Net.Scp.Connect(System.String)">
      <summary>
            Connects to the SCP host.
            </summary>
      <param name="serverName">The host address - either a hostname or a dotted string address.</param>
    </member>
    <member name="M:Rebex.Net.Scp.Connect(System.String,System.Int32)">
      <summary>
            Connects to the SCP host.
            </summary>
      <param name="serverName">The host address - either a hostname or a dotted string address.</param>
      <param name="serverPort">The host port (e.g. 22).</param>
    </member>
    <member name="M:Rebex.Net.Scp.Disconnect">
      <summary>
            Informs the server that the connection is about to close and
            terminates the connection.
            </summary>
    </member>
    <member name="M:Rebex.Net.Scp.Login">
      <summary>
            Authenticates the user to the server interactively and initializes the SCP session.
            Uses <see cref="E:Rebex.Net.Scp.AuthenticationRequest" /> event to request credentials.
            </summary>
    </member>
    <member name="M:Rebex.Net.Scp.Login(System.String)">
      <summary>
            Authenticates the user to the server interactively and initializes the SCP session.
            Uses <see cref="E:Rebex.Net.Scp.AuthenticationRequest" /> event to request credentials.
            </summary>
      <param name="userName">The username (optional).</param>
    </member>
    <member name="M:Rebex.Net.Scp.Login(System.String,System.String)">
      <summary>
            Authenticates the user to the server and initializes the SCP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
    </member>
    <member name="M:Rebex.Net.Scp.Login(System.String,Rebex.Net.SshPrivateKey)">
      <summary>
            Authenticates the user to the server using his private key and initializes the SCP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
    </member>
    <member name="M:Rebex.Net.Scp.Login(System.String,System.String,Rebex.Net.SshPrivateKey)">
      <summary>
            Authenticates the user to the server using a combination of password and public key and initializes the SCP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
    </member>
    <member name="M:Rebex.Net.Scp.Login(Rebex.Net.SshGssApiCredentials)">
      <summary>
            Authenticates to the server using GSSAPI.
            Kerberos is only supported on Mono.
            NTLM is supported on Windows and partially on Mono.
            </summary>
      <param name="credentials">Credentials.</param>
    </member>
    <member name="M:Rebex.Net.Scp.Bind(Rebex.Net.SshSession)">
      <summary>
            Binds the <see cref="T:Rebex.Net.Scp" /> object to an underlying SSH session. This can be used instead of <see cref="M:Rebex.Net.Scp.Connect(System.String)" />/<see cref="M:Rebex.Net.Scp.Login(System.String,System.String)" /> methods.
            </summary>
      <param name="session">SSH session (already connected and authenticated).</param>
    </member>
    <member name="M:Rebex.Net.Scp.Upload(System.String,System.String)">
      <summary>
            Uploads the content of the local directory (files and all subfolders) to the specified remote directory.
            </summary>
      <param name="localPath">The path of the local directory.</param>
      <param name="remotePath">The path of the remote directory. Doesn't have to exist (will be created), but it's parent directory must already exist.</param>
    </member>
    <member name="M:Rebex.Net.Scp.Download(System.String,System.String)">
      <summary>
            Downloads the content of the remote directory (files and all subfolders) to the specified local directory.
            </summary>
      <param name="remotePath">The path of the remote directory.</param>
      <param name="localPath">The path of the local directory. Doesn't have to exist (will be created).</param>
    </member>
    <member name="M:Rebex.Net.Scp.CreateDirectory(System.String)">
      <summary>
            Creates a directory on the server.
            </summary>
      <param name="remotePath">Pathname of the new remote directory.</param>
    </member>
    <member name="M:Rebex.Net.Scp.PutFile(System.IO.Stream,System.String)">
      <summary>
            Uploads the content of the data stream to the file on the server, overriding it if it already exists.
            </summary>
      <param name="sourceStream">The source data stream.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Scp.PutFile(System.String,System.String)">
      <summary>
            Uploads the content of the local file to the file on the server, overriding it if it already exists.
            </summary>
      <param name="localPath">The path of the local file.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Scp.GetFile(System.String,System.String)">
      <summary>
            Downloads the remote file to the local file, overriding it if it already exists.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="localPath">The path of the local file. This cannot be a directory.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Scp.GetFile(System.String,System.IO.Stream)">
      <summary>
            Downloads the remote file to the data stream.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="outputStream">The output stream.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Scp.ToString">
      <summary>
            Returns a string representation of this object.
            </summary>
      <returns>A string representing this object.</returns>
    </member>
    <member name="P:Rebex.Net.Scp.Proxy">
      <summary>
            Gets or sets the network proxy to use to access a remote server.
            </summary>
      <value>The <see cref="P:Rebex.Net.Scp.Proxy" /> to use to access a remote server.</value>
    </member>
    <member name="M:Rebex.Net.Scp.SetSocketFactory(Rebex.Net.ISocketFactory)">
      <summary>
            Sets the socket factory to be used to create communication sockets.
            </summary>
      <param name="factory">Socket factory.</param>
    </member>
    <member name="P:Rebex.Net.Scp.Encoding">
      <summary>
            Gets or sets the <see cref="T:System.Text.Encoding">Encoding</see> to use to encode and decode command parameters and server responses.
            </summary>
      <value>The <see cref="T:System.Text.Encoding">Encoding</see> to use to encode and decode command parameters and server responses. Default is <see cref="T:System.Text.Encoding">Encoding.Default</see>.</value>
    </member>
    <member name="P:Rebex.Net.Scp.Timeout">
      <summary>
            Gets or sets the length of time in milliseconds before the operation times out (specify -1 or 0 to indicate that the request does not time out).
            </summary>
      <value>
            The length of time, in milliseconds, until the operation times out,
            or the value -1 or 0 to indicate that the request does not time out.
            Default is 60000 (60 seconds).
            </value>
      <remarks>
        <p>
            The internal timeout counter is reset every time data is sent
            or received from to server. This also means that data transfers only
            time out after x milliseconds of inactivity, not after x milliseconds
            from the start of the transfer.
            </p>
        <p>
            Minimal value is 1000. Setting this to a value lower than 1000 will set it to 1000.
            </p>
      </remarks>
    </member>
    <member name="P:Rebex.Net.Scp.Fingerprint">
      <summary>
            Gets the server public key fingerprint (a SHA-256 hash of the server public key).
            </summary>
      <value>Server fingerprint.</value>
    </member>
    <member name="P:Rebex.Net.Scp.ServerKey">
      <summary>
            Gets the server public key.
            </summary>
      <value>Server public key.</value>
    </member>
    <member name="P:Rebex.Net.Scp.Session">
      <summary>
            Gets the SSH session used by this SCP session.
            </summary>
      <value>SSH session.</value>
    </member>
    <member name="P:Rebex.Net.Scp.LocalEndPoint">
      <summary>
            Gets the local client <see cref="T:System.Net.EndPoint" />.
            </summary>
      <value>The local client <see cref="T:System.Net.EndPoint" />.</value>
    </member>
    <member name="P:Rebex.Net.Scp.RemoteEndPoint">
      <summary>
            Gets the remote server <see cref="T:System.Net.EndPoint" />.
            </summary>
      <value>The remote server <see cref="T:System.Net.EndPoint" />.</value>
    </member>
    <member name="P:Rebex.Net.Scp.Settings">
      <summary>
            Gets or sets SCP object settings.
            </summary>
      <value>SCP object settings.</value>
    </member>
    <member name="P:Rebex.Net.Scp.Version">
      <summary>
            Gets the version of the SCP component.
            </summary>
      <value>The version of the SCP component.</value>
    </member>
    <member name="P:Rebex.Net.Scp.IsConnected">
      <summary>
            Gets a value indicating whether the session is connected.
            </summary>
      <remarks>
        <p>
            This property returns the latest known state of the session. 
            When it returns false, the session was either never connected, or no longer connected. 
            When it returns true, the session was connected at the time of the last I/O operation.
            </p>
        <p>
          <b>Note:</b> There is no guarantee that the session is still connected even though
            <see cref="P:Rebex.Net.Scp.IsConnected" /> returns true.
            </p>
      </remarks>
      <value>True if connected; false otherwise.</value>
    </member>
    <member name="P:Rebex.Net.Scp.IsAuthenticated">
      <summary>
            Gets a value indicating whether the session is authenticated.
            </summary>
      <value>True if authenticated; false otherwise.</value>
    </member>
    <member name="M:Rebex.Net.Scp.BeginConnect(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Connect operation.
            Connects to the SCP host.
            </summary>
      <param name="serverName">The host address - either a hostname or a dotted string address.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginConnect(System.String,System.Int32,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Connect operation.
            Connects to the SCP host.
            </summary>
      <param name="serverName">The host address - either a hostname or a dotted string address.</param>
      <param name="serverPort">The host port (e.g. 22).</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndConnect(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginConnect operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.BeginDisconnect(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Disconnect operation.
            Informs the server that the connection is about to close and
            terminates the connection.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndDisconnect(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginDisconnect operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.BeginLogin(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server interactively and initializes the SCP session.
            Uses <see cref="E:Rebex.Net.Scp.AuthenticationRequest" /> event to request credentials.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginLogin(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server interactively and initializes the SCP session.
            Uses <see cref="E:Rebex.Net.Scp.AuthenticationRequest" /> event to request credentials.
            </summary>
      <param name="userName">The username (optional).</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginLogin(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server and initializes the SCP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginLogin(System.String,Rebex.Net.SshPrivateKey,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server using his private key and initializes the SCP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginLogin(System.String,System.String,Rebex.Net.SshPrivateKey,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server using a combination of password and public key and initializes the SCP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginLogin(Rebex.Net.SshGssApiCredentials,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates to the server using GSSAPI.
            Kerberos is only supported on Mono.
            NTLM is supported on Windows and partially on Mono.
            </summary>
      <param name="credentials">Credentials.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndLogin(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginLogin operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.BeginUpload(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Upload operation.
            Uploads the content of the local directory (files and all subfolders) to the specified remote directory.
            </summary>
      <param name="localPath">The path of the local directory.</param>
      <param name="remotePath">The path of the remote directory. Doesn't have to exist (will be created), but it's parent directory must already exist.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndUpload(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginUpload operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.BeginDownload(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Download operation.
            Downloads the content of the remote directory (files and all subfolders) to the specified local directory.
            </summary>
      <param name="remotePath">The path of the remote directory.</param>
      <param name="localPath">The path of the local directory. Doesn't have to exist (will be created).</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndDownload(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginDownload operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.BeginCreateDirectory(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous CreateDirectory operation.
            Creates a directory on the server.
            </summary>
      <param name="remotePath">Pathname of the new remote directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndCreateDirectory(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginCreateDirectory operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.BeginPutFile(System.IO.Stream,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous PutFile operation.
            Uploads the content of the data stream to the file on the server, overriding it if it already exists.
            </summary>
      <param name="sourceStream">The source data stream.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginPutFile(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous PutFile operation.
            Uploads the content of the local file to the file on the server, overriding it if it already exists.
            </summary>
      <param name="localPath">The path of the local file.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndPutFile(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginPutFile operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Scp.BeginGetFile(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFile operation.
            Downloads the remote file to the local file, overriding it if it already exists.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="localPath">The path of the local file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.BeginGetFile(System.String,System.IO.Stream,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFile operation.
            Downloads the remote file to the data stream.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="outputStream">The output stream.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Scp.EndGetFile(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetFile operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="T:Rebex.Net.ScpTransferProgressEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Scp.TransferProgress">TransferProgress</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpTransferProgressEventArgs.Id">
      <summary>
            Gets the user-defined state object specified in a call to asynchronous method.
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpTransferProgressEventArgs.State">
      <summary>
            Gets the transfer state.
            </summary>
      <value>The transfer state.</value>
    </member>
    <member name="P:Rebex.Net.ScpTransferProgressEventArgs.Finished">
      <summary>
            Gets the value indicating whether the transfer has finished.
            </summary>
      <value>True if finished; false otherwise.</value>
    </member>
    <member name="P:Rebex.Net.ScpTransferProgressEventArgs.BytesTransferred">
      <summary>
            Gets the total number of bytes transferred during the current transfer.
            </summary>
      <value>The number of bytes transferred.</value>
      <remarks>This value is valid only when <see cref="P:Rebex.Net.ScpTransferProgressEventArgs.State" /> is not <see cref="P:Rebex.Net.ScpTransferProgressEventArgs.State">None</see>.</remarks>
    </member>
    <member name="P:Rebex.Net.ScpTransferProgressEventArgs.BytesSinceLastEvent">
      <summary>
            Gets the number of bytes transferred during the current transfer since the last time the event was raised.
            </summary>
      <value>The number of bytes transferred since the last time the event was raised.</value>
      <remarks>This value is valid only when <see cref="P:Rebex.Net.ScpTransferProgressEventArgs.State" /> is not <see cref="P:Rebex.Net.ScpTransferProgressEventArgs.State">None</see>.</remarks>
    </member>
    <member name="P:Rebex.Net.ScpTransferProgressEventArgs.LocalPath">
      <summary>
            Gets the path of the local file or directory which is currently processed.
            </summary>
      <value>Local path.</value>
    </member>
    <member name="P:Rebex.Net.ScpTransferProgressEventArgs.RemotePath">
      <summary>
            Gets the path of the remote file or directory which is currently processed.
            </summary>
      <value>Remote path.</value>
    </member>
    <member name="T:Rebex.Net.ScpBatchTransferProgressEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Scp.BatchTransferProgress">BatchTransferProgress</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.State">
      <summary>
            Gets the transfer state.
            </summary>
      <value>Transfer state.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.Operation">
      <summary>
            Gets the currently executed suboperation of the multi-file transfer operation.
            </summary>
      <value>Operation.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.RemotePath">
      <summary>
            Gets the path of the remote file or directory which is currently processed.
            </summary>
      <value>Remote path.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.LocalPath">
      <summary>
            Gets the path of the local file or directory which is currently processed.
            </summary>
      <value>Local path.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.CurrentFileLength">
      <summary>
            Gets the length of the currently transferred file.
            This value is only valid for <see cref="F:Rebex.Net.ScpBatchTransferOperation.FileTransferStarting" /> operation.
            For other operations, -1 is returned.
            </summary>
      <value>File length.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.CurrentFileModified">
      <summary>
            Gets the last modification time of the currently transferred file.
            This value is only valid for <see cref="F:Rebex.Net.ScpBatchTransferOperation.FileTransferStarting" /> operation.
            For other operations, DateTime.MinValue is returned.
            </summary>
      <value>Modification date.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.FilesProcessed">
      <summary>
            Gets the number of files that were already processed (either transferred or skipped).
            </summary>
      <value>Number of files.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.FilesTransferred">
      <summary>
            Gets the number of files that were already successfully transferred.
            </summary>
      <value>Number of files.</value>
    </member>
    <member name="P:Rebex.Net.ScpBatchTransferProgressEventArgs.BytesTransferred">
      <summary>
            Gets the number of bytes that were already successfully transferred.
            </summary>
      <value>Number of bytes.</value>
    </member>
    <member name="T:Rebex.Net.ScpExceptionStatus">
      <summary>
            Defines status codes for the <see cref="T:Rebex.Net.ScpException" /> class.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.ConnectFailure">
      <summary>
            The remote service point could not be contacted at the transport level.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.ConnectionClosed">
      <summary>
            The connection was prematurely closed.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.SocketError">
      <summary>
            The error at transport level occurred.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.NameResolutionFailure">
      <summary>
            The name resolver service could not resolve the host name.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.ProtocolError">
      <summary>
            The response received from the server was complete but indicated a protocol-level error. For example, an SCP protocol error 'File not found' would use this status.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.ProxyNameResolutionFailure">
      <summary>
            The name resolver service could not resolve the proxy host name.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.UnclassifiableError">
      <summary>
            An unclassifiable error occurred. This is the default value for <see cref="P:Rebex.Net.ScpException.Status" />.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.ServerProtocolViolation">
      <summary>
            The server response was not a valid SFTP response.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.Timeout">
      <summary>
            No response was received during the time-out period for a request.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.AsyncError">
      <summary>
            General exception in asynchronous call.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpExceptionStatus.OperationFailure">
      <summary> 
            The requested operation could not be completed. 
            </summary>
    </member>
    <member name="T:Rebex.Net.ScpException">
      <summary>
            The exception that is thrown when an error occurs while using Scp component.
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpException.Status">
      <summary>
            Gets the status of the response.
            </summary>
      <value>One of the <see cref="T:Rebex.Net.ScpExceptionStatus" /> values.</value>
    </member>
    <member name="P:Rebex.Net.ScpException.Transferred">
      <summary>
            Gets the amount od data transferred before the exception occurred.
            </summary>
      <value>The amount od data transferred before the exception occurred.</value>
    </member>
    <member name="M:Rebex.Net.ScpException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.ScpException" /> class with serialized data.
            </summary>
      <param name="info">The object that holds the serialized object data.</param>
      <param name="context">The contextual information about the source or destination.</param>
    </member>
    <member name="M:Rebex.Net.ScpException.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.ScpException" /> class.
            </summary>
      <remarks>This constructor initializes the <see cref="P:System.Exception.Message">Message</see> property of the new instance to a message that describes the general error.</remarks>
    </member>
    <member name="M:Rebex.Net.ScpException.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.ScpException" /> class with the specified error message.
            </summary>
      <param name="message">The message that describes the error.</param>
    </member>
    <member name="M:Rebex.Net.ScpException.#ctor(System.String,Rebex.Net.ScpExceptionStatus)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.ScpException" /> class with the specified error message and status.
            </summary>
      <param name="message">The message that describes the error.</param>
      <param name="status">One of the <see cref="T:Rebex.Net.ScpExceptionStatus" /> values.</param>
    </member>
    <member name="M:Rebex.Net.ScpException.#ctor(System.String,System.Exception)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.ScpException" /> class with the specified error message
            and a reference to the inner exception that is the cause of this exception.
            </summary>
      <param name="message">The message that describes the error.</param>
      <param name="innerException">The exception that is the cause of the current exception. If the <i>innerException</i> parameter is not a null reference, the current exception is raised in a <b>catch</b> block that handles the inner exception.</param>
    </member>
    <member name="M:Rebex.Net.ScpException.#ctor(System.String,System.Exception,Rebex.Net.ScpExceptionStatus)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.ScpException" /> class with the specified error message, status,
            and a reference to the inner exception that is the cause of this exception.
            </summary>
      <param name="message">The message that describes the error.</param>
      <param name="innerException">The exception that is the cause of the current exception. If the <i>innerException</i> parameter is not a null reference, the current exception is raised in a <b>catch</b> block that handles the inner exception.</param>
      <param name="status">One of the <see cref="T:Rebex.Net.ScpExceptionStatus" /> values.</param>
    </member>
    <member name="T:Rebex.Net.ScpState">
      <summary>
            State of the <see cref="T:Rebex.Net.Scp" /> object.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpState.Disconnected">
      <summary>Client is not connected.</summary>
    </member>
    <member name="F:Rebex.Net.ScpState.Connecting">
      <summary>Connecting to server.</summary>
    </member>
    <member name="F:Rebex.Net.ScpState.Connected">
      <summary>Server is ready and awaiting commands.</summary>
    </member>
    <member name="F:Rebex.Net.ScpState.Ready">
      <summary>Sending command to the server.</summary>
    </member>
    <member name="F:Rebex.Net.ScpState.Disposed">
      <summary>Object is disposed and must not be used.</summary>
    </member>
    <member name="T:Rebex.Net.ScpTransferState">
      <summary>
            State of the SCP transfer.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpTransferState.None">
      <summary>
            No transfer.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpTransferState.Uploading">
      <summary>Uploading data.</summary>
    </member>
    <member name="F:Rebex.Net.ScpTransferState.Downloading">
      <summary>Downloading data.</summary>
    </member>
    <member name="T:Rebex.Net.ScpBatchTransferOperation">
      <summary>
            Currently executed operation of the multi-file transfer.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpBatchTransferOperation.FileProcessingStarted">
      <summary>
            Processing of a file was started.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpBatchTransferOperation.FileTransferStarting">
      <summary>
            File transfer is starting.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpBatchTransferOperation.FileTransferred">
      <summary>
            File was successfully transferred.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpBatchTransferOperation.DirectoryProcessingStarted">
      <summary>
            Directory processing was started.
            </summary>
    </member>
    <member name="F:Rebex.Net.ScpBatchTransferOperation.DirectoryCreated">
      <summary>
            Directory was successfully created. If directory already exists, this event is not raised.
            </summary>
    </member>
    <member name="T:Rebex.Net.ScpSettings">
      <summary>
            Specifies various SCP settings.
            </summary>
    </member>
    <member name="M:Rebex.Net.ScpSettings.#ctor">
      <summary>
            Creates a new instance of <see cref="T:Rebex.Net.ScpSettings" />.
            </summary>
    </member>
    <member name="M:Rebex.Net.ScpSettings.Clone">
      <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
      <returns>A new object that is a copy of the current instance.</returns>
    </member>
    <member name="P:Rebex.Net.ScpSettings.SshParameters">
      <summary>
            Gets or sets SSH session parameters.
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpSettings.RaiseEventsFromCurrentThread">
      <summary>
            Specifies whether to raise asynchronous events from the current working thread or 
            whether to raise them using a <see cref="T:System.Threading.SynchronizationContext" /> available when an asynchronous operation was started.
            </summary>
      <value>False (default) to raise events using <see cref="T:System.Threading.SynchronizationContext" />; true to raise them directly form the current working thread.</value>
      <remarks>Events of synchronous methods are always raised from the current working thread.</remarks>
    </member>
    <member name="P:Rebex.Net.ScpSettings.WaitForServerWelcomeMessage">
      <summary>
            Wait for server SSH protocol welcome message before sending the client one.
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpSettings.TryPasswordFirst">
      <summary>
            When authenticating using both password and private key, try authenticating using a password first (default is to try the private key first).
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpSettings.PreferInteractiveAuthentication">
      <summary>
            When authenticating, prefer 'keyboard-interactive' authentication to 'password' authentication.
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpSettings.PostponeChannelClose">
      <summary>
            Postpone channel close requests (workaround for older versions of ssh.com and Cisco SSH servers).
            </summary>
    </member>
    <member name="P:Rebex.Net.ScpSettings.EnableSignaturePadding">
      <summary>
            Enable padding of RSA private key signatures (workaround for SSH servers that got the padding wrong).
            </summary>
      <value>True to enable signature padding; false to disable it.</value>
    </member>
    <member name="P:Rebex.Net.ScpSettings.EnsureKeyAcceptable">
      <summary>
            Announce public key to the server before performing key authentication.
            </summary>
      <value>True to announce public key first; false to perform key authentication immediately.</value>
    </member>
    <member name="P:Rebex.Net.ScpSettings.ProcessCommand">
      <summary>
            Gets or sets a custom function to modify the SCP command before sending it to the server.
            </summary>
    </member>
    <member name="T:Rebex.Net.Sftp">
      <summary>
            Provides methods for communication with SFTP servers.
            </summary>
      <remarks>All members of this class are thread-safe.</remarks>
    </member>
    <member name="F:Rebex.Net.Sftp.DefaultPort">
      <summary>
            Default SFTP port (22).
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.BannerReceived">
      <summary>
            Occurs when a banner message is received from the server.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.FingerprintCheck">
      <summary>
            Occurs when a fingerprint is received from the server and needs to be validated.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.AuthenticationRequest">
      <summary>
            Occurs when an authentication request is received from the server that cannot be answered programmatically.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.ResponseRead">
      <summary>
            Occurs when a response is received from the server.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.CommandSent">
      <summary>
            Occurs when a command is send to the server.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.ListItemReceived">
      <summary>
            Occurs when a file and directory listing item is received by <see cref="M:Rebex.Net.Sftp.GetList" />, <see cref="M:Rebex.Net.Sftp.GetRawList" />, <see cref="M:Rebex.Net.Sftp.GetNameList" /> or <see cref="O:Rebex.Net.Sftp.GetItems">GetItems</see> methods.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.ProblemDetected">
      <summary>
            Occurs when a problem is detected in <see cref="O:Rebex.Net.Sftp.Download">Download</see>, <see cref="O:Rebex.Net.Sftp.Upload">Upload</see>, <see cref="O:Rebex.Net.Sftp.Delete">Delete</see> or <see cref="O:Rebex.Net.Sftp.GetItems">GetItems</see> methods,
            making it possible for the handler to choose a desired reaction.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.Traversing">
      <summary>
            Occurs when a significant action occurs in <see cref="O:Rebex.Net.Sftp.Download">Download</see>, <see cref="O:Rebex.Net.Sftp.Upload">Upload</see>, <see cref="O:Rebex.Net.Sftp.Delete">Delete</see> or <see cref="O:Rebex.Net.Sftp.GetItems">GetItems</see> methods.
            Notifies the client about traversing hierarchy structure.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.TransferProgressChanged">
      <summary>
            Occurs when a significant action occurs in <see cref="O:Rebex.Net.Sftp.Download">Download</see>, <see cref="O:Rebex.Net.Sftp.Upload">Upload</see> methods.
            Notifies the client about currently processing directory, currently transferring file and progress of the transfer.
            </summary>
    </member>
    <member name="E:Rebex.Net.Sftp.DeleteProgressChanged">
      <summary>
            Occurs when a significant action occurs in <see cref="O:Rebex.Net.Sftp.Delete">Delete</see> method.
            Notifies the client about currently processing directory, currently deleting file and progress of the delete.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.OnResponseRead(Rebex.Net.SftpResponseReadEventArgs)">
      <summary>
            Raises the <see cref="E:Rebex.Net.Sftp.ResponseRead" /> event.
            </summary>
      <param name="e">A <see cref="T:Rebex.Net.SftpResponseReadEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.OnCommandSent(Rebex.Net.SftpCommandSentEventArgs)">
      <summary>
            Raises the <see cref="E:Rebex.Net.Sftp.CommandSent" /> event.
            </summary>
      <param name="e">A <see cref="T:Rebex.Net.SftpCommandSentEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.OnStateChanged(Rebex.Net.SftpStateChangedEventArgs)">
      <summary>
            Raises the <see cref="E:Rebex.Net.Sftp.StateChanged" /> event.
            </summary>
      <param name="e">A <see cref="T:Rebex.Net.SftpStateChangedEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.OnTransferProgress(Rebex.Net.SftpTransferProgressEventArgs)">
      <summary>
            Raises the <see cref="E:Rebex.Net.Sftp.TransferProgress" /> event.
            </summary>
      <param name="e">A <see cref="T:Rebex.Net.SftpTransferProgressEventArgs" /> that contains the event data.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.#ctor">
      <summary>
            Initializes a new instance of the Sftp class.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.Dispose">
      <summary>
            Disposes the <see cref="T:Rebex.Net.Sftp" /> object and the underlying SSH object.
            </summary>
      <remarks>
            Calling this method ensures that all resources are freed.
            It is not necessary to call this method if the SFTP session is
            successfully closed using <see cref="M:Rebex.Net.Sftp.Disconnect">Disconnect</see> method.
            </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.Dispose(System.Boolean)">
      <summary>
            Releases the unmanaged resources used by the <see cref="T:Rebex.Net.Sftp" />
            and optionally releases the managed resources.
            </summary>
      <param name="disposing">
        <b>true</b> to release both managed and unmanaged resources; <b>false</b> to release only unmanaged resources.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Finalize">
      <summary>
            Finalizer. Called by garbage collector during object destruction.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.AbortTransfer(System.Object)">
      <summary>
            Aborts pending transfers (either file transfer or directory listing) identified by the specified user-provided state object.
            </summary>
      <param name="state">A user-provided object that identifies the particular asynchronous transfer.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.AbortTransfer">
      <summary>
            Aborts all pending file transfers (either file transfer or directory listing).
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.Connect(System.String)">
      <summary>
            Connects to the SFTP server.
            </summary>
      <param name="serverName">The server address - either a hostname or a dotted string address.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Connect(System.String,System.Int32)">
      <summary>
            Connects to the SFTP server.
            </summary>
      <param name="serverName">The server address - either a hostname or a dotted string address.</param>
      <param name="serverPort">The server port (e.g. 22).</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Disconnect">
      <summary>
            Informs the server that the connection is about to close and
            terminates the connection.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.Login">
      <summary>
            Authenticates the user to the server interactively and initializes the SFTP session.
            Uses <see cref="E:Rebex.Net.Sftp.AuthenticationRequest" /> event to request credentials.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.Login(System.String)">
      <summary>
            Authenticates the user to the server interactively and initializes the SFTP session.
            Uses <see cref="E:Rebex.Net.Sftp.AuthenticationRequest" /> event to request credentials.
            </summary>
      <param name="userName">The username (optional).</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Login(System.String,System.String)">
      <summary>
            Authenticates the user to the server and initializes the SFTP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Login(System.String,Rebex.Net.SshPrivateKey)">
      <summary>
            Authenticates the user to the server using his private key and initializes the SFTP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Login(System.String,System.String,Rebex.Net.SshPrivateKey)">
      <summary>
            Authenticates the user to the server using a combination of password and public key and initializes the SFTP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
      <remarks>Please note that some servers don't support both password and private key specified at the same time.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.Login(Rebex.Net.SshGssApiCredentials)">
      <summary>
            Authenticates to the server using GSSAPI.
            Kerberos is only supported on Mono.
            NTLM is supported on Windows and partially on Mono.
            </summary>
      <param name="credentials">Credentials.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Bind(Rebex.Net.SshSession)">
      <summary>
            Binds the <see cref="T:Rebex.Net.Sftp" /> object to an underlying SSH session. This makes it possible to run multiple SFTP
            sessions over a single SSH session. This can be used instead of <see cref="M:Rebex.Net.Sftp.Connect(System.String)" />/<see cref="M:Rebex.Net.Sftp.Login(System.String,System.String)" /> methods.
            </summary>
      <param name="session">SSH session (already connected and authenticated).</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Bind(Rebex.Net.ISocket)">
      <summary>
            Binds the <see cref="T:Rebex.Net.Sftp" /> object to an underlying stream socket. This method is experimental and intended for advanced users.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.Rename(System.String,System.String)">
      <summary>
            Renames or moves a file or directory on the server.
            </summary>
      <param name="fromPath">The pathname of the remote file or directory to be renamed.</param>
      <param name="toPath">The pathname to rename the file or directory to.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.DeleteFile(System.String)">
      <summary>
            Deletes a file on the server.
            </summary>
      <param name="remotePath">The path to the file to be deleted.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Delete(System.String,Rebex.IO.TraversalMode)">
      <summary>
            Deletes specified files and/or directories on the server. Accepts wildcards.
            </summary>
      <param name="remotePath">The path (with or without wildcards) of the remote file or directory.</param>
      <param name="traversalMode">Traversal mode.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Delete(Rebex.IO.FileSet)">
      <summary>
            Deletes specified files and/or directories on the server.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be deleted.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.CreateSymlink(System.String,System.String)">
      <summary>
            Creates a symbolic link on the server.
            </summary>
      <param name="newLinkPath">Remote path name of the newly-created link.</param>
      <param name="existingPath">Remote path name of an existing item.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.CreateLink(System.String,System.String,Rebex.IO.LinkType)">
      <summary>
            Creates a symbolic link or hard link on the server.
            </summary>
      <param name="newLinkPath">Remote path name of the newly-created link.</param>
      <param name="existingPath">Remote path name of an existing item.</param>
      <param name="linkType">Link type. Hard link creation requires 'hardlink@openssh.com' extension support.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.ChangeDirectory(System.String)">
      <summary>
            Changes the current working directory on the server.
            </summary>
      <param name="remotePath">Path of the directory to change to.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.CreateDirectory(System.String)">
      <summary>
            Creates a directory on the server.
            </summary>
      <param name="remotePath">Pathname of the new remote directory.</param>
      <returns>A string containing the absolute path of the newly created remote directory.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.RemoveDirectory(System.String)">
      <summary>
            Deletes an empty remote directory with the specified pathname.
            </summary>
      <param name="remotePath">Remote directory pathname.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.ResolveSymlink(System.String)">
      <summary>
            Resolves the symlink and returns the real path.
            </summary>
      <param name="remotePath">The symlink path.</param>
      <returns>Real path.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetInfo(System.String,System.Boolean)">
      <summary>
            Retrieves a <see cref="T:Rebex.Net.SftpItem" /> containing the information about the specified remote file or directory.
            </summary>
      <param name="remotePath">The path of the remote file or directory.</param>
      <param name="failIfNotFound">Specifies whether to throw an exception if file not found.</param>
      <returns>Information about the remote file or directory.</returns>
      <remarks>Returns null if no file is found and failIfNotFound argument is set to false.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.SetAttributes(System.String,Rebex.Net.SftpAttributes)">
      <summary>
            Sets the attributes of the remote file.
            </summary>
      <param name="remotePath">The path of the remote file or directory.</param>
      <param name="attributes">Attributes to set.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.SetFileDateTime(System.String,System.DateTime)">
      <summary>
            Sets the modification date and time of the specified remote file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="newDateTime">The date and time to set.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.GetFileSystemInfo(System.String)">
      <summary>
            Gets drive information (such as free disk space) for the specified path.
            </summary>
      <param name="path">Path of the remote directory whose file system's drive information to retrieve.</param>
      <returns>Drive information.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.CheckConnectionState">
      <summary>
            Checks whether the SFTP session is still connected. Throws an exception on error.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.GetConnectionState">
      <summary>
            Checks whether the SFTP session is still connected and returns its state.
            </summary>
      <returns>Connection state.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.ToString">
      <summary>
            Returns a string representation of this object.
            </summary>
      <returns>A string representing this object</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetUploadStream(System.String)">
      <summary>
            Returns a Stream for writing data to the remote file.
            The remote file is created if it doesn't exist, and truncated if it does.
            Use <see cref="M:Rebex.Net.Sftp.GetStream(System.String,System.IO.FileMode)" /> method if different behavior is desired.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <returns>A Stream for writing data to the remote file</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetDownloadStream(System.String)">
      <summary>
            Returns a Stream for reading data from the remote file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <returns>A Stream for reading data from the remote file</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetStream(System.String,System.IO.FileMode)">
      <summary>
            Returns a Stream for reading and writing data from the remote file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="mode">How to open the remote file.</param>
      <returns>A Stream for reading and writing data from the remote file</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetStream(System.String,System.IO.FileMode,System.IO.FileAccess)">
      <summary>
            Returns a Stream for reading data from the remote file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="mode">How to open the remote file.</param>
      <param name="access">Which operations can be performed on the opened stream.</param>
      <returns>A Stream for reading data from the remote file</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetInfo(System.String)">
      <summary>
            Retrieves a <see cref="T:Rebex.Net.SftpItem" /> containing the information about the specified remote file or directory.
            </summary>
      <param name="remotePath">The path of the remote file or directory.</param>
      <returns>Information about the remote file or directory.</returns>
      <remarks>Fails if path not found.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.GetCurrentDirectory">
      <summary>
            Gets the absolute path of the current working directory on the remote server.
            </summary>
      <returns>A string containing the absolute path of the current working remote directory.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetHomeDirectory">
      <summary>
            Gets the absolute path of the home directory path of currently logged user.
            </summary>
      <returns>A string containing the absolute path of the current user's home directory.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetFileLength(System.String)">
      <summary>
            Retrieves the size of the specified remote file.
            </summary>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <returns>The size of the specified file in bytes.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetFileDateTime(System.String)">
      <summary>
            Retrieves the modification date and time of the specified remote file.
            </summary>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <returns>A <see cref="T:System.DateTime" /> value set to date and time that the specified file was modified.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.PutFile(System.IO.Stream,System.String)">
      <summary>
            Uploads the content of the data stream to the file on the server, overriding it if it already exists.
            </summary>
      <param name="sourceStream">The source data stream.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.PutFile(System.String,System.String)">
      <summary>
            Uploads the content of the local file to the file on the server, overriding it if it already exists.
            </summary>
      <param name="localPath">The path of the local file.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.PutFile(System.IO.Stream,System.String,System.Int64,System.Int64)">
      <summary>
            Uploads the content of the data stream to the specified offset of the file on the SFTP server.
            </summary>
      <param name="sourceStream">The source data stream.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer all data until an end is reached.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>If the remote file does not exist, it is created.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.PutFile(System.String,System.String,System.Int64,System.Int64,System.Int64)">
      <summary>
            Uploads the specified part of the local file to the specified offset of the file on the SFTP server.
            </summary>
      <param name="localPath">The path of the local file.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <param name="localOffset">The starting offset in the local file.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer all data until an end is reached.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>If the remote file does not exist, it is created.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.Upload(System.String,System.String)">
      <summary>
            Uploads the specific local file or directory hierarchy to the directory to the SFTP server. Accepts wildcards.
            </summary>
      <param name="localPath">The path (with or without wildcards) of the local file or directory.</param>
      <param name="remoteDirectoryPath">The path of the remote directory. This must be a directory.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Upload(System.String,System.String,Rebex.IO.TraversalMode)">
      <summary>
            Uploads the specific local file or directory hierarchy to the directory to the SFTP server. Accepts wildcards.
            </summary>
      <param name="localPath">The path (with or without wildcards) of the local file or directory.</param>
      <param name="remoteDirectoryPath">The path of the remote directory. This must be a directory.</param>
      <param name="traversalMode">Traversal mode. Specifies whether the whole hierarchy or files only are transferred.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Upload(System.String,System.String,Rebex.IO.TraversalMode,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles)">
      <summary>
            Uploads the specified local file or directory hierarchy to the directory to the SFTP server. Accepts wildcards.
            </summary>
      <param name="localPath">The path (with or without wildcards) of the local file or directory.</param>
      <param name="remoteDirectoryPath">The path of the remote directory. This must be a directory.</param>
      <param name="traversalMode">Traversal mode. Specifies whether the whole hierarchy or files only are transferred.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the server.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Upload(Rebex.IO.FileSet,System.String)">
      <summary>
            Uploads the specified local files and/or directories to the directory to the SFTP server.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be uploaded.</param>
      <param name="remoteDirectoryPath">The path of the remote directory. This must be a directory.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Upload(Rebex.IO.FileSet,System.String,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles)">
      <summary>
            Uploads the specified local files and/or directories to the directory to the SFTP server.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be uploaded.</param>
      <param name="remoteDirectoryPath">The path of the remote directory. This must be a directory.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the server.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.GetFile(System.String,System.IO.Stream)">
      <summary>
            Downloads the remote file to the data stream.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="outputStream">The output stream.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetFile(System.String,System.String)">
      <summary>
            Downloads the remote file to the local file, overriding it if it already exists.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="localPath">The path of the local file. This cannot be a directory.</param>
      <returns>Number of bytes transferred.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetFile(System.String,System.IO.Stream,System.Int64,System.Int64)">
      <summary>
            Downloads the specified part of the remote file to the data stream.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="outputStream">The output stream.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer all data until an end is reached.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>If the local file does not exist, it is created.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.GetFile(System.String,System.String,System.Int64,System.Int64,System.Int64)">
      <summary>
            Downloads the specified part of the remote file to the specified offset of the local file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="localPath">The path of the local file. This cannot be a directory.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="localOffset">The starting offset in the local file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer until the end is reached.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>If the local file does not exist, it is created.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.Download(System.String,System.String)">
      <summary>
            Downloads the specified file or directory hierarchy from the SFTP server to the local directory. Accepts wildcards.
            </summary>
      <param name="remotePath">The path (with or without wildcards) of the remote file or directory.</param>
      <param name="localDirectoryPath">The path of the local directory. This must be a directory.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Download(System.String,System.String,Rebex.IO.TraversalMode)">
      <summary>
            Downloads the specified file or directory hierarchy from the SFTP server to the local directory. Accepts wildcards.
            </summary>
      <param name="remotePath">The path (with or without wildcards) of the remote file or directory.</param>
      <param name="localDirectoryPath">The path of the local directory. This must be a directory.</param>
      <param name="traversalMode">Traversal mode. Specifies whether the whole hierarchy or files only are transferred.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Download(System.String,System.String,Rebex.IO.TraversalMode,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles)">
      <summary>
            Downloads the specified file or directory hierarchy from the SFTP server to the local directory. Accepts wildcards.
            </summary>
      <param name="remotePath">The path (with or without wildcards) of the remote file or directory.</param>
      <param name="localDirectoryPath">The path of the local directory. This must be a directory.</param>
      <param name="traversalMode">Traversal mode. Specifies whether the whole hierarchy or files only are transferred.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the local directory.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Download(Rebex.IO.FileSet,System.String)">
      <summary>
            Downloads the specified files and/or directories from the SFTP server to the local directory.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be downloaded.</param>
      <param name="localDirectoryPath">The path of the local directory. This must be a directory.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.Download(Rebex.IO.FileSet,System.String,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles)">
      <summary>
            Downloads the specified files and/or directories from the SFTP server to the local directory.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be downloaded.</param>
      <param name="localDirectoryPath">The path of the local directory. This must be a directory.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the local directory.</param>
    </member>
    <member name="M:Rebex.Net.Sftp.GetList">
      <summary>
            Retrieves the list of files and directories in the current remote directory.
            </summary>
      <returns>Collection of <see cref="T:Rebex.Net.SftpItem" /> values.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetList(System.String)">
      <summary>
            Retrieves the list of files and directories in the specified remote directory, or a list of files matching the specified mask.
            </summary>
      <param name="path">The path of the remote directory, or null for current directory. File wildcards masks (such as *.txt) are accepted as well.</param>
      <returns>Collection of <see cref="T:Rebex.Net.SftpItem" /> values.</returns>
      <remarks>Argument is taken case sensitive if <see cref="P:Rebex.Net.Sftp.ServerType" /> equals to <see cref="F:Rebex.Net.SftpServerType.Unix" />; case insensitive otherwise.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.GetItems(System.String)">
      <summary>
            Retrieves the list of files and directories. Matching directories are searched recursively.
            </summary>
      <param name="remotePath">The path (with or without a mask) to a remote file or directory.</param>
      <returns>Collection of <see cref="T:Rebex.Net.SftpItem" /> values.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetItems(System.String,Rebex.IO.TraversalMode)">
      <summary>
            Retrieves the list of files and directories.
            </summary>
      <param name="remotePath">The path (with or without a mask) to a remote file or directory.</param>
      <param name="traversalMode">Specifies how to traverse hierarchy of directories.</param>
      <returns>Collection of <see cref="T:Rebex.Net.SftpItem" /> values.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetItems(Rebex.IO.FileSet)">
      <summary>
            Retrieves the list of files and directories specified by the <paramref name="set" />.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be retrieved.</param>
      <returns>Collection of <see cref="T:Rebex.Net.SftpItem" /> values.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetRawList">
      <summary>
            Retrieves the list of files and directories in the current remote directory using a raw text format.
            </summary>
      <returns>An array of lines, with each line representing a single item.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetRawList(System.String)">
      <summary>
            Retrieves the list of files and directories in the specified remote directory (or a list of files matching the specified mask) using a raw text format.
            </summary>
      <param name="path">The path of the remote directory, or null for current directory. File wildcards masks (such as *.txt) are accepted as well.</param>
      <returns>An array of lines, with each line representing a single item.</returns>
      <remarks>Argument is taken case sensitive if <see cref="P:Rebex.Net.Sftp.ServerType" /> equals to <see cref="F:Rebex.Net.SftpServerType.Unix" />; case insensitive otherwise.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.GetNameList">
      <summary>
            Retrieves the list of file and directory names in the current remote directory.
            </summary>
      <returns>An array of lines, with each line representing a single name.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetNameList(System.String)">
      <summary>
            Retrieves the list of file and directory names in the specified remote directory, or a list of names matching the specified mask.
            </summary>
      <param name="path">The path of the remote directory, or null for current directory. File wildcards masks (such as *.txt) are accepted as well.</param>
      <returns>An array of lines, with each line representing a single name.</returns>
      <remarks>Argument is taken case sensitive if <see cref="P:Rebex.Net.Sftp.ServerType" /> equals to <see cref="F:Rebex.Net.SftpServerType.Unix" />; case insensitive otherwise.</remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.FileExists(System.String)">
      <summary>
            Detects whether the specified file exists on the server.
            </summary>
      <param name="remotePath">The path of the remote file to check.</param>
      <returns>True if the file exists, false otherwise.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.DirectoryExists(System.String)">
      <summary>
            Detects whether the specified directory exists on the server.
            </summary>
      <param name="remotePath">The path of the remote directory to check.</param>
      <returns>True if the directory exists, false otherwise.</returns>
    </member>
    <member name="M:Rebex.Net.Sftp.GetChecksum(System.String,Rebex.IO.ChecksumAlgorithm)">
      <summary>
            Returns the checksum of the specified file on the server. Only works on servers that support the <code>check-file</code> extension.
            </summary>
      <param name="remotePath">Path of the remote file.</param>
      <param name="algorithm">Desired checksum algorithm (server must support it).</param>
      <returns>Checksum of the specified remote file.</returns>
      <remarks>
        <p>
            Please note that not all SFTP servers support checksum calculation, and not all SFTP servers support all checksum algorithms.
            </p>
        <p>
            To calculate checksums of local files, use one of <see cref="M:Rebex.IO.LocalItem.GetChecksum(System.String,Rebex.IO.ChecksumAlgorithm)" /> methods.
            </p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.GetChecksum(System.String,Rebex.IO.ChecksumAlgorithm,System.Int64,System.Int64)">
      <summary>
            Returns the checksum of the specified file on the server. Only works on servers that support the <code>check-file</code> extension.
            </summary>
      <param name="remotePath">Path of the remote file.</param>
      <param name="algorithm">Desired checksum algorithm (server must support it).</param>
      <param name="offset">The offset in remote file where reading will start.</param>
      <param name="count">The maximum number of bytes to read.</param>
      <returns>Checksum of the specified remote file.</returns>
      <remarks>
        <p>
            Please note that not all SFTP servers support checksum calculation, and not all SFTP servers support all checksum algorithms.
            </p>
        <p>
            To calculate checksums of local files, use one of <see cref="M:Rebex.IO.LocalItem.GetChecksum(System.String,Rebex.IO.ChecksumAlgorithm,System.Int64,System.Int64)" /> methods.
            </p>
      </remarks>
    </member>
    <member name="P:Rebex.Net.Sftp.Proxy">
      <summary>
            Gets or sets the network proxy to use to access a remote server.
            </summary>
      <value>The <see cref="P:Rebex.Net.Sftp.Proxy" /> to use to access a remote server.</value>
    </member>
    <member name="M:Rebex.Net.Sftp.SetSocketFactory(Rebex.Net.ISocketFactory)">
      <summary>
            Sets the socket factory to be used to create communication sockets.
            </summary>
      <param name="factory">Socket factory.</param>
    </member>
    <member name="P:Rebex.Net.Sftp.Encoding">
      <summary>
            Gets or sets the <see cref="T:System.Text.Encoding">Encoding</see> to use to encode and decode command parameters and server responses.
            </summary>
      <value>The <see cref="T:System.Text.Encoding">Encoding</see> to use to encode and decode command parameters and server responses. Default is <see cref="T:System.Text.Encoding">Encoding.Default</see>.</value>
      <remarks>
            Even though the RFC implies that UTF-8 is to be used to encode all communication, the practice is very different, unfortunately.
            In the real world, all SFTP servers seem to default to the OS default charset.
            </remarks>
    </member>
    <member name="P:Rebex.Net.Sftp.TransferType">
      <summary>
            Gets or sets the data transfer type. Make sure to set the <see cref="P:Rebex.Net.Sftp.ServerType" /> property to the target OS first!
            </summary>
      <value>The file transfer type. Default is <see cref="T:Rebex.Net.SftpTransferType">Binary</see>.</value>
      <remarks>
        <para>
            This setting applies to <code>GetFile</code>, <code>PutFile</code>, <code>Upload</code> and <code>Download</code> methods.
            It does not apply to <code>GetStream</code>, <code>GetUploadStream</code> and <code>GetDownloadStream</code> methods (those are
            always binary).
            </para>
        <para>
            When this property is set to Ascii and <see cref="P:Rebex.Net.Sftp.ServerType" /> is set to Unix, Rebex SFTP will do this: <br />
            1. When uploading, all Windows-style CRLF end-of-line sequences in the source file are replaced with Unix-style LF sequences.
            2. When downloading, all Unix-style LF end-of-line sequences are replaced with CRLF
            (any CRLF already in the source data are kept, which means you won't get CRCRLF).
            </para>
      </remarks>
    </member>
    <member name="P:Rebex.Net.Sftp.ServerType">
      <summary>
            Gets or sets the server type.
            </summary>
      <value>The server type. Default is <see cref="T:Rebex.Net.SftpServerType">Unknown</see>.</value>
      <remarks>
            Setting this property to Unix causes Rebex SFTP to only treat forward-slash (the '/' character) as directory delimiter instead of both '/' and '\'.
            Additionally, when set to Unix, setting the <see cref="P:Rebex.Net.Sftp.TransferType" /> property to Ascii enables conversion between Windows-style and Unix-style end-of-line sequences.
            </remarks>
    </member>
    <member name="P:Rebex.Net.Sftp.Settings">
      <summary>
            Gets or sets SFTP object settings.
            </summary>
      <value>SFTP object settings.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.MaxDownloadSpeed">
      <summary>
            Gets or sets the maximum allowed download speed, in kilobytes per second. For unlimited speed, set this to zero.
            </summary>
      <value>Maximum allowed download speed (KB/s).</value>
    </member>
    <member name="P:Rebex.Net.Sftp.MaxUploadSpeed">
      <summary>
            Gets or sets the maximum allowed upload speed, in kilobytes per second. For unlimited speed, set this to zero.
            </summary>
      <value>Maximum allowed upload speed (KB/s).</value>
    </member>
    <member name="P:Rebex.Net.Sftp.Timeout">
      <summary>
            Gets or sets the length of time in milliseconds before the operation times out (specify -1 or 0 to indicate that the request does not time out).
            </summary>
      <value>
            The length of time, in milliseconds, until the operation times out,
            or the value -1 or 0 to indicate that the request does not time out.
            Default is 60000 (60 seconds).
            </value>
      <remarks>
        <p>
            The internal timeout counter is reset every time data is sent
            or received from to server. This also means that data transfers only
            time out after x milliseconds of inactivity, not after x milliseconds
            from the start of the transfer.
            </p>
        <p>
            Minimal value is 1000. Setting this to a value lower than 1000 will set it to 1000.
            </p>
      </remarks>
    </member>
    <member name="P:Rebex.Net.Sftp.ProtocolVersion">
      <summary>
            Gets the SFTP protocol version used by this session. This information is only available on fully initialized and authenticated sessions.
            </summary>
      <value>SFTP protocol version.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.Fingerprint">
      <summary>
            Gets the server public key fingerprint (a SHA-256 hash of the server public key).
            </summary>
      <value>Server fingerprint.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.ServerKey">
      <summary>
            Gets the server public key.
            </summary>
      <value>Server public key.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.Session">
      <summary>
            Gets the SSH session used by this SFTP session.
            </summary>
      <value>SSH session.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.LocalEndPoint">
      <summary>
            Gets the local client <see cref="T:System.Net.EndPoint" />.
            </summary>
      <value>The local client <see cref="T:System.Net.EndPoint" />.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.RemoteEndPoint">
      <summary>
            Gets the remote server <see cref="T:System.Net.EndPoint" />.
            </summary>
      <value>The remote server <see cref="T:System.Net.EndPoint" />.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.Version">
      <summary>
            Gets the version of the SFTP component.
            </summary>
      <value>The version of the SFTP component.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.IsConnected">
      <summary>
            Gets a value indicating whether the session is connected.
            </summary>
      <remarks>
        <p>
            This property returns the latest known state of the session.
            When it returns false, the session was either never connected, or no longer connected.
            When it returns true, the session was connected at the time of the last I/O operation.
            </p>
        <p>
          <b>Note:</b> There is no guarantee that the session is still connected even though
            <see cref="P:Rebex.Net.Sftp.IsConnected" /> returns true.
            </p>
      </remarks>
      <value>True if connected; false otherwise.</value>
    </member>
    <member name="P:Rebex.Net.Sftp.IsAuthenticated">
      <summary>
            Gets a value indicating whether the session is authenticated.
            </summary>
      <value>True if authenticated; false otherwise.</value>
    </member>
    <member name="M:Rebex.Net.Sftp.KeepAlive">
      <summary>
            Sends an SSH 'ignore' packet to the server. This can be used to keep firewalls or routers that don't like inactive connection from closing idle session.
            </summary>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginConnect(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Connect operation.
            Connects to the SFTP server.
            </summary>
      <param name="serverName">The server address - either a hostname or a dotted string address.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginConnect(System.String,System.Int32,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Connect operation.
            Connects to the SFTP server.
            </summary>
      <param name="serverName">The server address - either a hostname or a dotted string address.</param>
      <param name="serverPort">The server port (e.g. 22).</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndConnect(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginConnect operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginDisconnect(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Disconnect operation.
            Informs the server that the connection is about to close and
            terminates the connection.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndDisconnect(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginDisconnect operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginLogin(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server interactively and initializes the SFTP session.
            Uses <see cref="E:Rebex.Net.Sftp.AuthenticationRequest" /> event to request credentials.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginLogin(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server interactively and initializes the SFTP session.
            Uses <see cref="E:Rebex.Net.Sftp.AuthenticationRequest" /> event to request credentials.
            </summary>
      <param name="userName">The username (optional).</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginLogin(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server and initializes the SFTP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginLogin(System.String,Rebex.Net.SshPrivateKey,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server using his private key and initializes the SFTP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginLogin(System.String,System.String,Rebex.Net.SshPrivateKey,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates the user to the server using a combination of password and public key and initializes the SFTP session.
            </summary>
      <param name="userName">The username.</param>
      <param name="password">Password for the specified username.</param>
      <param name="privateKey">RSA or DSA private key for key-based authentication.</param>
      <remarks>
        <p>Please note that some servers don't support both password and private key specified at the same time.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginLogin(Rebex.Net.SshGssApiCredentials,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Login operation.
            Authenticates to the server using GSSAPI.
            Kerberos is only supported on Mono.
            NTLM is supported on Windows and partially on Mono.
            </summary>
      <param name="credentials">Credentials.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndLogin(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginLogin operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginBind(Rebex.Net.SshSession,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Bind operation.
            Binds the <see cref="T:Rebex.Net.Sftp" /> object to an underlying SSH session. This makes it possible to run multiple SFTP
            sessions over a single SSH session. This can be used instead of <see cref="M:Rebex.Net.Sftp.Connect(System.String)" />/<see cref="M:Rebex.Net.Sftp.Login(System.String,System.String)" /> methods.
            </summary>
      <param name="session">SSH session (already connected and authenticated).</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndBind(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginBind operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginRename(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Rename operation.
            Renames or moves a file or directory on the server.
            </summary>
      <param name="fromPath">The pathname of the remote file or directory to be renamed.</param>
      <param name="toPath">The pathname to rename the file or directory to.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndRename(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginRename operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginDeleteFile(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous DeleteFile operation.
            Deletes a file on the server.
            </summary>
      <param name="remotePath">The path to the file to be deleted.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndDeleteFile(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginDeleteFile operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginDelete(System.String,Rebex.IO.TraversalMode,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Delete operation.
            Deletes specified files and/or directories on the server. Accepts wildcards.
            </summary>
      <param name="remotePath">The path (with or without wildcards) of the remote file or directory.</param>
      <param name="traversalMode">Traversal mode.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginDelete(Rebex.IO.FileSet,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Delete operation.
            Deletes specified files and/or directories on the server.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be deleted.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndDelete(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginDelete operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginCreateSymlink(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous CreateSymlink operation.
            Creates a symbolic link on the server.
            </summary>
      <param name="newLinkPath">Remote path name of the newly-created link.</param>
      <param name="existingPath">Remote path name of an existing item.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndCreateSymlink(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginCreateSymlink operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginCreateLink(System.String,System.String,Rebex.IO.LinkType,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous CreateLink operation.
            Creates a symbolic link or hard link on the server.
            </summary>
      <param name="newLinkPath">Remote path name of the newly-created link.</param>
      <param name="existingPath">Remote path name of an existing item.</param>
      <param name="linkType">Link type. Hard link creation requires 'hardlink@openssh.com' extension support.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndCreateLink(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginCreateLink operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginChangeDirectory(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous ChangeDirectory operation.
            Changes the current working directory on the server.
            </summary>
      <param name="remotePath">Path of the directory to change to.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndChangeDirectory(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginChangeDirectory operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginCreateDirectory(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous CreateDirectory operation.
            Creates a directory on the server.
            </summary>
      <param name="remotePath">Pathname of the new remote directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndCreateDirectory(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginCreateDirectory operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>A string containing the absolute path of the newly created remote directory.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginRemoveDirectory(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous RemoveDirectory operation.
            Deletes an empty remote directory with the specified pathname.
            </summary>
      <param name="remotePath">Remote directory pathname.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndRemoveDirectory(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginRemoveDirectory operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginResolveSymlink(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous ResolveSymlink operation.
            Resolves the symlink and returns the real path.
            </summary>
      <param name="remotePath">The symlink path.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndResolveSymlink(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginResolveSymlink operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Real path.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetInfo(System.String,System.Boolean,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetInfo operation.
            Retrieves a <see cref="T:Rebex.Net.SftpItem" /> containing the information about the specified remote file or directory.
            </summary>
      <param name="remotePath">The path of the remote file or directory.</param>
      <param name="failIfNotFound">Specifies whether to throw an exception if file not found.</param>
      <remarks>
        <p>Returns null if no file is found and failIfNotFound argument is set to false.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetInfo(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetInfo operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Information about the remote file or directory.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginSetAttributes(System.String,Rebex.Net.SftpAttributes,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous SetAttributes operation.
            Sets the attributes of the remote file.
            </summary>
      <param name="remotePath">The path of the remote file or directory.</param>
      <param name="attributes">Attributes to set.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndSetAttributes(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginSetAttributes operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginSetFileDateTime(System.String,System.DateTime,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous SetFileDateTime operation.
            Sets the modification date and time of the specified remote file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="newDateTime">The date and time to set.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndSetFileDateTime(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginSetFileDateTime operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetFileSystemInfo(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFileSystemInfo operation.
            Gets drive information (such as free disk space) for the specified path.
            </summary>
      <param name="path">Path of the remote directory whose file system's drive information to retrieve.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetFileSystemInfo(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetFileSystemInfo operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Drive information.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetStream(System.String,System.IO.FileMode,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetStream operation.
            Returns a Stream for reading and writing data from the remote file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="mode">How to open the remote file.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetStream(System.String,System.IO.FileMode,System.IO.FileAccess,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetStream operation.
            Returns a Stream for reading data from the remote file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="mode">How to open the remote file.</param>
      <param name="access">Which operations can be performed on the opened stream.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetStream(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetStream operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>A Stream for reading data from the remote file</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetFileLength(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFileLength operation.
            Retrieves the size of the specified remote file.
            </summary>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetFileLength(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetFileLength operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>The size of the specified file in bytes.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetFileDateTime(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFileDateTime operation.
            Retrieves the modification date and time of the specified remote file.
            </summary>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetFileDateTime(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetFileDateTime operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>A <see cref="T:System.DateTime" /> value set to date and time that the specified file was modified.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginPutFile(System.IO.Stream,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous PutFile operation.
            Uploads the content of the data stream to the file on the server, overriding it if it already exists.
            </summary>
      <param name="sourceStream">The source data stream.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginPutFile(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous PutFile operation.
            Uploads the content of the local file to the file on the server, overriding it if it already exists.
            </summary>
      <param name="localPath">The path of the local file.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginPutFile(System.IO.Stream,System.String,System.Int64,System.Int64,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous PutFile operation.
            Uploads the content of the data stream to the specified offset of the file on the SFTP server.
            </summary>
      <param name="sourceStream">The source data stream.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer all data until an end is reached.</param>
      <remarks>
        <p>If the remote file does not exist, it is created.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginPutFile(System.String,System.String,System.Int64,System.Int64,System.Int64,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous PutFile operation.
            Uploads the specified part of the local file to the specified offset of the file on the SFTP server.
            </summary>
      <param name="localPath">The path of the local file.</param>
      <param name="remotePath">The path of the remote file. This cannot be a directory.</param>
      <param name="localOffset">The starting offset in the local file.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer all data until an end is reached.</param>
      <remarks>
        <p>If the remote file does not exist, it is created.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndPutFile(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginPutFile operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginUpload(System.String,System.String,Rebex.IO.TraversalMode,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Upload operation.
            Uploads the specified local file or directory hierarchy to the directory to the SFTP server. Accepts wildcards.
            </summary>
      <param name="localPath">The path (with or without wildcards) of the local file or directory.</param>
      <param name="remoteDirectoryPath">The path of the remote directory. This must be a directory.</param>
      <param name="traversalMode">Traversal mode. Specifies whether the whole hierarchy or files only are transferred.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the server.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginUpload(Rebex.IO.FileSet,System.String,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Upload operation.
            Uploads the specified local files and/or directories to the directory to the SFTP server.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be uploaded.</param>
      <param name="remoteDirectoryPath">The path of the remote directory. This must be a directory.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the server.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndUpload(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginUpload operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetFile(System.String,System.IO.Stream,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFile operation.
            Downloads the remote file to the data stream.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="outputStream">The output stream.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetFile(System.String,System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFile operation.
            Downloads the remote file to the local file, overriding it if it already exists.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="localPath">The path of the local file. This cannot be a directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetFile(System.String,System.IO.Stream,System.Int64,System.Int64,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFile operation.
            Downloads the specified part of the remote file to the data stream.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="outputStream">The output stream.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer all data until an end is reached.</param>
      <remarks>
        <p>If the local file does not exist, it is created.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetFile(System.String,System.String,System.Int64,System.Int64,System.Int64,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetFile operation.
            Downloads the specified part of the remote file to the specified offset of the local file.
            </summary>
      <param name="remotePath">The path of the remote file.</param>
      <param name="localPath">The path of the local file. This cannot be a directory.</param>
      <param name="remoteOffset">The starting offset of the remote file.</param>
      <param name="localOffset">The starting offset in the local file.</param>
      <param name="length">Number of bytes to transfer or -1 to transfer until the end is reached.</param>
      <remarks>
        <p>If the local file does not exist, it is created.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetFile(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetFile operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Number of bytes transferred.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginDownload(System.String,System.String,Rebex.IO.TraversalMode,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Download operation.
            Downloads the specified file or directory hierarchy from the SFTP server to the local directory. Accepts wildcards.
            </summary>
      <param name="remotePath">The path (with or without wildcards) of the remote file or directory.</param>
      <param name="localDirectoryPath">The path of the local directory. This must be a directory.</param>
      <param name="traversalMode">Traversal mode. Specifies whether the whole hierarchy or files only are transferred.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the local directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginDownload(Rebex.IO.FileSet,System.String,Rebex.IO.TransferMethod,Rebex.IO.ActionOnExistingFiles,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous Download operation.
            Downloads the specified files and/or directories from the SFTP server to the local directory.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be downloaded.</param>
      <param name="localDirectoryPath">The path of the local directory. This must be a directory.</param>
      <param name="transferMethod">Specifies whether to copy or move source items.</param>
      <param name="existingFileMode">Specifies the default behavior for files that already exists at the local directory.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndDownload(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginDownload operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetList(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetList operation.
            Retrieves the list of files and directories in the current remote directory.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetList(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetList operation.
            Retrieves the list of files and directories in the specified remote directory, or a list of files matching the specified mask.
            </summary>
      <param name="path">The path of the remote directory, or null for current directory. File wildcards masks (such as *.txt) are accepted as well.</param>
      <remarks>
        <p>Argument is taken case sensitive if <see cref="P:Rebex.Net.Sftp.ServerType" /> equals to <see cref="F:Rebex.Net.SftpServerType.Unix" />; case insensitive otherwise.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetList(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetList operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Collection of <see cref="T:Rebex.Net.SftpItem" /> values.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetItems(System.String,Rebex.IO.TraversalMode,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetItems operation.
            Retrieves the list of files and directories.
            </summary>
      <param name="remotePath">The path (with or without a mask) to a remote file or directory.</param>
      <param name="traversalMode">Specifies how to traverse hierarchy of directories.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetItems(Rebex.IO.FileSet,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetItems operation.
            Retrieves the list of files and directories specified by the <paramref name="set" />.
            </summary>
      <param name="set">A filtering set which specifies remote files and directories to be retrieved.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetItems(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetItems operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Collection of <see cref="T:Rebex.Net.SftpItem" /> values.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetRawList(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetRawList operation.
            Retrieves the list of files and directories in the current remote directory using a raw text format.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetRawList(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetRawList operation.
            Retrieves the list of files and directories in the specified remote directory (or a list of files matching the specified mask) using a raw text format.
            </summary>
      <param name="path">The path of the remote directory, or null for current directory. File wildcards masks (such as *.txt) are accepted as well.</param>
      <remarks>
        <p>Argument is taken case sensitive if <see cref="P:Rebex.Net.Sftp.ServerType" /> equals to <see cref="F:Rebex.Net.SftpServerType.Unix" />; case insensitive otherwise.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetRawList(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetRawList operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>An array of lines, with each line representing a single item.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetNameList(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetNameList operation.
            Retrieves the list of file and directory names in the current remote directory.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetNameList(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetNameList operation.
            Retrieves the list of file and directory names in the specified remote directory, or a list of names matching the specified mask.
            </summary>
      <param name="path">The path of the remote directory, or null for current directory. File wildcards masks (such as *.txt) are accepted as well.</param>
      <remarks>
        <p>Argument is taken case sensitive if <see cref="P:Rebex.Net.Sftp.ServerType" /> equals to <see cref="F:Rebex.Net.SftpServerType.Unix" />; case insensitive otherwise.</p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetNameList(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetNameList operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>An array of lines, with each line representing a single name.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginFileExists(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous FileExists operation.
            Detects whether the specified file exists on the server.
            </summary>
      <param name="remotePath">The path of the remote file to check.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndFileExists(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginFileExists operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>True if the file exists, false otherwise.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginDirectoryExists(System.String,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous DirectoryExists operation.
            Detects whether the specified directory exists on the server.
            </summary>
      <param name="remotePath">The path of the remote directory to check.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndDirectoryExists(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginDirectoryExists operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>True if the directory exists, false otherwise.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetChecksum(System.String,Rebex.IO.ChecksumAlgorithm,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetChecksum operation.
            Returns the checksum of the specified file on the server. Only works on servers that support the <code>check-file</code> extension.
            </summary>
      <param name="remotePath">Path of the remote file.</param>
      <param name="algorithm">Desired checksum algorithm (server must support it).</param>
      <remarks>
        <p>
            Please note that not all SFTP servers support checksum calculation, and not all SFTP servers support all checksum algorithms.
            </p>
        <p>
            To calculate checksums of local files, use one of <see cref="M:Rebex.IO.LocalItem.GetChecksum(System.String,Rebex.IO.ChecksumAlgorithm)" /> methods.
            </p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginGetChecksum(System.String,Rebex.IO.ChecksumAlgorithm,System.Int64,System.Int64,System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous GetChecksum operation.
            Returns the checksum of the specified file on the server. Only works on servers that support the <code>check-file</code> extension.
            </summary>
      <param name="remotePath">Path of the remote file.</param>
      <param name="algorithm">Desired checksum algorithm (server must support it).</param>
      <param name="offset">The offset in remote file where reading will start.</param>
      <param name="count">The maximum number of bytes to read.</param>
      <remarks>
        <p>
            Please note that not all SFTP servers support checksum calculation, and not all SFTP servers support all checksum algorithms.
            </p>
        <p>
            To calculate checksums of local files, use one of <see cref="M:Rebex.IO.LocalItem.GetChecksum(System.String,Rebex.IO.ChecksumAlgorithm,System.Int64,System.Int64)" /> methods.
            </p>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndGetChecksum(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginGetChecksum operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <returns>Checksum of the specified remote file.</returns>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="M:Rebex.Net.Sftp.BeginKeepAlive(System.AsyncCallback,System.Object)">
      <summary>
            Begins asynchronous KeepAlive operation.
            Sends an SSH 'ignore' packet to the server. This can be used to keep firewalls or routers that don't like inactive connection from closing idle session.
            </summary>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
      <param name="callback">An optional asynchronous callback to be called when the operation is complete.</param>
      <param name="state">A user-provided object that identifies this particular asynchronous operation.</param>
      <returns>
            An <see cref="T:System.IAsyncResult" /> that references the asynchronous operation.
            </returns>
    </member>
    <member name="M:Rebex.Net.Sftp.EndKeepAlive(System.IAsyncResult)">
      <summary>
            Ends an asynchronous BeginKeepAlive operation.
            </summary>
      <param name="asyncResult">Stores state information for this asynchronous operation as well as any user defined data.</param>
      <remarks>
        <p>In builds for .NET 4.0 and higher, this method is available as an extension method. Add 'using Rebex.Legacy' (C#) or 'Import Rebex.Legacy' (VB.NET) to your code in order to use it.</p>
      </remarks>
    </member>
    <member name="T:Rebex.Net.SftpResponseReadEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.ResponseRead">ResponseRead</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpResponseReadEventArgs.Response">
      <summary>
            Gets the SFTP response.
            </summary>
      <value>The SFTP response.</value>
    </member>
    <member name="M:Rebex.Net.SftpResponseReadEventArgs.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpResponseReadEventArgs" /> class with the specified response string.
            </summary>
      <param name="response">The raw response line that was read.</param>
    </member>
    <member name="T:Rebex.Net.SftpCommandSentEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.CommandSent">CommandSent</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpCommandSentEventArgs.Command">
      <summary>
            Gets the command string.
            </summary>
      <value>The command string.</value>
    </member>
    <member name="M:Rebex.Net.SftpCommandSentEventArgs.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpCommandSentEventArgs" /> class with the specified command string.
            </summary>
      <param name="command">The command that was sent.</param>
    </member>
    <member name="T:Rebex.Net.SftpStateChangedEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.StateChanged">StateChanged</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpStateChangedEventArgs.OldState">
      <summary>
            Gets the old state.
            </summary>
      <value>The state that was changed.</value>
    </member>
    <member name="P:Rebex.Net.SftpStateChangedEventArgs.NewState">
      <summary>
            Gets the new state.
            </summary>
      <value>The new and current state.</value>
    </member>
    <member name="M:Rebex.Net.SftpStateChangedEventArgs.#ctor(Rebex.Net.SftpState,Rebex.Net.SftpState)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpStateChangedEventArgs" /> class with the specified old state and new state.
            </summary>
      <param name="oldState">The old state.</param>
      <param name="newState">The new state.</param>
    </member>
    <member name="T:Rebex.Net.SftpTransferProgressEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.TransferProgress">TransferProgress</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.Id">
      <summary>
            Gets the user-defined state object specified in a call to Begin... method.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.State">
      <summary>
            Gets the transfer state.
            </summary>
      <value>The transfer state.</value>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.Finished">
      <summary>
            Gets the value indicating whether the transfer has finished.
            </summary>
      <value>True if finished; false otherwise.</value>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.BytesTransferred">
      <summary>
            Gets the total number of bytes transferred during the current transfer.
            </summary>
      <value>The number of bytes transferred.</value>
      <remarks>This value is valid only when <see cref="P:Rebex.Net.SftpTransferProgressEventArgs.State" /> is not <see cref="P:Rebex.Net.SftpTransferProgressEventArgs.State">None</see>.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.BytesSinceLastEvent">
      <summary>
            Gets the number of bytes transferred during the current transfer since the last time the event was raised.
            </summary>
      <value>The number of bytes transferred since the last time the event was raised.</value>
      <remarks>This value is valid only when <see cref="P:Rebex.Net.SftpTransferProgressEventArgs.State" /> is not <see cref="P:Rebex.Net.SftpTransferProgressEventArgs.State">None</see>.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.BytesPerSecond">
      <summary>
            Gets the current transfer speed in bytes transferred per second (or 0 if not available).
            </summary>
      <value>An estimate of the current speed in number of bytes per second.</value>
      <remarks>Value of 0 indicates that this information is not available.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.BytesTotal">
      <summary>
            Gets the total number of bytes to be processed (or -1 if not available).
            </summary>
      <value>Number of bytes.</value>
      <remarks>Value of -1 indicates that this information is not available.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.ProgressPercentage">
      <summary>
            Gets a number between 0 and 100 representing the percentage of completeness of the operation.
            </summary>
      <value>Percentage value (0..100).</value>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.LocalPath">
      <summary>
            Gets the path of the local file or directory which is currently processed.
            </summary>
      <value>Local path.</value>
    </member>
    <member name="P:Rebex.Net.SftpTransferProgressEventArgs.RemotePath">
      <summary>
            Gets the path of the remote file or directory which is currently processed.
            </summary>
      <value>Remote path.</value>
    </member>
    <member name="T:Rebex.Net.SftpListItemReceivedEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.ListItemReceived">ListItemReceived</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpListItemReceivedEventArgs.Item">
      <summary>
            Gets the received <see cref="T:Rebex.Net.SftpItem" />.
            </summary>
      <value>The received <see cref="T:Rebex.Net.SftpItem" /> or <b>null</b> if not available.</value>
      <remarks>To remove this item from the list, set this property to null.</remarks>
    </member>
    <member name="M:Rebex.Net.SftpListItemReceivedEventArgs.#ctor(System.String,Rebex.Net.SftpItem)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpListItemReceivedEventArgs" /> class with the specified raw data and item.
            </summary>
      <param name="rawLine">Raw data of the received item line.</param>
      <param name="item">Received <see cref="T:Rebex.Net.SftpItem" />.</param>
    </member>
    <member name="T:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.BatchTransferProblemDetected">BatchTransferProblemDetected</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.State">
      <summary>
            Gets the transfer state.
            </summary>
      <value>Transfer state.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.Exception">
      <summary>
            Gets the exception which will be raised if Action property is set to SftpBatchTransferAction.ThrowException. 
            The <see cref="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.ProblemType" /> property contains further description.
            </summary>
      <value>Exception.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.RemotePath">
      <summary>
            Gets the path of the remote file or directory that is currently processed.
            </summary>
      <value>Remote path.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.RemoteFileLength">
      <summary>
            Gets the length of the remote file that is currently processed.
            If the problem isn't related to a file or if this information is not available, -1 is returned.
            </summary>
      <value>File length.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.RemoteFileModified">
      <summary>
            Gets the last modification time of the remote file that is currently processed.
            If the problem isn't related to a file or if this information is not available, DateTime.MinValue is returned.
            </summary>
      <value>Modification date.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.LocalPath">
      <summary>
            Gets the path of the local file or directory that is currently processed.
            </summary>
      <value>Local path.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.LocalFileLength">
      <summary>
            Gets the length of the local file that is currently processed.
            If the problem isn't related to a file or if this information is not available, -1 is returned.
            </summary>
      <value>File length.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.LocalFileModified">
      <summary>
            Gets the last modification time of the local file that is currently processed.
            If the problem isn't related to a file or if this information is not available, DateTime.MinValuue is returned.
            </summary>
      <value>Modification date.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.ProblemType">
      <summary>
            Gets the type of the error that furher describes the problem.
            </summary>
      <value>Problem type.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.PossibleActions">
      <summary>
            Gets a mask of possible actions that can be selected to be performed.
            ThrowException can always be set. Use the binary 'AND' operator to determine whether a specific action is currently
            possible or simply call the <see cref="M:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.IsActionPossible(Rebex.Net.SftpBatchTransferAction)" /> method.
            </summary>
      <value>Mask of possible actions.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.Action">
      <summary>
            Gets or sets the currently selected next action.
            Specifies the operation to perform as the step of the multi-file transfer execution.
            </summary>
      <value>Next action.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.NewName">
      <summary>
            Gets or sets the new name for the currently processed file or directory.
            If the currently selected action is set to Rename, this property has to be set; otherwise it is ignored.
            </summary>
      <value>New name.</value>
    </member>
    <member name="M:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.IsActionPossible(Rebex.Net.SftpBatchTransferAction)">
      <summary>
            Determines whether the specified action is currently possible - use this to determine whether the <see cref="P:Rebex.Net.SftpBatchTransferProblemDetectedEventArgs.Action" /> property can be set to the desired action.
            </summary>
      <param name="action">Desired action.</param>
      <returns>True if the specified action is possible; false otherwise.</returns>
    </member>
    <member name="T:Rebex.Net.SftpBatchTransferProgressEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.BatchTransferProgress">BatchTransferProgress</see> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.State">
      <summary>
            Gets the transfer state.
            </summary>
      <value>Transfer state.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.Operation">
      <summary>
            Gets the currently executed suboperation of the multi-file transfer operation.
            </summary>
      <value>Operation.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.RemotePath">
      <summary>
            Gets the path of the remote file or directory which is currently processed.
            </summary>
      <value>Remote path.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.LocalPath">
      <summary>
            Gets the path of the local file or directory which is currently processed.
            </summary>
      <value>Local path.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.CurrentFileLength">
      <summary>
            Gets the length of the currently transferred file (or -1 if not available).
            </summary>
      <value>File length.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.CurrentFileModified">
      <summary>
            Gets the last modification time of the currently transferring file (or DateTime.MinValue if not available).
            </summary>
      <value>Last modification date.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.FilesTotal">
      <summary>
            Gets the total number of files to be transferred.
            </summary>
      <value>Number of files.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.FilesProcessed">
      <summary>
            Gets the number of files that were already processed (either transferred or skipped).
            </summary>
      <value>Number of files.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.FilesTransferred">
      <summary>
            Gets the number of files that were already successfully transferred.
            </summary>
      <value>Number of files.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.BytesTotal">
      <summary>
            Gets the total number of bytes to be transferred.
            </summary>
      <value>Number of bytes.</value>
    </member>
    <member name="P:Rebex.Net.SftpBatchTransferProgressEventArgs.ProcessedPercentage">
      <summary>
            Gets the number between 0 and 100 representing the percentage of completeness of the multi-file transfer.
            </summary>
      <value>Percentage (0..100).</value>
    </member>
    <member name="T:Rebex.Net.SftpProblemDetectedEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.ProblemDetected" /> event.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpTraversingEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.Traversing" /> event.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpTransferProgressChangedEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.TransferProgressChanged" /> event.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpDeleteProgressChangedEventArgs">
      <summary>
            Provides data for the <see cref="E:Rebex.Net.Sftp.DeleteProgressChanged" /> event.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpExceptionStatus">
      <summary>
            Defines status codes for the <see cref="T:Rebex.Net.SftpException" /> class.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.ConnectFailure">
      <summary>
            The remote service point could not be contacted at the transport level.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.ConnectionClosed">
      <summary>
            The connection was prematurely closed.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.SocketError">
      <summary>
            The error at transport level occurred.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.NameResolutionFailure">
      <summary>
            The name resolver service could not resolve the host name.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.ProtocolError">
      <summary>
            The response received from the server was complete but indicated a protocol-level error. For example, an SFTP protocol error 'File not found' would use this status.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.ProxyNameResolutionFailure">
      <summary>
            The name resolver service could not resolve the proxy host name.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.OperationAborted">
      <summary>
            The operation was aborted by a call to the <see cref="M:Rebex.Net.Sftp.AbortTransfer" /> method.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.UnclassifiableError">
      <summary>
            An unclassifiable error occurred. This is the default value for <see cref="P:Rebex.Net.SftpException.Status" />.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.ServerProtocolViolation">
      <summary>
            The server response was not a valid SFTP response.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.Timeout">
      <summary>
            No response was received during the time-out period for a request.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.AsyncError">
      <summary>
            General exception in asynchronous call.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpExceptionStatus.OperationFailure">
      <summary> 
            The requested operation could not be completed. 
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpException">
      <summary>
            The exception that is thrown when an error occurs while using Sftp component.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpException.Status">
      <summary>
            Gets the status of the response.
            </summary>
      <value>One of the <see cref="T:Rebex.Net.SftpExceptionStatus" /> values.</value>
    </member>
    <member name="P:Rebex.Net.SftpException.Code">
      <summary>
            Gets the <see cref="T:Rebex.Net.SftpErrorCode" /> of the exception.
            </summary>
      <value>The <see cref="P:Rebex.Net.SftpException.Code" /> is only meaningful if <see cref="P:Rebex.Net.SftpException.Status" /> is <see cref="T:Rebex.Net.SftpExceptionStatus">ProtocolError</see>.</value>
    </member>
    <member name="P:Rebex.Net.SftpException.Transferred">
      <summary>
            Gets the amount of data transferred before the exception occurred.
            </summary>
      <value>The amount of data transferred before the exception occurred.</value>
    </member>
    <member name="P:Rebex.Net.SftpException.RemotePath">
      <summary>
            Gets the path of the remote file or directory which is currently processed or null (Nothing in Visual Basic) if not available.
            </summary>
      <value>Path of the remote file or directory which is currently processed or null (Nothing in Visual Basic) if not available.</value>
    </member>
    <member name="P:Rebex.Net.SftpException.LocalPath">
      <summary>
            Gets the path of the local file or directory which is currently processed or null (Nothing in Visual Basic) if not available.
            </summary>
      <value>Path of the local file or directory which is currently processed or null (Nothing in Visual Basic) if not available.</value>
    </member>
    <member name="P:Rebex.Net.SftpException.ProblemType">
      <summary>
            Gets the type of the problem which occurred at multi-file operation.
            </summary>
      <value>Type of the problem closely describes error at suboperation.</value>
    </member>
    <member name="M:Rebex.Net.SftpException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpException" /> class with serialized data.
            </summary>
      <param name="info">The object that holds the serialized object data.</param>
      <param name="context">The contextual information about the source or destination.</param>
    </member>
    <member name="M:Rebex.Net.SftpException.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpException" /> class.
            </summary>
      <remarks>This constructor initializes the <see cref="P:System.Exception.Message">Message</see> property of the new instance to a message that describes the general error.</remarks>
    </member>
    <member name="M:Rebex.Net.SftpException.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpException" /> class with the specified error message.
            </summary>
      <param name="message">The message that describes the error.</param>
    </member>
    <member name="M:Rebex.Net.SftpException.#ctor(System.String,Rebex.Net.SftpExceptionStatus)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpException" /> class with the specified error message and status.
            </summary>
      <param name="message">The message that describes the error.</param>
      <param name="status">One of the <see cref="T:Rebex.Net.SftpExceptionStatus" /> values.</param>
    </member>
    <member name="M:Rebex.Net.SftpException.#ctor(System.String,System.Exception)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpException" /> class with the specified error message
            and a reference to the inner exception that is the cause of this exception.
            </summary>
      <param name="message">The message that describes the error.</param>
      <param name="innerException">The exception that is the cause of the current exception. If the <i>innerException</i> parameter is not a null reference, the current exception is raised in a <b>catch</b> block that handles the inner exception.</param>
    </member>
    <member name="M:Rebex.Net.SftpException.#ctor(System.String,System.Exception,Rebex.Net.SftpExceptionStatus)">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpException" /> class with the specified error message, status,
            and a reference to the inner exception that is the cause of this exception.
            </summary>
      <param name="message">The message that describes the error.</param>
      <param name="innerException">The exception that is the cause of the current exception. If the <i>innerException</i> parameter is not a null reference, the current exception is raised in a <b>catch</b> block that handles the inner exception.</param>
      <param name="status">One of the <see cref="T:Rebex.Net.SftpExceptionStatus" /> values.</param>
    </member>
    <member name="T:Rebex.Net.SftpFileSystemInfo">
      <summary>
            File system information returned by <see cref="M:Rebex.Net.Sftp.GetFileSystemInfo(System.String)" /> method.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpFileSystemInfo.TotalSpace">
      <summary>
            Total space (both empty and allocated) in the file system.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpFileSystemInfo.FreeSpace">
      <summary>
            Free space in the file system.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpFileSystemInfo.FreeSpaceForUser">
      <summary>
            Free space available for the current user.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpFileSystemInfo.BlockSize">
      <summary>
            Size of one block in the file system.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpFileSystemInfo.IsReadOnly">
      <summary>
            Indicates whether the file system is read-only.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpFileSystemInfo.FileSystemId">
      <summary>
            File system ID.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpItemType">
      <summary>
            Type of <see cref="T:Rebex.Net.SftpItem" />.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.Unknown">
      <summary>
            Unknown type.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.Fifo">
      <summary>Named pipe.</summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.CharacterDevice">
      <summary>Character device.</summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.Directory">
      <summary>Directory.</summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.BlockDevice">
      <summary>Block device.</summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.RegularFile">
      <summary>Regular file.</summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.Symlink">
      <summary>Symbolic link.</summary>
    </member>
    <member name="F:Rebex.Net.SftpItemType.Socket">
      <summary>Socket.</summary>
    </member>
    <member name="T:Rebex.Net.SftpPermissions">
      <summary>
            SFTP/Unix file permissions.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.OthersExecute">
      <summary>Others execute.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.OthersWrite">
      <summary>Others write.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.OthersRead">
      <summary>Others read.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.GroupExecute">
      <summary>Group execute.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.GroupWrite">
      <summary>Group write.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.GroupRead">
      <summary>Group read.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.OwnerExecute">
      <summary>Owner execute.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.OwnerWrite">
      <summary>Owner write.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.OwnerRead">
      <summary>Owner read.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.Sticky">
      <summary>Sticky.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.SetGid">
      <summary>Set GID bit.</summary>
    </member>
    <member name="F:Rebex.Net.SftpPermissions.SetUid">
      <summary>Set UID bit.</summary>
    </member>
    <member name="T:Rebex.Net.SftpAttributes">
      <summary>
            Encapsulates file or directory attributes such as user and group id, permissions and modify time.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpAttributes.UserId">
      <summary>
            Gets the user ID.
            </summary>
      <value>User ID.</value>
      <remarks>Use <see cref="M:Rebex.Net.SftpAttributes.SetUserAndGroup(System.Int32,System.Int32)" /> to set the user and group IDs.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpAttributes.GroupId">
      <summary>
            Gets the group ID.
            </summary>
      <value>Group ID.</value>
      <remarks>Use <see cref="M:Rebex.Net.SftpAttributes.SetUserAndGroup(System.Int32,System.Int32)" /> to set the user and group IDs.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpAttributes.Group">
      <summary>
            Gets the group.
            </summary>
      <value>Group.</value>
      <remarks>Use <see cref="M:Rebex.Net.SftpAttributes.SetUserAndGroup(System.Int32,System.Int32)" /> to set the user and group.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpAttributes.User">
      <summary>
            Gets the user.
            </summary>
      <value>User.</value>
      <remarks>Use <see cref="M:Rebex.Net.SftpAttributes.SetUserAndGroup(System.Int32,System.Int32)" /> to set the user and group.</remarks>
    </member>
    <member name="M:Rebex.Net.SftpAttributes.SetUserAndGroup(System.Int32,System.Int32)">
      <summary>
            Sets user and group IDs.
            </summary>
      <param name="userId">User ID.</param>
      <param name="groupId">Group ID.</param>
    </member>
    <member name="M:Rebex.Net.SftpAttributes.SetUserAndGroup(System.String,System.String)">
      <summary>
            Sets user and group (only for SFTP v4).
            </summary>
      <param name="user">User.</param>
      <param name="group">Group.</param>
    </member>
    <member name="P:Rebex.Net.SftpAttributes.Permissions">
      <summary>
            Gets or sets the Unix/SFTP permissions.
            </summary>
      <value>Permissions.</value>
    </member>
    <member name="P:Rebex.Net.SftpAttributes.Modified">
      <summary>
            Gets or sets the <see cref="T:System.DateTime" /> of last modification (along with last access datetime).
            </summary>
      <value>The <see cref="T:System.DateTime" /> of last modification.</value>
    </member>
    <member name="P:Rebex.Net.SftpAttributes.Created">
      <summary>
            Gets or sets the <see cref="T:System.DateTime" /> of the item creation. Only supported for SFTP v4 servers!
            </summary>
      <value>The <see cref="T:System.DateTime" /> of item creation.</value>
    </member>
    <member name="M:Rebex.Net.SftpAttributes.#ctor">
      <summary>
            Creates an instance of <see cref="T:Rebex.Net.SftpAttributes" /> class.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpItem">
      <summary>
            Contains information about a single file or directory on the SFTP server.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpItem.Name">
      <summary>
            Gets the name of the file or directory.
            </summary>
      <value>The name of the file or directory.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.Path">
      <summary>
            Gets the path of the file or directory.
            </summary>
      <value>The path of the file or directory.</value>
      <remarks>It contains a full path if returned by the <see cref="M:Rebex.Net.Sftp.GetItems(System.String)" /> method or a file/directory name only if returned by the <see cref="M:Rebex.Net.Sftp.GetList" /> method.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpItem.Length">
      <summary>
            Gets the file length.
            </summary>
      <value>File length.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.OwnerId">
      <summary>
            Gets the owner ID of the file. Only available on SFTP v3 servers.
            </summary>
      <value>Owner ID.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.GroupId">
      <summary>
            Gets the group ID of the file. Only available on SFTP v3 servers.
            </summary>
      <value>Group ID.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.Owner">
      <summary>
            Gets the owner of the file. Contains the owner name on SFTP v4 servers and owner ID on SFTP v3 servers.
            </summary>
      <value>Owner.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.Group">
      <summary>
            Gets the group of the file. Contains the group name on SFTP v4 servers and group ID on SFTP v3 servers.
            </summary>
      <value>Group.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.Permissions">
      <summary>
            Gets the Unix/SFTP permissions.
            </summary>
      <value>Permissions.</value>
    </member>
    <member name="M:Rebex.Net.SftpItem.GetLastWriteTime">
      <summary>
            Gets the last modification time of the item.
            </summary>
    </member>
    <member name="M:Rebex.Net.SftpItem.GetLastAccessTime">
      <summary>
            Gets the last access time of the item.
            </summary>
    </member>
    <member name="M:Rebex.Net.SftpItem.GetCreationTime">
      <summary>
            Gets the creation time of the item.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpItem.Type">
      <summary>
            Gets the type of the item.
            </summary>
      <value>The type of the item.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.IsDirectory">
      <summary>
            Gets the flag indicating whether the item might be a directory.
            </summary>
      <value>True if the item might be a directory.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.IsFile">
      <summary>
            Gets the flag indicating whether the item might be a file.
            </summary>
      <value>True if the item might be a file.</value>
    </member>
    <member name="P:Rebex.Net.SftpItem.IsLink">
      <summary>
            Gets a value indicating whether the item is a link.
            </summary>
      <returns>True if the archive item is a link; false otherwise.</returns>
    </member>
    <member name="M:Rebex.Net.SftpItem.#ctor(System.String,System.Int64,Rebex.Net.SftpItemType,System.Nullable{System.DateTime},System.Nullable{System.DateTime})">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpItem" /> class.
            </summary>
      <param name="filename">The name of the file or directory.</param>
      <param name="size">The size of the file.</param>
      <param name="type">The type of item.</param>
      <param name="accessed">The <see cref="T:System.Nullable`1" /> of last access.</param>
      <param name="modified">The <see cref="T:System.Nullable`1" /> of last modification.</param>
    </member>
    <member name="M:Rebex.Net.SftpItem.#ctor(System.String,System.Int64,Rebex.Net.SftpItemType,System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime})">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpItem" /> class.
            </summary>
      <param name="filename">The name of the file or directory.</param>
      <param name="size">The size of the file.</param>
      <param name="type">The type of item.</param>
      <param name="accessed">The <see cref="T:System.Nullable`1" /> of last access.</param>
      <param name="modified">The <see cref="T:System.Nullable`1" /> of last modification.</param>
      <param name="created">The <see cref="T:System.Nullable`1" /> of item creation. Only supported for SFTP v4 servers!</param>
    </member>
    <member name="M:Rebex.Net.SftpItem.#ctor(System.String,System.String,System.Int64,Rebex.Net.SftpItemType,System.Nullable{System.DateTime},System.Nullable{System.DateTime},System.Nullable{System.DateTime})">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpItem" /> class.
            </summary>
      <param name="path">The path of the file or directory.</param>
      <param name="filename">The name of the file or directory.</param>
      <param name="size">The size of the file.</param>
      <param name="type">The type of item.</param>
      <param name="accessed">The <see cref="T:System.Nullable`1" /> of last access.</param>
      <param name="modified">The <see cref="T:System.Nullable`1" /> of last modification.</param>
      <param name="created">The <see cref="T:System.Nullable`1" /> of item creation. Only supported for SFTP v4 servers!</param>
    </member>
    <member name="M:Rebex.Net.SftpItem.ToString">
      <summary>
            Returns the name of the item.
            </summary>
      <returns>The name of the item.</returns>
    </member>
    <member name="T:Rebex.Net.SftpItemCollection">
      <summary>
            Provides a container for a collection of <see cref="T:Rebex.Net.SftpItem" /> objects.
            </summary>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:Rebex.Net.SftpItemCollection" /> class.
            </summary>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.CheckItem(Rebex.IO.FileSystemItem)">
      <summary>
            Validates whether the item is correct and can be added.
            </summary>
      <param name="item">Item to add.</param>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.Clone">
      <summary>
            Creates a shallow copy of the collection.
            </summary>
      <returns>A shallow copy of the collection.</returns>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.GetEnumerator">
      <summary>
            Gets an <see cref="T:System.Collections.Generic.IEnumerator`1" /> for the collection.
            </summary>
      <returns>An <see cref="T:System.Collections.Generic.IEnumerator`1" /> for the collection.</returns>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.Add(Rebex.Net.SftpItem)">
      <summary>
            Adds the item to the collection.
            </summary>
      <param name="item">The item to be added to the collection.</param>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.AddRange(System.Collections.Generic.IEnumerable{Rebex.Net.SftpItem})">
      <summary>
             Adds the elements of the specified collection to the end of the SftpItemCollection.
            </summary>
      <param name="collection">The collection whose elements should be added to the end of the SftpItemCollection.</param>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.Remove(Rebex.Net.SftpItem)">
      <summary>
            Removes the specified item from the collection. Fails if not found.
            </summary>
      <param name="item">The item to remove from the collection.</param>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.Remove(System.String)">
      <summary>
            Removes the item with the specified path from the collection.
            </summary>
      <param path="path">The path of an item to remove from the collection.</param>
    </member>
    <member name="P:Rebex.Net.SftpItemCollection.Item(System.Int32)">
      <summary>
            Gets the item at the specified index.
            </summary>
      <param name="index">A zero-based index of the item to get.</param>
      <value>Item at the specified index.</value>
    </member>
    <member name="P:Rebex.Net.SftpItemCollection.Item(System.String)">
      <summary>
            Gets the item of the specified path.
            </summary>
      <param name="path">The path of the item to get.</param>
      <value>Item with the specified path, or null if not found.</value>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.CopyTo(System.Array,System.Int32)">
      <summary>
            Copies the range of elements from the collection to a compatible one-dimensional
            <see cref="T:System.Array" />, starting at the specified index of the target array.
            </summary>
      <param name="array">One-dimensional zero-based array that is the destination of the elements copied from the collection.</param>
      <param name="index">A zero-based index in the destination array at which copying begins.</param>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.CopyTo(Rebex.Net.SftpItem[],System.Int32)">
      <summary>
            Copies the range of elements from the collection to a one-dimensional
            <see cref="T:Rebex.Net.SftpItem" /> array, starting at the specified index of the target array.
            </summary>
      <param name="array">One-dimensional zero-based <see cref="T:Rebex.Net.SftpItem" /> array that is the destination of the elements copied from the collection.</param>
      <param name="index">A zero-based index in the destination array at which copying begins.</param>
    </member>
    <member name="M:Rebex.Net.SftpItemCollection.Contains(Rebex.Net.SftpItem)">
      <summary>
            Determines whether the item is in the collection.
            </summary>
      <param name="item">The item to locate in the collection.</param>
      <returns>True if the item is located in the collection; false otherwise.</returns>
    </member>
    <member name="P:Rebex.Net.SftpItemCollection.IsSynchronized">
      <summary>
            Gets a value indicating whether access to the collection is synchronized (thread-safe).
            </summary>
      <value>A value indicating whether access to the collection is synchronized.</value>
    </member>
    <member name="T:Rebex.Net.SftpTransferType">
      <summary>
            Transfer type.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpTransferType.Binary">
      <summary>Binary</summary>
    </member>
    <member name="F:Rebex.Net.SftpTransferType.Ascii">
      <summary>Ascii</summary>
    </member>
    <member name="T:Rebex.Net.SftpServerType">
      <summary>
            Server OS type.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpServerType.Unknown">
      <summary>Unknown server type.</summary>
    </member>
    <member name="F:Rebex.Net.SftpServerType.Windows">
      <summary>Windows-based server.</summary>
    </member>
    <member name="F:Rebex.Net.SftpServerType.Unix">
      <summary>Unix-based server.</summary>
    </member>
    <member name="T:Rebex.Net.SftpErrorCode">
      <summary>
            SFTP internal error code.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.UnknownError">
      <summary>Unknown error.</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.EndOfFile">
      <summary>End of file.</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.NoSuchFile">
      <summary>No such file</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.PermissionDenied">
      <summary>Permission denied.</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.Failure">
      <summary>Failure.</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.BadMessage">
      <summary>Bad message.</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.NoConnection">
      <summary>No connection.</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.ConnectionLost">
      <summary>Connection lost.</summary>
    </member>
    <member name="F:Rebex.Net.SftpErrorCode.UnsupportedOperation">
      <summary>Unsupported operation.</summary>
    </member>
    <member name="T:Rebex.Net.SftpActionOnExistingFiles">
      <summary>
            Specifies the default action to perform when a target file already exists.
            However, the default action can still be changed using the Sftp.BatchTransferProblemDetected event.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpActionOnExistingFiles.ThrowException">
      <summary>
            Existing files are to cause the whole multi-file transfer to be canceled and an exception to be raised.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpActionOnExistingFiles.SkipAll">
      <summary>
            Existing files are to be always skipped.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpActionOnExistingFiles.OverwriteAll">
      <summary>
            Existing files are to be always overwritten.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpActionOnExistingFiles.OverwriteOlder">
      <summary>
            Existing files are to be overwritten if they are older than source files.
            This is strongly discouraged because modification dates are often misreported by SFTP servers, making this mode highly unreliable.
            We strongly recommend to use a different mode or develop a custom solution using the Sftp.BatchTransferProblemDetected event.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpActionOnExistingFiles.OverwriteDifferentSize">
      <summary>
            Existing files with different sizes are to be overwritten. 
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpActionOnExistingFiles.ResumeIfPossible">
      <summary>
            Existing files are to be resumed if they are smaller than source files.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpBatchTransferOperation">
      <summary>
            Currently executed operation of the multi-file transfer.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.HierarchyRetrievalStarted">
      <summary>
            Retrieving of the file system hierarchy was started.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.HierarchyRetrieved">
      <summary>
            Retrieving of the file system hierarchy was successfully completed.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.HierarchyRetrievalFailed">
      <summary>
            Retrieving of the file system hierarchy failed or operation was canceled by user.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.FileProcessingStarted">
      <summary>
            Processing of a file was started.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.FileTransferStarting">
      <summary>
            File transfer is starting.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.FileTransferred">
      <summary>
            File was successfully transferred.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.FileSkipped">
      <summary>
            File was skipped.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.FileProcessingFailed">
      <summary>
            File transfer failed or the operation was canceled by user.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryProcessingStarted">
      <summary>
            Directory processing was started.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryCreated">
      <summary>
            Directory was successfully created. If directory already exists, this event is not raised.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectorySkipped">
      <summary>
            Directory was skipped.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryProcessingFailed">
      <summary>
            Creation of directory failed or the operation was canceled by user.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.FileDeleted">
      <summary>
            File was successfully deleted.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryDeleted">
      <summary>
            Directory was successfully deleted.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryRetrievalStarted">
      <summary>
            Retrieval of the particular directory hierarchy was started.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryRetrieved">
      <summary>
            Retrieval of the particular directory hierarchy was successfully completed.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryRetrievalSkipped">
      <summary>
            Retrieval of the particular directory hierarchy was skipped (no files or subdirectories of the directory are to be processed).
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferOperation.DirectoryRetrievalFailed">
      <summary>
            Retrieval of the particular directory hierarchy failed or operation was canceled.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpBatchTransferProblemType">
      <summary>
            Detailed specification of a problem that occurred during the multi-file transfer.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.FileExists">
      <summary>
            A target file with the same name already exists.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.LinkDetected">
      <summary>
            A symbolic link was detected.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.InfiniteLoopDetected">
      <summary>
            Symbolic link is probably a part of an infinite loop in the file system hierarchy.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotCreateDirectory">
      <summary>
            Cannot create target directory.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotTransferFile">
      <summary>
            Cannot transfer file.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotReadFromDirectory">
      <summary>
            Cannot read from a directory.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotFindFile">
      <summary>
            Cannot find the file which was found while retrieving file system hierarchy earlier.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.FileNameIsInvalidOnTargetFileSystem">
      <summary>
            Name of the file is invalid on the target file system.
            For example, backslash is a valid filename character on Unix SFTP servers, but invalid in local Windows file system.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.DirectoryNameIsInvalidOnTargetFileSystem">
      <summary>
            Name of the directory is invalid on the target file system. 
            For example, backslash is a valid directory name character on Unix SFTP servers, but invalid in local Windows file system.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotFindDirectory">
      <summary>
            Cannot find the directory which was found while retrieving file system hierarchy earlier.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotFindLink">
      <summary>
            Cannot find the link which was found while retrieving file system hierarchy earlier.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotResolveLink">
      <summary>
            Link is corrupted or its target cannot be found.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.NotFileOrDirectory">
      <summary>
            Currently processed item is neither a file nor a directory.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.OperationCanceled">
      <summary>
            Operation was canceled.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotDeleteFile">
      <summary>
            Cannot delete the file.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferProblemType.CannotDeleteDirectory">
      <summary>
            Cannot delete the directory.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpBatchTransferAction">
      <summary>
            Specifies the action to resolve the current problem detected using the <see cref="E:Rebex.Net.Sftp.BatchTransferProblemDetected" /> event.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.Skip">
      <summary>
            Skip the current problematic item.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.Overwrite">
      <summary>
            Overwrite target file with the same name.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.OverwriteIfOlder">
      <summary>
            Overwrite target file with the same name if it is older than the source file.
            This is strongly discouraged because modification dates are often misreported by SFTP servers, making this mode highly unreliable.
            We strongly recommend to select a different action or to develop a custom solution and choose either Overwrite or Skip action instead.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.OverwriteIfDifferentSize">
      <summary>
            Overwrite target file with the same name if it has a different size.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.Rename">
      <summary>
            Upload the source file to a different name. NewName of the event argument must be set to the desired name.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.Retry">
      <summary>
            Retry the current operation again.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.FollowLink">
      <summary>
            Resolve the symbolic link.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.Resume">
      <summary>
            Resume target file.
            </summary>
    </member>
    <member name="F:Rebex.Net.SftpBatchTransferAction.ThrowException">
      <summary>
            Cancel the whole multi-file transfer. Do no transfer any other files.
            </summary>
    </member>
    <member name="T:Rebex.Net.SftpConnectionState">
      <summary>
            Represents the <see cref="T:Rebex.Net.Sftp">Sftp</see> object connection state.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpConnectionState.Connected">
      <summary>
            Returns a value indicating whether the object is connected.
            </summary>
      <value>True if connected; otherwise false.</value>
    </member>
    <member name="P:Rebex.Net.SftpConnectionState.NativeErrorCode">
      <summary>
            Gets the Win32 socket error code.
            </summary>
      <value>Win32 error code.</value>
      <remarks>Returns 0 if no socket error code is available.</remarks>
    </member>
    <member name="T:Rebex.Net.SftpSettings">
      <summary>
            Specifies various SFTP settings.
            </summary>
    </member>
    <member name="M:Rebex.Net.SftpSettings.#ctor">
      <summary>
            Creates a new instance of <see cref="T:Rebex.Net.SftpSettings" />.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.SshParameters">
      <summary>
            Gets or sets SSH session parameters.
            </summary>
    </member>
    <member name="M:Rebex.Net.SftpSettings.Clone">
      <summary>
            Creates a new object that is a shallow copy of the current instance.
            </summary>
      <returns>A new object that is a shallow copy of the current instance.</returns>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DisableSftp4">
      <summary>
            Disable SFTP v4 and only use v3.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DisableTransferQueue">
      <summary>
            Disable queuing of read and write requests.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.UseLargeBuffers">
      <summary>
            Use larger receive buffer for incoming and outgoing data.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.UseReadWriteModeForDownloads">
      <summary>
            Opens file for downloading (in <see cref="M:Rebex.Net.Sftp.GetFile(System.String,System.String)" />/<see cref="M:Rebex.Net.Sftp.Download(System.String,System.String,Rebex.IO.TraversalMode)" /> methods) in read-write mode
            instead of read-only mode.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DisableProgressPercentage">
      <summary>
            Disables progress percentage reporting through <see cref="E:Rebex.Net.Sftp.TransferProgressChanged" /> event.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.UseSmallPackets">
      <summary>
            Use small data packets (4KB each) during upload and never split them.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.UploadBufferSize">
      <summary>
            Sets the size of data packets used during upload. Supported sizes are 4 KB to 48 KB.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.UploadQueueLength">
      <summary>
            Sets the length of packed queue for uploads.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DownloadBufferSize">
      <summary>
            Sets the size of data packets used during download. Supported sizes are 4 KB to 48 KB.
            </summary>
      <remarks>
            Please note that some buggy servers are unable to properly handle read requests for more than 32 KB.
            </remarks>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DownloadQueueLength">
      <summary>
            Sets the length of packed queue for downloads.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.WaitForServerWelcomeMessage">
      <summary>
            Wait for server SSH protocol welcome message before sending the client one.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.PostponeChannelClose">
      <summary>
            Postpone channel close requests (workaround for older versions of ssh.com and Cisco SSH servers).
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.EnableSignaturePadding">
      <summary>
            Enable padding of RSA private key signatures (workaround for SSH servers that got the padding wrong).
            </summary>
      <value>True to enable signature padding; false to disable it.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.TryPasswordFirst">
      <summary>
            When authenticating using both password and private key, try authenticating using a password first (default is to try the private key first).
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.PreferInteractiveAuthentication">
      <summary>
            When authenticating, prefer 'keyboard-interactive' authentication to 'password' authentication.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.MultiFileLinkMode">
      <summary>
            Gets or sets the default processing mode of detected links in multi-file operations.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.MultiFileMoveMode">
      <summary>
            Gets or sets the default move behavior in multi-file transfers.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.RestoreDateTime">
      <summary>
            Gets or sets a value that indicates which date/time is restored after successful transfer if possible.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.TimeComparisonGranularity">
      <summary>
            Gets or sets a value which specifies granularity for time comparisons.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.PreferredChecksumAlgorithm">
      <summary>
            Gets or sets a checksum algorithms to be preferred in multi-file transfers.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.RecheckItemExistence">
      <summary>
            In multi-file operations it forces checking, whether currently processing item still exists. 
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.UsePosixRename">
      <summary>
            Gets or sets a value that indicates whether to use POSIX rename instead of standard SFTP rename.
            Only works when 'posix-rename@openssh.com' extension is available.
            </summary>
    </member>
    <member name="P:Rebex.Net.SftpSettings.RaiseEventsFromCurrentThread">
      <summary>
            Specifies whether to raise asynchronous events from the current working thread or 
            whether to raise them using a <see cref="T:System.Threading.SynchronizationContext" /> available when an asynchronous operation was started.
            </summary>
      <value>False (default) to raise events using <see cref="T:System.Threading.SynchronizationContext" />; true to raise them directly form the current working thread.</value>
      <remarks>Events of synchronous methods are always raised from the current working thread.</remarks>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DisablePutFileZeroOffsetTruncate">
      <summary>
            Gets or sets a value that specifies whether Sftp.PutFile method truncates files when a zero remote offset is specified.
            </summary>
      <value>False (default) to truncate files when zero remote offset is specified; true to keep the files.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DisableFxpStatWorkaround">
      <summary>
            Gets or sets a value that disables workaround for a SSH_FXP_STAT command, which is known not to work correctly on some servers.
            </summary>
      <value>False (default) to keep the workaround working; true to disable the workaround.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DisablePathNormalization">
      <summary>
            Gets or sets a value that disables normalization of paths passed to all commands (paths are used unchanged).
            </summary>
      <value>False (default) to normalize paths; true to keep paths in original form.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.TreatUnknownItemsAsFiles">
      <summary>
            Gets or sets a value specifying that filesystem items with unknown type (not file nor directory nor symlink) will be processed as files. 
            </summary>
      <value>False (default) to throw an exception when an unknown directory item is processed; true to process such item as file.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.DisableRealPathWorkaround">
      <summary>
            Gets or sets a value that disables WS FTP server workaround when opening remote directory.
            </summary>
      <value>False (default) to use the workaround; true to disable the workaround.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.EnableBrokenRealPathWorkaround">
      <summary>
            Gets or sets a value that enables workaround for broken SSH_FXP_REALPATH command used to determine a canonical path when changing or creating a directory.
            </summary>
      <value>True to enable the workaround; false to keep default behavior.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.EnableBrokenDirectoryStatWorkaround">
      <summary>
            Gets or sets a value that enables workaround for broken SSH_FXP_STAT request (fails on directories on 'DataPowerSSH' servers).
            </summary>
      <value>True to enable the workaround; false to disable it; null to auto-detect.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.LogChecksums">
      <summary>
            Gets or sets a value that makes the client calculate checksums of files being uploaded and logs them into the log.
            </summary>
      <value>True to enable checksum logging; false to disable it.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.RevertSymlinkArguments">
      <summary>
            Gets or sets a value that indicates whether to force the reversal of SSH_FXP_SYMLINK arguments.
            </summary>
      <value>True to force the reversal; false to autodetect.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.EnsureKeyAcceptable">
      <summary>
            Announce public key to the server before performing key authentication.
            </summary>
      <value>True to announce public key first; false to perform key authentication immediately.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.SkipDuplicateItems">
      <summary>
            Gets or sets a value that indicates whether to skip duplicate items in directory listings or whether to fail.
            </summary>
      <value>True to skip duplicate items; false to throw an exception.</value>
    </member>
    <member name="P:Rebex.Net.SftpSettings.CustomCommand">
      <summary>
            Gets or sets a custom command to start SFTP subsystem.
            </summary>
      <remarks>
            By default, SFTP subsystem is started using SSH channels subsystem feature. This parameter makes it possible to use a custom remote execute command instead.
            </remarks>
    </member>
    <member name="P:Rebex.Net.SftpSettings.EnableFileSync">
      <summary>
            Gets or sets a value indicating whether to synchronize file changes after by calling 'fsync' when a file has been uploaded, ensuring
            that all file data has been transferred to the storage device. Only supported when 'fsync@openssh.com' extension is available.
            </summary>
    </member>
  </members>
</doc>