libsquashfs: include/sqfs/super.h File Reference

libsquashfs 1.3.2 A new set of tools and libraries for working with SquashFS images

Loading...
Searching...
No Matches
super.h File Reference

Contains on-disk data structures, identifiers and functions for the SquashFS super block. More...

`#include "sqfs/predef.h"`

Go to the source code of this file.

## Data Structures
struct | sqfs_super_t
| The SquashFS super block, located at the beginning of the file system to describe the layout of the filesystem. More...

## Macros
#define | SQFS_MAGIC 0x73717368
#define | SQFS_VERSION_MAJOR 4
#define | SQFS_VERSION_MINOR 0
#define | SQFS_DEVBLK_SIZE 4096
#define | SQFS_MIN_BLOCK_SIZE (4 * 1024)
#define | SQFS_MAX_BLOCK_SIZE (1024 * 1024)
#define | SQFS_DEFAULT_BLOCK_SIZE (128 * 1024)

## Enumerations
enum | SQFS_COMPRESSOR { SQFS_COMP_GZIP = 1 , SQFS_COMP_LZMA = 2 , SQFS_COMP_LZO = 3 , SQFS_COMP_XZ = 4 , SQFS_COMP_LZ4 = 5 , SQFS_COMP_ZSTD = 6 , SQFS_COMP_MIN = 1 , SQFS_COMP_MAX = 6 }
| Set in sqfs_super_t to identify the compresser used by the filesystem. More...
enum | SQFS_SUPER_FLAGS { SQFS_FLAG_UNCOMPRESSED_INODES = 0x0001 , SQFS_FLAG_UNCOMPRESSED_DATA = 0x0002 , SQFS_FLAG_UNCOMPRESSED_FRAGMENTS = 0x0008 , SQFS_FLAG_NO_FRAGMENTS = 0x0010 , SQFS_FLAG_ALWAYS_FRAGMENTS = 0x0020 , SQFS_FLAG_NO_DUPLICATES = 0x0040 , SQFS_FLAG_EXPORTABLE = 0x0080 , SQFS_FLAG_UNCOMPRESSED_XATTRS = 0x0100 , SQFS_FLAG_NO_XATTRS = 0x0200 , SQFS_FLAG_COMPRESSOR_OPTIONS = 0x0400 , SQFS_FLAG_UNCOMPRESSED_IDS = 0x0800 }
| Flags that can be set in sqfs_super flags field. More...

## Detailed Description

Contains on-disk data structures, identifiers and functions for the SquashFS super block.

Definition in file super.h.

## Macro Definition Documentation

## ◆ SQFS_DEFAULT_BLOCK_SIZE

#define SQFS_DEFAULT_BLOCK_SIZE (128 * 1024)

Definition at line 39 of file super.h.

## ◆ SQFS_DEVBLK_SIZE

#define SQFS_DEVBLK_SIZE 4096

Definition at line 35 of file super.h.

## ◆ SQFS_MAGIC

#define SQFS_MAGIC 0x73717368

Definition at line 32 of file super.h.

## ◆ SQFS_MAX_BLOCK_SIZE

#define SQFS_MAX_BLOCK_SIZE (1024 * 1024)

Definition at line 38 of file super.h.

## ◆ SQFS_MIN_BLOCK_SIZE

#define SQFS_MIN_BLOCK_SIZE (4 * 1024)

Definition at line 37 of file super.h.

## ◆ SQFS_VERSION_MAJOR

#define SQFS_VERSION_MAJOR 4

Definition at line 33 of file super.h.

## ◆ SQFS_VERSION_MINOR

#define SQFS_VERSION_MINOR 0

Definition at line 34 of file super.h.

## Enumeration Type Documentation

## ◆ SQFS_COMPRESSOR

enum SQFS_COMPRESSOR

Set in sqfs_super_t to identify the compresser used by the filesystem.

Most of the flags that can be set are informative only.

Definition at line 194 of file super.h.

## ◆ SQFS_SUPER_FLAGS

enum SQFS_SUPER_FLAGS

Flags that can be set in sqfs_super flags field.

Enumerator
SQFS_FLAG_UNCOMPRESSED_INODES | Set to indicate that meta data blocks holding the inodes are stored uncompressed.
SQFS_FLAG_UNCOMPRESSED_DATA | Set to indicate that all data blocks are stored uncompressed.
SQFS_FLAG_UNCOMPRESSED_FRAGMENTS | Set to indicate that all fragment blocks are stored uncompressed.
SQFS_FLAG_NO_FRAGMENTS | Set to indicate that there are no fragment blocks.
SQFS_FLAG_ALWAYS_FRAGMENTS | Set to indicate that fragments have been generated for all files that are not a multiple of the block size in size.
SQFS_FLAG_NO_DUPLICATES | Set to indicate that data blocks have not been deduplicated.
SQFS_FLAG_EXPORTABLE | Set to indicate that an NFS export table is present.
SQFS_FLAG_UNCOMPRESSED_XATTRS | Set to indicate that meta data blocks holding extended attributes are stored uncompressed.
SQFS_FLAG_NO_XATTRS | Set to indicate that the filesystem does not contain extended attributes.
SQFS_FLAG_COMPRESSOR_OPTIONS | Set to indicate that a single, uncompressed meta data block with compressor options follows the super block.
SQFS_FLAG_UNCOMPRESSED_IDS | Set to indicate that meta data blocks holding the IDs are stored uncompressed.

Definition at line 211 of file super.h.