diff --git a/src/System.Formats.Tar.TestData/GenerateTarFiles.sh b/src/System.Formats.Tar.TestData/GenerateTarFiles.sh new file mode 100755 index 0000000000..2870cab019 --- /dev/null +++ b/src/System.Formats.Tar.TestData/GenerateTarFiles.sh @@ -0,0 +1,472 @@ +#/bin/bash + +# Script that generates tar files for the contents of all the folders located inside the folder +# runtime-assets/src/System.Formats.Tar.TestData/TarTestData/unarchived/ +# and saves them in additional new folders under 'TarTestData', one folder for each compression method. +# The user executing this script must be part of the sudo group. + +# The tests should verify these preselected permission and ownership values +TarUser="dotnet" +TarGroup="devdiv" +TarUserId=7913 +TarGroupId=3579 + +# These DevMajor and DevMinor numbers have no meaning, but those are the +# numbers that the tests should look for when reading device files. +CharDevMajor=49 +CharDevMinor=86 +BlockDevMajor=71 +BlockDevMinor=53 +# The Mode for all filesystem entries is set to 744 (rwx,r,r) inside the method ChangeUnarchivedMode + +# pax_gea is a special case for the pax format that includes global extended attributes +FormatsArray=( "v7" "ustar" "pax" "pax_gea" "oldgnu" "gnu" ) + + +GEAKey="globexthdr.MyGlobalExtendedAttribute" +GEAValue="hello" +GEAPAXOptions="--pax-option=$GEAKey=$GEAValue" + +### FUNCTIONS ### + +function Echo() +{ + Color=$1 + Message=$2 + OriginalColor="\e[0m" + + echo -e "$Color$Message$OriginalColor" +} + +function EchoError() +{ + red="\e[31m" + Echo $red "$1" +} + +function EchoWarning() +{ + yellow="\e[33m" + Echo $yellow "$1" +} + +function EchoSuccess() +{ + green="\e[32m" + Echo $green "$1" +} + +function EchoInfo() +{ + cyan="\e[36m" + Echo $cyan "$1" +} + +function CheckLastErrorOrExit() +{ + message=$1 + + if [ $? -ne 0 ]; then + EchoError "Failure: $message" + EchoError "Script failed to finish." + exit 1 + else + EchoSuccess "Success: $message" + fi +} + +function ConfirmDirExists() +{ + Dir=$1 + + if [ ! -d $Dir ]; then + EchoError "Directory did not exist: $Dir" + exit 1 + fi +} + +function DeleteAndRecreateDir() +{ + Dir=$1 + + if [ -d $Dir ]; then + EchoWarning "Deleting folder: $Dir" + sudo rm -r $Dir + fi + + EchoWarning "Creating folder: $Dir" + mkdir $Dir + + ConfirmDirExists $Dir +} + +function ExecuteTar() +{ + FullPathFolderToArchive=$1 + Arguments=$2 + FileName=$3 + Format=$4 + WithGEA=$5 + + EchoSuccess "----------------------------------------------" + + GEAArgument="" + FormatArgument="$Format" + if [ $Format = "pax_gea" ] && [ $WithGEA = 1 ]; then + EchoWarning "Creating extra pax file with global a extended attributes entry" + FormatArgument="pax" + GEAArgument="$GEAPAXOptions" + fi + + # IMPORTANT: This will ensure we archive entries that have relative paths to this folder + EchoInfo "cd $FullPathFolderToArchive" + cd $FullPathFolderToArchive + + TarCommand="tar $Arguments $FileName * --format=$FormatArgument $GEAArgument" + EchoInfo "$TarCommand" + + # Execute the command as the user that owns the files + # to archive, otherwise tar fails to pack them + sudo $TarCommand + + if [ $? -ne 0 ]; then + EchoError "Tar command failed!" + if [ -f $FileName ]; then + EchoError "Deleting malformed file: $FileName" + sudo rm $FileName + fi + else + EchoSuccess "Tar archive created successfully: $FileName" + fi + + EchoSuccess "----------------------------------------------" +} + +function GenerateArchive() +{ + DirsRoot=$1 + TargetDir=$2 + Arguments=$3 + Extension=$4 + + UnarchivedDir="$DirsRoot/unarchived" + FoldersToArchiveArray=($(ls $UnarchivedDir)) + + for Format in "${FormatsArray[@]}"; do + + OutputDir="$TargetDir/$Format" + DeleteAndRecreateDir $OutputDir + + for FolderToArchive in "${FoldersToArchiveArray[@]}"; do + + FullPathFolderToArchive="$UnarchivedDir/$FolderToArchive/" + FileName="$OutputDir/$FolderToArchive$Extension" + + WithGEA=0 + if [ $Format = "pax_gea" ]; then + WithGEA=1 + fi + + ExecuteTar "$FullPathFolderToArchive" "$Arguments" "$FileName" "$Format" $WithGEA + + done + done + + # Tar was executed elevated, need to ensure the + # generated archives are readable by current user + ResetOwnership $TargetDir +} + +function GenerateTarArchives() +{ + DirsRoot=$1 + TargetDir=$2 + CompressionMethod=$3 + + if [ $CompressionMethod = "tar" ]; then + GenerateArchive $DirsRoot $TargetDir "cvf" ".tar" + + elif [ $CompressionMethod = "targz" ]; then + GenerateArchive $DirsRoot $TargetDir "cvzf" ".tar.gz" + + else + EchoError "Unsupported compression method: $CompressionMethod" + exit 1 + fi +} + +function GenerateCompressionMethodDir() +{ + DirsRoot=$1 + CompressionMethod=$2 + + TargetDir="$DirsRoot/$CompressionMethod" + DeleteAndRecreateDir $TargetDir + + GenerateTarArchives "$DirsRoot" "$TargetDir" "$CompressionMethod" +} + +function Generate() +{ + DirsRoot=$1 + + CompressionMethodsArray=( "tar" "targz" ) + + for CompressionMethod in "${CompressionMethodsArray[@]}"; do + GenerateCompressionMethodDir "$DirsRoot" "$CompressionMethod" + done +} + +function ConfirmUserAndGroupExist() +{ + EchoWarning "Checking if user '$TarUser' and group '$TarGroup' exist..." + + if [ $(getent group $TarGroup) ]; then + EchoSuccess "Group '$TarGroup' exists. No action taken." + + else + EchoWarning "Group '$TarGroup' does not exist. Adding it." + sudo groupadd $TarGroup + EchoWarning "Changing id of '$TarGroup' to $TarGroupId" + sudo groupmod -g $TarGroupId $TarGroup + fi + + if id $TarUser &>/dev/null; then + EchoSuccess "User '$TarUser' exists. No action taken." + + else + EchoWarning "User '$TarUser' does not exist. Adding it." + sudo useradd $TarUser + EchoWarning "Changing id of '$TarUser' to $TarUserId" + sudo usermod -u $TarUserId $TarUser + EchoWarning "Adding new '$TarUser' user to new '$TarGroup' group." + sudo usermod -a -G $TarGroup $TarUser + EchoWarning "Setting password for new '$TarUser' user." + sudo passwd $TarUser + fi +} + +function ResetOwnership() +{ + Folder=$1 + + CurrentUser=$(id -u) + CurrentGroup=$(id -g) + + sudo chown -R $CurrentUser:$CurrentGroup "$Folder" + CheckLastErrorOrExit "Chown $CurrentUser:$CurrentGroup $Folder" +} + +function ChangeUnarchivedOwnership() +{ + DirsRoot=$1 + + CurrentUser=$(id -u) + CurrentGroup=$(id -g) + UnarchivedDir=$DirsRoot/unarchived + UnarchivedDirContents=$UnarchivedDir/* + UnarchivedChildrenArray=($(ls $UnarchivedDir)) + + # First, we recursively change ownership of all files and folders + EchoWarning "Changing ownership of contents of 'unarchived' folder to '$TarUser:$TarGroup'." + sudo chown -R $TarUser:$TarGroup $UnarchivedDirContents + CheckLastErrorOrExit "Chown $TarUser:$TarGroup $UnarchivedDirContents" + + # Second, we revert the ownership of the parent folders (no recursion). + # This is so we can later 'cd' into them. This is a requirement for the 'tar' command + # so that it archives entries relative to that folder. + for UnarchivedChildDir in "${UnarchivedChildrenArray[@]}"; do + EchoWarning "Preserving ownership of child folder: $UnarchivedChildDir" + sudo chown $CurrentUser:$CurrentGroup $UnarchivedDir/$UnarchivedChildDir + CheckLastErrorOrExit "Chown $CurrentUser:$CurrentGroup $UnarchivedChildDir" + done +} + +function ResetUnarchivedOwnership() +{ + DirsRoot=$1 + + ResetOwnership "$DirsRoot/unarchived" +} + +function ChangeUnarchivedMode() +{ + DirsRoot=$1 + + EchoWarning "Setting 744 (rwx,r,r) permissions to contents of 'unarchived' folder." + + UnarchivedDirContents=$DirsRoot/unarchived/* + + # 744 + sudo chmod -R a=r $UnarchivedDirContents + CheckLastErrorOrExit "Chmod a=r $UnarchivedDirContents" + + sudo chmod -R u+wx $UnarchivedDirContents + CheckLastErrorOrExit "Chmod u+wx $UnarchivedDirContents" + + sudo chmod -R g-wx $UnarchivedDirContents + CheckLastErrorOrExit "Chmod g-wx $UnarchivedDirContents" + + sudo chmod -R o-wx $UnarchivedDirContents + CheckLastErrorOrExit "Chmod o-wx $UnarchivedDirContents" +} + +# Character device, block device and fifo file (named pipe). +function CreateSpecialFiles() +{ + DirsRoot=$1 + + DevicesDir=$DirsRoot/unarchived/specialfiles + CharacterDevice=$DevicesDir/chardev + BlockDevice=$DevicesDir/blockdev + FifoFile=$DevicesDir/fifofile + + currentUser=$(id -u) + currentGroup=$(id -g) + + if [ -d $DevicesDir ]; then + EchoSuccess "Devices folder exists. No action taken." + else + # Empty directories can't get added to git + EchoWarning "Devices folder does not exist. Creating it: $DevicesDir" + mkdir $DevicesDir + fi + + if [ -c $CharacterDevice ]; then + EchoSuccess "Character device exists. No action taken." + else + EchoWarning "Character device does not exist. Creating it: $CharacterDevice" + sudo mknod $CharacterDevice c $CharDevMajor $CharDevMinor + CheckLastErrorOrExit "Creating character device $CharacterDevice" + sudo chown $currentUser:$currentGroup $CharacterDevice + CheckLastErrorOrExit "chown $currentUser:$currentGroup $CharacterDevice" + fi + + if [ -b $BlockDevice ]; then + EchoSuccess "Block device exists. No action taken." + else + EchoWarning "Block device does not exist. Creating it: $BlockDevice" + sudo mknod $BlockDevice b $BlockDevMajor $BlockDevMinor + CheckLastErrorOrExit "Creating block device $BlockDevice" + sudo chown $currentUser:$currentGroup $BlockDevice + CheckLastErrorOrExit "chown $currentUser:$currentGroup $BlockDevice" + fi + + if [ -p $FifoFile ]; then + EchoSuccess "Fifo file exists. No action taken." + else + EchoWarning "Fifo file does not exist. Creating it: $FifoFile" + sudo mknod $FifoFile p + CheckLastErrorOrExit "Creating fifo file $FifoFile" + sudo chown $currentUser:$currentGroup $FifoFile + CheckLastErrorOrExit "chown $currentUser:$currentGroup $FifoFile" + fi +} + +function CreateLongDirAndLongFile() +{ + DirsRoot=$1 + + TestName=$2 + DirName=$3 + FileName=$4 + TestDir="$DirsRoot/unarchived/$TestName" + + if [ ! -d $TestDir ]; then + EchoInfo "Restoring $TestName root directory" + sudo mkdir $TestDir + CheckLastErrorOrExit "mkdir $TestDir" + fi + + # The long directory is optional + LongDirPath="$TestDir" + if [ ! -z $DirName ]; then + LongDirPath="$TestDir/$DirName" + if [ ! -d $LongDirPath ]; then + EchoInfo "Restoring $TestName directory that VS does not support" + sudo mkdir $LongDirPath + CheckLastErrorOrExit "mkdir $LongDirPath" + fi + fi + + LongFilePath="$LongDirPath/$FileName" + + if [ ! -f $LongFilePath ]; then + EchoInfo "Restoring $TestName file that VS does not support" + sudo sh -c "echo \"Hello $TestName\" >> $LongFilePath" + CheckLastErrorOrExit "echo 'Hello $TestName' > $LongFilePath" + fi +} + +# These files cannot be packed correctly by nuget, or have too long paths that VS cannot render them and fails to load the test project. +function ResetUnsupportedFiles() +{ + DirsRoot=$1 + + # Creates a file at the test root folder with a name that is between 100 and 255 bytes + CreateLongDirAndLongFile $DirsRoot "longfilename_over100_under255" "" "000000000011111111112222222222333333333344444444445555555555666666666677777777778888888888999999999900000000001111111111222222222233333333334444444444.txt" + + # Creates a directory at the test root folder with a name that is 255 bytes in length, + # and a file inside of that folder, with a name that is 255 bytes in length + CreateLongDirAndLongFile $DirsRoot "longpath_over255" "000000000011111111112222222222333333333344444444445555555555666666666677777777778888888888999999999900000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000111111111122222222223333333333444444444455555" "00000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000111111111122222222223333333333444444444455555555556666666666777777777788888888889999999999000000000011111111112222222222333333333344444444445.txt" + + # Creates a directory at the test root folder with a name that is 98 bytes in length, + # and a file inside of that folder, with a name that is 99 bytes in length + CreateLongDirAndLongFile $DirsRoot "longpath_splitable_under255" "00000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999" "00000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999.txt" + + # Creates a directory at the test root folder with a name that is 255 bytes in length, + # then a file inside of that folder, with a name that is 255 bytes in length, + # and then a symbolic link inside of that folder, with the name 'link.txt' + CreateLongDirAndLongFile $DirsRoot "file_longsymlink" "000000000011111111112222222222333333333344444444445555555555666666666677777777778888888888999999999900000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000111111111122222222223333333333444444444455555" "00000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000111111111122222222223333333333444444444455555555556666666666777777777788888888889999999999000000000011111111112222222222333333333344444444445.txt" + SymlinkPath="$DirsRoot/unarchived/file_longsymlink/link.txt" + TargetPath="000000000011111111112222222222333333333344444444445555555555666666666677777777778888888888999999999900000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000111111111122222222223333333333444444444455555/00000000001111111111222222222233333333334444444444555555555566666666667777777777888888888899999999990000000000111111111122222222223333333333444444444455555555556666666666777777777788888888889999999999000000000011111111112222222222333333333344444444445.txt" + if [ ! -L $SymlinkPath ]; then + EchoInfo "Restoring $TestName that nupkg does not support" + sudo ln -s $TargetPath $SymlinkPath + CheckLastErrorOrExit "ln -s $TargetPath $SymlinkPath" + fi +} + +# Keep the root folders, delete the unsupported contents +function RemoveUnsupportedFiles() +{ + DirsRoot=$1 + + TestDirs=( "file_longsymlink" "longfilename_over100_under255" "longpath_over255" "longpath_splitable_under255" "specialfiles" ) + + EchoInfo "Deleting unsupported folders..." + for FolderName in "${TestDirs[@]}"; do + TestDir="$DirsRoot/unarchived/$FolderName" + if [ -d $TestDir ]; then + EchoWarning "Deleting unsupported root folder: $TestDir" + sudo rm -r $TestDir + CheckLastErrorOrExit "rm -r $TestDir" + else + EchoError "Folder was not found: $TestDir" + fi + done +} + +function BeginGeneration() +{ + DirsRoot=$1 + ConfirmUserAndGroupExist + ConfirmDirExists $DirsRoot + ResetUnsupportedFiles $DirsRoot + ChangeUnarchivedMode $DirsRoot + ChangeUnarchivedOwnership $DirsRoot + CreateSpecialFiles $DirsRoot + Generate $DirsRoot + ResetUnarchivedOwnership $DirsRoot + RemoveUnsupportedFiles $DirsRoot + EchoSuccess "Script finished successfully!" +} + +### SCRIPT EXECUTION ### + +# IMPORTANT: Do not move the script to another location. +# It assumes it's located inside the 'TarTestData' folder, and on the same level as the 'unarchived' folder. +ScriptPath=$(readlink -f $0) +DirsRoot=$(dirname $ScriptPath) + +BeginGeneration $DirsRoot diff --git a/src/System.Formats.Tar.TestData/README.md b/src/System.Formats.Tar.TestData/README.md new file mode 100644 index 0000000000..42271e765f --- /dev/null +++ b/src/System.Formats.Tar.TestData/README.md @@ -0,0 +1,91 @@ +# System.Formats.Tar.TestData + +This package contains test assets for the `System.Formats.Tar` assembly. + +## Script + +The files can be autogenerated with the `GenerateTarFiles.sh` script. This script needs to be executed in a Linux machine (preferably Ubuntu, since that's where it was tested). The OS should have the Unix `tar` tool available. + +The user executing this script must be part of the sudo group (but should _not_ execute the script with `sudo`). + +The script is executed without arguments. Make sure to mark the script as executable before executing it: + +```bash +$ chmod +x GenerateTarFiles.sh +$ ./GenerateTarFiles.sh +``` + +## Output + +The script generates uncompressed (`*.tar`) and compressed (`*.tar.gz`) files in all the supported formats: V7, Ustar, PAX and GNU. + +In the case of GNU, there are two variants supported by the Unix `tar` tool. We generate both, inside the `gnu` and `old_gnu` folders. + +In the case of PAX, the Unix `tar` tool can generate archives without and with a Global Extended Attributes entry at the beginning. For that, we generate files inside the `pax` and `pax_gea` folders, respectively. + +## Excluded unarchived files + +The final `*.nupkg` also includes the `unarchived` folder, which contains all the files that are expected to be found inside the `*.tar` and `*.tar.gz` files. But there are some file categories that are excluded because either NuGet or Visual Studio do not support them: + +- Files and directories with very long paths. +- Hard links. They get packged by `*.nupkg` as regular files (this might be expected, since there is no way to differentiate between regular files or hard links). +- Special files: Block device, character device, fifo. + +These files are generated by the script on the fly, archived with the `tar` tool, and then deleted at the end of the script execution to prevent getting them packed. + +## Expected metadata + +The script makes sure all the unarchived files are marked with the following metadata information before archiving them: + +- `uname`: `dotnet` +- `gname`: `devdiv` +- `uid`: `7913` +- `gid`: `3579` +- `mode`: `744` - This translates to u+rwx, g+r, o+r + +Device files get the following numbers: + +- Character devices: + - `devmajor`: `49` + - `devminor`: `86` +- Block devices: + - `devmajor`: `71` + - `devminor`: `53` + +PAX files with a Global Extended Attribute entry at the beginning of the archive, get the following custom attribute added: + +`key`: `globexthdr.MyGlobalExtendedAttribute` +`value`: `hello` + +## Consumption in dotnet/runtime + +When running tests, the "current directory" is the location where all these test assets can be found. + +To access an unarchived asset file: + +```cs +string path = Path.Join(Directory.GetCurrentDirectory(), "unarchived", "file_hardlink", "file.txt"); +``` + +To access a tar file: + +```cs +string path = Path.Join(Directory.GetCurrentDirectory(), "tar", "pax_gea", "file_hardlink.tar"); +``` + +To access a `tar.gz` file: + +```cs +string path = Path.Join(Directory.GetCurrentDirectory(), "targz", "pax_gea", "file_hardlink.tar.gz"); +``` + +## Test cases + +- `file`: Contains a regular file named `file.txt` +- `file_hardlink`: Contains a regular file named `file.txt` and a hard link named `hardlink.txt` whose target is the `file.txt` inode. +- `file_symlink`: Contains a regular file named `file.txt` and a symboliclink named `link.txt` whose target is `file.txt`. +- `folder_file`: Contains a directory named `folder`, which contains a regular file named `file.txt`. +- `folder_file_utf8`: Contains a directory named `földër` which contains a regular file named `áöñ.txt`. +- `folder_subfolder_file`: Contains a directory named `parent`, which contains a directory named `child`, which contains a regular file named `file.txt`. +- `foldersymlink_folder_subfolder_file`: Contains at the root a directory named `parent`, which contains a directory named `child`, which contains a regular file named `file.txt`, and at the root, it also contains a symbolic link named `childlink` that points to the `child` directory. +- `many_small_files`: Contains 10 directories, named from `0` to `9`, and each directory contains 10 regular files, each file named `0.txt` to `9.txt`. diff --git a/src/System.Formats.Tar.TestData/System.Formats.Tar.TestData.csproj b/src/System.Formats.Tar.TestData/System.Formats.Tar.TestData.csproj new file mode 100644 index 0000000000..1fef94fc9b --- /dev/null +++ b/src/System.Formats.Tar.TestData/System.Formats.Tar.TestData.csproj @@ -0,0 +1,9 @@ + + + $(NoWarn);NU5123 + + + + + + diff --git a/src/System.Formats.Tar.TestData/tar/gnu/file.tar b/src/System.Formats.Tar.TestData/tar/gnu/file.tar new file mode 100644 index 0000000000..31207a655e Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/file_hardlink.tar b/src/System.Formats.Tar.TestData/tar/gnu/file_hardlink.tar new file mode 100644 index 0000000000..6fb31515ad Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/file_hardlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/file_longsymlink.tar b/src/System.Formats.Tar.TestData/tar/gnu/file_longsymlink.tar new file mode 100644 index 0000000000..a2cd0775d4 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/file_longsymlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/file_symlink.tar b/src/System.Formats.Tar.TestData/tar/gnu/file_symlink.tar new file mode 100644 index 0000000000..ba8dd04271 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/file_symlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/folder_file.tar b/src/System.Formats.Tar.TestData/tar/gnu/folder_file.tar new file mode 100644 index 0000000000..2fed5918ab Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/folder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/folder_file_utf8.tar b/src/System.Formats.Tar.TestData/tar/gnu/folder_file_utf8.tar new file mode 100644 index 0000000000..d756381802 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/folder_file_utf8.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/gnu/folder_subfolder_file.tar new file mode 100644 index 0000000000..136e7dc802 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/foldersymlink_folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/gnu/foldersymlink_folder_subfolder_file.tar new file mode 100644 index 0000000000..a98cf16934 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/foldersymlink_folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/longfilename_over100_under255.tar b/src/System.Formats.Tar.TestData/tar/gnu/longfilename_over100_under255.tar new file mode 100644 index 0000000000..d1cbcfb953 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/longfilename_over100_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/longpath_over255.tar b/src/System.Formats.Tar.TestData/tar/gnu/longpath_over255.tar new file mode 100644 index 0000000000..cf49750e52 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/longpath_over255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/longpath_splitable_under255.tar b/src/System.Formats.Tar.TestData/tar/gnu/longpath_splitable_under255.tar new file mode 100644 index 0000000000..149e7b7111 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/longpath_splitable_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/many_small_files.tar b/src/System.Formats.Tar.TestData/tar/gnu/many_small_files.tar new file mode 100644 index 0000000000..6b1bbd5f18 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/many_small_files.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/gnu/specialfiles.tar b/src/System.Formats.Tar.TestData/tar/gnu/specialfiles.tar new file mode 100644 index 0000000000..a022f7e46b Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/gnu/specialfiles.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/file.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/file.tar new file mode 100644 index 0000000000..31207a655e Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/file_hardlink.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/file_hardlink.tar new file mode 100644 index 0000000000..6fb31515ad Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/file_hardlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/file_longsymlink.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/file_longsymlink.tar new file mode 100644 index 0000000000..38c19c513c Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/file_longsymlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/file_symlink.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/file_symlink.tar new file mode 100644 index 0000000000..ba8dd04271 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/file_symlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/folder_file.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/folder_file.tar new file mode 100644 index 0000000000..2fed5918ab Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/folder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/folder_file_utf8.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/folder_file_utf8.tar new file mode 100644 index 0000000000..d756381802 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/folder_file_utf8.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/folder_subfolder_file.tar new file mode 100644 index 0000000000..136e7dc802 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/foldersymlink_folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/foldersymlink_folder_subfolder_file.tar new file mode 100644 index 0000000000..a98cf16934 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/foldersymlink_folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/longfilename_over100_under255.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/longfilename_over100_under255.tar new file mode 100644 index 0000000000..3b36ad0ae1 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/longfilename_over100_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/longpath_over255.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/longpath_over255.tar new file mode 100644 index 0000000000..b6d1c5788b Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/longpath_over255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/longpath_splitable_under255.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/longpath_splitable_under255.tar new file mode 100644 index 0000000000..5d32846548 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/longpath_splitable_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/many_small_files.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/many_small_files.tar new file mode 100644 index 0000000000..6b1bbd5f18 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/many_small_files.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/oldgnu/specialfiles.tar b/src/System.Formats.Tar.TestData/tar/oldgnu/specialfiles.tar new file mode 100644 index 0000000000..a022f7e46b Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/oldgnu/specialfiles.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/file.tar b/src/System.Formats.Tar.TestData/tar/pax/file.tar new file mode 100644 index 0000000000..7f5e39d398 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/file_hardlink.tar b/src/System.Formats.Tar.TestData/tar/pax/file_hardlink.tar new file mode 100644 index 0000000000..154a5a0e22 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/file_hardlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/file_longsymlink.tar b/src/System.Formats.Tar.TestData/tar/pax/file_longsymlink.tar new file mode 100644 index 0000000000..1c87e713a4 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/file_longsymlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/file_symlink.tar b/src/System.Formats.Tar.TestData/tar/pax/file_symlink.tar new file mode 100644 index 0000000000..d8d68b6d1d Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/file_symlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/folder_file.tar b/src/System.Formats.Tar.TestData/tar/pax/folder_file.tar new file mode 100644 index 0000000000..ce87d15e0e Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/folder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/folder_file_utf8.tar b/src/System.Formats.Tar.TestData/tar/pax/folder_file_utf8.tar new file mode 100644 index 0000000000..7ea27bcdff Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/folder_file_utf8.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/pax/folder_subfolder_file.tar new file mode 100644 index 0000000000..d63996dba8 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/foldersymlink_folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/pax/foldersymlink_folder_subfolder_file.tar new file mode 100644 index 0000000000..d798fa8ff2 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/foldersymlink_folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/longfilename_over100_under255.tar b/src/System.Formats.Tar.TestData/tar/pax/longfilename_over100_under255.tar new file mode 100644 index 0000000000..37329165d2 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/longfilename_over100_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/longpath_over255.tar b/src/System.Formats.Tar.TestData/tar/pax/longpath_over255.tar new file mode 100644 index 0000000000..be6f105cb5 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/longpath_over255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/longpath_splitable_under255.tar b/src/System.Formats.Tar.TestData/tar/pax/longpath_splitable_under255.tar new file mode 100644 index 0000000000..3a14ec9bff Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/longpath_splitable_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/many_small_files.tar b/src/System.Formats.Tar.TestData/tar/pax/many_small_files.tar new file mode 100644 index 0000000000..17ea62b515 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/many_small_files.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax/specialfiles.tar b/src/System.Formats.Tar.TestData/tar/pax/specialfiles.tar new file mode 100644 index 0000000000..6b7364bdb6 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax/specialfiles.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/file.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/file.tar new file mode 100644 index 0000000000..5408050acc Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/file_hardlink.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/file_hardlink.tar new file mode 100644 index 0000000000..fa829d51da Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/file_hardlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/file_longsymlink.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/file_longsymlink.tar new file mode 100644 index 0000000000..50c2e7db88 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/file_longsymlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/file_symlink.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/file_symlink.tar new file mode 100644 index 0000000000..4d56898ad8 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/file_symlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/folder_file.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/folder_file.tar new file mode 100644 index 0000000000..5dca6ff417 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/folder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/folder_file_utf8.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/folder_file_utf8.tar new file mode 100644 index 0000000000..3f7523a2fa Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/folder_file_utf8.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/folder_subfolder_file.tar new file mode 100644 index 0000000000..d5bf78b1e4 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/foldersymlink_folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/foldersymlink_folder_subfolder_file.tar new file mode 100644 index 0000000000..074e7c83ae Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/foldersymlink_folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/longfilename_over100_under255.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/longfilename_over100_under255.tar new file mode 100644 index 0000000000..fe6da05033 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/longfilename_over100_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/longpath_over255.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/longpath_over255.tar new file mode 100644 index 0000000000..3c4588c66e Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/longpath_over255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/longpath_splitable_under255.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/longpath_splitable_under255.tar new file mode 100644 index 0000000000..efd42a1848 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/longpath_splitable_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/many_small_files.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/many_small_files.tar new file mode 100644 index 0000000000..7612e14cb8 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/many_small_files.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/pax_gea/specialfiles.tar b/src/System.Formats.Tar.TestData/tar/pax_gea/specialfiles.tar new file mode 100644 index 0000000000..36867376ec Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/pax_gea/specialfiles.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/file.tar b/src/System.Formats.Tar.TestData/tar/ustar/file.tar new file mode 100644 index 0000000000..3651ef2e5a Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/file_hardlink.tar b/src/System.Formats.Tar.TestData/tar/ustar/file_hardlink.tar new file mode 100644 index 0000000000..480c4ddabe Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/file_hardlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/file_symlink.tar b/src/System.Formats.Tar.TestData/tar/ustar/file_symlink.tar new file mode 100644 index 0000000000..1fd68a2274 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/file_symlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/folder_file.tar b/src/System.Formats.Tar.TestData/tar/ustar/folder_file.tar new file mode 100644 index 0000000000..d71d8c4f99 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/folder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/folder_file_utf8.tar b/src/System.Formats.Tar.TestData/tar/ustar/folder_file_utf8.tar new file mode 100644 index 0000000000..368a1d51a0 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/folder_file_utf8.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/ustar/folder_subfolder_file.tar new file mode 100644 index 0000000000..c1cf3b33d7 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/foldersymlink_folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/ustar/foldersymlink_folder_subfolder_file.tar new file mode 100644 index 0000000000..5da90a78e3 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/foldersymlink_folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/longpath_splitable_under255.tar b/src/System.Formats.Tar.TestData/tar/ustar/longpath_splitable_under255.tar new file mode 100644 index 0000000000..5e8fc9267b Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/longpath_splitable_under255.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/many_small_files.tar b/src/System.Formats.Tar.TestData/tar/ustar/many_small_files.tar new file mode 100644 index 0000000000..7c7002e2d7 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/many_small_files.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/ustar/specialfiles.tar b/src/System.Formats.Tar.TestData/tar/ustar/specialfiles.tar new file mode 100644 index 0000000000..15b8094248 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/ustar/specialfiles.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/file.tar b/src/System.Formats.Tar.TestData/tar/v7/file.tar new file mode 100644 index 0000000000..ea7f10622b Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/file_hardlink.tar b/src/System.Formats.Tar.TestData/tar/v7/file_hardlink.tar new file mode 100644 index 0000000000..ab1f7d5933 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/file_hardlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/file_symlink.tar b/src/System.Formats.Tar.TestData/tar/v7/file_symlink.tar new file mode 100644 index 0000000000..7578dedbc6 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/file_symlink.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/folder_file.tar b/src/System.Formats.Tar.TestData/tar/v7/folder_file.tar new file mode 100644 index 0000000000..f6fdf6c4dd Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/folder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/folder_file_utf8.tar b/src/System.Formats.Tar.TestData/tar/v7/folder_file_utf8.tar new file mode 100644 index 0000000000..7f222002d7 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/folder_file_utf8.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/v7/folder_subfolder_file.tar new file mode 100644 index 0000000000..eb9d45ec34 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/foldersymlink_folder_subfolder_file.tar b/src/System.Formats.Tar.TestData/tar/v7/foldersymlink_folder_subfolder_file.tar new file mode 100644 index 0000000000..10db76ae21 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/foldersymlink_folder_subfolder_file.tar differ diff --git a/src/System.Formats.Tar.TestData/tar/v7/many_small_files.tar b/src/System.Formats.Tar.TestData/tar/v7/many_small_files.tar new file mode 100644 index 0000000000..77504deb46 Binary files /dev/null and b/src/System.Formats.Tar.TestData/tar/v7/many_small_files.tar differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/file.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/file.tar.gz new file mode 100644 index 0000000000..ef2229a6f8 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/file_hardlink.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/file_hardlink.tar.gz new file mode 100644 index 0000000000..e7f1bfb168 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/file_hardlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/file_longsymlink.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/file_longsymlink.tar.gz new file mode 100644 index 0000000000..9a52642579 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/file_longsymlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/file_symlink.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/file_symlink.tar.gz new file mode 100644 index 0000000000..74e3cdce62 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/file_symlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/folder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/folder_file.tar.gz new file mode 100644 index 0000000000..602feed507 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/folder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/folder_file_utf8.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/folder_file_utf8.tar.gz new file mode 100644 index 0000000000..6a581dad22 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/folder_file_utf8.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..05c0003211 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/foldersymlink_folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/foldersymlink_folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..6055e0a39a Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/foldersymlink_folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/longfilename_over100_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/longfilename_over100_under255.tar.gz new file mode 100644 index 0000000000..714e993c35 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/longfilename_over100_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/longpath_over255.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/longpath_over255.tar.gz new file mode 100644 index 0000000000..e83561edbd Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/longpath_over255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/longpath_splitable_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/longpath_splitable_under255.tar.gz new file mode 100644 index 0000000000..132c9b6a6b Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/longpath_splitable_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/many_small_files.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/many_small_files.tar.gz new file mode 100644 index 0000000000..f4ba4a499f Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/many_small_files.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/gnu/specialfiles.tar.gz b/src/System.Formats.Tar.TestData/targz/gnu/specialfiles.tar.gz new file mode 100644 index 0000000000..2be9406f6a Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/gnu/specialfiles.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/file.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/file.tar.gz new file mode 100644 index 0000000000..ef2229a6f8 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/file_hardlink.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/file_hardlink.tar.gz new file mode 100644 index 0000000000..e7f1bfb168 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/file_hardlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/file_longsymlink.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/file_longsymlink.tar.gz new file mode 100644 index 0000000000..e80da5282a Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/file_longsymlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/file_symlink.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/file_symlink.tar.gz new file mode 100644 index 0000000000..74e3cdce62 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/file_symlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/folder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/folder_file.tar.gz new file mode 100644 index 0000000000..602feed507 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/folder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/folder_file_utf8.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/folder_file_utf8.tar.gz new file mode 100644 index 0000000000..6a581dad22 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/folder_file_utf8.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..05c0003211 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/foldersymlink_folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/foldersymlink_folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..6055e0a39a Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/foldersymlink_folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/longfilename_over100_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/longfilename_over100_under255.tar.gz new file mode 100644 index 0000000000..496cd3c4de Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/longfilename_over100_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/longpath_over255.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/longpath_over255.tar.gz new file mode 100644 index 0000000000..4bb9d865ef Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/longpath_over255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/longpath_splitable_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/longpath_splitable_under255.tar.gz new file mode 100644 index 0000000000..244f315da9 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/longpath_splitable_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/many_small_files.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/many_small_files.tar.gz new file mode 100644 index 0000000000..f4ba4a499f Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/many_small_files.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/oldgnu/specialfiles.tar.gz b/src/System.Formats.Tar.TestData/targz/oldgnu/specialfiles.tar.gz new file mode 100644 index 0000000000..2be9406f6a Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/oldgnu/specialfiles.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/file.tar.gz new file mode 100644 index 0000000000..2105912d30 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/file_hardlink.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/file_hardlink.tar.gz new file mode 100644 index 0000000000..c57b1f8f8f Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/file_hardlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/file_longsymlink.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/file_longsymlink.tar.gz new file mode 100644 index 0000000000..c743d094e9 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/file_longsymlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/file_symlink.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/file_symlink.tar.gz new file mode 100644 index 0000000000..6362df8b2b Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/file_symlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/folder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/folder_file.tar.gz new file mode 100644 index 0000000000..0522980cc7 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/folder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/folder_file_utf8.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/folder_file_utf8.tar.gz new file mode 100644 index 0000000000..f61257d989 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/folder_file_utf8.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..bb0241f895 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/foldersymlink_folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/foldersymlink_folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..a8fe0245f4 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/foldersymlink_folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/longfilename_over100_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/longfilename_over100_under255.tar.gz new file mode 100644 index 0000000000..4d5747e47b Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/longfilename_over100_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/longpath_over255.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/longpath_over255.tar.gz new file mode 100644 index 0000000000..99ac074b33 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/longpath_over255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/longpath_splitable_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/longpath_splitable_under255.tar.gz new file mode 100644 index 0000000000..f9d728db38 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/longpath_splitable_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/many_small_files.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/many_small_files.tar.gz new file mode 100644 index 0000000000..960f702f83 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/many_small_files.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax/specialfiles.tar.gz b/src/System.Formats.Tar.TestData/targz/pax/specialfiles.tar.gz new file mode 100644 index 0000000000..4a748071dd Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax/specialfiles.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/file.tar.gz new file mode 100644 index 0000000000..27a48f5838 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/file_hardlink.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/file_hardlink.tar.gz new file mode 100644 index 0000000000..3217b63eae Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/file_hardlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/file_longsymlink.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/file_longsymlink.tar.gz new file mode 100644 index 0000000000..9bcef973fc Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/file_longsymlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/file_symlink.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/file_symlink.tar.gz new file mode 100644 index 0000000000..59cec7ea79 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/file_symlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/folder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/folder_file.tar.gz new file mode 100644 index 0000000000..2c7f1a2b5a Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/folder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/folder_file_utf8.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/folder_file_utf8.tar.gz new file mode 100644 index 0000000000..be05b5d9de Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/folder_file_utf8.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..983526ae69 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/foldersymlink_folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/foldersymlink_folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..7b82ae4d52 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/foldersymlink_folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/longfilename_over100_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/longfilename_over100_under255.tar.gz new file mode 100644 index 0000000000..966a18ed83 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/longfilename_over100_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/longpath_over255.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/longpath_over255.tar.gz new file mode 100644 index 0000000000..1420e12f7e Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/longpath_over255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/longpath_splitable_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/longpath_splitable_under255.tar.gz new file mode 100644 index 0000000000..b5b1af6575 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/longpath_splitable_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/many_small_files.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/many_small_files.tar.gz new file mode 100644 index 0000000000..7d387764c6 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/many_small_files.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/pax_gea/specialfiles.tar.gz b/src/System.Formats.Tar.TestData/targz/pax_gea/specialfiles.tar.gz new file mode 100644 index 0000000000..1eb26c62f4 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/pax_gea/specialfiles.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/file.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/file.tar.gz new file mode 100644 index 0000000000..8756248fe4 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/file_hardlink.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/file_hardlink.tar.gz new file mode 100644 index 0000000000..b8fd8beed7 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/file_hardlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/file_symlink.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/file_symlink.tar.gz new file mode 100644 index 0000000000..cc10c6753d Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/file_symlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/folder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/folder_file.tar.gz new file mode 100644 index 0000000000..15fb0ee3f7 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/folder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/folder_file_utf8.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/folder_file_utf8.tar.gz new file mode 100644 index 0000000000..33f73b1f96 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/folder_file_utf8.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..ff7173cf0f Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/foldersymlink_folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/foldersymlink_folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..cb7339b026 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/foldersymlink_folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/longpath_splitable_under255.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/longpath_splitable_under255.tar.gz new file mode 100644 index 0000000000..fd09282ca5 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/longpath_splitable_under255.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/many_small_files.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/many_small_files.tar.gz new file mode 100644 index 0000000000..87c1258fd2 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/many_small_files.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/ustar/specialfiles.tar.gz b/src/System.Formats.Tar.TestData/targz/ustar/specialfiles.tar.gz new file mode 100644 index 0000000000..c196029b1d Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/ustar/specialfiles.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/file.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/file.tar.gz new file mode 100644 index 0000000000..b2a1600fe5 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/file_hardlink.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/file_hardlink.tar.gz new file mode 100644 index 0000000000..e89af0d968 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/file_hardlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/file_symlink.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/file_symlink.tar.gz new file mode 100644 index 0000000000..2e07a63c8f Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/file_symlink.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/folder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/folder_file.tar.gz new file mode 100644 index 0000000000..df57d2f279 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/folder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/folder_file_utf8.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/folder_file_utf8.tar.gz new file mode 100644 index 0000000000..c159d44039 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/folder_file_utf8.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..b91105e2e5 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/foldersymlink_folder_subfolder_file.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/foldersymlink_folder_subfolder_file.tar.gz new file mode 100644 index 0000000000..cb4b022755 Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/foldersymlink_folder_subfolder_file.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/targz/v7/many_small_files.tar.gz b/src/System.Formats.Tar.TestData/targz/v7/many_small_files.tar.gz new file mode 100644 index 0000000000..a56f51f82e Binary files /dev/null and b/src/System.Formats.Tar.TestData/targz/v7/many_small_files.tar.gz differ diff --git a/src/System.Formats.Tar.TestData/unarchived/file/file.txt b/src/System.Formats.Tar.TestData/unarchived/file/file.txt new file mode 100755 index 0000000000..5c93e55f83 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/file/file.txt @@ -0,0 +1 @@ +Hello file \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/file_hardlink/file.txt b/src/System.Formats.Tar.TestData/unarchived/file_hardlink/file.txt new file mode 100755 index 0000000000..2b46a26e4b --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/file_hardlink/file.txt @@ -0,0 +1 @@ +Hello file_hardlink \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/file_hardlink/hardlink.txt b/src/System.Formats.Tar.TestData/unarchived/file_hardlink/hardlink.txt new file mode 100755 index 0000000000..2b46a26e4b --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/file_hardlink/hardlink.txt @@ -0,0 +1 @@ +Hello file_hardlink \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/file_symlink/file.txt b/src/System.Formats.Tar.TestData/unarchived/file_symlink/file.txt new file mode 100755 index 0000000000..d4fd899dc9 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/file_symlink/file.txt @@ -0,0 +1 @@ +Hello file_symlink \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/file_symlink/link.txt b/src/System.Formats.Tar.TestData/unarchived/file_symlink/link.txt new file mode 120000 index 0000000000..4c330738cc --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/file_symlink/link.txt @@ -0,0 +1 @@ +file.txt \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/folder_file/folder/file.txt b/src/System.Formats.Tar.TestData/unarchived/folder_file/folder/file.txt new file mode 100755 index 0000000000..e4837e35fa --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/folder_file/folder/file.txt @@ -0,0 +1 @@ +Hello folder_file \ No newline at end of file diff --git "a/src/System.Formats.Tar.TestData/unarchived/folder_file_utf8/f\303\266ld\303\253r/\303\241\303\266\303\261.txt" "b/src/System.Formats.Tar.TestData/unarchived/folder_file_utf8/f\303\266ld\303\253r/\303\241\303\266\303\261.txt" new file mode 100755 index 0000000000..cb445a7e26 --- /dev/null +++ "b/src/System.Formats.Tar.TestData/unarchived/folder_file_utf8/f\303\266ld\303\253r/\303\241\303\266\303\261.txt" @@ -0,0 +1 @@ +Hello folder_file_utf8 diff --git a/src/System.Formats.Tar.TestData/unarchived/folder_subfolder_file/parent/child/file.txt b/src/System.Formats.Tar.TestData/unarchived/folder_subfolder_file/parent/child/file.txt new file mode 100755 index 0000000000..74ac49b3f1 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/folder_subfolder_file/parent/child/file.txt @@ -0,0 +1 @@ +Hello folder_subfolder_file \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/foldersymlink_folder_subfolder_file/childlink b/src/System.Formats.Tar.TestData/unarchived/foldersymlink_folder_subfolder_file/childlink new file mode 120000 index 0000000000..08298ac088 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/foldersymlink_folder_subfolder_file/childlink @@ -0,0 +1 @@ +parent/child \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/foldersymlink_folder_subfolder_file/parent/child/file.txt b/src/System.Formats.Tar.TestData/unarchived/foldersymlink_folder_subfolder_file/parent/child/file.txt new file mode 100755 index 0000000000..5e02d1a211 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/foldersymlink_folder_subfolder_file/parent/child/file.txt @@ -0,0 +1 @@ +Hello foldersymlink_folder_subfolder_file \ No newline at end of file diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/0.txt new file mode 100755 index 0000000000..8c4a643065 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/0.txt @@ -0,0 +1 @@ +many_small_files 0/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/1.txt new file mode 100755 index 0000000000..17ccd0b01d --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/1.txt @@ -0,0 +1 @@ +many_small_files 0/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/2.txt new file mode 100755 index 0000000000..2dc9083aff --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/2.txt @@ -0,0 +1 @@ +many_small_files 0/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/3.txt new file mode 100755 index 0000000000..6eb631c5dd --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/3.txt @@ -0,0 +1 @@ +many_small_files 0/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/4.txt new file mode 100755 index 0000000000..5a4c2a6478 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/4.txt @@ -0,0 +1 @@ +many_small_files 0/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/5.txt new file mode 100755 index 0000000000..4167fba61f --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/5.txt @@ -0,0 +1 @@ +many_small_files 0/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/6.txt new file mode 100755 index 0000000000..ac15bb98ac --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/6.txt @@ -0,0 +1 @@ +many_small_files 0/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/7.txt new file mode 100755 index 0000000000..a75ed2042b --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/7.txt @@ -0,0 +1 @@ +many_small_files 0/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/8.txt new file mode 100755 index 0000000000..34c0d0bca3 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/8.txt @@ -0,0 +1 @@ +many_small_files 0/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/9.txt new file mode 100755 index 0000000000..79a91ec19f --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/0/9.txt @@ -0,0 +1 @@ +many_small_files 0/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/0.txt new file mode 100755 index 0000000000..cb38c3a399 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/0.txt @@ -0,0 +1 @@ +many_small_files 1/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/1.txt new file mode 100755 index 0000000000..9a9518d4b5 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/1.txt @@ -0,0 +1 @@ +many_small_files 1/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/2.txt new file mode 100755 index 0000000000..d4bd374762 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/2.txt @@ -0,0 +1 @@ +many_small_files 1/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/3.txt new file mode 100755 index 0000000000..a2cf1398ac --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/3.txt @@ -0,0 +1 @@ +many_small_files 1/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/4.txt new file mode 100755 index 0000000000..3fbe9351af --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/4.txt @@ -0,0 +1 @@ +many_small_files 1/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/5.txt new file mode 100755 index 0000000000..54560d3c48 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/5.txt @@ -0,0 +1 @@ +many_small_files 1/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/6.txt new file mode 100755 index 0000000000..e2eb0230da --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/6.txt @@ -0,0 +1 @@ +many_small_files 1/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/7.txt new file mode 100755 index 0000000000..e60d85a1d5 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/7.txt @@ -0,0 +1 @@ +many_small_files 1/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/8.txt new file mode 100755 index 0000000000..a4155ff66b --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/8.txt @@ -0,0 +1 @@ +many_small_files 1/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/9.txt new file mode 100755 index 0000000000..1dc46b77c9 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/1/9.txt @@ -0,0 +1 @@ +many_small_files 1/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/0.txt new file mode 100755 index 0000000000..d0198af04c --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/0.txt @@ -0,0 +1 @@ +many_small_files 2/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/1.txt new file mode 100755 index 0000000000..160f854bcd --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/1.txt @@ -0,0 +1 @@ +many_small_files 2/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/2.txt new file mode 100755 index 0000000000..d446f86e48 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/2.txt @@ -0,0 +1 @@ +many_small_files 2/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/3.txt new file mode 100755 index 0000000000..d8906b2d49 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/3.txt @@ -0,0 +1 @@ +many_small_files 2/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/4.txt new file mode 100755 index 0000000000..9fc00a0490 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/4.txt @@ -0,0 +1 @@ +many_small_files 2/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/5.txt new file mode 100755 index 0000000000..afaf0cecc6 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/5.txt @@ -0,0 +1 @@ +many_small_files 2/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/6.txt new file mode 100755 index 0000000000..db57686db2 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/6.txt @@ -0,0 +1 @@ +many_small_files 2/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/7.txt new file mode 100755 index 0000000000..537ba91b9f --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/7.txt @@ -0,0 +1 @@ +many_small_files 2/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/8.txt new file mode 100755 index 0000000000..9fc7645201 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/8.txt @@ -0,0 +1 @@ +many_small_files 2/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/9.txt new file mode 100755 index 0000000000..9f0f09de76 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/2/9.txt @@ -0,0 +1 @@ +many_small_files 2/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/0.txt new file mode 100755 index 0000000000..bdb0cb1ca1 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/0.txt @@ -0,0 +1 @@ +many_small_files 3/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/1.txt new file mode 100755 index 0000000000..e0011d5f51 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/1.txt @@ -0,0 +1 @@ +many_small_files 3/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/2.txt new file mode 100755 index 0000000000..fdaef10f56 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/2.txt @@ -0,0 +1 @@ +many_small_files 3/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/3.txt new file mode 100755 index 0000000000..b5bdcdd733 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/3.txt @@ -0,0 +1 @@ +many_small_files 3/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/4.txt new file mode 100755 index 0000000000..c13e8665dd --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/4.txt @@ -0,0 +1 @@ +many_small_files 3/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/5.txt new file mode 100755 index 0000000000..a561549f81 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/5.txt @@ -0,0 +1 @@ +many_small_files 3/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/6.txt new file mode 100755 index 0000000000..6a0f02e21b --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/6.txt @@ -0,0 +1 @@ +many_small_files 3/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/7.txt new file mode 100755 index 0000000000..87bfbfd1e0 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/7.txt @@ -0,0 +1 @@ +many_small_files 3/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/8.txt new file mode 100755 index 0000000000..562e1c4ea6 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/8.txt @@ -0,0 +1 @@ +many_small_files 3/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/9.txt new file mode 100755 index 0000000000..8d209a99e1 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/3/9.txt @@ -0,0 +1 @@ +many_small_files 3/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/0.txt new file mode 100755 index 0000000000..2a30fadd39 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/0.txt @@ -0,0 +1 @@ +many_small_files 4/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/1.txt new file mode 100755 index 0000000000..bdc3de3aaf --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/1.txt @@ -0,0 +1 @@ +many_small_files 4/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/2.txt new file mode 100755 index 0000000000..fa5ab26caf --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/2.txt @@ -0,0 +1 @@ +many_small_files 4/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/3.txt new file mode 100755 index 0000000000..ff77d918fe --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/3.txt @@ -0,0 +1 @@ +many_small_files 4/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/4.txt new file mode 100755 index 0000000000..471dd0151c --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/4.txt @@ -0,0 +1 @@ +many_small_files 4/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/5.txt new file mode 100755 index 0000000000..fb9aaef067 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/5.txt @@ -0,0 +1 @@ +many_small_files 4/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/6.txt new file mode 100755 index 0000000000..588157c0e0 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/6.txt @@ -0,0 +1 @@ +many_small_files 4/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/7.txt new file mode 100755 index 0000000000..dcbac790cc --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/7.txt @@ -0,0 +1 @@ +many_small_files 4/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/8.txt new file mode 100755 index 0000000000..e4f00071a2 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/8.txt @@ -0,0 +1 @@ +many_small_files 4/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/9.txt new file mode 100755 index 0000000000..0bee0cfb31 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/4/9.txt @@ -0,0 +1 @@ +many_small_files 4/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/0.txt new file mode 100755 index 0000000000..020c42b7cd --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/0.txt @@ -0,0 +1 @@ +many_small_files 5/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/1.txt new file mode 100755 index 0000000000..dd2c26aaab --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/1.txt @@ -0,0 +1 @@ +many_small_files 5/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/2.txt new file mode 100755 index 0000000000..c462abded7 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/2.txt @@ -0,0 +1 @@ +many_small_files 5/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/3.txt new file mode 100755 index 0000000000..6f5cda4b3d --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/3.txt @@ -0,0 +1 @@ +many_small_files 5/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/4.txt new file mode 100755 index 0000000000..6c30a5c944 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/4.txt @@ -0,0 +1 @@ +many_small_files 5/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/5.txt new file mode 100755 index 0000000000..95b155a03d --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/5.txt @@ -0,0 +1 @@ +many_small_files 5/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/6.txt new file mode 100755 index 0000000000..bbf13119ed --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/6.txt @@ -0,0 +1 @@ +many_small_files 5/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/7.txt new file mode 100755 index 0000000000..8cf5008609 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/7.txt @@ -0,0 +1 @@ +many_small_files 5/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/8.txt new file mode 100755 index 0000000000..afd4e8ceeb --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/8.txt @@ -0,0 +1 @@ +many_small_files 5/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/9.txt new file mode 100755 index 0000000000..7b52c0f85d --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/5/9.txt @@ -0,0 +1 @@ +many_small_files 5/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/0.txt new file mode 100755 index 0000000000..b84fad1320 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/0.txt @@ -0,0 +1 @@ +many_small_files 6/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/1.txt new file mode 100755 index 0000000000..a36087ff32 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/1.txt @@ -0,0 +1 @@ +many_small_files 6/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/2.txt new file mode 100755 index 0000000000..0e2044aa2d --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/2.txt @@ -0,0 +1 @@ +many_small_files 6/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/3.txt new file mode 100755 index 0000000000..3291f2158f --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/3.txt @@ -0,0 +1 @@ +many_small_files 6/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/4.txt new file mode 100755 index 0000000000..088b154581 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/4.txt @@ -0,0 +1 @@ +many_small_files 6/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/5.txt new file mode 100755 index 0000000000..d8ca9eb1d3 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/5.txt @@ -0,0 +1 @@ +many_small_files 6/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/6.txt new file mode 100755 index 0000000000..46b76aefa8 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/6.txt @@ -0,0 +1 @@ +many_small_files 6/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/7.txt new file mode 100755 index 0000000000..78d867c02d --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/7.txt @@ -0,0 +1 @@ +many_small_files 6/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/8.txt new file mode 100755 index 0000000000..6177fd1990 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/8.txt @@ -0,0 +1 @@ +many_small_files 6/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/9.txt new file mode 100755 index 0000000000..e4f2c4bc5b --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/6/9.txt @@ -0,0 +1 @@ +many_small_files 6/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/0.txt new file mode 100755 index 0000000000..bc2bb992b3 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/0.txt @@ -0,0 +1 @@ +many_small_files 7/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/1.txt new file mode 100755 index 0000000000..1c15b973a9 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/1.txt @@ -0,0 +1 @@ +many_small_files 7/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/2.txt new file mode 100755 index 0000000000..1f3bae56eb --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/2.txt @@ -0,0 +1 @@ +many_small_files 7/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/3.txt new file mode 100755 index 0000000000..870095015c --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/3.txt @@ -0,0 +1 @@ +many_small_files 7/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/4.txt new file mode 100755 index 0000000000..80447ccd53 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/4.txt @@ -0,0 +1 @@ +many_small_files 7/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/5.txt new file mode 100755 index 0000000000..210489eda4 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/5.txt @@ -0,0 +1 @@ +many_small_files 7/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/6.txt new file mode 100755 index 0000000000..b726dbbc84 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/6.txt @@ -0,0 +1 @@ +many_small_files 7/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/7.txt new file mode 100755 index 0000000000..4e95a15c98 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/7.txt @@ -0,0 +1 @@ +many_small_files 7/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/8.txt new file mode 100755 index 0000000000..7b5b392588 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/8.txt @@ -0,0 +1 @@ +many_small_files 7/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/9.txt new file mode 100755 index 0000000000..ef731f3c27 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/7/9.txt @@ -0,0 +1 @@ +many_small_files 7/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/0.txt new file mode 100755 index 0000000000..1c3e15e9c0 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/0.txt @@ -0,0 +1 @@ +many_small_files 8/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/1.txt new file mode 100755 index 0000000000..fbeed997e3 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/1.txt @@ -0,0 +1 @@ +many_small_files 8/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/2.txt new file mode 100755 index 0000000000..923990fe04 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/2.txt @@ -0,0 +1 @@ +many_small_files 8/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/3.txt new file mode 100755 index 0000000000..4dc4f677f1 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/3.txt @@ -0,0 +1 @@ +many_small_files 8/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/4.txt new file mode 100755 index 0000000000..9217cf8d67 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/4.txt @@ -0,0 +1 @@ +many_small_files 8/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/5.txt new file mode 100755 index 0000000000..3b0d109e9f --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/5.txt @@ -0,0 +1 @@ +many_small_files 8/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/6.txt new file mode 100755 index 0000000000..115cd5a42c --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/6.txt @@ -0,0 +1 @@ +many_small_files 8/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/7.txt new file mode 100755 index 0000000000..360ccbc973 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/7.txt @@ -0,0 +1 @@ +many_small_files 8/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/8.txt new file mode 100755 index 0000000000..48cf70af27 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/8.txt @@ -0,0 +1 @@ +many_small_files 8/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/9.txt new file mode 100755 index 0000000000..f5d2887d9c --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/8/9.txt @@ -0,0 +1 @@ +many_small_files 8/9 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/0.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/0.txt new file mode 100755 index 0000000000..ed08cf721c --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/0.txt @@ -0,0 +1 @@ +many_small_files 9/0 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/1.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/1.txt new file mode 100755 index 0000000000..34a5f48c50 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/1.txt @@ -0,0 +1 @@ +many_small_files 9/1 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/2.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/2.txt new file mode 100755 index 0000000000..f7ebfcb679 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/2.txt @@ -0,0 +1 @@ +many_small_files 9/2 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/3.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/3.txt new file mode 100755 index 0000000000..871a19a5c6 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/3.txt @@ -0,0 +1 @@ +many_small_files 9/3 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/4.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/4.txt new file mode 100755 index 0000000000..e7bea54a32 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/4.txt @@ -0,0 +1 @@ +many_small_files 9/4 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/5.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/5.txt new file mode 100755 index 0000000000..a5ba44b197 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/5.txt @@ -0,0 +1 @@ +many_small_files 9/5 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/6.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/6.txt new file mode 100755 index 0000000000..00df2bc15e --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/6.txt @@ -0,0 +1 @@ +many_small_files 9/6 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/7.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/7.txt new file mode 100755 index 0000000000..8a66fdda51 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/7.txt @@ -0,0 +1 @@ +many_small_files 9/7 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/8.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/8.txt new file mode 100755 index 0000000000..d257c882d6 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/8.txt @@ -0,0 +1 @@ +many_small_files 9/8 diff --git a/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/9.txt b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/9.txt new file mode 100755 index 0000000000..068f804b46 --- /dev/null +++ b/src/System.Formats.Tar.TestData/unarchived/many_small_files/9/9.txt @@ -0,0 +1 @@ +many_small_files 9/9 diff --git a/src/System.IO.Compression.TestData/System.IO.Compression.TestData.csproj b/src/System.IO.Compression.TestData/System.IO.Compression.TestData.csproj index 2feefb8f76..fd585ff542 100644 --- a/src/System.IO.Compression.TestData/System.IO.Compression.TestData.csproj +++ b/src/System.IO.Compression.TestData/System.IO.Compression.TestData.csproj @@ -1 +1,5 @@ - \ No newline at end of file + + + $(NoWarn);NU5123 + + \ No newline at end of file