pxar: pass feature_flags to encoder/decoder instead of individual flags
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
This commit is contained in:
committed by
Dietmar Maurer
parent
687407741b
commit
b344461b33
@ -34,11 +34,9 @@ impl <'a, R: Read + Seek> Decoder<'a, R> {
|
||||
pub fn new(reader: &'a mut R) -> Result<Self, Error> {
|
||||
|
||||
let root_end = reader.seek(SeekFrom::End(0))?;
|
||||
let no_xattrs = false;
|
||||
let no_fcaps = false;
|
||||
|
||||
Ok(Self {
|
||||
inner: SequentialDecoder::new(reader, no_xattrs, no_fcaps),
|
||||
inner: SequentialDecoder::new(reader, CA_FORMAT_DEFAULT),
|
||||
root_start: 0,
|
||||
root_end: root_end,
|
||||
})
|
||||
|
@ -64,8 +64,7 @@ impl <'a, W: Write> Encoder<'a, W> {
|
||||
writer: &'a mut W,
|
||||
all_file_systems: bool,
|
||||
verbose: bool,
|
||||
no_xattrs: bool,
|
||||
no_fcaps: bool,
|
||||
feature_flags: u64,
|
||||
) -> Result<(), Error> {
|
||||
|
||||
const FILE_COPY_BUFFER_SIZE: usize = 1024*1024;
|
||||
@ -91,13 +90,6 @@ impl <'a, W: Write> Encoder<'a, W> {
|
||||
if is_virtual_file_system(magic) {
|
||||
bail!("backup virtual file systems is disabled!");
|
||||
}
|
||||
let mut feature_flags = CA_FORMAT_DEFAULT;
|
||||
if no_xattrs {
|
||||
feature_flags ^= CA_FORMAT_WITH_XATTRS;
|
||||
}
|
||||
if no_fcaps {
|
||||
feature_flags ^= CA_FORMAT_WITH_FCAPS;
|
||||
}
|
||||
|
||||
let mut me = Self {
|
||||
base_path: path,
|
||||
|
@ -36,15 +36,8 @@ const HEADER_SIZE: u64 = std::mem::size_of::<CaFormatHeader>() as u64;
|
||||
|
||||
impl <'a, R: Read> SequentialDecoder<'a, R> {
|
||||
|
||||
pub fn new(reader: &'a mut R, no_xattrs: bool, no_fcaps: bool) -> Self {
|
||||
pub fn new(reader: &'a mut R, feature_flags: u64) -> Self {
|
||||
let skip_buffer = vec::undefined(64*1024);
|
||||
let mut feature_flags = CA_FORMAT_DEFAULT;
|
||||
if no_xattrs {
|
||||
feature_flags ^= CA_FORMAT_WITH_XATTRS;
|
||||
}
|
||||
if no_fcaps {
|
||||
feature_flags ^= CA_FORMAT_WITH_FCAPS;
|
||||
}
|
||||
|
||||
Self {
|
||||
reader,
|
||||
|
Reference in New Issue
Block a user