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

          Line data    Source code
       1             : /* SPDX-License-Identifier: LGPL-2.1+ */
       2             : #pragma once
       3             : 
       4             : /***
       5             :   Copyright © 2014 Intel Corporation. All rights reserved.
       6             : ***/
       7             : 
       8             : #include <linux/neighbour.h>
       9             : 
      10             : #include "conf-parser.h"
      11             : #include "list.h"
      12             : #include "macro.h"
      13             : #include "networkd-util.h"
      14             : 
      15             : typedef struct Network Network;
      16             : typedef struct FdbEntry FdbEntry;
      17             : typedef struct Link Link;
      18             : typedef struct NetworkConfigSection NetworkConfigSection;
      19             : 
      20             : typedef enum NeighborCacheEntryFlags {
      21             :         NEIGHBOR_CACHE_ENTRY_FLAGS_USE = NTF_USE,
      22             :         NEIGHBOR_CACHE_ENTRY_FLAGS_SELF = NTF_SELF,
      23             :         NEIGHBOR_CACHE_ENTRY_FLAGS_MASTER = NTF_MASTER,
      24             :         NEIGHBOR_CACHE_ENTRY_FLAGS_ROUTER = NTF_ROUTER,
      25             :         _NEIGHBOR_CACHE_ENTRY_FLAGS_MAX,
      26             :         _NEIGHBOR_CACHE_ENTRY_FLAGS_INVALID = -1,
      27             : } NeighborCacheEntryFlags;
      28             : 
      29             : struct FdbEntry {
      30             :         Network *network;
      31             :         NetworkConfigSection *section;
      32             : 
      33             :         uint32_t vni;
      34             : 
      35             :         int family;
      36             :         uint16_t vlan_id;
      37             : 
      38             :         struct ether_addr mac_addr;
      39             :         union in_addr_union destination_addr;
      40             :         NeighborCacheEntryFlags fdb_ntf_flags;
      41             : 
      42             :         LIST_FIELDS(FdbEntry, static_fdb_entries);
      43             : };
      44             : 
      45             : void fdb_entry_free(FdbEntry *fdb_entry);
      46             : int fdb_entry_configure(Link *link, FdbEntry *fdb_entry);
      47             : 
      48           0 : DEFINE_NETWORK_SECTION_FUNCTIONS(FdbEntry, fdb_entry_free);
      49             : 
      50             : const char* fdb_ntf_flags_to_string(NeighborCacheEntryFlags i) _const_;
      51             : NeighborCacheEntryFlags fdb_ntf_flags_from_string(const char *s) _pure_;
      52             : 
      53             : CONFIG_PARSER_PROTOTYPE(config_parse_fdb_hwaddr);
      54             : CONFIG_PARSER_PROTOTYPE(config_parse_fdb_vlan_id);
      55             : CONFIG_PARSER_PROTOTYPE(config_parse_fdb_destination);
      56             : CONFIG_PARSER_PROTOTYPE(config_parse_fdb_vxlan_vni);
      57             : CONFIG_PARSER_PROTOTYPE(config_parse_fdb_ntf_flags);

Generated by: LCOV version 1.14