QMail components
QMail reference
Mail send
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.
Send orchestration and durable parent
Purpose Create a durable parent send, fund and upload objects, then send recipient notifications.
Files src/mail/qmail_send.c
src/mail/qmail_upload_orchestrator.c
src/mail/qmail_parent_send.c
src/mail/qmail_parent_checkpoints.c
src/mail/qmail_send_object_transfer.c
Old paths vendor/core/src/qmail/qmail_send.c -> src/mail/qmail_send.c
vendor/core/src/qmail/qmail_upload_orchestrator.c -> src/mail/qmail_upload_orchestrator.c
vendor/core/src/qmail/qmail_parent_send.c -> src/mail/qmail_parent_send.c
vendor/core/src/qmail/qmail_parent_checkpoints.c -> src/mail/qmail_parent_checkpoints.c
vendor/core/src/qmail/qmail_send_object_transfer.c -> src/mail/qmail_send_object_transfer.c
Public header include/qmail/qmail_parent_send.h
include/qmail/qmail_send.h
include/qmail/qmail_send_object_transfer.h
include/qmail/qmail_send_tells.h
include/qmail/qmail_upload_files.h
Entry points src/mail/qmail_send.c:59 :: qmail_send_email()
src/mail/qmail_upload_orchestrator.c:2289 :: qmail_upload_orchestrator()
src/mail/qmail_parent_send.c:240 :: qmail_parent_send()
src/mail/qmail_upload_orchestrator.c:369 :: qmail_upload_legacy_max_file_bytes()
src/mail/qmail_parent_send.c:23 :: qmail_parent_stopping()
src/mail/qmail_parent_checkpoints.c:11 :: qmail_parent_layout_restore()
src/mail/qmail_send_object_transfer.c:353 :: qmail_send_object_upload()
Important static functions src/mail/qmail_send.c:28 :: select_identity_coin()
src/mail/qmail_upload_orchestrator.c:85 :: upload_progress()
src/mail/qmail_upload_orchestrator.c:130 :: upload_manifest_flags_for_file_type()
src/mail/qmail_parent_send.c:57 :: parent_parse_list()
src/mail/qmail_parent_send.c:72 :: parent_recipient_valid()
src/mail/qmail_parent_checkpoints.c:6 :: checkpoint_load()
src/mail/qmail_send_object_transfer.c:56 :: destination_matches()
src/mail/qmail_send_object_transfer.c:65 :: ensure_directory()
Owns Parent send state/checkpoints and funded upload sequencing.
Used by src/mail/qmail_tell_retry.c
src/mail/service/qmail_service.c
Side effects Writes durable send/funding/payment state and makes network requests; payload helpers allocate/transform buffers.
Tests tests/unit/long_path_transfer_test.c
tests/unit/mail/qmail_parent_send_test.c
tests/unit/mail/qmail_send_deadline_test.c
tests/unit/mail/qmail_send_staging_test.c
tests/unit/mail/qmail_tell_retry_test.c
Platforms Windows; POSIX branches/dependencies where present. Linux/macOS runtime unverified in M13.
Status working
Payload encoding, striping and archive
Purpose Encode CBDF, compress/encrypt/stripe payloads, keep send diagnostics and local Sent data.
Files src/mail/qmail_cbdf.c
src/mail/qmail_striping.c
src/mail/qmail_compress.c
src/mail/qmail_crypto.c
src/mail/qmail_send_log.c
src/mail/qmail_sent_archive.c
src/mail/qmail_command_validate.c
Old paths vendor/core/src/qmail/qmail_cbdf.c -> src/mail/qmail_cbdf.c
vendor/core/src/qmail/qmail_striping.c -> src/mail/qmail_striping.c
vendor/core/src/qmail/qmail_compress.c -> src/mail/qmail_compress.c
vendor/core/src/qmail/qmail_crypto.c -> src/mail/qmail_crypto.c
vendor/core/src/qmail/qmail_send_log.c -> src/mail/qmail_send_log.c
vendor/core/src/qmail/qmail_sent_archive.c -> src/mail/qmail_sent_archive.c
vendor/core/src/qmail/qmail_command_validate.c -> src/mail/qmail_command_validate.c
Public header include/qmail/qmail_cbdf.h
include/qmail/qmail_compress.h
include/qmail/qmail_crypto.h
include/qmail/qmail_send_log.h
include/qmail/qmail_sent_archive.h
include/qmail/qmail_striping.h
Entry points src/mail/qmail_cbdf.c:257 :: qmail_cbdf_encode()
src/mail/qmail_striping.c:48 :: qmail_stripe_size()
src/mail/qmail_compress.c:40 :: qmail_compression_mode_from_string()
src/mail/qmail_crypto.c:58 :: qmail_setup_encryption()
src/mail/qmail_send_log.c:122 :: qmail_send_log_init()
src/mail/qmail_sent_archive.c:31 :: qmail_sent_make_body_preview()
Important static functions src/mail/qmail_cbdf.c:25 :: write_mailbox()
src/mail/qmail_crypto.c:40 :: select_mail_id_fallback()
src/mail/qmail_sent_archive.c:123 :: write_bytes_file()
src/mail/qmail_command_validate.c:10 :: qmail_invalid()
src/mail/qmail_command_validate.c:21 :: qmail_invalid_reason()
src/mail/qmail_cbdf.c:35 :: qmail_cbdf_encode_legacy()
src/mail/qmail_compress.c:49 :: ext_is_precompressed()
src/mail/qmail_compress.c:68 :: deflate_stream()
Owns Payload preparation, striping and Sent archive writer; CBDF schema belongs to Documents.
Used by src/app/desktop_api.c
src/mail/qmail_download.c
src/mail/qmail_object_transfer.c
src/mail/qmail_parent_checkpoints.c
src/mail/qmail_parent_send.c
src/mail/qmail_payment_send.c
src/mail/qmail_ping.c
src/mail/qmail_receive.c
Side effects Writes durable send/funding/payment state and makes network requests; payload helpers allocate/transform buffers.
Tests tests/unit/body_format_test.c
tests/unit/document_test.c
tests/unit/long_path_transfer_test.c
tests/unit/coin/qmail_db_migration_test.c
tests/unit/mail/qmail_cbdf_compression_test.c
tests/unit/mail/qmail_cbdf_splitmeta_test.c
tests/unit/mail/qmail_compress_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
Payments
Purpose Send and claim locker-backed payments and persist payment results.
Files src/mail/qmail_payment_send.c
src/mail/qmail_payment_claim.c
Old paths vendor/core/src/qmail/qmail_payment_send.c -> src/mail/qmail_payment_send.c
vendor/core/src/qmail/qmail_payment_claim.c -> src/mail/qmail_payment_claim.c
Public header include/qmail/qmail_payment_claim.h
include/qmail/qmail_payment_send.h
Entry points src/mail/qmail_payment_send.c:24 :: qmail_send_payment()
src/mail/qmail_payment_claim.c:28 :: qmail_payment_claim()
Important static functions src/mail/qmail_payment_send.c:17 :: payment_copy_key()
src/mail/qmail_payment_claim.c:13 :: payment_has_locker()
src/mail/qmail_payment_claim.c:20 :: payment_locker_ascii()
Owns Payment send/claim orchestration.
Used by src/app/desktop_api.c
src/mail/qmail_beacon.c
Side effects Writes durable send/funding/payment state and makes network requests; payload helpers allocate/transform buffers.
Tests No direct symbol-reference test identified; indirect integration coverage is uncertain.
Platforms Windows; POSIX branches/dependencies where present. Linux/macOS runtime unverified in M13.
Status working; Desktop calls and implementation exist; live payment success was not verified in M13.
Subscribe credit
Purpose Build group 6 command 85 prepaid storage credit requests and collect RAIDA results.
Files src/mail/qmail_subscribe.c
Old paths vendor/core/src/qmail/qmail_subscribe.c -> src/mail/qmail_subscribe.c
Public header include/qmail/qmail_subscribe.h
Entry points src/mail/qmail_subscribe.c:107 :: core_qmail_subscribe()
Important static functions src/mail/qmail_subscribe.c:42 :: subscribe_build_body()
src/mail/qmail_subscribe.c:71 :: subscribe_collect()
Owns Subscription credit wire body.
Used by No external C symbol reference identified; see target/script membership and integration notes.
Side effects Writes durable send/funding/payment state and makes network requests; payload helpers allocate/transform buffers.
Tests No direct symbol-reference test identified; indirect integration coverage is uncertain.
Platforms Windows; POSIX branches/dependencies where present. Linux/macOS runtime unverified in M13.
Status partial; core_qmail_subscribe is compiled and public; no production caller found. Fleet command support and desktop exposure unverified.