Documentation ¶
Index ¶
- func AppendDMVerity(p *params)
- func AppendVhdFooter(p *params)
- func Convert(r io.Reader, w io.ReadWriteSeeker, options ...Option) error
- func ConvertAndComputeRootDigest(r io.Reader) (string, error)
- func ConvertTarToExt4(r io.Reader, w io.ReadWriteSeeker, options ...Option) error
- func ConvertToVhd(w io.WriteSeeker) error
- func ConvertWhiteout(p *params)
- func InlineData(p *params)
- func ReadExt4SuperBlock(vhdPath string) (*format.SuperBlock, error)
- type Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AppendDMVerity ¶ added in v0.9.0
func AppendDMVerity(p *params)
AppendDMVerity instructs the converter to add a dmverity merkle tree for the ext4 filesystem after the filesystem and before the optional VHD footer
func AppendVhdFooter ¶
func AppendVhdFooter(p *params)
AppendVhdFooter instructs the converter to add a fixed VHD footer to the file.
func Convert ¶
Convert wraps ConvertTarToExt4 and conditionally computes (and appends) the file image's cryptographic hashes (merkle tree) or/and appends a VHD footer.
func ConvertAndComputeRootDigest ¶ added in v0.10.0
ConvertAndComputeRootDigest writes a compact ext4 file system image that contains the files in the input tar stream, computes the resulting file image's cryptographic hashes (merkle tree) and returns merkle tree root digest. Convert is called with minimal options: ConvertWhiteout and MaximumDiskSize set to dmverity.RecommendedVHDSizeGB.
func ConvertTarToExt4 ¶ added in v0.10.0
ConvertTarToExt4 writes a compact ext4 file system image that contains the files in the input tar stream.
func ConvertToVhd ¶ added in v0.10.0
func ConvertToVhd(w io.WriteSeeker) error
ConvertToVhd converts given io.WriteSeeker to VHD, by appending the VHD footer with a fixed size.
func ConvertWhiteout ¶
func ConvertWhiteout(p *params)
ConvertWhiteout instructs the converter to convert OCI-style whiteouts (beginning with .wh.) to overlay-style whiteouts.
func InlineData ¶
func InlineData(p *params)
InlineData instructs the converter to write small files into the inode structures directly. This creates smaller images but currently is not compatible with DAX.
func ReadExt4SuperBlock ¶ added in v0.8.16
func ReadExt4SuperBlock(vhdPath string) (*format.SuperBlock, error)
ReadExt4SuperBlock reads and returns ext4 super block from VHD
The layout on disk is as follows: | Group 0 padding | - 1024 bytes | ext4 SuperBlock | - 1 block | Group Descriptors | - many blocks | Reserved GDT Blocks | - many blocks | Data Block Bitmap | - 1 block | inode Bitmap | - 1 block | inode Table | - many blocks | Data Blocks | - many blocks
More details can be found here https://ext4.wiki.kernel.org/index.php/Ext4_Disk_Layout
Our goal is to skip the Group 0 padding, read and return the ext4 SuperBlock
Types ¶
type Option ¶
type Option func(*params)
Option is the type for optional parameters to Convert.
func MaximumDiskSize ¶ added in v0.7.8
MaximumDiskSize instructs the writer to limit the disk size to the specified value. This also reserves enough metadata space for the specified disk size. If not provided, then 16GB is the default.