Skip to content

Commit

Permalink
net/compat.c,linux/filter.h: share compat_sock_fprog
Browse files Browse the repository at this point in the history
Any other users of bpf_*_filter that take a struct sock_fprog from
userspace will need to be able to also accept a compat_sock_fprog
if the arch supports compat calls.  This change allows the existing
compat_sock_fprog be shared.

Signed-off-by: Will Drewry <[email protected]>
Acked-by: Serge Hallyn <[email protected]>
Acked-by: Eric Dumazet <[email protected]>
Acked-by: Eric Paris <[email protected]>

v18: tasered by the apostrophe police
v14: rebase/nochanges
v13: rebase on to 88ebdda
v12: rebase on to linux-next
v11: introduction
Signed-off-by: James Morris <[email protected]>
  • Loading branch information
redpig authored and James Morris committed Apr 14, 2012
1 parent 46b325c commit 0c5fe1b
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 8 deletions.
11 changes: 11 additions & 0 deletions include/linux/filter.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@

#ifdef __KERNEL__
#include <linux/atomic.h>
#include <linux/compat.h>
#endif

/*
Expand Down Expand Up @@ -132,6 +133,16 @@ struct sock_fprog { /* Required for SO_ATTACH_FILTER. */

#ifdef __KERNEL__

#ifdef CONFIG_COMPAT
/*
* A struct sock_filter is architecture independent.
*/
struct compat_sock_fprog {
u16 len;
compat_uptr_t filter; /* struct sock_filter * */
};
#endif

struct sk_buff;
struct sock;

Expand Down
8 changes: 0 additions & 8 deletions net/compat.c
Original file line number Diff line number Diff line change
Expand Up @@ -328,14 +328,6 @@ void scm_detach_fds_compat(struct msghdr *kmsg, struct scm_cookie *scm)
__scm_destroy(scm);
}

/*
* A struct sock_filter is architecture independent.
*/
struct compat_sock_fprog {
u16 len;
compat_uptr_t filter; /* struct sock_filter * */
};

static int do_set_attach_filter(struct socket *sock, int level, int optname,
char __user *optval, unsigned int optlen)
{
Expand Down

0 comments on commit 0c5fe1b

Please sign in to comment.