Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tests: Use swaks instead of nc for sending mail #3732

Merged
merged 27 commits into from
Jan 3, 2024
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
ff39e74
rename test/test-files -> test/files
georglauterbach Dec 30, 2023
7a17b0b
rename nc_templates -> nc
georglauterbach Dec 30, 2023
7474be8
create structure for emails
georglauterbach Dec 30, 2023
9c76307
use swaks now instead of nc
georglauterbach Dec 30, 2023
9c9b2f2
move e-mails and adjust contents slightly
georglauterbach Dec 30, 2023
f55de24
adjust tests to use new functions
georglauterbach Dec 30, 2023
9e29a54
fixed serial tests and openssl invocations
georglauterbach Dec 30, 2023
394eace
appyl PR feedback
georglauterbach Dec 31, 2023
09d623f
fixup linters and smaller address errors
georglauterbach Dec 31, 2023
abdbd6c
Apply suggestions from code review
georglauterbach Jan 1, 2024
1a65775
avoid `.txt` suffix for `_nc_wrapper`
georglauterbach Jan 1, 2024
74b7d9d
add `--data <FILE>` instead of implictly using last argument
georglauterbach Jan 1, 2024
070152b
switch to EHLO from HELO
georglauterbach Jan 1, 2024
5212bd4
revert useless changes
georglauterbach Jan 1, 2024
aa0a16b
added additional asserts
georglauterbach Jan 1, 2024
aa6d0c5
adjust F2B test
georglauterbach Jan 1, 2024
2a477bf
remove superflous auth files & shorten IMAP tests
georglauterbach Jan 1, 2024
59d09ab
minor fixups & converions (_send_mail -> _nc_wrapper)
georglauterbach Jan 1, 2024
6012176
final conversions for LDAP tests
georglauterbach Jan 1, 2024
5b6954a
last fixups & praise be linters
georglauterbach Jan 1, 2024
addcbdd
tests(fix): `PERMIT_DOCKER=container` required for sending mail
polarathene Jan 2, 2024
f7d3def
simplify F2B test for mutiple failed logins
georglauterbach Jan 2, 2024
f2c4c01
remove superflous files that are easy to remove
georglauterbach Jan 2, 2024
2414ee7
update CHANGELOG
georglauterbach Jan 2, 2024
c86c3dd
final adjustments
georglauterbach Jan 2, 2024
0eecd29
Apply suggestions from code review
polarathene Jan 3, 2024
c1f7991
Merge branch 'master' into tests/swaks
polarathene Jan 3, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
*.yml text
### Documentation (Project, Tests, Docs site)
*.md text
### TLS certs (test/test-files/) + DHE params (target/shared/)
### TLS certs (test/files/) + DHE params (target/shared/)
*.pem text
*.pem.sha512sum text

Expand Down Expand Up @@ -90,9 +90,9 @@ TrustedHosts text
whitelist_recipients text

## MISC
### test/config/ + test/test-files/
### test/config/ + test/files/
*.txt text
### test/linting/ (.ecrc.json) + test/test-files/ (*.acme.json):
### test/linting/ (.ecrc.json) + test/files/ (*.acme.json):
*.json text

#################################################
Expand Down
2 changes: 1 addition & 1 deletion target/scripts/build/packages.sh
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ function _install_packages() {
# `bind9-dnsutils` provides the `dig` command
# `iputils-ping` provides the `ping` command
DEBUG_PACKAGES=(
bind9-dnsutils iputils-ping less nano
bind9-dnsutils iputils-ping less nano swaks
)

apt-get "${QUIET}" --no-install-recommends install \
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,13 +1,7 @@
HELO mail.external.tld
MAIL FROM: spam@external.tld
RCPT TO: user1@localhost.localdomain
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message amavis-spam.txt
Subject: Test Message amavis/spam.txt

This is a test mail.
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
HELO mail.external.tld
MAIL FROM: virus@external.tld
RCPT TO: user1@localhost.localdomain
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
DATA
From: Docker Mail Server <dockermailserver@external.tld>
From: Docker Mail Server <example-user@example.test>
To: Existing Local User <user1@localhost.localdomain>
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message amavis-virus.txt
Subject: Test Message amavis/virus.txt

Content-type: multipart/mixed; boundary="emailboundary"
MIME-version: 1.0
Expand All @@ -27,6 +23,3 @@ ACAA/4EAAAAAZWljYXIuY29tUEsFBgAAAAABAAEANwAAAGsAAAAAAA==


--emailboundary--

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,14 +1,5 @@
EHLO mail
AUTH LOGIN dXNlcjFAbG9jYWxob3N0LmxvY2FsZG9tYWlu
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
bXlwYXNzd29yZA==
MAIL FROM: alias1@localhost.localdomain
RCPT TO: user1@localhost.localdomain
DATA
From: user1_alias <alias1@localhost.localdomain>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,14 +1,5 @@
EHLO mail
AUTH LOGIN YWRkZWRAbG9jYWxob3N0LmxvY2FsZG9tYWlu
bXlwYXNzd29yZA==
MAIL FROM: user2@localhost.localdomain
RCPT TO: user1@localhost.localdomain
DATA
From: Not_My_Business <user2@localhost.localdomain>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,15 +1,5 @@
EHLO mail
AUTH LOGIN
c29tZS51c2VyQGxvY2FsaG9zdC5sb2NhbGRvbWFpbg==
c2VjcmV0
MAIL FROM: postmaster@localhost.localdomain
RCPT TO: some.user@localhost.localdomain
DATA
From: alias_address <postmaster@localhost.localdomain>
To: Existing Local User <some.user@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message
This is a test mail from ldap-smtp-auth-spoofed-alias.txt

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,15 +1,5 @@
EHLO mail
AUTH LOGIN
c29tZS51c2VyLmVtYWlsQGxvY2FsaG9zdC5sb2NhbGRvbWFpbgo=
c2VjcmV0
MAIL FROM: randomspoofedaddress@localhost.localdomain
RCPT TO: some.user@localhost.localdomain
DATA
From: spoofed_address <randomspoofedaddress@localhost.localdomain>
To: Existing Local User <some.user@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message
This is a test mail from ldap-smtp-auth-spoofed-sender-with-filter-exception.txt

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,15 +1,5 @@
EHLO mail
AUTH LOGIN
c29tZS51c2VyQGxvY2FsaG9zdC5sb2NhbGRvbWFpbg==
c2VjcmV0
MAIL FROM: ldap@localhost.localdomain
RCPT TO: user1@localhost.localdomain
DATA
From: forged_address <ldap@localhost.localdomain>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: added@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <added@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-added.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: alias1@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <alias1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-alias-external.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: alias2@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local Alias <alias2@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-alias-local.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: alias1~test@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local Alias With Delimiter <alias1+test@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-alias-recipient-delimiter.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: wildcard@localdomain2.com
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <wildcard@localdomain2.com>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-catchall-local.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: bounce-always@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <bounce-always@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-regexp-alias-external.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: test123@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <test123@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-regexp-alias-local.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,13 +1,6 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: user1@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <user1@localhost.localdomain>
Cc: Existing Local Alias <alias2@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-user-and-cc-local-alias.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: user1@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-user1.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: user2@otherdomain.tld
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <user2@otherdomain.tld>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message existing-user2.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: user3@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:33 -0400
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: nouser@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message non-existing-user.txt
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: user1@localhost.localdomain
DATA
From: Docker Mail Server <dockermailserver@external.tld>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Postgrey Test Message
This is a test mail.

.
QUIT
This is a test mail.
5 changes: 5 additions & 0 deletions test/files/emails/postscreen.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
From: Docker Mail Server <example-user@example.test>
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message postscreen.txt
This is a test mail for postscreen.
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -1,15 +1,6 @@
EHLO mail
AUTH LOGIN dXNlcjFAbG9jYWxob3N0LmxvY2FsZG9tYWlu
bXlwYXNzd29yZA==
mail from: <user1@localhost.localdomain>
rcpt to: <user1@localhost.localdomain>
data
From: Some User <user1@localhost.localdomain>
To: Some User <user1@localhost.localdomain>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0)
Gecko/20100101 Thunderbird/52.2.1
Subject: Test ESMTP Auth LOGIN and remove privacy
This is a test mail.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
HELO mail.external.tld
MAIL FROM: user@external.tld
RCPT TO: quotauser@otherdomain.tld
DATA
From: Docker Mail Server <user@external.tld>
From: Docker Mail Server <example-user@example.test>
To: Existing Local User <quotauser@otherdomain.tld>
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message saturating your mailbox
Subject: Test message saturating your mailbox

polarathene marked this conversation as resolved.
Show resolved Hide resolved
This is a test mail with a lot of data
georglauterbach marked this conversation as resolved.
Show resolved Hide resolved
Lorem ipsum dolor sit amet. Et quidem architecto id Quis saepe vel corporis odit aut nesciunt nisi. Et voluptatem exercitationem ut enim veritatis et nostrum optio aut magni eius et perspiciatis magnam et ipsam illo. 33 inventore unde est voluptatem exercitationem aut dolores nesciunt aut porro facere voluptatem quisquam hic corrupti culpa. 33 dicta sapiente eum rerum harum aut facere nobis in expedita debitis. Hic velit provident et laborum debitis eos tempore quaerat et iste tempora ut perferendis enim rem maxime incidunt qui quas sequi. Et voluptate enim qui explicabo tempora quo sint sequi sit enim quam aut eaque placeat At maiores doloribus. Qui doloremque consequatur eos voluptates ipsa eum placeat internos est eius internos ut aperiam necessitatibus et excepturi neque a nobis praesentium. Non alias omnis qui eaque dignissimos ea voluptates maiores aut inventore nihil. Ut quaerat voluptatem qui assumenda labore et magni harum sed possimus sint et minus voluptatibus eum veritatis error eos minus eaque! Qui commodi explicabo eos repellat enim hic nisi commodi qui nulla rerum hic debitis tempore. Qui autem praesentium ab cupiditate accusantium velit voluptatibus. Aut tempore molestiae qui doloribus molestias aut ipsum obcaecati At laborum asperiores qui sint architecto. Et voluptatem porro ut repellendus odio eum voluptatem facere cum mollitia obcaecati aut tempore adipisci hic quisquam aliquam. Ad mollitia amet a accusantium magni At provident obcaecati id laudantium odit et dolorum voluptatum!

Expand All @@ -20,6 +17,3 @@ Et voluptatum nobis ut odio voluptatem et quibusdam fugit ut libero sapiente vel
Sit sint obcaecati et reiciendis tenetur aut dolorum culpa. Ab veritatis maxime qui necessitatibus facilis eum voluptate asperiores non totam omnis. Nam modi officia in reiciendis odit sit rerum laudantium est rerum voluptatem ut fugit cupiditate! Sit atque sint aut delectus omnis ut asperiores enim quo reprehenderit quae! In quasi nemo ut error totam ut quia harum ut commodi tenetur? Non quod dolorum eum explicabo labore vel asperiores quas est perferendis nulla eum nemo tenetur. Ut libero blanditiis ex voluptatibus repudiandae ab reiciendis nemo id debitis impedit hic quia incidunt sed quam excepturi ut magnam odit. Qui dolor deleniti aut sunt voluptas aut blanditiis distinctio nam omnis deleniti hic omnis rerum eum magni voluptatem. Nam labore facere eum molestiae dolorum ea consectetur praesentium ut cupiditate iste ad magnam aut neque maiores! Et excepturi ducimus ut nemo voluptas eum voluptas nihil hic perferendis quos vel quasi nesciunt est praesentium dolore hic quia quis. Et maxime ducimus ea cupiditate voluptatem ad quia dolores!

Sed quos quaerat vel aperiam minus non sapiente quia ut ratione dolore eum officiis rerum. Non dolor vitae qui facilis dignissimos aut voluptate odit et ullam consequuntur. Et laudantium perspiciatis sit nisi temporibus a temporibus itaque ut iure dolor a voluptatum mollitia eos officia nobis et quibusdam voluptas. Amet eligendi eos nulla corporis et blanditiis nihil vel eveniet veritatis et sunt perferendis id molestiae eius! Quo harum quod aut nemo autem ut adipisci sint sed quia sunt. Aut voluptas error ut quae perferendis eos adipisci internos. Nam rerum fugiat aut minima nostrum quo repellendus quas exercitationem tenetur. Et molestiae architecto id quibusdam reprehenderit et magnam aliquam! Quo tempora veritatis At dolorem sint ex nulla blanditiis At voluptas laudantium est molestiae exercitationem et sequi voluptates aut ipsa atque. Et animi ipsum aut atque recusandae ea nemo ullam non quisquam quos sit libero sint vel libero delectus. Eos labore quidem a velit obcaecati nam explicabo consequatur eos maxime blanditiis? Et ipsam molestiae non quia explicabo ex galisum repudiandae et tempora veniam. Sed optio repellendus ut consequatur temporibus et harum quas hic ipsa officia? Aut dolores ipsum sit nulla dignissimos id quia perferendis aut dolores dolor et quibusdam porro aut Quis consequatur.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.external.tld
MAIL FROM: pass@example.test
RCPT TO: user1@localhost.localdomain
DATA
From: Docker Mail Server <pass@example.test>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 22 May 2010 07:43:25 -0400
Subject: Test Message rspamd-pass.txt
Subject: Test Message rspamd/pass.txt
This mail should pass and Rspamd should not mark it.

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.example.test
MAIL FROM: spam-header@example.test
RCPT TO: user1@localhost.localdomain
DATA
From: Docker Mail Server <spam-header@example.test>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 21 Jan 2023 11:11:11 +0000
Subject: Test Message rspamd-spam-header.txt
YJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

.
QUIT
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
HELO mail.example.test
MAIL FROM: spam@example.test
RCPT TO: user1@localhost.localdomain
DATA
From: Docker Mail Server <spam@example.test>
To: Existing Local User <user1@localhost.localdomain>
Date: Sat, 21 Jan 2023 11:11:11 +0000
Subject: Test Message rspamd-spam.txt
XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

.
QUIT
Loading
Loading