xenadmin/XenCenterLib/Archive
Danilo Del Busso 86fa2f6abf
CA-375900: Prepend \\?\ to file paths when creating streams for archive generation (#3184)
* CA-375900: Prepend `//?/` to file paths when creating streams for archive generation
The string works to enable creation of files with paths larger than 260 characters.
* CA-375900: Add directory support and rename utility method
* Fix whitespace in `ArchiveWriterTest`
* CA-375900: Explicitly enumerate files and directories in `ArchiveWriter`
`Directory.GetFiles` and `Directory.GetDirectories` do not enumerate if paths are longer than 260, even when prepended with `//?/`.
* CA-375900: Add long path tests to `ArchiveWriter`
* CA-375900: Add long path tests to `ArchiveIterator`
* CA-375900: Ensure files are added to folders in archive
* Use a recursive method to add directories and files to archive in `ArchiveIterator`
Also improves progress reporting by basing it on directory count
* Fix typos
* Expand `ArchiveWriterTests` to cover all combinations of directory and path lengths
* Ensure that directories used in recursive `Directory.Delete` calls are using long path format
If files in the directory exceed the 260 character limit, the calls will fail
* Expand `ArchiveIteratorTests` to cover all combinations of directory and path lengths
* Ensure relative path name removes `rootPath`
* Fix typo
* Do not use long paths when importing OVFs
The import uses `DiscUtils` which cannot handle paths prepended with `//?/`
* Remove use of `ToLongWindowsPath` within appliance export
This partially reverts commit 819425855c56c14b937849714b359003465bd2f4.
* Refactoring and some corrections.

Signed-off-by: Danilo Del Busso <danilo.delbusso@cloud.com>
Signed-off-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
Co-authored-by: Konstantina Chremmou <Konstantina.Chremmou@cloud.com>
2023-09-22 15:41:54 +01:00
..
ArchiveFactory.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ArchiveIterator.cs CA-375900: Prepend \\?\ to file paths when creating streams for archive generation (#3184) 2023-09-22 15:41:54 +01:00
ArchiveWriter.cs CA-375900: Prepend \\?\ to file paths when creating streams for archive generation (#3184) 2023-09-22 15:41:54 +01:00
TarArchiveIterator.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
TarArchiveWriter.cs CA-375900: Prepend \\?\ to file paths when creating streams for archive generation (#3184) 2023-09-22 15:41:54 +01:00
TarSanitization.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ZipArchiveIterator.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00
ZipArchiveWriter.cs Updated copyright notice on files. 2023-01-30 16:24:16 +00:00