5
0
mirror of git://git.proxmox.com/git/pxar.git synced 2025-01-06 21:17:40 +03:00
pxar/examples/mk-format-hashes.rs
Wolfgang Bumiller 57bee6f8f0 update mk-format-hashes for a new ENTRY
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-07-29 07:31:22 +02:00

68 lines
1.9 KiB
Rust

use pxar::format::hash_filename;
const CONSTANTS: &[(&str, &str, &str)] = &[
(
"Beginning of an entry (current version).",
"PXAR_ENTRY",
"__PROXMOX_FORMAT_ENTRY_V2__",
),
(
"Previous version of the entry struct",
"PXAR_ENTRY_V1",
"__PROXMOX_FORMAT_ENTRY__",
),
("", "PXAR_FILENAME", "__PROXMOX_FORMAT_FILENAME__"),
("", "PXAR_SYMLINK", "__PROXMOX_FORMAT_SYMLINK__"),
("", "PXAR_DEVICE", "__PROXMOX_FORMAT_DEVICE__"),
("", "PXAR_XATTR", "__PROXMOX_FORMAT_XATTR__"),
("", "PXAR_ACL_USER", "__PROXMOX_FORMAT_ACL_USER__"),
("", "PXAR_ACL_GROUP", "__PROXMOX_FORMAT_ACL_GROUP__"),
("", "PXAR_ACL_GROUP_OBJ", "__PROXMOX_FORMAT_ACL_GROUP_OBJ__"),
("", "PXAR_ACL_DEFAULT", "__PROXMOX_FORMAT_ACL_DEFAULT__"),
(
"",
"PXAR_ACL_DEFAULT_USER",
"__PROXMOX_FORMAT_ACL_DEFAULT_USER__",
),
(
"",
"PXAR_ACL_DEFAULT_GROUP",
"__PROXMOX_FORMAT_ACL_DEFAULT_GROUP__",
),
("", "PXAR_FCAPS", "__PROXMOX_FORMAT_FCAPS__"),
("", "PXAR_QUOTA_PROJID", "__PROXMOX_FORMAT_QUOTA_PROJID__"),
(
"Marks item as hardlink",
"PXAR_HARDLINK",
"__PROXMOX_FORMAT_HARDLINK__",
),
(
"Marks the beginnig of the payload (actual content) of regular files",
"PXAR_PAYLOAD",
"__PROXMOX_FORMAT_PXAR_PAYLOAD__",
),
(
"Marks item as entry of goodbye table",
"PXAR_GOODBYE",
"__PROXMOX_FORMAT_GOODBYE__",
),
(
"The end marker used in the GOODBYE object",
"PXAR_GOODBYE_TAIL_MARKER",
"__PROXMOX_FORMAT_PXAR_GOODBYE_TAIL_MARKER__",
),
];
fn main() {
for constant in CONSTANTS {
if !constant.0.is_empty() {
println!("/// {}", constant.0);
}
println!(
"pub const {}: u64 = 0x{:016x};",
constant.1,
hash_filename(constant.2.as_bytes()),
)
}
}