diff options
author | Al Viro <viro@ftp.linux.org.uk> | 2006-09-25 02:42:20 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-25 02:55:03 +0400 |
commit | 3e597c6045502dd0fa98a61aa95ba178f8a2cc03 (patch) | |
tree | 61d8994ed00550ae641e2a5743e072a1c02654fb | |
parent | 1db2ea398ffbfd9ea46d509ff0e4a85bb4b8c0ea (diff) | |
download | linux-3e597c6045502dd0fa98a61aa95ba178f8a2cc03.tar.xz |
[PATCH] fix iptables __user misannotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | include/linux/netfilter/x_tables.h | 4 | ||||
-rw-r--r-- | net/ipv4/netfilter/ip_tables.c | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/include/linux/netfilter/x_tables.h b/include/linux/netfilter/x_tables.h index 739a98eebe2c..04319a76103a 100644 --- a/include/linux/netfilter/x_tables.h +++ b/include/linux/netfilter/x_tables.h @@ -390,13 +390,13 @@ extern int xt_compat_match_offset(struct xt_match *match); extern void xt_compat_match_from_user(struct xt_entry_match *m, void **dstptr, int *size); extern int xt_compat_match_to_user(struct xt_entry_match *m, - void * __user *dstptr, int *size); + void __user **dstptr, int *size); extern int xt_compat_target_offset(struct xt_target *target); extern void xt_compat_target_from_user(struct xt_entry_target *t, void **dstptr, int *size); extern int xt_compat_target_to_user(struct xt_entry_target *t, - void * __user *dstptr, int *size); + void __user **dstptr, int *size); #endif /* CONFIG_COMPAT */ #endif /* __KERNEL__ */ diff --git a/net/ipv4/netfilter/ip_tables.c b/net/ipv4/netfilter/ip_tables.c index 800067d69a9a..78a44b01c035 100644 --- a/net/ipv4/netfilter/ip_tables.c +++ b/net/ipv4/netfilter/ip_tables.c @@ -1364,15 +1364,15 @@ struct compat_ipt_replace { }; static inline int compat_copy_match_to_user(struct ipt_entry_match *m, - void * __user *dstptr, compat_uint_t *size) + void __user **dstptr, compat_uint_t *size) { return xt_compat_match_to_user(m, dstptr, size); } static int compat_copy_entry_to_user(struct ipt_entry *e, - void * __user *dstptr, compat_uint_t *size) + void __user **dstptr, compat_uint_t *size) { - struct ipt_entry_target __user *t; + struct ipt_entry_target *t; struct compat_ipt_entry __user *ce; u_int16_t target_offset, next_offset; compat_uint_t origsize; |