diff options
author | David S. Miller <davem@davemloft.net> | 2010-12-23 20:03:57 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-12-23 20:03:57 (GMT) |
commit | e058464990c2ef1f3ecd6b83a154913c3c06f02a (patch) | |
tree | 1c949b22d8ed6ac0c1419f2bf2c372d8833b41d4 /include | |
parent | 0e214ad81545a35c5e62a4c2d6cf7275fd7a545f (diff) | |
download | linux-e058464990c2ef1f3ecd6b83a154913c3c06f02a.tar.xz |
Revert "ipv4: Allow configuring subnets as local addresses"
This reverts commit 4465b469008bc03b98a1b8df4e9ae501b6c69d4b.
Conflicts:
net/ipv4/fib_frontend.c
As reported by Ben Greear, this causes regressions:
> Change 4465b469008bc03b98a1b8df4e9ae501b6c69d4b caused rules
> to stop matching the input device properly because the
> FLOWI_FLAG_MATCH_ANY_IIF is always defined in ip_dev_find().
>
> This breaks rules such as:
>
> ip rule add pref 512 lookup local
> ip rule del pref 0 lookup local
> ip link set eth2 up
> ip -4 addr add 172.16.0.102/24 broadcast 172.16.0.255 dev eth2
> ip rule add to 172.16.0.102 iif eth2 lookup local pref 10
> ip rule add iif eth2 lookup 10001 pref 20
> ip route add 172.16.0.0/24 dev eth2 table 10001
> ip route add unreachable 0/0 table 10001
>
> If you had a second interface 'eth0' that was on a different
> subnet, pinging a system on that interface would fail:
>
> [root@ct503-60 ~]# ping 192.168.100.1
> connect: Invalid argument
Reported-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/flow.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/include/net/flow.h b/include/net/flow.h index 0ac3fb5e..bb08692 100644 --- a/include/net/flow.h +++ b/include/net/flow.h @@ -49,7 +49,6 @@ struct flowi { __u8 proto; __u8 flags; #define FLOWI_FLAG_ANYSRC 0x01 -#define FLOWI_FLAG_MATCH_ANY_IIF 0x02 union { struct { __be16 sport; |