lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 16 Jul 2007 15:01:49 +0200
From:	Patrick McHardy <kaber@...sh.net>
To:	Simon Arlott <simon@...e.lp0.eu>
CC:	Andrew Morton <akpm@...ux-foundation.org>, netdev@...r.kernel.org,
	"bugme-daemon@...nel-bugs.osdl.org" 
	<bugme-daemon@...nel-bugs.osdl.org>
Subject: Re: [Bugme-new] [Bug 8755] New: "ip -6 route change " behaves like
 "ip -6 route add"

Simon Arlott wrote:
> On 15/07/07 16:07, Patrick McHardy wrote:
> 
>>>>Changing an existing route:
>>>># ip -6 r show 2002::/16
>>>>2002::/16 dev sit0  metric 1024  expires 4482618sec mtu 1480 advmss 7140
>>>>hoplimit 4294967295
>>>># ip -6 r change 2002::/16 dev sit0 mtu 1280
>>>>RTNETLINK answers: File exists
> 
> ^ This is clearly a bug, since I'm trying to change an existing route
> and it gives an error as if it tried to add it.


Agreed.

>>>>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.

>>There is a difference between "add" and "change". "add" will only add a
>>new address if there isn't already one with the same identity, "change"
>>will allow to change attributes of an existing address, like flags,
>>lifetime, ..., or behave similar to "add" in case the address doesn't
>>already exist.
>>
>>What kind of behaviour are you expecting?
> 
> 
> That "change" would actually change not simply add. It won't let me
> change anything and in fact can only add instead.


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

> 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.
-
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ