replace pre-processor defines in bin.h with enums
any uses of cluster size ids are now clearly signposted by using enum ec3_cluster_size, while any uses of cluster sizes in bytes will use size_t.
This commit is contained in:
58
src/bin.h
58
src/bin.h
@@ -7,34 +7,46 @@
|
||||
|
||||
#define EC3_SIGNATURE 0x45433358
|
||||
|
||||
#define EC3_VERSION_1_0 0x0100
|
||||
enum ec3_image_version {
|
||||
EC3_VERSION_1_0 = 0x0100,
|
||||
};
|
||||
|
||||
#define EC3_CLUSTER_4K 0x00u
|
||||
#define EC3_CLUSTER_8K 0x01u
|
||||
#define EC3_CLUSTER_16K 0x02u
|
||||
#define EC3_CLUSTER_32K 0x03u
|
||||
#define EC3_CLUSTER_64K 0x04u
|
||||
enum ec3_cluster_size {
|
||||
EC3_CLUSTER_4K = 0x00u,
|
||||
EC3_CLUSTER_8K = 0x01u,
|
||||
EC3_CLUSTER_16K = 0x02u,
|
||||
EC3_CLUSTER_32K = 0x03u,
|
||||
EC3_CLUSTER_64K = 0x04u
|
||||
};
|
||||
|
||||
#define EC3_COMPRESSION_NONE 0x00u
|
||||
#define EC3_COMPRESSION_ZSTD 0x01u
|
||||
enum ec3_compression_function {
|
||||
EC3_COMPRESSION_NONE = 0x00u,
|
||||
EC3_COMPRESSION_ZSTD = 0x01u
|
||||
};
|
||||
|
||||
#define EC3_ENCRYPTION_NONE 0x00u
|
||||
#define EC3_ENCRYPTION_AES256 0x01u
|
||||
enum ec3_encryption_function {
|
||||
EC3_ENCRYPTION_NONE = 0x00u,
|
||||
EC3_ENCRYPTION_AES256 = 0x01u
|
||||
};
|
||||
|
||||
#define EC3_TAG_VOLU 0x564F4C55
|
||||
#define EC3_TAG_CTAB 0x43544142
|
||||
#define EC3_TAG_CDAT 0x43444154
|
||||
#define EC3_TAG_XATR 0x58415452
|
||||
#define EC3_TAG_STAB 0x53544142
|
||||
#define EC3_TAG_MFST 0x4D465354
|
||||
#define EC3_TAG_BLOB 0x424C4F42
|
||||
#define EC3_TAG_EXEC 0x45584543
|
||||
#define EC3_TAG_CERT 0x43455254
|
||||
#define EC3_TAG_CSIG 0x43534947
|
||||
enum ec3_tag_type {
|
||||
EC3_TAG_VOLU = 0x564F4C55,
|
||||
EC3_TAG_CTAB = 0x43544142,
|
||||
EC3_TAG_CDAT = 0x43444154,
|
||||
EC3_TAG_XATR = 0x58415452,
|
||||
EC3_TAG_STAB = 0x53544142,
|
||||
EC3_TAG_MFST = 0x4D465354,
|
||||
EC3_TAG_BLOB = 0x424C4F42,
|
||||
EC3_TAG_EXEC = 0x45584543,
|
||||
EC3_TAG_CERT = 0x43455254,
|
||||
EC3_TAG_CSIG = 0x43534947
|
||||
};
|
||||
|
||||
#define EC3_TAG_SIGNED 0x00000001u
|
||||
#define EC3_TAG_COMPRESSED 0x00000002u
|
||||
#define EC3_TAG_ENCRYPTED 0x00000004u
|
||||
enum ec3_tag_flags {
|
||||
EC3_TAG_SIGNED = 0x00000001u,
|
||||
EC3_TAG_COMPRESSED = 0x00000002u,
|
||||
EC3_TAG_ENCRYPTED = 0x00000004u
|
||||
};
|
||||
|
||||
#define EC3_INVALID_OFFSET 0xFFFFFFFFu
|
||||
|
||||
|
||||
@@ -319,7 +319,7 @@ enum ec3_status cluster_table_get_group(
|
||||
return EC3_SUCCESS;
|
||||
}
|
||||
|
||||
size_t ec3_cluster_size_id_to_bytes(unsigned int v)
|
||||
size_t ec3_cluster_size_id_to_bytes(enum ec3_cluster_size v)
|
||||
{
|
||||
if (v >= nr_cluster_sizes) {
|
||||
return 0;
|
||||
@@ -328,7 +328,7 @@ size_t ec3_cluster_size_id_to_bytes(unsigned int v)
|
||||
return cluster_sizes[v];
|
||||
}
|
||||
|
||||
unsigned int ec3_cluster_size_bytes_to_id(size_t bytes)
|
||||
enum ec3_cluster_size ec3_cluster_size_bytes_to_id(size_t bytes)
|
||||
{
|
||||
for (size_t i = 0; i < nr_cluster_sizes; i++) {
|
||||
if (cluster_sizes[i] == bytes) {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define CLUSTER_H_
|
||||
|
||||
#include "b-tree.h"
|
||||
#include "bin.h"
|
||||
|
||||
struct b_file;
|
||||
|
||||
@@ -46,7 +47,7 @@ extern enum ec3_status cluster_table_get_group(
|
||||
unsigned long index,
|
||||
struct ec3_cluster_group *out);
|
||||
|
||||
extern size_t ec3_cluster_size_id_to_bytes(unsigned int v);
|
||||
extern unsigned int ec3_cluster_size_bytes_to_id(size_t v);
|
||||
extern size_t ec3_cluster_size_id_to_bytes(enum ec3_cluster_size size);
|
||||
extern enum ec3_cluster_size ec3_cluster_size_bytes_to_id(size_t v);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user