MSA doesn't require port 587, and some hosts may not support it. A solution would be for Mailman to try port 587 by default - if the connection times out or is dropped, fall back to port 25. The result of the attempt should be cached (per host), so that subsequent deliveries are not delayed. The cache could expire (say daily or weekly) so that changes in the host configuration are picked up, but that might cause deliverability issues if port 587 is opened, but Mailman fails some policy test on the host.
MSA doesn't require port 587, and some hosts may not support it. A solution would be for Mailman to try port 587 by default - if the connection times out or is dropped, fall back to port 25. The result of the attempt should be cached (per host), so that subsequent deliveries are not delayed. The cache could expire (say daily or weekly) so that changes in the host configuration are picked up, but that might cause deliverability issues if port 587 is opened, but Mailman fails some policy test on the host.