[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4CEBEF7C.2060806@iki.fi>
Date: Tue, 23 Nov 2010 18:44:44 +0200
From: Timo Teräs <timo.teras@....fi>
To: Stephen Hemminger <shemminger@...ux-foundation.org>
CC: netdev@...r.kernel.org
Subject: Re: [PATCH] iproute2: support xfrm upper protocol gre key
On 11/23/2010 06:24 PM, Stephen Hemminger wrote:
> On Tue, 23 Nov 2010 17:02:39 +0200
> Timo Teräs <timo.teras@....fi> wrote:
>
>> + case IPPROTO_GRE:
>> + if (sel->sport_mask || sel->dport_mask) {
>> + struct in_addr key;
>> + key.s_addr = htonl((ntohs(sel->sport) << 16) + ntohs(sel->dport));
>> + inet_ntop(AF_INET, &key, abuf, sizeof(abuf));
>> + fprintf(fp, "key %s ", abuf);
>> + }
>
> The GRE key is not really an IPv4 address. Why should the utilities
> use IPv4 address manipulation to format/scan it. It makes more sense
> to me to just use u32 an do the necessary ntohl.
This is pretty much how iptunnel.c does it, so I copied the code. Would
you prefer to format it as single u32 number? Or use something else for
formatting it similar to IPv4?
In either case, we should change iptunnel.c to match ipxfrm.c. It'll be
easier if both parts handling the gre key treat it equivalently.
I think Cisco does indeed treat it as u32 number in the configurations.
So I'm okay updating this patch, and fixing iptunnel.c side too. We
might still want to keep the parsing of ipv4 format to keep backwards
compatibility.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists