Commit 516ffb6b7724e97ca035293dcfd9f94cf6ce3a47 says:

Stephen Hemminger [Thu, 22 May 2008 20:41:40 +0000 (13:41 -0700)]
> Use the standard POSIX inet_pton to convert from string to IPV4
> address. This avoids problems where ip parses "127.2" wrong.

Apparently inet_pton doesn't support abbreviated/shortened/classful
ipv4 addresses at all, but inet_aton does.
Since the function only deals with AF_INET anyway maybe using
inet_aton "to increse backwards compatability" (please those
who still want to use the format) could be considered?
(This will still not restore the 10/8 format which apparently used
to work in iproute, so people would have to settle for 10.0/8)

(See http://bugs.debian.org/497011)

diff --git a/lib/utils.c b/lib/utils.c
index a88f82b..21cf0ea 100644
--- a/lib/utils.c
+++ b/lib/utils.c
@@ -284,7 +284,7 @@ int get_addr_1(inet_prefix *addr, const char *name, int 
family)
        addr->family = AF_INET;
        if (family != AF_UNSPEC && family != AF_INET)
                return -1;
-       if (inet_pton(AF_INET, name, addr->data) <= 0)
+       if (inet_aton(name, addr->data) <= 0)
                return -1;
        addr->bytelen = 4;
        addr->bitlen = -1;




-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to