Messages in this thread | | | Date | Wed, 4 Mar 2009 14:13:33 +0100 | From | Philipp Matthias Hahn <> | Subject | Re: /proc/sys/net/ip*/conf/all/* does not actually affect interfaces |
| |
Hello Martin!
On Tue, Mar 03, 2009 at 08:27:47PM +0100, martin f krafft wrote: > also sprach Philipp Matthias Hahn <pmhahn@titan.lahn.de> [2009.03.03.0800 +0100]:
> > Putting a new value in "all" doesn't change the value you read > > from "$interface", but it only gets computed and used internally. > > Hm, that clears it up... kinda. It does *not* explain by the RAs > were still accepted (ipv6.conf.all.accept_ra and .autoconf where > both 0), so unless those values are (wrongly) OR'd, I will need to > investigate this.
I took another look at http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=include/linux/inetdevice.h;hb=HEAD#l102
102 #define IN_DEV_RX_REDIRECTS(in_dev) \ 103 ((IN_DEV_FORWARD(in_dev) && \ 104 IN_DEV_ANDCONF((in_dev), ACCEPT_REDIRECTS)) \ 105 || (!IN_DEV_FORWARD(in_dev) && \ 106 IN_DEV_ORCONF((in_dev), ACCEPT_REDIRECTS)))
"accept_redirect" depends on "forwarding": If forwarding is enabled, it's ANDed, if it's disabled, it's ORed.
> > "all" on the other hand allways gets applied in addition to the current > > setting, but it depends on the exact setting, if its ORed, ANDed, or > > whatevered: > [...] > > Oh wow. This is very underdocumented.
Yes, I only can agree with you.
BYtE Phhilipp Hahn -- / / (_)__ __ ____ __ Philipp Hahn / /__/ / _ \/ // /\ \/ / /____/_/_//_/\_,_/ /_/\_\ pmhahn@titan.lahn.de
| |