netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Simon Arlott <simon@fire.lp0.eu>
To: Patrick McHardy <kaber@trash.net>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	netdev@vger.kernel.org, bugme-daemon@bugzilla.kernel.org
Subject: Re: [Bugme-new] [Bug 8755] New: "ip -6 route change " behaves like "ip -6 route add"
Date: Mon, 16 Jul 2007 19:05:21 +0100	[thread overview]
Message-ID: <469BB361.10209@simon.arlott.org.uk> (raw)
In-Reply-To: <469B6C3D.3070807@trash.net>

[-- Attachment #1: Type: text/plain, Size: 1635 bytes --]

On 16/07/07 14:01, Patrick McHardy wrote:
> Simon Arlott wrote:
>> On 15/07/07 16:07, Patrick McHardy wrote:
>>>>>Adding a route using "change":
>>>>># ip -6 r change 2002::/17 dev sit0 mtu 1280
>>>>># ip -6 r show 2002::/17
>>>>>2002::/17 dev sit0  metric 1024  expires 21334368sec mtu 1280 advmss 1220
>>>>>hoplimit 4294967295
>> 
>> ^ This shouldn't be possible!
> 
> 
> That one will probably be impossible to fix since IPv6 has never checked
> for NLM_F_EXCL, doing to now might break things.

NLM_F_EXCL isn't used:
   if (matches(*argv, "add") == 0)
      return iproute_modify(RTM_NEWROUTE, NLM_F_CREATE|NLM_F_EXCL,

   if (matches(*argv, "change") == 0 || strcmp(*argv, "chg") == 0)
      return iproute_modify(RTM_NEWROUTE, NLM_F_REPLACE,

   if (matches(*argv, "replace") == 0)
      return iproute_modify(RTM_NEWROUTE, NLM_F_CREATE|NLM_F_REPLACE,

"test" only uses NLM_F_EXCL... I didn't even know that existed and it's
not shown in help text.


> The code looks like it would support it properly. Please add a
> few printks to inet6_rtm_newaddr to find out what goes wrong.

Ok.


>> Compare it to ipv4 where "change" never adds - "replace" is "change, or
>> add". (Also, "replace" doesn't work for v6 either).
> 
> 
> IPv4 doesn't check any netlink flags, so I don't think that is correct.

It looks like it works perfectly for add, change, and replace:
# ip r add 2.0.0.0/32 dev lo
# ip r change 3.0.0.0/32 dev lo
RTNETLINK answers: No such file or directory
# ip r replace 3.0.0.0/32 dev lo
# ip r change 2.0.0.0/32 dev lo mtu 100
# ip r
3.0.0.0 dev lo  scope link
2.0.0.0 dev lo  scope link  mtu 100

-- 
Simon Arlott

[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/x-pkcs7-signature, Size: 3623 bytes --]

  reply	other threads:[~2007-07-16 18:05 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <bug-8755-10286@http.bugzilla.kernel.org/>
2007-07-15  4:47 ` [Bugme-new] [Bug 8755] New: "ip -6 route change " behaves like "ip -6 route add" Andrew Morton
2007-07-15 15:07   ` Patrick McHardy
2007-07-15 18:49     ` Simon Arlott
2007-07-16 13:01       ` Patrick McHardy
2007-07-16 18:05         ` Simon Arlott [this message]
2007-07-19 18:29         ` Simon Arlott

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=469BB361.10209@simon.arlott.org.uk \
    --to=simon@fire.lp0.eu \
    --cc=akpm@linux-foundation.org \
    --cc=bugme-daemon@bugzilla.kernel.org \
    --cc=kaber@trash.net \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).