On Fri, 9 Dec 2005, Kjetil Torgrim Homme wrote:

> inet_addr has always behaved like this, and POSIX documents it:

That is something that I didn't know. Guess I've only been around Unix 
for 15 years. :-)

On Fri, 9 Dec 2005, John Jetmore wrote:

>    The  inet_addr()  function  converts  the Internet host address cp from
>    numbers-and-dots notation into binary data in network byte  order.   If
>    the input is invalid, INADDR_NONE (usually -1) is returned.  This is an
>    obsolete interface to inet_aton, described  immediately  above;  it  is
>    obsolete because -1 is a valid address (255.255.255.255), and inet_aton
>    provides a cleaner way to indicate error return.

In the context of Exim, this is worrying. Exim has always recognized 
only dotted quad, 4-component, IPv4 addresses. Of course it could be 
changed, but it now worries me that:

(a) 192.168.1/24   presumably means  192.168.1.0/24  (otherwise what's 
    the point of the 1?)
    
(b) 192.168.1      means  192.168.0.1

The inconsistency will confuse people (and as someone posted, already 
has).

My current inclination is to generate an error on encountering an 
incomplete IPv4 address.

Views? (Remembering that for all of Exim's life so far - 10 years - 
incomplete IPv4 addresses have probably mostly been treated as domain
names, and there hasn't been a huge outcry.)


-- 
Philip Hazel            University of Cambridge Computing Service,
[EMAIL PROTECTED]      Cambridge, England. Phone: +44 1223 334714.
Get the Exim 4 book:    http://www.uit.co.uk/exim-book

-- 
## List details at http://www.exim.org/mailman/listinfo/exim-users 
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://www.exim.org/eximwiki/

Reply via email to