]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/network/netdev/netdev-gperf.gperf
network: warn when private key is stored in world readable files
[thirdparty/systemd.git] / src / network / netdev / netdev-gperf.gperf
CommitLineData
c0dda186 1%{
4831981d
SL
2#if __GNUC__ >= 7
3_Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"")
4#endif
c0dda186
TG
5#include <stddef.h>
6#include "conf-parser.h"
634f0f98 7#include "network-internal.h"
441e9ae4
TG
8#include "netdev/bond.h"
9#include "netdev/bridge.h"
6598e046 10#include "netdev/geneve.h"
441e9ae4 11#include "netdev/ipvlan.h"
81962db7 12#include "netdev/macsec.h"
441e9ae4
TG
13#include "netdev/macvlan.h"
14#include "netdev/tunnel.h"
15#include "netdev/tuntap.h"
16#include "netdev/veth.h"
17#include "netdev/vlan.h"
18#include "netdev/vxlan.h"
19#include "netdev/vrf.h"
20#include "netdev/netdev.h"
d6df583c 21#include "netdev/vxcan.h"
e5719363 22#include "netdev/wireguard.h"
53cb501a 23#include "netdev/fou-tunnel.h"
3a56e697 24#include "netdev/l2tp-tunnel.h"
267fabd2 25#include "vlan-util.h"
c0dda186
TG
26%}
27struct ConfigPerfItem;
28%null_strings
29%language=ANSI-C
30%define slot-name section_and_lvalue
31%define hash-function-name network_netdev_gperf_hash
32%define lookup-function-name network_netdev_gperf_lookup
33%readonly-tables
34%omit-struct-type
35%struct-type
36%includes
37%%
c4f58dea
YW
38Match.Host, config_parse_net_condition, CONDITION_HOST, offsetof(NetDev, conditions)
39Match.Virtualization, config_parse_net_condition, CONDITION_VIRTUALIZATION, offsetof(NetDev, conditions)
40Match.KernelCommandLine, config_parse_net_condition, CONDITION_KERNEL_COMMAND_LINE, offsetof(NetDev, conditions)
41Match.KernelVersion, config_parse_net_condition, CONDITION_KERNEL_VERSION, offsetof(NetDev, conditions)
42Match.Architecture, config_parse_net_condition, CONDITION_ARCHITECTURE, offsetof(NetDev, conditions)
e5719363
JT
43NetDev.Description, config_parse_string, 0, offsetof(NetDev, description)
44NetDev.Name, config_parse_ifname, 0, offsetof(NetDev, ifname)
45NetDev.Kind, config_parse_netdev_kind, 0, offsetof(NetDev, kind)
4e964aa0 46NetDev.MTUBytes, config_parse_mtu, AF_UNSPEC, offsetof(NetDev, mtu)
e5719363
JT
47NetDev.MACAddress, config_parse_hwaddr, 0, offsetof(NetDev, mac)
48VLAN.Id, config_parse_vlanid, 0, offsetof(VLan, id)
49VLAN.GVRP, config_parse_tristate, 0, offsetof(VLan, gvrp)
50VLAN.MVRP, config_parse_tristate, 0, offsetof(VLan, mvrp)
51VLAN.LooseBinding, config_parse_tristate, 0, offsetof(VLan, loose_binding)
52VLAN.ReorderHeader, config_parse_tristate, 0, offsetof(VLan, reorder_hdr)
53MACVLAN.Mode, config_parse_macvlan_mode, 0, offsetof(MacVlan, mode)
54MACVTAP.Mode, config_parse_macvlan_mode, 0, offsetof(MacVlan, mode)
55IPVLAN.Mode, config_parse_ipvlan_mode, 0, offsetof(IPVlan, mode)
4e964aa0 56IPVLAN.Flags, config_parse_ipvlan_flags, 0, offsetof(IPVlan, flags)
e5719363
JT
57Tunnel.Local, config_parse_tunnel_address, 0, offsetof(Tunnel, local)
58Tunnel.Remote, config_parse_tunnel_address, 0, offsetof(Tunnel, remote)
59Tunnel.TOS, config_parse_unsigned, 0, offsetof(Tunnel, tos)
60Tunnel.TTL, config_parse_unsigned, 0, offsetof(Tunnel, ttl)
61Tunnel.Key, config_parse_tunnel_key, 0, offsetof(Tunnel, key)
62Tunnel.InputKey, config_parse_tunnel_key, 0, offsetof(Tunnel, ikey)
63Tunnel.OutputKey, config_parse_tunnel_key, 0, offsetof(Tunnel, okey)
64Tunnel.DiscoverPathMTU, config_parse_bool, 0, offsetof(Tunnel, pmtudisc)
65Tunnel.Mode, config_parse_ip6tnl_mode, 0, offsetof(Tunnel, ip6tnl_mode)
66Tunnel.IPv6FlowLabel, config_parse_ipv6_flowlabel, 0, offsetof(Tunnel, ipv6_flowlabel)
67Tunnel.CopyDSCP, config_parse_bool, 0, offsetof(Tunnel, copy_dscp)
68Tunnel.EncapsulationLimit, config_parse_encap_limit, 0, offsetof(Tunnel, encap_limit)
69Tunnel.Independent, config_parse_bool, 0, offsetof(Tunnel, independent)
70Tunnel.AllowLocalRemote, config_parse_tristate, 0, offsetof(Tunnel, allow_localremote)
53cb501a
SS
71Tunnel.FooOverUDP, config_parse_bool, 0, offsetof(Tunnel, fou_tunnel)
72Tunnel.FOUDestinationPort, config_parse_ip_port, 0, offsetof(Tunnel, fou_destination_port)
73Tunnel.FOUSourcePort, config_parse_ip_port, 0, offsetof(Tunnel, encap_src_port)
74Tunnel.Encapsulation, config_parse_fou_encap_type, 0, offsetof(Tunnel, fou_encap_type)
d067cab3 75Tunnel.IPv6RapidDeploymentPrefix, config_parse_6rd_prefix, 0, 0
2266864b 76Tunnel.ERSPANIndex, config_parse_uint32, 0, offsetof(Tunnel, erspan_index)
a8b9a65c 77Tunnel.SerializeTunneledPackets, config_parse_tristate, 0, offsetof(Tunnel, gre_erspan_sequence)
918049ad 78Tunnel.ISATAP, config_parse_tristate, 0, offsetof(Tunnel, isatap)
7df5c6ba 79FooOverUDP.Protocol, config_parse_ip_protocol, 0, offsetof(FouTunnel, fou_protocol)
53cb501a
SS
80FooOverUDP.Encapsulation, config_parse_fou_encap_type, 0, offsetof(FouTunnel, fou_encap_type)
81FooOverUDP.Port, config_parse_ip_port, 0, offsetof(FouTunnel, port)
3a56e697
SS
82L2TP.TunnelId, config_parse_l2tp_tunnel_id, 0, offsetof(L2tpTunnel, tunnel_id)
83L2TP.PeerTunnelId, config_parse_l2tp_tunnel_id, 0, offsetof(L2tpTunnel, peer_tunnel_id)
84L2TP.UDPSourcePort, config_parse_ip_port, 0, offsetof(L2tpTunnel, l2tp_udp_sport)
85L2TP.UDPDestinationPort, config_parse_ip_port, 0, offsetof(L2tpTunnel, l2tp_udp_dport)
86L2TP.Local, config_parse_l2tp_tunnel_address, 0, offsetof(L2tpTunnel, local)
87L2TP.Remote, config_parse_l2tp_tunnel_address, 0, offsetof(L2tpTunnel, remote)
88L2TP.EncapsulationType, config_parse_l2tp_encap_type, 0, offsetof(L2tpTunnel, l2tp_encap_type)
89L2TP.UDPCheckSum, config_parse_bool, 0, offsetof(L2tpTunnel, udp_csum)
90L2TP.UDP6CheckSumRx, config_parse_bool, 0, offsetof(L2tpTunnel, udp6_csum_rx)
91L2TP.UDP6CheckSumTx, config_parse_bool, 0, offsetof(L2tpTunnel, udp6_csum_tx)
92L2TPSession.SessionId, config_parse_l2tp_session_id, 0, 0
93L2TPSession.PeerSessionId, config_parse_l2tp_session_id, 0, 0
94L2TPSession.Layer2SpecificHeader, config_parse_l2tp_session_l2spec, 0, 0
95L2TPSession.Name, config_parse_l2tp_session_name, 0, 0
e5719363
JT
96Peer.Name, config_parse_ifname, 0, offsetof(Veth, ifname_peer)
97Peer.MACAddress, config_parse_hwaddr, 0, offsetof(Veth, mac_peer)
98VXCAN.Peer, config_parse_ifname, 0, offsetof(VxCan, ifname_peer)
99VXLAN.Id, config_parse_uint64, 0, offsetof(VxLan, id)
100VXLAN.Group, config_parse_vxlan_address, 0, offsetof(VxLan, remote)
101VXLAN.Local, config_parse_vxlan_address, 0, offsetof(VxLan, local)
102VXLAN.Remote, config_parse_vxlan_address, 0, offsetof(VxLan, remote)
103VXLAN.TOS, config_parse_unsigned, 0, offsetof(VxLan, tos)
104VXLAN.TTL, config_parse_unsigned, 0, offsetof(VxLan, ttl)
105VXLAN.MacLearning, config_parse_bool, 0, offsetof(VxLan, learning)
106VXLAN.ARPProxy, config_parse_bool, 0, offsetof(VxLan, arp_proxy)
107VXLAN.ReduceARPProxy, config_parse_bool, 0, offsetof(VxLan, arp_proxy)
108VXLAN.L2MissNotification, config_parse_bool, 0, offsetof(VxLan, l2miss)
109VXLAN.L3MissNotification, config_parse_bool, 0, offsetof(VxLan, l3miss)
110VXLAN.RouteShortCircuit, config_parse_bool, 0, offsetof(VxLan, route_short_circuit)
111VXLAN.UDPCheckSum, config_parse_bool, 0, offsetof(VxLan, udpcsum)
112VXLAN.UDPChecksum, config_parse_bool, 0, offsetof(VxLan, udpcsum)
113VXLAN.UDP6ZeroCheckSumRx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumrx)
114VXLAN.UDP6ZeroChecksumRx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumrx)
115VXLAN.UDP6ZeroCheckSumTx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumtx)
116VXLAN.UDP6ZeroChecksumTx, config_parse_bool, 0, offsetof(VxLan, udp6zerocsumtx)
117VXLAN.RemoteChecksumTx, config_parse_bool, 0, offsetof(VxLan, remote_csum_tx)
118VXLAN.RemoteChecksumRx, config_parse_bool, 0, offsetof(VxLan, remote_csum_rx)
119VXLAN.FDBAgeingSec, config_parse_sec, 0, offsetof(VxLan, fdb_ageing)
120VXLAN.GroupPolicyExtension, config_parse_bool, 0, offsetof(VxLan, group_policy)
121VXLAN.MaximumFDBEntries, config_parse_unsigned, 0, offsetof(VxLan, max_fdb)
122VXLAN.PortRange, config_parse_port_range, 0, 0
123VXLAN.DestinationPort, config_parse_ip_port, 0, offsetof(VxLan, dest_port)
124VXLAN.FlowLabel, config_parse_flow_label, 0, 0
125GENEVE.Id, config_parse_geneve_vni, 0, offsetof(Geneve, id)
126GENEVE.Remote, config_parse_geneve_address, 0, offsetof(Geneve, remote)
127GENEVE.TOS, config_parse_uint8, 0, offsetof(Geneve, tos)
128GENEVE.TTL, config_parse_uint8, 0, offsetof(Geneve, ttl)
129GENEVE.UDPChecksum, config_parse_bool, 0, offsetof(Geneve, udpcsum)
130GENEVE.UDP6ZeroCheckSumRx, config_parse_bool, 0, offsetof(Geneve, udp6zerocsumrx)
6f1a96de 131GENEVE.UDP6ZeroChecksumRx, config_parse_bool, 0, offsetof(Geneve, udp6zerocsumrx)
e5719363 132GENEVE.UDP6ZeroCheckSumTx, config_parse_bool, 0, offsetof(Geneve, udp6zerocsumtx)
6f1a96de 133GENEVE.UDP6ZeroChecksumTx, config_parse_bool, 0, offsetof(Geneve, udp6zerocsumtx)
e5719363
JT
134GENEVE.DestinationPort, config_parse_ip_port, 0, offsetof(Geneve, dest_port)
135GENEVE.FlowLabel, config_parse_geneve_flow_label, 0, 0
81962db7
SS
136MACsec.Port, config_parse_macsec_port, 0, 0
137MACsec.Encrypt, config_parse_tristate, 0, offsetof(MACsec, encrypt)
138MACsecReceiveChannel.Port, config_parse_macsec_port, 0, 0
139MACsecReceiveChannel.MACAddress, config_parse_macsec_hw_address, 0, 0
140MACsecTransmitAssociation.PacketNumber, config_parse_macsec_packet_number, 0, 0
141MACsecTransmitAssociation.KeyId, config_parse_macsec_key_id, 0, 0
142MACsecTransmitAssociation.Key, config_parse_macsec_key, 0, 0
eb4705fb 143MACsecTransmitAssociation.KeyFile, config_parse_macsec_key_file, 0, 0
a7b9c52f 144MACsecTransmitAssociation.Activate, config_parse_macsec_sa_activate, 0, 0
b0e13c31 145MACsecTransmitAssociation.UseForEncoding, config_parse_macsec_use_for_encoding, 0, 0
81962db7
SS
146MACsecReceiveAssociation.Port, config_parse_macsec_port, 0, 0
147MACsecReceiveAssociation.MACAddress, config_parse_macsec_hw_address, 0, 0
148MACsecReceiveAssociation.PacketNumber, config_parse_macsec_packet_number, 0, 0
149MACsecReceiveAssociation.KeyId, config_parse_macsec_key_id, 0, 0
150MACsecReceiveAssociation.Key, config_parse_macsec_key, 0, 0
eb4705fb 151MACsecReceiveAssociation.KeyFile, config_parse_macsec_key_file, 0, 0
a7b9c52f 152MACsecReceiveAssociation.Activate, config_parse_macsec_sa_activate, 0, 0
e5719363
JT
153Tun.OneQueue, config_parse_bool, 0, offsetof(TunTap, one_queue)
154Tun.MultiQueue, config_parse_bool, 0, offsetof(TunTap, multi_queue)
155Tun.PacketInfo, config_parse_bool, 0, offsetof(TunTap, packet_info)
156Tun.User, config_parse_string, 0, offsetof(TunTap, user_name)
157Tun.Group, config_parse_string, 0, offsetof(TunTap, group_name)
158Tap.OneQueue, config_parse_bool, 0, offsetof(TunTap, one_queue)
159Tap.MultiQueue, config_parse_bool, 0, offsetof(TunTap, multi_queue)
160Tap.PacketInfo, config_parse_bool, 0, offsetof(TunTap, packet_info)
161Tap.VNetHeader, config_parse_bool, 0, offsetof(TunTap, vnet_hdr)
162Tap.User, config_parse_string, 0, offsetof(TunTap, user_name)
163Tap.Group, config_parse_string, 0, offsetof(TunTap, group_name)
164Bond.Mode, config_parse_bond_mode, 0, offsetof(Bond, mode)
165Bond.TransmitHashPolicy, config_parse_bond_xmit_hash_policy, 0, offsetof(Bond, xmit_hash_policy)
166Bond.LACPTransmitRate, config_parse_bond_lacp_rate, 0, offsetof(Bond, lacp_rate)
167Bond.AdSelect, config_parse_bond_ad_select, 0, offsetof(Bond, ad_select)
168Bond.FailOverMACPolicy, config_parse_bond_fail_over_mac, 0, offsetof(Bond, fail_over_mac)
169Bond.ARPIPTargets, config_parse_arp_ip_target_address, 0, 0
170Bond.ARPValidate, config_parse_bond_arp_validate, 0, offsetof(Bond, arp_validate)
171Bond.ARPAllTargets, config_parse_bond_arp_all_targets, 0, offsetof(Bond, arp_all_targets)
172Bond.PrimaryReselectPolicy, config_parse_bond_primary_reselect, 0, offsetof(Bond, primary_reselect)
173Bond.ResendIGMP, config_parse_unsigned, 0, offsetof(Bond, resend_igmp)
174Bond.PacketsPerSlave, config_parse_unsigned, 0, offsetof(Bond, packets_per_slave)
175Bond.GratuitousARP, config_parse_unsigned, 0, offsetof(Bond, num_grat_arp)
6d4efac2 176Bond.AllSlavesActive, config_parse_bool, 0, offsetof(Bond, all_slaves_active)
fde60a42 177Bond.DynamicTransmitLoadBalancing, config_parse_tristate, 0, offsetof(Bond, tlb_dynamic_lb)
e5719363
JT
178Bond.MinLinks, config_parse_unsigned, 0, offsetof(Bond, min_links)
179Bond.MIIMonitorSec, config_parse_sec, 0, offsetof(Bond, miimon)
180Bond.UpDelaySec, config_parse_sec, 0, offsetof(Bond, updelay)
181Bond.DownDelaySec, config_parse_sec, 0, offsetof(Bond, downdelay)
182Bond.ARPIntervalSec, config_parse_sec, 0, offsetof(Bond, arp_interval)
183Bond.LearnPacketIntervalSec, config_parse_sec, 0, offsetof(Bond, lp_interval)
db688b7e 184Bond.AdActorSystemPriority, config_parse_ad_actor_sys_prio, 0, offsetof(Bond, ad_actor_sys_prio)
99f68ef0
TJ
185Bond.AdUserPortKey, config_parse_ad_user_port_key, 0, offsetof(Bond, ad_user_port_key)
186Bond.AdActorSystem, config_parse_ad_actor_system, 0, offsetof(Bond, ad_actor_system)
e5719363
JT
187Bridge.HelloTimeSec, config_parse_sec, 0, offsetof(Bridge, hello_time)
188Bridge.MaxAgeSec, config_parse_sec, 0, offsetof(Bridge, max_age)
189Bridge.AgeingTimeSec, config_parse_sec, 0, offsetof(Bridge, ageing_time)
190Bridge.ForwardDelaySec, config_parse_sec, 0, offsetof(Bridge, forward_delay)
191Bridge.Priority, config_parse_uint16, 0, offsetof(Bridge, priority)
192Bridge.GroupForwardMask, config_parse_uint16, 0, offsetof(Bridge, group_fwd_mask)
193Bridge.DefaultPVID, config_parse_default_port_vlanid, 0, offsetof(Bridge, default_pvid)
194Bridge.MulticastQuerier, config_parse_tristate, 0, offsetof(Bridge, mcast_querier)
195Bridge.MulticastSnooping, config_parse_tristate, 0, offsetof(Bridge, mcast_snooping)
196Bridge.VLANFiltering, config_parse_tristate, 0, offsetof(Bridge, vlan_filtering)
197Bridge.STP, config_parse_tristate, 0, offsetof(Bridge, stp)
198VRF.TableId, config_parse_uint32, 0, offsetof(Vrf, table) /* deprecated */
40352cf0 199VRF.Table, config_parse_uint32, 0, offsetof(Vrf, table)
e5719363
JT
200WireGuard.FwMark, config_parse_unsigned, 0, offsetof(Wireguard, fwmark)
201WireGuard.ListenPort, config_parse_wireguard_listen_port, 0, offsetof(Wireguard, port)
202WireGuard.PrivateKey, config_parse_wireguard_private_key, 0, 0
76df7779 203WireGuard.PrivateKeyFile, config_parse_wireguard_private_key_file, 0, 0
e5719363
JT
204WireGuardPeer.AllowedIPs, config_parse_wireguard_allowed_ips, 0, 0
205WireGuardPeer.Endpoint, config_parse_wireguard_endpoint, 0, 0
206WireGuardPeer.PublicKey, config_parse_wireguard_public_key, 0, 0
207WireGuardPeer.PresharedKey, config_parse_wireguard_preshared_key, 0, 0
a3945c63 208WireGuardPeer.PresharedKeyFile, config_parse_wireguard_preshared_key_file, 0, 0
e5719363 209WireGuardPeer.PersistentKeepalive, config_parse_wireguard_keepalive, 0, 0