package layout

import "github.com/containerd/nydus-snapshotter/pkg/layout"

Index

Constants

const (
	RafsV5                 string = "v5"
	RafsV6                 string = "v6"
	RafsV5SuperVersion     uint32 = 0x500
	RafsV5SuperMagic       uint32 = 0x5241_4653
	RafsV6SuperMagic       uint32 = 0xE0F5_E1E2
	RafsV6SuperBlockSize   uint32 = 1024 + 128 + 256
	RafsV6SuperBlockOffset uint32 = 1024
	RafsV6ChunkInfoOffset  uint32 = 1024 + 128 + 24
	BootstrapFile          string = "image/image.boot"
	LegacyBootstrapFile    string = "image.boot"
	DummyMountpoint        string = "/dummy"
)
const MaxSuperBlockSize = 8 * 1024

RafsV6 layout: 1k + SuperBlock(128) + SuperBlockExtended(256) RafsV5 layout: 8K superblock So we only need to read the MaxSuperBlockSize size to include both v5 and v6 superblocks

Functions

func DetectFsVersion

func DetectFsVersion(header []byte) (string, error)

Types

type ImageMode

type ImageMode int
const (
	OnDemand ImageMode = iota
	PreLoad
)

Source Files

layout.go

Version
v0.15.1 (latest)
Published
Jan 26, 2025
Platform
linux/amd64
Imports
3 packages
Last checked
8 hours ago

Tools for package owners.