Transfers

Transfers
Source snapshot: 9b4f8a3 (2026-09-23); retained QMail clone, including M7.
Working = implemented in this snapshot, not a new runtime/test certification.
Partial = an identified implementation/exposure gap; obsolete = retained compatibility only.
Entry points and static functions are selected navigation anchors; full lexical index: function-index.txt.
Used by / Tests list selected source references (including callback registration), not a proven dynamic call graph.
Tests were inspected, not executed; use tools/test.ps1 with isolated scratch data.
Old paths come from docs/path-map.txt; absent mappings denote additions after the move.

Object Transfer wire and manager

Purpose
Serialize Object Transfer requests and manage resumable uploads/downloads through coordinated sessions.
Files
src/mail/qmail_object_transfer.c src/mail/qmail_transfer_manager.c src/mail/qmail_session_coordinator.c
Old paths
vendor/core/src/qmail/qmail_object_transfer.c -> src/mail/qmail_object_transfer.c vendor/core/src/qmail/qmail_transfer_manager.c -> src/mail/qmail_transfer_manager.c vendor/core/src/qmail/qmail_session_coordinator.c -> src/mail/qmail_session_coordinator.c
Public header
include/qmail/qmail_object_transfer.h include/qmail/qmail_session_coordinator.h include/qmail/qmail_transfer_manager.h
Entry points
src/mail/qmail_object_transfer.c:51 :: qmail_ot_request_header_size() src/mail/qmail_transfer_manager.c:250 :: qmail_transfer_operation_active() src/mail/qmail_session_coordinator.c:181 :: qmail_session_coordinator_open_lane()
Important static functions
src/mail/qmail_object_transfer.c:31 :: range_is_valid() src/mail/qmail_object_transfer.c:35 :: write_common() src/mail/qmail_transfer_manager.c:157 :: status_retryable() src/mail/qmail_transfer_manager.c:167 :: status_object_missing() src/mail/qmail_session_coordinator.c:106 :: write_blob() src/mail/qmail_session_coordinator.c:122 :: read_blob()
Owns
Object Transfer wire codec, transfer lifecycle and session coordination.
Used by
src/app/desktop_api.c src/gui/server_adapter.c src/mail/qmail_parent_checkpoints.c src/mail/qmail_receipt.c src/mail/qmail_receive.c src/mail/qmail_receive_object_transfer.c src/mail/qmail_send_object_transfer.c src/update/quiescence.c
Side effects
Makes network requests and persists transfer/range/server state; wire codecs transform buffers.
Tests
tests/integ/session_coordinator_test.c tests/live/large_send_live_probe.c tests/unit/long_path_transfer_test.c tests/unit/coin/qmail_async_commit_test.c tests/unit/coin/qmail_retention_test.c tests/unit/mail/qmail_parent_send_test.c tests/unit/mail/qmail_receive_resume_test.c tests/unit/mail/qmail_send_deadline_test.c
Platforms
Windows; POSIX branches/dependencies where present. Linux/macOS runtime unverified in M13.
Status
working

Durable transfer store

Purpose
Persist transfers, ranges, progress, paths and pause requests for restart/resume.
Files
src/mail/qmail_transfer_store.c
Old paths
vendor/core/src/qmail/qmail_transfer_store.c -> src/mail/qmail_transfer_store.c
Public header
include/qmail/qmail_transfer_store.h
Entry points
src/mail/qmail_transfer_store.c:261 :: qmail_transfer_store_open()
Important static functions
src/mail/qmail_transfer_store.c:94 :: read_transfer() src/mail/qmail_transfer_store.c:35 :: store_lock()
Owns
Transfer database schema and durable range state.
Used by
src/app/desktop_api.c src/mail/qmail_transfer_manager.c src/update/quiescence.c
Side effects
Makes network requests and persists transfer/range/server state; wire codecs transform buffers.
Tests
tests/unit/long_path_test.c tests/unit/mail/qmail_send_deadline_test.c tests/unit/mail/qmail_transfer_reconcile_test.c tests/unit/mail/qmail_transfer_resume_test.c tests/unit/mail/qmail_transfer_store_test.c
Platforms
Windows; POSIX branches/dependencies where present. Linux/macOS runtime unverified in M13.
Status
working

Endpoints and server registry

Purpose
Represent independent endpoints, resolve server locations and track health/retention.
Files
src/mail/qmail_endpoint.c src/mail/qmail_server_location.c src/mail/qmail_server_registry.c src/mail/qmail_servers.c src/mail/qmail_health.c src/mail/qmail_retention.c
Old paths
vendor/core/src/qmail/qmail_endpoint.c -> src/mail/qmail_endpoint.c vendor/core/src/qmail/qmail_server_location.c -> src/mail/qmail_server_location.c vendor/core/src/qmail/qmail_server_registry.c -> src/mail/qmail_server_registry.c vendor/core/src/qmail/qmail_servers.c -> src/mail/qmail_servers.c vendor/core/src/qmail/qmail_health.c -> src/mail/qmail_health.c vendor/core/src/qmail/qmail_retention.c -> src/mail/qmail_retention.c
Public header
include/qmail/qmail_endpoint.h include/qmail/qmail_health.h include/qmail/qmail_retention.h include/qmail/qmail_server_registry.h include/qmail/qmail_servers.h include/qmail/qmail_types.h
Entry points
src/mail/qmail_endpoint.c:52 :: qmail_identity_pack() src/mail/qmail_server_location.c:29 :: qmail_server_location_encode() src/mail/qmail_server_registry.c:270 :: qmail_server_registry_init() src/mail/qmail_servers.c:31 :: qmail_servers_init() src/mail/qmail_health.c:19 :: qmail_health_init() src/mail/qmail_retention.c:19 :: qmail_retention_decode()
Important static functions
src/mail/qmail_server_registry.c:80 :: reason_is_retryable() src/mail/qmail_server_registry.c:233 :: migrate_reported_columns() src/mail/qmail_endpoint.c:29 :: set_err() src/mail/qmail_endpoint.c:38 :: copy_bounded()
Owns
Endpoint address representation and durable server registry; RAIDA bootstrap addresses remain in raida_servers.c.
Used by
src/app/desktop_api.c src/app/desktop_api_more.c src/coin/drd_sync.c src/coin/executor.c src/coin/raida_consensus_fetch.c src/gui/server_adapter.c src/mail/qmail_parent_checkpoints.c src/mail/qmail_ping.c
Side effects
Makes network requests and persists transfer/range/server state; wire codecs transform buffers.
Tests
tests/integ/session_coordinator_test.c tests/live/large_send_live_probe.c tests/unit/server_adapter_test.c tests/unit/coin/qmail_endpoint_test.c tests/unit/coin/qmail_retention_test.c tests/unit/coin/qmail_server_location_test.c tests/unit/coin/qmail_server_registry_test.c tests/unit/mail/qmail_parent_send_test.c
Platforms
Windows; POSIX branches/dependencies where present. Linux/macOS runtime unverified in M13.
Status
working