bpfilter: switch bpfilter_ip_set_sockopt to sockptr_t
[linux-2.6-microblaze.git] / net / ipv4 / bpfilter / sockopt.c
index 9063c67..1b34cb9 100644 (file)
@@ -21,8 +21,7 @@ void bpfilter_umh_cleanup(struct umd_info *info)
 }
 EXPORT_SYMBOL_GPL(bpfilter_umh_cleanup);
 
-static int bpfilter_mbox_request(struct sock *sk, int optname,
-                                char __user *optval,
+static int bpfilter_mbox_request(struct sock *sk, int optname, sockptr_t optval,
                                 unsigned int optlen, bool is_set)
 {
        int err;
@@ -52,7 +51,7 @@ out:
        return err;
 }
 
-int bpfilter_ip_set_sockopt(struct sock *sk, int optname, char __user *optval,
+int bpfilter_ip_set_sockopt(struct sock *sk, int optname, sockptr_t optval,
                            unsigned int optlen)
 {
        return bpfilter_mbox_request(sk, optname, optval, optlen, true);
@@ -66,7 +65,8 @@ int bpfilter_ip_get_sockopt(struct sock *sk, int optname, char __user *optval,
        if (get_user(len, optlen))
                return -EFAULT;
 
-       return bpfilter_mbox_request(sk, optname, optval, len, false);
+       return bpfilter_mbox_request(sk, optname, USER_SOCKPTR(optval), len,
+                                    false);
 }
 
 static int __init bpfilter_sockopt_init(void)