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

Add support for decoding erofs into lcfs_node, and some tooling using it #185

Merged
merged 19 commits into from
Sep 15, 2023

Commits on Sep 14, 2023

  1. tests/dumpdir: Print mode in octal, makes it easer to read

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    7fa6107 View commit details
    Browse the repository at this point in the history
  2. Fix minor distcheck issues

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    1c69f93 View commit details
    Browse the repository at this point in the history
  3. lib: Drop reference to unused overlayfs xattr

    trusted.overlay.verity doesn't exist anymore, its just
    trusted.overlay.metacopy.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    1b0e9f3 View commit details
    Browse the repository at this point in the history
  4. lcfs-internal.h; Add cleanup_node macro

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    fc30bb6 View commit details
    Browse the repository at this point in the history
  5. Use cleanup_node to simplify some code

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    6ca622f View commit details
    Browse the repository at this point in the history
  6. Move erofs helpers to new lcfs-erofs-internal.h

    Right now these are only used from cfs-fuse.c, but they will be reused
    more later.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    ccb7374 View commit details
    Browse the repository at this point in the history
  7. Move some utility functions to lcfs-utils.h

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    55067ad View commit details
    Browse the repository at this point in the history
  8. Add (and use) defines for overlayfs xattr names

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    d186f4c View commit details
    Browse the repository at this point in the history
  9. When escaping whiteouts, also set the userxattrs xatrs.

    This allows a whiteout in the composefs mount be used as a whiteout
    both with a regular and an userxattr overlayfs mount.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    fe81a66 View commit details
    Browse the repository at this point in the history
  10. lib: Add lcfs_node_get_payload/hardlink_target()

    We want to be able to read back everything that we can set.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    30bcbe5 View commit details
    Browse the repository at this point in the history
  11. lib: Add support to load image to lcfs_node

    This is useful to figure out the content of a composefs iamge.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    0366de5 View commit details
    Browse the repository at this point in the history
  12. tools: Add composefs-info tool

    This lets you list the content of an image, and dump the objects
    it references.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    cc73fbf View commit details
    Browse the repository at this point in the history
  13. Test ability to reproduce parsed images

    For all the images we generate from json, try also
    to regenerated them and ensure we get the same bits.
    
    To do the dumping we add the internal composefs-dump tool.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    1340829 View commit details
    Browse the repository at this point in the history
  14. composefs-from-json: Add new x-content key type

    This lets you test lcfs_node_set_content()
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    e958ded View commit details
    Browse the repository at this point in the history
  15. Move tests from tools/test-assets to tests/assets

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    f0594cb View commit details
    Browse the repository at this point in the history
  16. Add special.json test asset

    This tesets various special things like device nodes,
    escaped xattrs whiteouts and inlined files.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    90676ee View commit details
    Browse the repository at this point in the history
  17. tests: Run fsck.erofs (if available) on generated erofs

    This may catch any weird stuff we might generate.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    7c65eb0 View commit details
    Browse the repository at this point in the history
  18. Update composefs-fuse

    Now uses more of the new helpers and code.
    Also supports inlined data.
    
    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    4110ef4 View commit details
    Browse the repository at this point in the history
  19. Add some more unit tests to make check

    Signed-off-by: Alexander Larsson <[email protected]>
    alexlarsson committed Sep 14, 2023
    Configuration menu
    Copy the full SHA
    fbdf4e4 View commit details
    Browse the repository at this point in the history