From d31ae08379b30ec423eb529d3c31a8abcab86de2 2025-01-22 00:11:28 From: Branko Majic <branko@majic.rs> Date: 2025-01-22 00:11:28 Subject: [PATCH] MAR-233: Replace hping3 with nmap in mail_forwarder connectivity tests. --- diff --git a/roles/mail_forwarder/molecule/default/prepare.yml b/roles/mail_forwarder/molecule/default/prepare.yml index 35ebdd99197ee391d5c280ab2a514fe80284301e..20a61c1fddb92231e866d25bacb8e7f890520850 100644 --- a/roles/mail_forwarder/molecule/default/prepare.yml +++ b/roles/mail_forwarder/molecule/default/prepare.yml @@ -80,7 +80,7 @@ - name: Install tool for testing TCP connectivity ansible.builtin.apt: - name: hping3 + name: nmap state: present - name: Deploy CA certificate @@ -149,7 +149,7 @@ - name: Install tool for testing TCP connectivity ansible.builtin.apt: - name: hping3 + name: nmap state: present - name: Install SWAKS for testing SMTP capability diff --git a/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_client.py b/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_client.py index 703495cfde964c03e2f38a7dd6f29addc6bec518..e6e2920b784120e987516681d15040b24d05bda0 100644 --- a/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_client.py +++ b/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_client.py @@ -23,6 +23,6 @@ def test_connectivity_from_client(host, server): with host.sudo(): - ping = host.run('hping3 -S -p 25 -c 1 %s', server) - assert ping.rc != 0 - assert "100% packet loss" in ping.stderr + scan = host.run('nmap -4 -p 25 -oG - %s', server) + assert scan.rc == 0 + assert "Ports: 25/filtered/tcp//smtp/" in scan.stdout diff --git a/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_relay.py b/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_relay.py index 251a17182eb940ce7185c4298323d8220b96e8b8..9ae7a1cd3aa0879cba807f8f6d308d0935a76497 100644 --- a/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_relay.py +++ b/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_relay.py @@ -21,8 +21,9 @@ def test_connectivity_from_authorised_relay(host, server): with host.sudo(): - ping = host.run('hping3 -S -p 25 -c 1 %s', server) - assert ping.rc == 0 + scan = host.run('nmap -p 25 -oG - %s', server) + assert scan.rc == 0 + assert "Ports: 25/open/tcp//smtp/" in scan.stdout @pytest.mark.parametrize("server", @@ -37,9 +38,9 @@ def test_connectivity_from_unauthorised_relay(host, server): with host.sudo(): - ping = host.run('hping3 -S -p 25 -c 1 %s', server) - assert ping.rc != 0 - assert "100% packet loss" in ping.stderr + scan = host.run('nmap -p 25 -oG - %s', server) + assert scan.rc == 0 + assert "Ports: 25/filtered/tcp//smtp/" in scan.stdout @pytest.mark.parametrize("server",