Skip to main content

Crate rustack_s3_core

Crate rustack_s3_core 

Source
Expand description

S3 service implementation for Rustack.

This crate implements the S3 business logic provider (RustackS3) that can be plugged into the rustack-s3-http service layer via the S3Handler trait. It supports bucket CRUD, object CRUD, multipart uploads, versioning, CORS, tagging, ACLs, encryption metadata, checksums, object lock, and more.

§Architecture

rustack-s3-http (routing, XML, auth)
       |
       v
RustackS3 (S3Handler trait impl in server)
       |
       v
  S3ServiceState (buckets, global index)
       |
       v
  StorageBackend (in-memory + spillover)

Re-exports§

pub use config::S3Config;
pub use provider::RustackS3;

Modules§

auth
S3 authentication via the CredentialProvider trait.
checksums
Checksum computation for S3 objects.
config
S3-specific configuration.
cors
CORS rule matching and response header generation.
error
S3-specific error types.
ops
S3 operation handlers.
provider
S3 provider that owns the business logic state.
snapshot
Snapshot support for S3 buckets, metadata, multipart uploads, and object bodies.
state
S3 service state management.
storage
In-memory storage backend for S3 object body data.
utils
Shared utilities for the S3 service.
validation
Validation for S3 requests.