steamcdn

package
v0.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 19, 2026 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	STEAM3_MANIFEST_MAGIC        uint32 = 0x16349781
	PROTOBUF_PAYLOAD_MAGIC       uint32 = 0x71F617D0
	PROTOBUF_METADATA_MAGIC      uint32 = 0x1F4812BE
	PROTOBUF_SIGNATURE_MAGIC     uint32 = 0x1B81B817
	PROTOBUF_ENDOFMANIFEST_MAGIC uint32 = 0x32C415AB
)
View Source
const (
	VZIP_HEADER     uint16 = 0x5A56
	VZIP_FOOTER     uint16 = 0x767A
	VZIP_VERSION    uint8  = 'a'
	VZIP_HEADER_LEN        = 7
	VZIP_FOOTER_LEN        = 10
)

Variables

This section is empty.

Functions

func NewClient

func NewClient(opts ...ClientOptFunc) *cdnClient

Types

type ChunkData

type ChunkData struct {
	ChunkId         []byte
	Checksum        uint32
	Offset          uint64
	CompressedLen   uint32
	UncompressedLen uint32
}

type ClientOptFunc

type ClientOptFunc func(*cdnClient)

func WithHttpClient

func WithHttpClient(httpClient *http.Client) ClientOptFunc

type DepotChunk

type DepotChunk struct {
	Chunk ChunkData
	Data  []byte
}

func NewDepotChunk

func NewDepotChunk(chunk ChunkData, data []byte, depotKey []byte) (*DepotChunk, error)

type DepotManifest

type DepotManifest struct {
	FilenamesEncrypted    bool
	DepotId               uint32
	ManifestGid           uint64
	CreationTime          time.Time
	TotalUncompressedSize uint64
	TotalComressedSize    uint64
	EncryptedCRC          uint32
	Files                 []FileData
}

func NewDepotManifest

func NewDepotManifest(data []byte, depotKey []byte) (*DepotManifest, error)

type FileData

type FileData struct {
	Filename     string
	FilenameHash []byte
	Chunks       []ChunkData
	Flags        steamlang.EDepotFileFlag
	TotalSize    uint64
	FileHash     []byte
	LinkTarget   string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL