openvswitch.h revision 8cb52b056cfc302e05304d847c4228dff15715cf
1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19#ifndef _UAPI__LINUX_OPENVSWITCH_H 20#define _UAPI__LINUX_OPENVSWITCH_H 1 21#include <linux/types.h> 22#include <linux/if_ether.h> 23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24struct ovs_header { 25 int dp_ifindex; 26}; 27#define OVS_DATAPATH_FAMILY "ovs_datapath" 28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29#define OVS_DATAPATH_MCGROUP "ovs_datapath" 30#define OVS_DATAPATH_VERSION 0x1 31enum ovs_datapath_cmd { 32 OVS_DP_CMD_UNSPEC, 33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 OVS_DP_CMD_NEW, 35 OVS_DP_CMD_DEL, 36 OVS_DP_CMD_GET, 37 OVS_DP_CMD_SET 38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39}; 40enum ovs_datapath_attr { 41 OVS_DP_ATTR_UNSPEC, 42 OVS_DP_ATTR_NAME, 43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 OVS_DP_ATTR_UPCALL_PID, 45 OVS_DP_ATTR_STATS, 46 __OVS_DP_ATTR_MAX 47}; 48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49#define OVS_DP_ATTR_MAX (__OVS_DP_ATTR_MAX - 1) 50struct ovs_dp_stats { 51 __u64 n_hit; 52 __u64 n_missed; 53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 __u64 n_lost; 55 __u64 n_flows; 56}; 57struct ovs_vport_stats { 58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 __u64 rx_packets; 60 __u64 tx_packets; 61 __u64 rx_bytes; 62 __u64 tx_bytes; 63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 __u64 rx_errors; 65 __u64 tx_errors; 66 __u64 rx_dropped; 67 __u64 tx_dropped; 68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69}; 70#define OVSP_LOCAL ((__u32)0) 71#define OVS_PACKET_FAMILY "ovs_packet" 72#define OVS_PACKET_VERSION 0x1 73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74enum ovs_packet_cmd { 75 OVS_PACKET_CMD_UNSPEC, 76 OVS_PACKET_CMD_MISS, 77 OVS_PACKET_CMD_ACTION, 78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 OVS_PACKET_CMD_EXECUTE 80}; 81enum ovs_packet_attr { 82 OVS_PACKET_ATTR_UNSPEC, 83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 OVS_PACKET_ATTR_PACKET, 85 OVS_PACKET_ATTR_KEY, 86 OVS_PACKET_ATTR_ACTIONS, 87 OVS_PACKET_ATTR_USERDATA, 88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 __OVS_PACKET_ATTR_MAX 90}; 91#define OVS_PACKET_ATTR_MAX (__OVS_PACKET_ATTR_MAX - 1) 92#define OVS_VPORT_FAMILY "ovs_vport" 93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94#define OVS_VPORT_MCGROUP "ovs_vport" 95#define OVS_VPORT_VERSION 0x1 96enum ovs_vport_cmd { 97 OVS_VPORT_CMD_UNSPEC, 98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 OVS_VPORT_CMD_NEW, 100 OVS_VPORT_CMD_DEL, 101 OVS_VPORT_CMD_GET, 102 OVS_VPORT_CMD_SET 103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104}; 105enum ovs_vport_type { 106 OVS_VPORT_TYPE_UNSPEC, 107 OVS_VPORT_TYPE_NETDEV, 108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 OVS_VPORT_TYPE_INTERNAL, 110 __OVS_VPORT_TYPE_MAX 111}; 112#define OVS_VPORT_TYPE_MAX (__OVS_VPORT_TYPE_MAX - 1) 113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114enum ovs_vport_attr { 115 OVS_VPORT_ATTR_UNSPEC, 116 OVS_VPORT_ATTR_PORT_NO, 117 OVS_VPORT_ATTR_TYPE, 118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 OVS_VPORT_ATTR_NAME, 120 OVS_VPORT_ATTR_OPTIONS, 121 OVS_VPORT_ATTR_UPCALL_PID, 122 OVS_VPORT_ATTR_STATS, 123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124 __OVS_VPORT_ATTR_MAX 125}; 126#define OVS_VPORT_ATTR_MAX (__OVS_VPORT_ATTR_MAX - 1) 127#define OVS_FLOW_FAMILY "ovs_flow" 128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129#define OVS_FLOW_MCGROUP "ovs_flow" 130#define OVS_FLOW_VERSION 0x1 131enum ovs_flow_cmd { 132 OVS_FLOW_CMD_UNSPEC, 133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 OVS_FLOW_CMD_NEW, 135 OVS_FLOW_CMD_DEL, 136 OVS_FLOW_CMD_GET, 137 OVS_FLOW_CMD_SET 138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139}; 140struct ovs_flow_stats { 141 __u64 n_packets; 142 __u64 n_bytes; 143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144}; 145enum ovs_key_attr { 146 OVS_KEY_ATTR_UNSPEC, 147 OVS_KEY_ATTR_ENCAP, 148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 OVS_KEY_ATTR_PRIORITY, 150 OVS_KEY_ATTR_IN_PORT, 151 OVS_KEY_ATTR_ETHERNET, 152 OVS_KEY_ATTR_VLAN, 153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 OVS_KEY_ATTR_ETHERTYPE, 155 OVS_KEY_ATTR_IPV4, 156 OVS_KEY_ATTR_IPV6, 157 OVS_KEY_ATTR_TCP, 158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 OVS_KEY_ATTR_UDP, 160 OVS_KEY_ATTR_ICMP, 161 OVS_KEY_ATTR_ICMPV6, 162 OVS_KEY_ATTR_ARP, 163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 OVS_KEY_ATTR_ND, 165 OVS_KEY_ATTR_SKB_MARK, 166 __OVS_KEY_ATTR_MAX 167}; 168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169#define OVS_KEY_ATTR_MAX (__OVS_KEY_ATTR_MAX - 1) 170enum ovs_frag_type { 171 OVS_FRAG_TYPE_NONE, 172 OVS_FRAG_TYPE_FIRST, 173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 OVS_FRAG_TYPE_LATER, 175 __OVS_FRAG_TYPE_MAX 176}; 177#define OVS_FRAG_TYPE_MAX (__OVS_FRAG_TYPE_MAX - 1) 178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179struct ovs_key_ethernet { 180 __u8 eth_src[ETH_ALEN]; 181 __u8 eth_dst[ETH_ALEN]; 182}; 183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184struct ovs_key_ipv4 { 185 __be32 ipv4_src; 186 __be32 ipv4_dst; 187 __u8 ipv4_proto; 188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189 __u8 ipv4_tos; 190 __u8 ipv4_ttl; 191 __u8 ipv4_frag; 192}; 193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194struct ovs_key_ipv6 { 195 __be32 ipv6_src[4]; 196 __be32 ipv6_dst[4]; 197 __be32 ipv6_label; 198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199 __u8 ipv6_proto; 200 __u8 ipv6_tclass; 201 __u8 ipv6_hlimit; 202 __u8 ipv6_frag; 203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204}; 205struct ovs_key_tcp { 206 __be16 tcp_src; 207 __be16 tcp_dst; 208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209}; 210struct ovs_key_udp { 211 __be16 udp_src; 212 __be16 udp_dst; 213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214}; 215struct ovs_key_icmp { 216 __u8 icmp_type; 217 __u8 icmp_code; 218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219}; 220struct ovs_key_icmpv6 { 221 __u8 icmpv6_type; 222 __u8 icmpv6_code; 223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224}; 225struct ovs_key_arp { 226 __be32 arp_sip; 227 __be32 arp_tip; 228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229 __be16 arp_op; 230 __u8 arp_sha[ETH_ALEN]; 231 __u8 arp_tha[ETH_ALEN]; 232}; 233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 234struct ovs_key_nd { 235 __u32 nd_target[4]; 236 __u8 nd_sll[ETH_ALEN]; 237 __u8 nd_tll[ETH_ALEN]; 238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 239}; 240enum ovs_flow_attr { 241 OVS_FLOW_ATTR_UNSPEC, 242 OVS_FLOW_ATTR_KEY, 243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244 OVS_FLOW_ATTR_ACTIONS, 245 OVS_FLOW_ATTR_STATS, 246 OVS_FLOW_ATTR_TCP_FLAGS, 247 OVS_FLOW_ATTR_USED, 248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 249 OVS_FLOW_ATTR_CLEAR, 250 __OVS_FLOW_ATTR_MAX 251}; 252#define OVS_FLOW_ATTR_MAX (__OVS_FLOW_ATTR_MAX - 1) 253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254enum ovs_sample_attr { 255 OVS_SAMPLE_ATTR_UNSPEC, 256 OVS_SAMPLE_ATTR_PROBABILITY, 257 OVS_SAMPLE_ATTR_ACTIONS, 258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 259 __OVS_SAMPLE_ATTR_MAX, 260}; 261#define OVS_SAMPLE_ATTR_MAX (__OVS_SAMPLE_ATTR_MAX - 1) 262enum ovs_userspace_attr { 263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 264 OVS_USERSPACE_ATTR_UNSPEC, 265 OVS_USERSPACE_ATTR_PID, 266 OVS_USERSPACE_ATTR_USERDATA, 267 __OVS_USERSPACE_ATTR_MAX 268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 269}; 270#define OVS_USERSPACE_ATTR_MAX (__OVS_USERSPACE_ATTR_MAX - 1) 271struct ovs_action_push_vlan { 272 __be16 vlan_tpid; 273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 274 __be16 vlan_tci; 275}; 276enum ovs_action_attr { 277 OVS_ACTION_ATTR_UNSPEC, 278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 279 OVS_ACTION_ATTR_OUTPUT, 280 OVS_ACTION_ATTR_USERSPACE, 281 OVS_ACTION_ATTR_SET, 282 OVS_ACTION_ATTR_PUSH_VLAN, 283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 284 OVS_ACTION_ATTR_POP_VLAN, 285 OVS_ACTION_ATTR_SAMPLE, 286 __OVS_ACTION_ATTR_MAX 287}; 288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 289#define OVS_ACTION_ATTR_MAX (__OVS_ACTION_ATTR_MAX - 1) 290#endif 291