diff options
Diffstat (limited to 'tools/testing/selftests/bpf/network_helpers.h')
| -rw-r--r-- | tools/testing/selftests/bpf/network_helpers.h | 17 | 
1 files changed, 14 insertions, 3 deletions
diff --git a/tools/testing/selftests/bpf/network_helpers.h b/tools/testing/selftests/bpf/network_helpers.h index 94b9be24e39b..883c7ea9d8d5 100644 --- a/tools/testing/selftests/bpf/network_helpers.h +++ b/tools/testing/selftests/bpf/network_helpers.h @@ -9,14 +9,20 @@ typedef __u16 __sum16;  #include <linux/if_packet.h>  #include <linux/ip.h>  #include <linux/ipv6.h> +#include <linux/ethtool.h> +#include <linux/sockios.h> +#include <linux/err.h>  #include <netinet/tcp.h>  #include <bpf/bpf_endian.h> +#include <net/if.h>  #define MAGIC_VAL 0x1234  #define NUM_ITER 100000  #define VIP_NUM 5  #define MAGIC_BYTES 123 +struct post_socket_opts {}; +  struct network_helper_opts {  	const char *cc;  	int timeout_ms; @@ -24,6 +30,7 @@ struct network_helper_opts {  	bool noconnect;  	int type;  	int proto; +	int (*post_socket_cb)(int fd, const struct post_socket_opts *opts);  };  /* ipv4 test vector */ @@ -45,13 +52,14 @@ extern struct ipv6_packet pkt_v6;  int settimeo(int fd, int timeout_ms);  int start_server(int family, int type, const char *addr, __u16 port,  		 int timeout_ms); -int start_mptcp_server(int family, const char *addr, __u16 port, -		       int timeout_ms);  int *start_reuseport_server(int family, int type, const char *addr_str,  			    __u16 port, int timeout_ms,  			    unsigned int nr_listens); +int start_server_addr(int type, const struct sockaddr_storage *addr, socklen_t len, +		      const struct network_helper_opts *opts);  void free_fds(int *fds, unsigned int nr_close_fds); -int connect_to_addr(const struct sockaddr_storage *addr, socklen_t len, int type); +int connect_to_addr(int type, const struct sockaddr_storage *addr, socklen_t len, +		    const struct network_helper_opts *opts);  int connect_to_fd(int server_fd, int timeout_ms);  int connect_to_fd_opts(int server_fd, const struct network_helper_opts *opts);  int connect_fd_to_fd(int client_fd, int server_fd, int timeout_ms); @@ -61,6 +69,8 @@ int make_sockaddr(int family, const char *addr_str, __u16 port,  		  struct sockaddr_storage *addr, socklen_t *len);  char *ping_command(int family);  int get_socket_local_port(int sock_fd); +int get_hw_ring_size(char *ifname, struct ethtool_ringparam *ring_param); +int set_hw_ring_size(char *ifname, struct ethtool_ringparam *ring_param);  struct nstoken;  /** @@ -71,6 +81,7 @@ struct nstoken;   */  struct nstoken *open_netns(const char *name);  void close_netns(struct nstoken *token); +int send_recv_data(int lfd, int fd, uint32_t total_bytes);  static __u16 csum_fold(__u32 csum)  {  |