1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __NETNS_MIB_H__
3 #define __NETNS_MIB_H__
4 
5 #include <net/snmp.h>
6 
7 struct netns_mib {
8 	DEFINE_SNMP_STAT(struct ipstats_mib, ip_statistics);
9 #if IS_ENABLED(CONFIG_IPV6)
10 	DEFINE_SNMP_STAT(struct ipstats_mib, ipv6_statistics);
11 #endif
12 
13 	DEFINE_SNMP_STAT(struct tcp_mib, tcp_statistics);
14 	DEFINE_SNMP_STAT(struct linux_mib, net_statistics);
15 
16 	DEFINE_SNMP_STAT(struct udp_mib, udp_statistics);
17 #if IS_ENABLED(CONFIG_IPV6)
18 	DEFINE_SNMP_STAT(struct udp_mib, udp_stats_in6);
19 #endif
20 
21 #ifdef CONFIG_XFRM_STATISTICS
22 	DEFINE_SNMP_STAT(struct linux_xfrm_mib, xfrm_statistics);
23 #endif
24 #if IS_ENABLED(CONFIG_TLS)
25 	DEFINE_SNMP_STAT(struct linux_tls_mib, tls_statistics);
26 #endif
27 #ifdef CONFIG_MPTCP
28 	DEFINE_SNMP_STAT(struct mptcp_mib, mptcp_statistics);
29 #endif
30 
31 	DEFINE_SNMP_STAT(struct udp_mib, udplite_statistics);
32 #if IS_ENABLED(CONFIG_IPV6)
33 	DEFINE_SNMP_STAT(struct udp_mib, udplite_stats_in6);
34 #endif
35 
36 	DEFINE_SNMP_STAT(struct icmp_mib, icmp_statistics);
37 	DEFINE_SNMP_STAT_ATOMIC(struct icmpmsg_mib, icmpmsg_statistics);
38 #if IS_ENABLED(CONFIG_IPV6)
39 	DEFINE_SNMP_STAT(struct icmpv6_mib, icmpv6_statistics);
40 	DEFINE_SNMP_STAT_ATOMIC(struct icmpv6msg_mib, icmpv6msg_statistics);
41 	struct proc_dir_entry *proc_net_devsnmp6;
42 #endif
43 };
44 
45 #endif
46