diff --git a/Frends.SFTP.DownloadFiles/CHANGELOG.md b/Frends.SFTP.DownloadFiles/CHANGELOG.md index 7b915a9..5bf10d1 100644 --- a/Frends.SFTP.DownloadFiles/CHANGELOG.md +++ b/Frends.SFTP.DownloadFiles/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [2.13.0] - 2024-09-05 +### Fixed +- Fixed issue with certain SFTP servers which did not use IsRegularFile property on files by modifying the logic to check that the file is not anything else than a regular file. + ## [2.12.0] - 2024-08-16 ### Updated - Updated Renci.SshNet library to version 2024.1.0. diff --git a/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Definitions/FileTransporter.cs b/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Definitions/FileTransporter.cs index 2d6a15d..6c0e664 100644 --- a/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Definitions/FileTransporter.cs +++ b/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Definitions/FileTransporter.cs @@ -599,15 +599,15 @@ private List ListFiles(SftpClient sftp, Source source, string director if (file.Name.Equals(".") || file.Name.Equals("..")) continue; - if (file.IsRegularFile && (file.Name.Equals(source.FileName) || Util.FileMatchesMask(Path.GetFileName(file.FullName), source.FileName))) + if (file.IsDirectory && source.IncludeSubdirectories) + fileItems.AddRange(ListFiles(sftp, source, file.FullName, cancellationToken)); + + if (!file.IsDirectory && !file.IsSocket && !file.IsSymbolicLink && !file.IsBlockDevice && !file.IsCharacterDevice && !file.IsNamedPipe && (file.Name.Equals(source.FileName) || Util.FileMatchesMask(Path.GetFileName(file.FullName), source.FileName))) { var item = new FileItem(file); _logger.NotifyInformation(_batchContext, $"FILE LIST {item.FullPath}"); fileItems.Add(item); } - - if (file.IsDirectory && source.IncludeSubdirectories) - fileItems.AddRange(ListFiles(sftp, source, file.FullName, cancellationToken)); } return fileItems; diff --git a/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles.csproj b/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles.csproj index 5949627..eca2fe0 100644 --- a/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles.csproj +++ b/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles/Frends.SFTP.DownloadFiles.csproj @@ -8,7 +8,7 @@ Frends.SFTP.DownloadFiles Frends.SFTP.DownloadFiles - 2.12.0 + 2.13.0 Frends Frends Frends