]>
Commit | Line | Data |
---|---|---|
c0dda186 TG |
1 | %{ |
2 | #include <stddef.h> | |
3 | #include "conf-parser.h" | |
634f0f98 | 4 | #include "network-internal.h" |
441e9ae4 TG |
5 | #include "netdev/bond.h" |
6 | #include "netdev/bridge.h" | |
7 | #include "netdev/ipvlan.h" | |
8 | #include "netdev/macvlan.h" | |
9 | #include "netdev/tunnel.h" | |
10 | #include "netdev/tuntap.h" | |
11 | #include "netdev/veth.h" | |
12 | #include "netdev/vlan.h" | |
13 | #include "netdev/vxlan.h" | |
14 | #include "netdev/vrf.h" | |
15 | #include "netdev/netdev.h" | |
267fabd2 | 16 | #include "vlan-util.h" |
c0dda186 TG |
17 | %} |
18 | struct ConfigPerfItem; | |
19 | %null_strings | |
20 | %language=ANSI-C | |
21 | %define slot-name section_and_lvalue | |
22 | %define hash-function-name network_netdev_gperf_hash | |
23 | %define lookup-function-name network_netdev_gperf_lookup | |
24 | %readonly-tables | |
25 | %omit-struct-type | |
26 | %struct-type | |
27 | %includes | |
28 | %% | |
38422da7 SS |
29 | Match.Host, config_parse_net_condition, CONDITION_HOST, offsetof(NetDev, match_host) |
30 | Match.Virtualization, config_parse_net_condition, CONDITION_VIRTUALIZATION, offsetof(NetDev, match_virt) | |
31 | Match.KernelCommandLine, config_parse_net_condition, CONDITION_KERNEL_COMMAND_LINE, offsetof(NetDev, match_kernel) | |
32 | Match.Architecture, config_parse_net_condition, CONDITION_ARCHITECTURE, offsetof(NetDev, match_arch) | |
33 | NetDev.Description, config_parse_string, 0, offsetof(NetDev, description) | |
34 | NetDev.Name, config_parse_ifname, 0, offsetof(NetDev, ifname) | |
35 | NetDev.Kind, config_parse_netdev_kind, 0, offsetof(NetDev, kind) | |
36 | NetDev.MTUBytes, config_parse_iec_size, 0, offsetof(NetDev, mtu) | |
37 | NetDev.MACAddress, config_parse_hwaddr, 0, offsetof(NetDev, mac) | |
267fabd2 | 38 | VLAN.Id, config_parse_vlanid, 0, offsetof(VLan, id) |
38422da7 | 39 | MACVLAN.Mode, config_parse_macvlan_mode, 0, offsetof(MacVlan, mode) |
f33ff02b | 40 | MACVTAP.Mode, config_parse_macvlan_mode, 0, offsetof(MacVlan, mode) |
38422da7 SS |
41 | IPVLAN.Mode, config_parse_ipvlan_mode, 0, offsetof(IPVlan, mode) |
42 | Tunnel.Local, config_parse_tunnel_address, 0, offsetof(Tunnel, local) | |
43 | Tunnel.Remote, config_parse_tunnel_address, 0, offsetof(Tunnel, remote) | |
44 | Tunnel.TOS, config_parse_unsigned, 0, offsetof(Tunnel, tos) | |
45 | Tunnel.TTL, config_parse_unsigned, 0, offsetof(Tunnel, ttl) | |
1d710029 SS |
46 | Tunnel.Key, config_parse_tunnel_key, 0, offsetof(Tunnel, key) |
47 | Tunnel.InputKey, config_parse_tunnel_key, 0, offsetof(Tunnel, ikey) | |
48 | Tunnel.OutputKey, config_parse_tunnel_key, 0, offsetof(Tunnel, okey) | |
38422da7 SS |
49 | Tunnel.DiscoverPathMTU, config_parse_bool, 0, offsetof(Tunnel, pmtudisc) |
50 | Tunnel.Mode, config_parse_ip6tnl_mode, 0, offsetof(Tunnel, ip6tnl_mode) | |
407af9dd | 51 | Tunnel.IPv6FlowLabel, config_parse_ipv6_flowlabel, 0, offsetof(Tunnel, ipv6_flowlabel) |
a9b70f9d | 52 | Tunnel.CopyDSCP, config_parse_bool, 0, offsetof(Tunnel, copy_dscp) |
b4828886 | 53 | Tunnel.EncapsulationLimit, config_parse_encap_limit, 0, offsetof(Tunnel, encap_limit) |
38422da7 SS |
54 | Peer.Name, config_parse_ifname, 0, offsetof(Veth, ifname_peer) |
55 | Peer.MACAddress, config_parse_hwaddr, 0, offsetof(Veth, mac_peer) | |
56 | VXLAN.Id, config_parse_uint64, 0, offsetof(VxLan, id) | |
57 | VXLAN.Group, config_parse_vxlan_group_address, 0, offsetof(VxLan, group) | |
58 | VXLAN.TOS, config_parse_unsigned, 0, offsetof(VxLan, tos) | |
59 | VXLAN.TTL, config_parse_unsigned, 0, offsetof(VxLan, ttl) | |
60 | VXLAN.MacLearning, config_parse_bool, 0, offsetof(VxLan, learning) | |
61 | VXLAN.ARPProxy, config_parse_bool, 0, offsetof(VxLan, arp_proxy) | |
7dd6974c | 62 | VXLAN.ReduceARPProxy, config_parse_bool, 0, offsetof(VxLan, arp_proxy) |
38422da7 SS |
63 | VXLAN.L2MissNotification, config_parse_bool, 0, offsetof(VxLan, l2miss) |
64 | VXLAN.L3MissNotification, config_parse_bool, 0, offsetof(VxLan, l3miss) | |
65 | VXLAN.RouteShortCircuit, config_parse_bool, 0, offsetof(VxLan, route_short_circuit) | |
66 | VXLAN.UDPCheckSum, config_parse_bool, 0, offsetof(VxLan, udpcsum) | |
53c06862 | 67 | VXLAN.UDPChecksum, config_parse_bool, 0, offsetof(VxLan, udpcsum) |
38422da7 | 68 | VXLAN.UDP6ZeroCheckSumRx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumrx) |
53c06862 | 69 | VXLAN.UDP6ZeroChecksumRx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumrx) |
38422da7 | 70 | VXLAN.UDP6ZeroCheckSumTx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumtx) |
53c06862 SS |
71 | VXLAN.UDP6ZeroChecksumTx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumtx) |
72 | VXLAN.RemoteChecksumTx, config_parse_bool, 0, offsetof(VxLan, remote_csum_tx) | |
73 | VXLAN.RemoteChecksumRx, config_parse_bool, 0, offsetof(VxLan, remote_csum_rx) | |
38422da7 | 74 | VXLAN.FDBAgeingSec, config_parse_sec, 0, offsetof(VxLan, fdb_ageing) |
ea84fd5c | 75 | VXLAN.GroupPolicyExtension, config_parse_bool, 0, offsetof(VxLan, group_policy) |
3dbcf579 | 76 | VXLAN.MaximumFDBEntries, config_parse_unsigned, 0, offsetof(VxLan, max_fdb) |
ea0288d1 SS |
77 | VXLAN.PortRange, config_parse_port_range, 0, 0 |
78 | VXLAN.DestinationPort, config_parse_destination_port, 0, offsetof(VxLan, dest_port) | |
38422da7 SS |
79 | Tun.OneQueue, config_parse_bool, 0, offsetof(TunTap, one_queue) |
80 | Tun.MultiQueue, config_parse_bool, 0, offsetof(TunTap, multi_queue) | |
81 | Tun.PacketInfo, config_parse_bool, 0, offsetof(TunTap, packet_info) | |
82 | Tun.User, config_parse_string, 0, offsetof(TunTap, user_name) | |
83 | Tun.Group, config_parse_string, 0, offsetof(TunTap, group_name) | |
84 | Tap.OneQueue, config_parse_bool, 0, offsetof(TunTap, one_queue) | |
85 | Tap.MultiQueue, config_parse_bool, 0, offsetof(TunTap, multi_queue) | |
86 | Tap.PacketInfo, config_parse_bool, 0, offsetof(TunTap, packet_info) | |
2aba142e | 87 | Tap.VNetHeader, config_parse_bool, 0, offsetof(TunTap, vnet_hdr) |
38422da7 SS |
88 | Tap.User, config_parse_string, 0, offsetof(TunTap, user_name) |
89 | Tap.Group, config_parse_string, 0, offsetof(TunTap, group_name) | |
90 | Bond.Mode, config_parse_bond_mode, 0, offsetof(Bond, mode) | |
91 | Bond.TransmitHashPolicy, config_parse_bond_xmit_hash_policy, 0, offsetof(Bond, xmit_hash_policy) | |
92 | Bond.LACPTransmitRate, config_parse_bond_lacp_rate, 0, offsetof(Bond, lacp_rate) | |
93 | Bond.AdSelect, config_parse_bond_ad_select, 0, offsetof(Bond, ad_select) | |
94 | Bond.FailOverMACPolicy, config_parse_bond_fail_over_mac, 0, offsetof(Bond, fail_over_mac) | |
95 | Bond.ARPIPTargets, config_parse_arp_ip_target_address, 0, 0 | |
96 | Bond.ARPValidate, config_parse_bond_arp_validate, 0, offsetof(Bond, arp_validate) | |
97 | Bond.ARPAllTargets, config_parse_bond_arp_all_targets, 0, offsetof(Bond, arp_all_targets) | |
98 | Bond.PrimaryReselectPolicy, config_parse_bond_primary_reselect, 0, offsetof(Bond, primary_reselect) | |
99 | Bond.ResendIGMP, config_parse_unsigned, 0, offsetof(Bond, resend_igmp) | |
100 | Bond.PacketsPerSlave, config_parse_unsigned, 0, offsetof(Bond, packets_per_slave) | |
101 | Bond.GratuitousARP, config_parse_unsigned, 0, offsetof(Bond, num_grat_arp) | |
102 | Bond.AllSlavesActive, config_parse_unsigned, 0, offsetof(Bond, all_slaves_active) | |
103 | Bond.MinLinks, config_parse_unsigned, 0, offsetof(Bond, min_links) | |
104 | Bond.MIIMonitorSec, config_parse_sec, 0, offsetof(Bond, miimon) | |
105 | Bond.UpDelaySec, config_parse_sec, 0, offsetof(Bond, updelay) | |
106 | Bond.DownDelaySec, config_parse_sec, 0, offsetof(Bond, downdelay) | |
107 | Bond.ARPIntervalSec, config_parse_sec, 0, offsetof(Bond, arp_interval) | |
108 | Bond.LearnPacketIntervalSec, config_parse_sec, 0, offsetof(Bond, lp_interval) | |
540eb5f0 SS |
109 | Bridge.HelloTimeSec, config_parse_sec, 0, offsetof(Bridge, hello_time) |
110 | Bridge.MaxAgeSec, config_parse_sec, 0, offsetof(Bridge, max_age) | |
c7440e74 | 111 | Bridge.AgeingTimeSec, config_parse_sec, 0, offsetof(Bridge, ageing_time) |
540eb5f0 | 112 | Bridge.ForwardDelaySec, config_parse_sec, 0, offsetof(Bridge, forward_delay) |
c7440e74 TJ |
113 | Bridge.Priority, config_parse_uint16, 0, offsetof(Bridge, priority) |
114 | Bridge.DefaultPVID, config_parse_vlanid, 0, offsetof(Bridge, default_pvid) | |
3fef7a3f | 115 | Bridge.MulticastQuerier, config_parse_tristate, 0, offsetof(Bridge, mcast_querier) |
6df6d898 | 116 | Bridge.MulticastSnooping, config_parse_tristate, 0, offsetof(Bridge, mcast_snooping) |
c6f8d17d | 117 | Bridge.VLANFiltering, config_parse_tristate, 0, offsetof(Bridge, vlan_filtering) |
b760a9af | 118 | Bridge.STP, config_parse_tristate, 0, offsetof(Bridge, stp) |
20897a0d | 119 | VRF.TableId, config_parse_uint32, 0, offsetof(Vrf, table_id) |