chiark / gitweb /
networkd: add support for bond options
[elogind.git] / src / network / networkd-netdev-gperf.gperf
1 %{
2 #include <stddef.h>
3 #include "conf-parser.h"
4 #include "networkd-netdev.h"
5 #include "networkd-netdev-tunnel.h"
6 #include "networkd-netdev-bond.h"
7 #include "networkd-netdev-macvlan.h"
8 #include "network-internal.h"
9 %}
10 struct ConfigPerfItem;
11 %null_strings
12 %language=ANSI-C
13 %define slot-name section_and_lvalue
14 %define hash-function-name network_netdev_gperf_hash
15 %define lookup-function-name network_netdev_gperf_lookup
16 %readonly-tables
17 %omit-struct-type
18 %struct-type
19 %includes
20 %%
21 Match.Host,              config_parse_net_condition,         CONDITION_HOST,                offsetof(NetDev, match_host)
22 Match.Virtualization,    config_parse_net_condition,         CONDITION_VIRTUALIZATION,      offsetof(NetDev, match_virt)
23 Match.KernelCommandLine, config_parse_net_condition,         CONDITION_KERNEL_COMMAND_LINE, offsetof(NetDev, match_kernel)
24 Match.Architecture,      config_parse_net_condition,         CONDITION_ARCHITECTURE,        offsetof(NetDev, match_arch)
25 NetDev.Description,      config_parse_string,                0,                             offsetof(NetDev, description)
26 NetDev.Name,             config_parse_ifname,                0,                             offsetof(NetDev, ifname)
27 NetDev.Kind,             config_parse_netdev_kind,           0,                             offsetof(NetDev, kind)
28 NetDev.MTUBytes,         config_parse_iec_size,              0,                             offsetof(NetDev, mtu)
29 NetDev.MACAddress,       config_parse_hwaddr,                0,                             offsetof(NetDev, mac)
30 VLAN.Id,                 config_parse_uint64,                0,                             offsetof(VLan, id)
31 MACVLAN.Mode,            config_parse_macvlan_mode,          0,                             offsetof(MacVlan, mode)
32 Tunnel.Local,            config_parse_tunnel_address,        0,                             offsetof(Tunnel, local)
33 Tunnel.Remote,           config_parse_tunnel_address,        0,                             offsetof(Tunnel, remote)
34 Tunnel.TOS,              config_parse_unsigned,              0,                             offsetof(Tunnel, tos)
35 Tunnel.TTL,              config_parse_unsigned,              0,                             offsetof(Tunnel, ttl)
36 Tunnel.DiscoverPathMTU,  config_parse_bool,                  0,                             offsetof(Tunnel, pmtudisc)
37 Peer.Name,               config_parse_ifname,                0,                             offsetof(Veth, ifname_peer)
38 Peer.MACAddress,         config_parse_hwaddr,                0,                             offsetof(Veth, mac_peer)
39 VXLAN.Id,                config_parse_uint64,                0,                             offsetof(VxLan, id)
40 VXLAN.Group,             config_parse_tunnel_address,        0,                             offsetof(VxLan, group)
41 VXLAN.TOS,               config_parse_unsigned,              0,                             offsetof(VxLan, tos)
42 VXLAN.TTL,               config_parse_unsigned,              0,                             offsetof(VxLan, ttl)
43 VXLAN.MacLearning,       config_parse_bool,                  0,                             offsetof(VxLan, learning)
44 Tun.OneQueue,            config_parse_bool,                  0,                             offsetof(TunTap, one_queue)
45 Tun.MultiQueue,          config_parse_bool,                  0,                             offsetof(TunTap, multi_queue)
46 Tun.PacketInfo,          config_parse_bool,                  0,                             offsetof(TunTap, packet_info)
47 Tun.User,                config_parse_string,                0,                             offsetof(TunTap, user_name)
48 Tun.Group,               config_parse_string,                0,                             offsetof(TunTap, group_name)
49 Tap.OneQueue,            config_parse_bool,                  0,                             offsetof(TunTap, one_queue)
50 Tap.MultiQueue,          config_parse_bool,                  0,                             offsetof(TunTap, multi_queue)
51 Tap.PacketInfo,          config_parse_bool,                  0,                             offsetof(TunTap, packet_info)
52 Tap.User,                config_parse_string,                0,                             offsetof(TunTap, user_name)
53 Tap.Group,               config_parse_string,                0,                             offsetof(TunTap, group_name)
54 Bond.Mode,               config_parse_bond_mode,             0,                             offsetof(Bond, mode)
55 Bond.TransmitHashPolicy, config_parse_bond_xmit_hash_policy, 0,                             offsetof(Bond, xmit_hash_policy)
56 Bond.LACPTransmitRate,   config_parse_bond_lacp_rate,        0,                             offsetof(Bond, lacp_rate)
57 Bond.MIIMonitorSec,      config_parse_sec,                   0,                             offsetof(Bond, miimon)
58 Bond.UpDelaySec,         config_parse_sec,                   0,                             offsetof(Bond, updelay)
59 Bond.DownDelaySec,       config_parse_sec,                   0,                             offsetof(Bond, downdelay)