Skip to content

Merge upstream #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 24 commits into from
Jul 1, 2017
Merged

Merge upstream #2

merged 24 commits into from
Jul 1, 2017

Conversation

ids1024
Copy link

@ids1024 ids1024 commented Jul 1, 2017

This includes changes I submitted to support symlinks.

cuviper and others added 24 commits May 11, 2017 15:13
In most cases, `tar` already wrote only `/` separators between path
components.  This is the only separator that works on Unix, and it's
acceptable on Windows too.  However, long paths in GNU headers were
writing the full `path2bytes` result without translation, which meant
Windows could write tar files with `\` that aren't portable to Unix.

Now `path2bytes` will normalize all `\` to `/` on Windows.

The new `path_separators` test makes sure that short and long paths with
UStar and GNU headers will round-trip correctly, meaning the `path()`
compares equal, while checking that `path_bytes()` doesn't contain `\`
path separators.  The long GNU path was writing `\` on Windows before.
Normalize all path separators to Unix-style `/`
…onsumers that don`t apply a umask at extraction time.
…c-mode

Include file mode in items filtered for deterministic headers
This method lets one specify a manual header like `append`, but
incorporates the special handling needed for setting long paths.  If
given path doesn't fit in the header `name`, it will write a GNU
'././@LongLink' entry beforehand.

Fixes alexcrichton#108.
Fixes alexcrichton#109.
Add `Builder::append_data` supporting long paths
This commit fixes an unpacking failure triggered by hardlinks with
relative link names. In such case, the source of the hard-link
must be resolved first by nesting it under the unpacking directory.
Unwrap returned Result in documentation for Builder
Should help when inspecting headers!
Add option to not follow symlinks
@jackpot51
Copy link
Member

Thanks for this, it will be very useful!

@jackpot51 jackpot51 merged commit b71c220 into redox-os:master Jul 1, 2017
@ids1024 ids1024 deleted the redox branch July 1, 2017 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants