]> git.proxmox.com Git - proxmox-backup.git/blame - src/backup/mod.rs
move client to pbs-client subcrate
[proxmox-backup.git] / src / backup / mod.rs
CommitLineData
2f02e431 1//! Server/client-specific parts for what's otherwise in pbs-datastore.
cbdd8c54 2
f7d4e4b5 3use anyhow::{bail, Error};
f74a03da 4
bf6e3217
DM
5// Note: .pcat1 => Proxmox Catalog Format version 1
6pub const CATALOG_NAME: &str = "catalog.pcat1.didx";
36493d4d 7
f74a03da
DM
8/// Unix system user used by proxmox-backup-proxy
9pub const BACKUP_USER_NAME: &str = "backup";
a6ed5e12
TL
10/// Unix system group used by proxmox-backup-proxy
11pub const BACKUP_GROUP_NAME: &str = "backup";
f74a03da
DM
12
13/// Return User info for the 'backup' user (``getpwnam_r(3)``)
14pub fn backup_user() -> Result<nix::unistd::User, Error> {
15 match nix::unistd::User::from_name(BACKUP_USER_NAME)? {
16 Some(user) => Ok(user),
17 None => bail!("Unable to lookup backup user."),
18 }
19}
20
a6ed5e12
TL
21/// Return Group info for the 'backup' group (``getgrnam(3)``)
22pub fn backup_group() -> Result<nix::unistd::Group, Error> {
23 match nix::unistd::Group::from_name(BACKUP_GROUP_NAME)? {
24 Some(group) => Ok(group),
25 None => bail!("Unable to lookup backup user."),
26 }
27}
28
a5951b4f
WB
29pub use pbs_datastore::backup_info;
30pub use pbs_datastore::backup_info::*;
f323e906 31pub use pbs_datastore::catalog;
86fb3877
WB
32pub use pbs_datastore::catalog::*;
33pub use pbs_datastore::checksum_reader;
34pub use pbs_datastore::checksum_reader::*;
35pub use pbs_datastore::checksum_writer;
36pub use pbs_datastore::checksum_writer::*;
e64f38cb
WB
37pub use pbs_datastore::chunk_stat;
38pub use pbs_datastore::chunk_stat::*;
c23192d3
WB
39pub use pbs_datastore::chunk_store;
40pub use pbs_datastore::chunk_store::*;
86fb3877
WB
41pub use pbs_datastore::chunker;
42pub use pbs_datastore::chunker::*;
f323e906
WB
43pub use pbs_datastore::crypt_config;
44pub use pbs_datastore::crypt_config::*;
45pub use pbs_datastore::crypt_reader;
46pub use pbs_datastore::crypt_reader::*;
47pub use pbs_datastore::crypt_writer;
48pub use pbs_datastore::crypt_writer::*;
49pub use pbs_datastore::data_blob;
50pub use pbs_datastore::data_blob::*;
51pub use pbs_datastore::data_blob_reader;
52pub use pbs_datastore::data_blob_reader::*;
53pub use pbs_datastore::data_blob_writer;
54pub use pbs_datastore::data_blob_writer::*;
86fb3877
WB
55pub use pbs_datastore::file_formats;
56pub use pbs_datastore::file_formats::*;
57pub use pbs_datastore::index;
58pub use pbs_datastore::index::*;
59pub use pbs_datastore::key_derivation;
60pub use pbs_datastore::key_derivation::*;
a5951b4f
WB
61pub use pbs_datastore::manifest;
62pub use pbs_datastore::manifest::*;
2f02e431
WB
63pub use pbs_datastore::prune;
64pub use pbs_datastore::prune::*;
65
ea584a75
WB
66pub use pbs_datastore::store_progress::StoreProgress;
67
2f02e431
WB
68pub use pbs_datastore::dynamic_index::*;
69pub use pbs_datastore::fixed_index;
70pub use pbs_datastore::fixed_index::*;
71
e64f38cb 72pub use pbs_datastore::read_chunk::*;
9d135fe6 73
dafc27ae
DM
74mod chunk_stream;
75pub use chunk_stream::*;
76
e64f38cb 77// Split
b8506736
DM
78mod read_chunk;
79pub use read_chunk::*;
80
2f02e431 81// Split
e5064ba6
DM
82mod dynamic_index;
83pub use dynamic_index::*;
84
85mod datastore;
86pub use datastore::*;
f14c96ea 87
c2009e53
DM
88mod verify;
89pub use verify::*;
90
70a152de
SR
91mod cached_chunk_reader;
92pub use cached_chunk_reader::*;