pub struct StreamPolicy { /* private fields */ }Expand description
Controls limits and compatibility accepted by a tar frame stream.
Implementations§
Source§impl StreamPolicy
impl StreamPolicy
Sourcepub fn max_pax_extension_size(self, max_pax_extension_size: u64) -> Self
pub fn max_pax_extension_size(self, max_pax_extension_size: u64) -> Self
Sets the maximum size for each pax extension.
A local or global header that declares a larger payload is rejected
before its payload is consumed. Setting the maximum to zero rejects
every nonempty extension. Setting it to u64::MAX removes the
limit for each extension. The archive-wide limit still applies to global
extensions.
Sourcepub fn max_global_pax_extensions_size(
self,
max_global_pax_extensions_size: u64,
) -> Self
pub fn max_global_pax_extensions_size( self, max_global_pax_extensions_size: u64, ) -> Self
Sets the maximum total payload size for all global pax extensions.
The total includes each global extension in the archive. It does not reset after an ordinary member. A global header is rejected before its payload is read if the new total is more than this limit.
A value of zero rejects each nonempty global extension. A value of
u64::MAX removes this limit. The limit for each extension still applies.
Sourcepub fn allow_all_nul_numeric_fields(self, allow: bool) -> Self
pub fn allow_all_nul_numeric_fields(self, allow: bool) -> Self
Configures whether wholly NUL numeric metadata fields may be accepted.
This compatibility option applies to mode, uid, gid, and mtime
in both pax/ustar and GNU ordinary member headers. It is enabled by
default. Disabling it requires each field to use a valid numeric encoding
for its archive family.
Sourcepub fn allow_header_uname_and_gname_without_terminator(
self,
allow: bool,
) -> Self
pub fn allow_header_uname_and_gname_without_terminator( self, allow: bool, ) -> Self
Configures whether ordinary header uname and gname fields may omit their NUL terminators.
This compatibility option applies to ordinary pax/ustar and GNU member headers and is disabled by default. Enabling it accepts all 32 bytes of an unterminated field as the name.
Sourcepub fn max_gnu_extension_size(self, max_gnu_extension_size: u64) -> Self
pub fn max_gnu_extension_size(self, max_gnu_extension_size: u64) -> Self
Configures the maximum size accepted for each GNU extension.
A GNU extension member that declares a larger payload is rejected before
its payload is consumed. Setting the maximum to zero rejects every nonempty
GNU extension member. Setting it to u64::MAX removes the per-extension bound.