chiark / gitweb /
networkd: netdev - add ipvlan support
[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 IPVLAN.Mode,              config_parse_ipvlan_mode,           0,                             offsetof(IPVlan, mode)
33 Tunnel.Local,             config_parse_tunnel_address,        0,                             offsetof(Tunnel, local)
34 Tunnel.Remote,            config_parse_tunnel_address,        0,                             offsetof(Tunnel, remote)
35 Tunnel.TOS,               config_parse_unsigned,              0,                             offsetof(Tunnel, tos)
36 Tunnel.TTL,               config_parse_unsigned,              0,                             offsetof(Tunnel, ttl)
37 Tunnel.DiscoverPathMTU,   config_parse_bool,                  0,                             offsetof(Tunnel, pmtudisc)
38 Peer.Name,                config_parse_ifname,                0,                             offsetof(Veth, ifname_peer)
39 Peer.MACAddress,          config_parse_hwaddr,                0,                             offsetof(Veth, mac_peer)
40 VXLAN.Id,                 config_parse_uint64,                0,                             offsetof(VxLan, id)
41 VXLAN.Group,              config_parse_vxlan_group_address,   0,                             offsetof(VxLan, group)
42 VXLAN.TOS,                config_parse_unsigned,              0,                             offsetof(VxLan, tos)
43 VXLAN.TTL,                config_parse_unsigned,              0,                             offsetof(VxLan, ttl)
44 VXLAN.MacLearning,        config_parse_bool,                  0,                             offsetof(VxLan, learning)
45 VXLAN.ARPProxy,           config_parse_bool,                  0,                             offsetof(VxLan, arp_proxy)
46 VXLAN.L2MissNotification, config_parse_bool,                  0,                             offsetof(VxLan, l2miss)
47 VXLAN.L3MissNotification, config_parse_bool,                  0,                             offsetof(VxLan, l3miss)
48 VXLAN.RouteShortCircuit,  config_parse_bool,                  0,                             offsetof(VxLan, route_short_circuit)
49 VXLAN.FDBAgeingSec,       config_parse_sec,                   0,                             offsetof(VxLan, fdb_ageing)
50 Tun.OneQueue,             config_parse_bool,                  0,                             offsetof(TunTap, one_queue)
51 Tun.MultiQueue,           config_parse_bool,                  0,                             offsetof(TunTap, multi_queue)
52 Tun.PacketInfo,           config_parse_bool,                  0,                             offsetof(TunTap, packet_info)
53 Tun.User,                 config_parse_string,                0,                             offsetof(TunTap, user_name)
54 Tun.Group,                config_parse_string,                0,                             offsetof(TunTap, group_name)
55 Tap.OneQueue,             config_parse_bool,                  0,                             offsetof(TunTap, one_queue)
56 Tap.MultiQueue,           config_parse_bool,                  0,                             offsetof(TunTap, multi_queue)
57 Tap.PacketInfo,           config_parse_bool,                  0,                             offsetof(TunTap, packet_info)
58 Tap.User,                 config_parse_string,                0,                             offsetof(TunTap, user_name)
59 Tap.Group,                config_parse_string,                0,                             offsetof(TunTap, group_name)
60 Bond.Mode,                config_parse_bond_mode,             0,                             offsetof(Bond, mode)
61 Bond.TransmitHashPolicy,  config_parse_bond_xmit_hash_policy, 0,                             offsetof(Bond, xmit_hash_policy)
62 Bond.LACPTransmitRate,    config_parse_bond_lacp_rate,        0,                             offsetof(Bond, lacp_rate)
63 Bond.MIIMonitorSec,       config_parse_sec,                   0,                             offsetof(Bond, miimon)
64 Bond.UpDelaySec,          config_parse_sec,                   0,                             offsetof(Bond, updelay)
65 Bond.DownDelaySec,        config_parse_sec,                   0,                             offsetof(Bond, downdelay)