diff options
author | Christoph Hellwig <hch@lst.de> | 2020-07-23 09:09:07 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-07-25 01:41:54 +0300 |
commit | a7b75c5a8c41445f33efb663887ff5f5c3b4454b (patch) | |
tree | a87e011ba3a0d76fda030b3a62080caa97fae1ef /include/linux/net.h | |
parent | d38d2b00ba64b3f2f30d70a7929000606d2c4509 (diff) | |
download | linux-a7b75c5a8c41445f33efb663887ff5f5c3b4454b.tar.xz |
net: pass a sockptr_t into ->setsockopt
Rework the remaining setsockopt code to pass a sockptr_t instead of a
plain user pointer. This removes the last remaining set_fs(KERNEL_DS)
outside of architecture specific code.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Stefan Schmidt <stefan@datenfreihafen.org> [ieee802154]
Acked-by: Matthieu Baerts <matthieu.baerts@tessares.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/net.h')
-rw-r--r-- | include/linux/net.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/include/linux/net.h b/include/linux/net.h index 858ff1d98154..d48ff1180879 100644 --- a/include/linux/net.h +++ b/include/linux/net.h @@ -21,6 +21,7 @@ #include <linux/rcupdate.h> #include <linux/once.h> #include <linux/fs.h> +#include <linux/sockptr.h> #include <uapi/linux/net.h> @@ -162,7 +163,8 @@ struct proto_ops { int (*listen) (struct socket *sock, int len); int (*shutdown) (struct socket *sock, int flags); int (*setsockopt)(struct socket *sock, int level, - int optname, char __user *optval, unsigned int optlen); + int optname, sockptr_t optval, + unsigned int optlen); int (*getsockopt)(struct socket *sock, int level, int optname, char __user *optval, int __user *optlen); void (*show_fdinfo)(struct seq_file *m, struct socket *sock); |