On 07/06/2013 12:10, Nikolas Kallis wrote:

Notice helo equals '37.212.64.248' - an address literal.

Please READ the RFC. That form is INVALID.

I think you are referring to the square brackets - I knew about them. I
didn't pick up the logic in the system message. Sorry.


Never the less, '37.212.64.248' is not a domain name, so
'reject_non_fqdn_helo_host name' should not have taken action over it.

Yes, it should. With one exception, a HELO must be either a fully qualified domain name, or an address literal. '37.212.64.248' is not a domain name at all, therefore it cannot be a fully qualified domain name (since the latter is a subset of the former), and it isn't an address literal. Therefore, 'reject_non_fqdn_helo_host name' correctly acts to reject it.

'37.212.64.248' should have been '[37.212.64.248]', and was therefore
malformed. 'reject_invalid_helo_hostname' should have handled it.

'37.212.64.248' is a valid hostname. There is no requirement that hostnames are not all-numeric. The fact that it is possible for a syntactically valid all-numeric hostname to look exactly the same as an IP address is the reason why an IP address needs to be enclosed in square brackets in order to make it clear that it is an address literal and not a hostname.

Obviously, an all-numeric hostname cannot be a fully qualified domain name, so it will be rejected by 'reject_non_fqdn_helo_host name'. But it won't be rejected by 'reject_invalid_helo_hostname'.

Mark
--
My blog: http://mark.goodge.co.uk

Reply via email to