build, deploy, inbound, dmarc, backup, e2e: cite the source of what they rely on (assumptions part C)
Comments only, no behaviour changed. Each main.cf/master.cf parameter the
build sets, the wrapper's and the reload hook's reliance on Postfix 3.7.11
(postfix-script, master.5, postconf.5, cleanup_init.c, smtpd_peer.c,
README_FILES), supervisor 4.2.5 (process.py, options.py, events.rst),
logrotate 3.21.0, OpenDKIM's config, Cyrus SASL's sasldb, rspamd 3.11.1
(milter_headers.lua, multimap, the map watcher), Docker Compose, CoreDNS
and certbot now say where that is written. Measurements already there stay
measurements ("date not recorded" where none was); hand-composed fixtures
say so.
Contradictions left for their own commits: C-P31 cleanup's size limit,
C-P42 master outside supervisor's signal, C-V5/V6 startsecs, C-V10,
C-S3/Q3 sasldb written in place, C-Q4/A1 certbot's symlinks, C-R7 rspamd
skips local clients but the signature routine does not, C-P8, C-R4, C-R12,
C-M7, C-E2, C-K8/K9, C-D1.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -58,6 +58,7 @@ func testEnablePort25Features(t *testing.T, sc *scenario) {
|
||||
const reportReporter = "reporter.e2e.test"
|
||||
|
||||
// aggregateXML is a DMARC aggregate report on domain, as a receiver sends it.
|
||||
// Composed by hand in the shape of RFC 7489, Appendix C; no report was copied.
|
||||
func aggregateXML(domain, reportID string) string {
|
||||
return `<?xml version="1.0"?>
|
||||
<feedback>
|
||||
@@ -88,7 +89,9 @@ func aggregateXML(domain, reportID string) string {
|
||||
}
|
||||
|
||||
// reportMessage is the mail a receiver sends a report in: one gzip attachment,
|
||||
// base64 in 76-column lines.
|
||||
// base64 in 76-column lines. Composed by hand: RFC 7489 § 7.2.1.1
|
||||
// (application/gzip, a .xml.gz name), RFC 2045 § 6.8 (base64 lines of at most
|
||||
// 76 characters).
|
||||
func reportMessage(t *testing.T, to, xml string) string {
|
||||
t.Helper()
|
||||
var gz bytes.Buffer
|
||||
@@ -344,6 +347,10 @@ func testInboundRelay(t *testing.T, sc *scenario) {
|
||||
t.Fatalf("the Inbound log holds %d rows, want the relayed message alone:\n%s", len(rows), strings.Join(rows, "\n"))
|
||||
}
|
||||
|
||||
// Postfix 3.7.11, src/smtpd/smtpd_check.c: "User unknown in relay recipient
|
||||
// table" (check_rcpt_maps(); unknown_relay_recipient_reject_code,
|
||||
// DEF_RELAY_RCPT_CODE 550) and "Relay access denied"
|
||||
// (reject_unauth_destination(); DEF_RELAY_CODE 554).
|
||||
for _, c := range []struct {
|
||||
to string
|
||||
code int
|
||||
|
||||
Reference in New Issue
Block a user