LCOV - code coverage report
Current view: top level - network/netdev - vxlan.h (source / functions) Hit Total Coverage
Test: main_coverage.info Lines: 0 1 0.0 %
Date: 2019-08-22 15:41:25 Functions: 0 1 0.0 %

          Line data    Source code
       1             : /* SPDX-License-Identifier: LGPL-2.1+ */
       2             : #pragma once
       3             : 
       4             : typedef struct VxLan VxLan;
       5             : 
       6             : #include <linux/if_link.h>
       7             : 
       8             : #include "in-addr-util.h"
       9             : #include "netdev/netdev.h"
      10             : 
      11             : #define VXLAN_VID_MAX (1u << 24) - 1
      12             : #define VXLAN_FLOW_LABEL_MAX_MASK 0xFFFFFU
      13             : 
      14             : typedef enum VxLanDF {
      15             :         NETDEV_VXLAN_DF_NO = VXLAN_DF_UNSET,
      16             :         NETDEV_VXLAN_DF_YES = VXLAN_DF_SET,
      17             :         NETDEV_VXLAN_DF_INHERIT = VXLAN_DF_INHERIT,
      18             :         _NETDEV_VXLAN_DF_MAX,
      19             :         _NETDEV_VXLAN_DF_INVALID = -1
      20             : } VxLanDF;
      21             : 
      22             : struct VxLan {
      23             :         NetDev meta;
      24             : 
      25             :         uint32_t vni;
      26             : 
      27             :         int remote_family;
      28             :         int local_family;
      29             :         int group_family;
      30             : 
      31             :         VxLanDF df;
      32             : 
      33             :         union in_addr_union remote;
      34             :         union in_addr_union local;
      35             :         union in_addr_union group;
      36             : 
      37             :         unsigned tos;
      38             :         unsigned ttl;
      39             :         unsigned max_fdb;
      40             :         unsigned flow_label;
      41             : 
      42             :         uint16_t dest_port;
      43             : 
      44             :         usec_t fdb_ageing;
      45             : 
      46             :         bool learning;
      47             :         bool arp_proxy;
      48             :         bool route_short_circuit;
      49             :         bool l2miss;
      50             :         bool l3miss;
      51             :         bool udpcsum;
      52             :         bool udp6zerocsumtx;
      53             :         bool udp6zerocsumrx;
      54             :         bool remote_csum_tx;
      55             :         bool remote_csum_rx;
      56             :         bool group_policy;
      57             :         bool generic_protocol_extension;
      58             :         bool inherit;
      59             : 
      60             :         struct ifla_vxlan_port_range port_range;
      61             : };
      62             : 
      63           0 : DEFINE_NETDEV_CAST(VXLAN, VxLan);
      64             : extern const NetDevVTable vxlan_vtable;
      65             : 
      66             : const char *df_to_string(VxLanDF d) _const_;
      67             : VxLanDF df_from_string(const char *d) _pure_;
      68             : 
      69             : CONFIG_PARSER_PROTOTYPE(config_parse_vxlan_address);
      70             : CONFIG_PARSER_PROTOTYPE(config_parse_port_range);
      71             : CONFIG_PARSER_PROTOTYPE(config_parse_flow_label);
      72             : CONFIG_PARSER_PROTOTYPE(config_parse_df);
      73             : CONFIG_PARSER_PROTOTYPE(config_parse_vxlan_ttl);

Generated by: LCOV version 1.14