Crate exarch_core

Crate exarch_core 

Source
Expand description

Memory-safe archive extraction library with security validation.

exarch-core provides a safe API for extracting archive files (tar, zip) with built-in protection against common security vulnerabilities like path traversal, zip bombs, symlink attacks, and hardlink attacks.

§Examples

use exarch_core::SecurityConfig;
use exarch_core::extract_archive;

let config = SecurityConfig::default();
let report = extract_archive("archive.tar.gz", "/output/dir", &config)?;
println!("Extracted {} files", report.files_extracted);

Re-exports§

pub use api::create_archive;
pub use api::create_archive_with_progress;
pub use api::extract_archive;
pub use api::extract_archive_with_progress;
pub use api::list_archive;
pub use api::verify_archive;
pub use archive::Archive;
pub use archive::ArchiveBuilder;
pub use config::SecurityConfig;
pub use error::ExtractionError;
pub use error::FfiErrorMessage;
pub use error::QuotaResource;
pub use error::Result;
pub use report::ExtractionReport;
pub use report::NoopProgress;
pub use report::ProgressCallback;
pub use creation::ArchiveCreator;
pub use creation::CreationConfig;
pub use creation::CreationReport;
pub use inspection::ArchiveEntry;
pub use inspection::ArchiveManifest;
pub use inspection::CheckStatus;
pub use inspection::IssueCategory;
pub use inspection::IssueSeverity;
pub use inspection::ManifestEntryType;
pub use inspection::VerificationIssue;
pub use inspection::VerificationReport;
pub use inspection::VerificationStatus;
pub use types::DestDir;
pub use types::EntryType;
pub use types::SafePath;

Modules§

api
High-level public API for archive extraction, creation, and inspection.
archive
Archive types and builders.
config
Security configuration for archive extraction.
copy
Optimized file copy implementation with reusable buffers.
creation
Archive creation module.
error
Error types for archive extraction operations.
extraction
Extraction engine implementation.
formats
Archive format implementations.
inspection
Archive inspection without extraction.
io
I/O utilities for archive operations.
report
Extraction operation reporting.
security
Security validation modules.
test_utils
Test utilities for archive creation and validation.
types
Type-safe wrappers for archive extraction operations.