/// <summary>
 /// Upload with timeout and default permissions
 /// </summary>
 /// <param name="shell"></param>
 /// <param name="data"></param>
 /// <param name="fileName"></param>
 /// <param name="toPath"></param>
 /// <param name="isUserHomeBased"></param>
 /// <param name="timeout"></param>
 /// <returns></returns>
 public static Task UploadAsync(this ISecureShell shell, byte[] data,
                                string fileName, string toPath, bool isUserHomeBased,
                                TimeSpan timeout)
 {
     using (var cts = new CancellationTokenSource(timeout)) {
         return(shell.UploadAsync(data, fileName, toPath, isUserHomeBased, null,
                                  cts.Token));
     }
 }
Beispiel #2
0
        /// <summary>
        /// Upload file
        /// </summary>
        /// <param name="shell"></param>
        /// <param name="options"></param>
        /// <param name="to"></param>
        /// <param name="from"></param>
        /// <param name="file"></param>
        /// <returns></returns>
        private static async Task UploadFileAsync(ISecureShell shell,
                                                  CliOptions options, string to, string from, string file)
        {
            var buffer = await File.ReadAllBytesAsync(Path.Combine(from, file));

            await shell.UploadAsync(buffer, file, to,
                                    options.GetValueOrDefault("-h", "--home", true),
                                    options.GetValueOrDefault <string>("-m", "--mode", null));
        }
 /// <summary>
 /// Upload file with default permissions
 /// </summary>
 /// <param name="shell"></param>
 /// <param name="data"></param>
 /// <param name="fileName"></param>
 /// <param name="toPath"></param>
 /// <param name="isUserHomeBased"></param>
 /// <param name="ct"></param>
 /// <returns></returns>
 public static Task UploadAsync(this ISecureShell shell, byte[] data,
                                string fileName, string toPath, bool isUserHomeBased,
                                CancellationToken ct)
 {
     return(shell.UploadAsync(data, fileName, toPath, isUserHomeBased, null, ct));
 }
 /// <summary>
 /// Upload with default timeout of 1 minute and default permissions
 /// </summary>
 /// <param name="shell"></param>
 /// <param name="data"></param>
 /// <param name="fileName"></param>
 /// <param name="toPath"></param>
 /// <param name="isUserHomeBased"></param>
 /// <returns></returns>
 public static Task UploadAsync(this ISecureShell shell, byte[] data,
                                string fileName, string toPath, bool isUserHomeBased)
 {
     return(shell.UploadAsync(data, fileName, toPath, isUserHomeBased,
                              TimeSpan.FromMinutes(1)));
 }
Beispiel #5
0
 /// <summary>
 /// Upload with timeout and default permissions
 /// </summary>
 /// <param name="shell"></param>
 /// <param name="data"></param>
 /// <param name="fileName"></param>
 /// <param name="toPath"></param>
 /// <param name="isUserHomeBased"></param>
 /// <param name="timeout"></param>
 /// <returns></returns>
 public static Task UploadAsync(this ISecureShell shell, byte[] data,
                                string fileName, string toPath, bool isUserHomeBased,
                                TimeSpan timeout) =>
 shell.UploadAsync(data, fileName, toPath, isUserHomeBased, null,
                   new CancellationTokenSource(timeout).Token);