pub struct TarSplitConfig {
pub max_entries: usize,
pub max_total_decoded_size: u64,
pub max_per_entry_size: u64,
pub max_compressed_size: u64,
pub max_path_length: usize,
pub duplicate_names_policy: DuplicatePolicy,
pub allow_empty_archive: bool,
}Expand description
Bounded configuration for TAR and TAR.GZ stream splitting.
Unknown keys are rejected (deny_unknown_fields) and every cap has an
explicit default mirroring the ZIP splitter, so deserialized
configurations are always fully bounded.
Fields§
§max_entries: usizeMaximum number of emitted entries before the split fails.
max_total_decoded_size: u64Maximum aggregate decoded bytes across all regular-entry payloads.
TAR framing (headers and padding) is not counted against this cap;
on TAR.GZ the decode step is bounded separately by this cap plus a
framing allowance derived from max_entries.
max_per_entry_size: u64Maximum decoded size of a single entry.
max_compressed_size: u64Maximum compressed input size accepted before decoding (TAR.GZ).
max_path_length: usizeMaximum validated entry path length.
duplicate_names_policy: DuplicatePolicyDuplicate entry-name policy from the shared archive vocabulary:
Reject fails the split on the first duplicate, AllowWithIndex
emits deterministic collision-free indexed names. TAR applies this
policy directly; ZIP’s reader-level duplicate collapse is pinned
historical behavior, not a parity target.
allow_empty_archive: boolAccept archives that contain zero regular-file entries.
Trait Implementations§
Source§impl Clone for TarSplitConfig
impl Clone for TarSplitConfig
Source§fn clone(&self) -> TarSplitConfig
fn clone(&self) -> TarSplitConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more