diff options
| author | David Woodhouse <dwmw2@infradead.org> | 2004-09-06 23:50:58 -0700 |
|---|---|---|
| committer | Patrick McHardy <kaber@trash.net> | 2004-09-06 23:50:58 -0700 |
| commit | aeb2cc38c4d50ca1fc4a8815c7eba8bb8eb14059 (patch) | |
| tree | 7c8f74431d1056f49083903bb73c0102c38ba531 /include/linux/raid | |
| parent | 7ad9cf1c3ef14cd0cf165dcf76d52d25855ea15b (diff) | |
[NET]: Fix compat layer setsockopt overzealous conversions.
compat_sys_setsockopt() is a little overzealous about converting 32-bit
stuff into 64-bit. It should match on level _and_ optname, not just
optname. Currently it eats the IPV6_V6ONLY sockopt because its value
(26) happens to match SO_ATTACH_FILTER.
This makes it at least check 'level' for everything but
IPT_SO_SET_REPLACE == IPT6_SO_SET_REPLACE, because that does seem to be
the same in different levels. But do_netfilter_replace() is another can
of worms entirely -- it doesn't actually work either, because some
netfilter modules (like ipt_limit) include kernel-only bits which change
size in the structure they share with userspace.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/raid')
0 files changed, 0 insertions, 0 deletions
