Skip to content
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

Trim libtar and refactor bootloader's usage #74

Merged
merged 20 commits into from Nov 19, 2018
Merged

Conversation

JonathonReinhart
Copy link
Owner

There was a lot of code in libtar that dealt with creating
or modifying tar files, which was never used by the
bootloader, but included in the statically-linked
executable.

  • Remove all code not required for extracting tar files
  • Add const to a lot of API parameters
  • Re-work the API to be more conducive to the XZ
    decompression code in the bootloader

The bootloader only cares to extract tar files.
After making libtar readonly, the only place the hash was used was during
extration in tar_extract_hardlink(). The code had a fallback path which
would call th_get_linkname() if libtar_hash_getkey() failed. We simply
always use that slow(?) path, and remove listhash altogether.

We also remove some hash functions from util.c
We leave th_print_long_ls() as it's used by tar_extract_all() with
TAR_VERBOSE.
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.

None yet

1 participant