Directories
¶
| Path | Synopsis |
|---|---|
|
app
|
|
|
smoketest
command
smoketest verifies a live yarilo deployment.
|
smoketest verifies a live yarilo deployment. |
|
smoketest-e2e
command
smoketest-e2e drives a live yarilo instance end-to-end:
|
smoketest-e2e drives a live yarilo instance end-to-end: |
|
smoketest-e2e/seed
command
seed creates the yarilo_users table (if missing) and inserts a single user with a bcrypt-hashed password.
|
seed creates the yarilo_users table (if missing) and inserts a single user with a bcrypt-hashed password. |
|
yarilo
command
|
|
|
yarilo-admin
command
yarilo-admin is the unified yarilo operator CLI.
|
yarilo-admin is the unified yarilo operator CLI. |
|
yarilo-anvil
command
yarilo-anvil is the connection-accounting service for the yarilo mail server.
|
yarilo-anvil is the connection-accounting service for the yarilo mail server. |
|
yarilo-auth
command
yarilo-auth is the standalone authentication service for the yarilo mail server.
|
yarilo-auth is the standalone authentication service for the yarilo mail server. |
|
yarilo-backend-api
command
yarilo-backend-api is the backend-plane admin HTTP API.
|
yarilo-backend-api is the backend-plane admin HTTP API. |
|
yarilo-director
command
yarilo-director is the consistent-hash routing service for the yarilo mail server.
|
yarilo-director is the consistent-hash routing service for the yarilo mail server. |
|
yarilo-imap
command
yarilo-imap is the IMAP/IMAPS backend for the yarilo mail server.
|
yarilo-imap is the IMAP/IMAPS backend for the yarilo mail server. |
|
yarilo-imap-login
command
yarilo-imap-login is the IMAP/IMAPS login proxy for the yarilo mail server.
|
yarilo-imap-login is the IMAP/IMAPS login proxy for the yarilo mail server. |
|
yarilo-lmtp
command
yarilo-lmtp is the LMTP backend for the yarilo mail server.
|
yarilo-lmtp is the LMTP backend for the yarilo mail server. |
|
yarilo-lmtp-login
command
yarilo-lmtp-login is the LMTP login proxy for the yarilo mail server.
|
yarilo-lmtp-login is the LMTP login proxy for the yarilo mail server. |
|
yarilo-locks
command
yarilo-locks is the cross-process write-coordination service for yarilo.
|
yarilo-locks is the cross-process write-coordination service for yarilo. |
|
yarilo-managesieve
command
yarilo-managesieve is the ManageSieve backend for the yarilo mail server.
|
yarilo-managesieve is the ManageSieve backend for the yarilo mail server. |
|
yarilo-managesieve-login
command
yarilo-managesieve-login is the ManageSieve (RFC 5804) login proxy.
|
yarilo-managesieve-login is the ManageSieve (RFC 5804) login proxy. |
|
yarilo-migrate
command
yarilo-migrate converts a per-user mailbox tree from one storage shape to another.
|
yarilo-migrate converts a per-user mailbox tree from one storage shape to another. |
|
yarilo-monitor
command
yarilo-monitor is a sidecar health checker for yarilo-director pods.
|
yarilo-monitor is a sidecar health checker for yarilo-director pods. |
|
yarilo-pop3
command
yarilo-pop3 is the POP3/POP3S backend for the yarilo mail server.
|
yarilo-pop3 is the POP3/POP3S backend for the yarilo mail server. |
|
yarilo-pop3-login
command
yarilo-pop3-login is the POP3/POP3S login proxy for the yarilo mail server.
|
yarilo-pop3-login is the POP3/POP3S login proxy for the yarilo mail server. |
|
yarilo-quota-status
command
yarilo-quota-status is a Postfix policy service that rejects incoming messages to recipients whose mailbox is over quota.
|
yarilo-quota-status is a Postfix policy service that rejects incoming messages to recipients whose mailbox is over quota. |
|
yarilo-sasl-login
command
yarilo-sasl-login proxies Postfix SASL authentication to yarilo-auth.
|
yarilo-sasl-login proxies Postfix SASL authentication to yarilo-auth. |
|
yarilo-submission
command
yarilo-submission is the SMTP submission proxy for the yarilo mail server.
|
yarilo-submission is the SMTP submission proxy for the yarilo mail server. |
|
yarilo-submission-login
command
yarilo-submission-login is the SMTP submission login proxy for the yarilo mail server.
|
yarilo-submission-login is the SMTP submission login proxy for the yarilo mail server. |
|
internal
|
|
|
anvil
Package anvil implements the yarilo-anvil TCP+mTLS connection-accounting server.
|
Package anvil implements the yarilo-anvil TCP+mTLS connection-accounting server. |
|
auth/client
Package client implements the yarilo-auth TAB-delimited client protocol.
|
Package client implements the yarilo-auth TAB-delimited client protocol. |
|
auth/oauth2
Package oauth2 validates OAuth 2.0 bearer tokens for the SASL OAUTHBEARER mechanism (RFC 7628) and exposes the result as a passdb.Passdb so OAuth-authenticated logins flow through the regular yarilo-auth pipeline (chain ordering, caching, penalty, policy, audit log — all work unchanged).
|
Package oauth2 validates OAuth 2.0 bearer tokens for the SASL OAUTHBEARER mechanism (RFC 7628) and exposes the result as a passdb.Passdb so OAuth-authenticated logins flow through the regular yarilo-auth pipeline (chain ordering, caching, penalty, policy, audit log — all work unchanged). |
|
auth/policy
Package policy implements a wforce-compatible HTTP policy client.
|
Package policy implements a wforce-compatible HTTP policy client. |
|
auth/protocol
Package protocol implements the yarilo-auth TCP+mTLS protocol.
|
Package protocol implements the yarilo-auth TCP+mTLS protocol. |
|
auth/scram
Package scram is the session-layer glue between the SCRAM SASL server (in our forked go-sasl) and the per-protocol IMAP / POP3 / Submission session handlers in yarilo.
|
Package scram is the session-layer glue between the SCRAM SASL server (in our forked go-sasl) and the per-protocol IMAP / POP3 / Submission session handlers in yarilo. |
|
auth/sql
Package sql implements SQL passdb/userdb for yarilo-auth.
|
Package sql implements SQL passdb/userdb for yarilo-auth. |
|
backend
Package backend wires all server components for the backend (or single) mode.
|
Package backend wires all server components for the backend (or single) mode. |
|
backendapi
Package backendapi is the backend-plane admin HTTP API.
|
Package backendapi is the backend-plane admin HTTP API. |
|
cluster/proto
Package proto implements the yarilo-director TAB-delimited wire protocol.
|
Package proto implements the yarilo-director TAB-delimited wire protocol. |
|
cluster/ring
Package ring implements consistent hashing for yarilo-director.
|
Package ring implements consistent hashing for yarilo-director. |
|
connlimit
Package connlimit provides per-user@IP connection counting for IMAP/POP3/SMTP.
|
Package connlimit provides per-user@IP connection counting for IMAP/POP3/SMTP. |
|
director
Package director — PeerDialer connects to sibling director replicas and propagates ring and user-directory changes so all replicas converge on the same state without a central coordinator.
|
Package director — PeerDialer connects to sibling director replicas and propagates ring and user-directory changes so all replicas converge on the same state without a central coordinator. |
|
imap
Package imap wires go-imap/v2 to yarilo's mailbox and index backends.
|
Package imap wires go-imap/v2 to yarilo's mailbox and index backends. |
|
lmtp
Package lmtp implements an LMTP server (RFC 2033) for local mail delivery.
|
Package lmtp implements an LMTP server (RFC 2033) for local mail delivery. |
|
lmtplogin
Package lmtplogin implements the yarilo-lmtp-login service.
|
Package lmtplogin implements the yarilo-lmtp-login service. |
|
login
Package login implements the yarilo mail-protocol login proxy.
|
Package login implements the yarilo mail-protocol login proxy. |
|
loginproto
Package loginproto defines the internal login-pod → backend preamble protocol.
|
Package loginproto defines the internal login-pod → backend preamble protocol. |
|
managesieve
Package managesieve implements the RFC 5804 ManageSieve backend.
|
Package managesieve implements the RFC 5804 ManageSieve backend. |
|
monitor
Package monitor implements yarilo-monitor: a sidecar health checker that probes backend pods via IMAP/POP3/LMTP login and reports state changes to the director (BACKEND-FLUSH on failure, BACKEND-UP on recovery).
|
Package monitor implements yarilo-monitor: a sidecar health checker that probes backend pods via IMAP/POP3/LMTP login and reports state changes to the director (BACKEND-FLUSH on failure, BACKEND-UP on recovery). |
|
pop3
Package pop3 implements a POP3 server (RFC 1939).
|
Package pop3 implements a POP3 server (RFC 1939). |
|
quotastatus
Package quotastatus implements the Postfix policy service protocol (RFC-style text key=value over TCP) for quota enforcement.
|
Package quotastatus implements the Postfix policy service protocol (RFC-style text key=value over TCP) for quota enforcement. |
|
sasllogin
Package sasllogin proxies Postfix SASL authentication to yarilo-auth.
|
Package sasllogin proxies Postfix SASL authentication to yarilo-auth. |
|
storage/index/file
Package file is the per-folder index implementation that underlies every yarilo storage driver (maildir, dbox, mdbox).
|
Package file is the per-folder index implementation that underlies every yarilo storage driver (maildir, dbox, mdbox). |
|
storage/mailbox/dbox/v1legacy
Package v1legacy is a read-only reader for yarilo's pre-Phase-3 dbox format.
|
Package v1legacy is a read-only reader for yarilo's pre-Phase-3 dbox format. |
|
storage/mailbox/dboxv2
Package dboxv2 is the Dovecot-compliant single-message dbox (sdbox) storage driver, replacing yarilo's pre-Phase-3 internal/storage/ mailbox/dbox implementation.
|
Package dboxv2 is the Dovecot-compliant single-message dbox (sdbox) storage driver, replacing yarilo's pre-Phase-3 internal/storage/ mailbox/dbox implementation. |
|
storage/mailbox/maildir
Package maildir implements MailboxBackend for Maildir format.
|
Package maildir implements MailboxBackend for Maildir format. |
|
storage/mailbox/mdbox
Package mdbox is the multi-message dbox (mdbox) storage driver.
|
Package mdbox is the multi-message dbox (mdbox) storage driver. |
|
storage/mailbox/mdbox/mdboxmap
Package mdboxmap implements the global per-user multi-message dbox map (on-disk file: `dovecot.map.index`).
|
Package mdboxmap implements the global per-user multi-message dbox map (on-disk file: `dovecot.map.index`). |
|
storage/mailbox/mdbox/v1legacy
Package v1legacy is a read-only reader for yarilo's pre-Phase-5 mdbox format.
|
Package v1legacy is a read-only reader for yarilo's pre-Phase-5 mdbox format. |
|
storage/mailindex
Package mailindex is a wire-compatible Go implementation of the mail-index binary format (major=7 minor=3).
|
Package mailindex is a wire-compatible Go implementation of the mail-index binary format (major=7 minor=3). |
|
submission
Package submission implements the submission servers (port 587 / 465).
|
Package submission implements the submission servers (port 587 / 465). |
|
submission/proxy
Package proxy implements the outbound submission proxy.
|
Package proxy implements the outbound submission proxy. |
|
telemetry
Package telemetry exposes /healthz, /readyz, and /metrics on a dedicated port.
|
Package telemetry exposes /healthz, /readyz, and /metrics on a dedicated port. |
|
userstate/acl
Package acl persists per-mailbox ACL state in a yarilo-acl file inside the folder's index directory (the same dir holding yarilo.index*).
|
Package acl persists per-mailbox ACL state in a yarilo-acl file inside the folder's index directory (the same dir holding yarilo.index*). |
|
userstate/specialuse
Package specialuse persists per-user RFC 6154 special-use overrides set via IMAP CREATE (USE ...).
|
Package specialuse persists per-user RFC 6154 special-use overrides set via IMAP CREATE (USE ...). |
|
userstate/subs
Package subs persists the set of mailbox names a user has SUBSCRIBE'd.
|
Package subs persists the set of mailbox names a user has SUBSCRIBE'd. |
|
xclient
Package xclient implements the XCLIENT SMTP extension (Postfix-compatible).
|
Package xclient implements the XCLIENT SMTP extension (Postfix-compatible). |
|
pkg
|
|
|
authclient
Package authclient is the Go client for the yarilo-auth master protocol.
|
Package authclient is the Go client for the yarilo-auth master protocol. |
|
authtoken
Package authtoken implements the one-time session token store used by yarilo-auth to hand off authenticated sessions to backend pods without replaying credentials.
|
Package authtoken implements the one-time session token store used by yarilo-auth to hand off authenticated sessions to backend pods without replaying credentials. |
|
build
Package build exposes build-time metadata stamped via -ldflags.
|
Package build exposes build-time metadata stamped via -ldflags. |
|
dict
Package dict is yarilo's pluggable key-value store abstraction.
|
Package dict is yarilo's pluggable key-value store abstraction. |
|
dict/dicttest
Package dicttest is a contract test suite that any pkg/dict driver can run against.
|
Package dicttest is a contract test suite that any pkg/dict driver can run against. |
|
dict/drivers/all
Package all blank-imports every in-tree dict driver so a single import enables all of them in the importing binary.
|
Package all blank-imports every in-tree dict driver so a single import enables all of them in the importing binary. |
|
dict/fail
Package fail is a dict driver that fails every operation.
|
Package fail is a dict driver that fails every operation. |
|
dict/file
Package file is a JSON-backed local-filesystem dict driver.
|
Package file is a JSON-backed local-filesystem dict driver. |
|
dict/memory
Package memory is an in-process dict driver backed by a sync.Map.
|
Package memory is an in-process dict driver backed by a sync.Map. |
|
dict/redis
Package redis is a Redis-backed dict driver.
|
Package redis is a Redis-backed dict driver. |
|
dict/sql
Package sql is a database/sql-backed dict driver.
|
Package sql is a database/sql-backed dict driver. |
|
dict/varexpand
Package varexpand performs %-variable substitution for templated path / prefix strings used by dict drivers.
|
Package varexpand performs %-variable substitution for templated path / prefix strings used by dict drivers. |
|
locks
Package locks is the single cross-process write-coordination abstraction for yarilo.
|
Package locks is the single cross-process write-coordination abstraction for yarilo. |
|
mtls
Package mtls provides helpers for building mutual-TLS configs used between yarilo components (auth, anvil, director, imap-login → imap, etc.).
|
Package mtls provides helpers for building mutual-TLS configs used between yarilo components (auth, anvil, director, imap-login → imap, etc.). |
|
quota
Package quota implements per-user storage and message-count quota tracking and enforcement.
|
Package quota implements per-user storage and message-count quota tracking and enforcement. |
|
retry
Package retry provides a simple exponential-backoff retry helper for startup-time dials that must succeed before a service can accept traffic.
|
Package retry provides a simple exponential-backoff retry helper for startup-time dials that must succeed before a service can accept traffic. |
Click to show internal directories.
Click to hide internal directories.