net: Add read_sock proto_op
Add new function in proto_ops structure. This includes moving the typedef got sk_read_actor into net.h and removing the definition from tcp.h. Signed-off-by: Tom Herbert <tom@herbertland.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e19ac1578f
commit
0294b625ad
|
@ -25,6 +25,7 @@
|
||||||
#include <linux/kmemcheck.h>
|
#include <linux/kmemcheck.h>
|
||||||
#include <linux/rcupdate.h>
|
#include <linux/rcupdate.h>
|
||||||
#include <linux/once.h>
|
#include <linux/once.h>
|
||||||
|
#include <linux/fs.h>
|
||||||
|
|
||||||
#include <uapi/linux/net.h>
|
#include <uapi/linux/net.h>
|
||||||
|
|
||||||
|
@ -128,6 +129,9 @@ struct page;
|
||||||
struct sockaddr;
|
struct sockaddr;
|
||||||
struct msghdr;
|
struct msghdr;
|
||||||
struct module;
|
struct module;
|
||||||
|
struct sk_buff;
|
||||||
|
typedef int (*sk_read_actor_t)(read_descriptor_t *, struct sk_buff *,
|
||||||
|
unsigned int, size_t);
|
||||||
|
|
||||||
struct proto_ops {
|
struct proto_ops {
|
||||||
int family;
|
int family;
|
||||||
|
@ -186,6 +190,8 @@ struct proto_ops {
|
||||||
struct pipe_inode_info *pipe, size_t len, unsigned int flags);
|
struct pipe_inode_info *pipe, size_t len, unsigned int flags);
|
||||||
int (*set_peek_off)(struct sock *sk, int val);
|
int (*set_peek_off)(struct sock *sk, int val);
|
||||||
int (*peek_len)(struct socket *sock);
|
int (*peek_len)(struct socket *sock);
|
||||||
|
int (*read_sock)(struct sock *sk, read_descriptor_t *desc,
|
||||||
|
sk_read_actor_t recv_actor);
|
||||||
};
|
};
|
||||||
|
|
||||||
#define DECLARE_SOCKADDR(type, dst, src) \
|
#define DECLARE_SOCKADDR(type, dst, src) \
|
||||||
|
|
|
@ -603,8 +603,6 @@ static inline int tcp_bound_to_half_wnd(struct tcp_sock *tp, int pktsize)
|
||||||
void tcp_get_info(struct sock *, struct tcp_info *);
|
void tcp_get_info(struct sock *, struct tcp_info *);
|
||||||
|
|
||||||
/* Read 'sendfile()'-style from a TCP socket */
|
/* Read 'sendfile()'-style from a TCP socket */
|
||||||
typedef int (*sk_read_actor_t)(read_descriptor_t *, struct sk_buff *,
|
|
||||||
unsigned int, size_t);
|
|
||||||
int tcp_read_sock(struct sock *sk, read_descriptor_t *desc,
|
int tcp_read_sock(struct sock *sk, read_descriptor_t *desc,
|
||||||
sk_read_actor_t recv_actor);
|
sk_read_actor_t recv_actor);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue