]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/network/networkd-network-gperf.gperf
networkd: DHCPv6 - separate DHCPv6 options from DHCPv4 options
[thirdparty/systemd.git] / src / network / networkd-network-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"
0fbddd04 7#include "network-internal.h"
413708d1 8#include "networkd-conf.h"
ca5ad760 9#include "networkd-dhcp-common.h"
8fcf1d61 10#include "networkd-dhcp-server.h"
ca5ad760
YW
11#include "networkd-dhcp4.h"
12#include "networkd-ipv4ll.h"
e520ce64 13#include "networkd-ndisc.h"
23f53b99 14#include "networkd-network.h"
13b498f9 15#include "vlan-util.h"
c0dda186
TG
16%}
17struct ConfigPerfItem;
18%null_strings
19%language=ANSI-C
20%define slot-name section_and_lvalue
21%define hash-function-name network_network_gperf_hash
22%define lookup-function-name network_network_gperf_lookup
23%readonly-tables
24%omit-struct-type
25%struct-type
26%includes
27%%
e57319dd 28Match.MACAddress, config_parse_hwaddrs, 0, offsetof(Network, match_mac)
54a84237
YW
29Match.Path, config_parse_match_strv, 0, offsetof(Network, match_path)
30Match.Driver, config_parse_match_strv, 0, offsetof(Network, match_driver)
31Match.Type, config_parse_match_strv, 0, offsetof(Network, match_type)
32Match.Name, config_parse_match_ifnames, 0, offsetof(Network, match_name)
44005bfb 33Match.Property, config_parse_match_property, 0, offsetof(Network, match_property)
e57319dd
YW
34Match.Host, config_parse_net_condition, CONDITION_HOST, offsetof(Network, conditions)
35Match.Virtualization, config_parse_net_condition, CONDITION_VIRTUALIZATION, offsetof(Network, conditions)
36Match.KernelCommandLine, config_parse_net_condition, CONDITION_KERNEL_COMMAND_LINE, offsetof(Network, conditions)
37Match.KernelVersion, config_parse_net_condition, CONDITION_KERNEL_VERSION, offsetof(Network, conditions)
38Match.Architecture, config_parse_net_condition, CONDITION_ARCHITECTURE, offsetof(Network, conditions)
39Link.MACAddress, config_parse_hwaddr, 0, offsetof(Network, mac)
40Link.MTUBytes, config_parse_mtu, AF_UNSPEC, offsetof(Network, mtu)
41Link.ARP, config_parse_tristate, 0, offsetof(Network, arp)
42Link.Multicast, config_parse_tristate, 0, offsetof(Network, multicast)
43Link.AllMulticast, config_parse_tristate, 0, offsetof(Network, allmulticast)
44Link.Unmanaged, config_parse_bool, 0, offsetof(Network, unmanaged)
45Link.RequiredForOnline, config_parse_required_for_online, 0, 0
46Network.Description, config_parse_string, 0, offsetof(Network, description)
47Network.Bridge, config_parse_ifname, 0, offsetof(Network, bridge_name)
48Network.Bond, config_parse_ifname, 0, offsetof(Network, bond_name)
49Network.VLAN, config_parse_stacked_netdev, NETDEV_KIND_VLAN, offsetof(Network, stacked_netdev_names)
50Network.MACVLAN, config_parse_stacked_netdev, NETDEV_KIND_MACVLAN, offsetof(Network, stacked_netdev_names)
51Network.MACVTAP, config_parse_stacked_netdev, NETDEV_KIND_MACVTAP, offsetof(Network, stacked_netdev_names)
52Network.IPVLAN, config_parse_stacked_netdev, NETDEV_KIND_IPVLAN, offsetof(Network, stacked_netdev_names)
69c317a0 53Network.IPVTAP, config_parse_stacked_netdev, NETDEV_KIND_IPVTAP, offsetof(Network, stacked_netdev_names)
e57319dd
YW
54Network.VXLAN, config_parse_stacked_netdev, NETDEV_KIND_VXLAN, offsetof(Network, stacked_netdev_names)
55Network.L2TP, config_parse_stacked_netdev, NETDEV_KIND_L2TP, offsetof(Network, stacked_netdev_names)
56Network.MACsec, config_parse_stacked_netdev, NETDEV_KIND_MACSEC, offsetof(Network, stacked_netdev_names)
57Network.Tunnel, config_parse_stacked_netdev, _NETDEV_KIND_TUNNEL, offsetof(Network, stacked_netdev_names)
58Network.VRF, config_parse_ifname, 0, offsetof(Network, vrf_name)
59Network.DHCP, config_parse_dhcp, 0, offsetof(Network, dhcp)
60Network.DHCPServer, config_parse_bool, 0, offsetof(Network, dhcp_server)
e800fd24 61Network.LinkLocalAddressing, config_parse_link_local_address_family_boolean, 0, offsetof(Network, link_local)
e57319dd 62Network.IPv4LLRoute, config_parse_bool, 0, offsetof(Network, ipv4ll_route)
5d5003ab 63Network.DefaultRouteOnDevice, config_parse_bool, 0, offsetof(Network, default_route_on_device)
e57319dd
YW
64Network.IPv6Token, config_parse_ipv6token, 0, offsetof(Network, ipv6_token)
65Network.LLDP, config_parse_lldp_mode, 0, offsetof(Network, lldp_mode)
66Network.EmitLLDP, config_parse_lldp_emit, 0, offsetof(Network, lldp_emit)
67Network.Address, config_parse_address, 0, 0
68Network.Gateway, config_parse_gateway, 0, 0
69Network.Domains, config_parse_domains, 0, 0
70Network.DNS, config_parse_dns, 0, 0
71Network.DNSDefaultRoute, config_parse_tristate, 0, offsetof(Network, dns_default_route)
72Network.LLMNR, config_parse_resolve_support, 0, offsetof(Network, llmnr)
73Network.MulticastDNS, config_parse_resolve_support, 0, offsetof(Network, mdns)
74Network.DNSOverTLS, config_parse_dns_over_tls_mode, 0, offsetof(Network, dns_over_tls_mode)
75Network.DNSSEC, config_parse_dnssec_mode, 0, offsetof(Network, dnssec_mode)
76Network.DNSSECNegativeTrustAnchors, config_parse_dnssec_negative_trust_anchors, 0, 0
77Network.NTP, config_parse_ntp, 0, offsetof(Network, ntp)
78Network.IPForward, config_parse_address_family_boolean_with_kernel, 0, offsetof(Network, ip_forward)
79Network.IPMasquerade, config_parse_bool, 0, offsetof(Network, ip_masquerade)
80Network.IPv6PrivacyExtensions, config_parse_ipv6_privacy_extensions, 0, offsetof(Network, ipv6_privacy_extensions)
81Network.IPv6AcceptRA, config_parse_tristate, 0, offsetof(Network, ipv6_accept_ra)
82Network.IPv6AcceptRouterAdvertisements, config_parse_tristate, 0, offsetof(Network, ipv6_accept_ra)
83Network.IPv6DuplicateAddressDetection, config_parse_int, 0, offsetof(Network, ipv6_dad_transmits)
84Network.IPv6HopLimit, config_parse_int, 0, offsetof(Network, ipv6_hop_limit)
85Network.IPv6ProxyNDP, config_parse_tristate, 0, offsetof(Network, ipv6_proxy_ndp)
86Network.IPv6MTUBytes, config_parse_mtu, AF_INET6, offsetof(Network, ipv6_mtu)
87Network.ActiveSlave, config_parse_bool, 0, offsetof(Network, active_slave)
88Network.PrimarySlave, config_parse_bool, 0, offsetof(Network, primary_slave)
89Network.IPv4ProxyARP, config_parse_tristate, 0, offsetof(Network, proxy_arp)
90Network.ProxyARP, config_parse_tristate, 0, offsetof(Network, proxy_arp)
91Network.IPv6ProxyNDPAddress, config_parse_ipv6_proxy_ndp_address, 0, 0
92Network.BindCarrier, config_parse_strv, 0, offsetof(Network, bind_carrier)
93Network.ConfigureWithoutCarrier, config_parse_bool, 0, offsetof(Network, configure_without_carrier)
94Network.IgnoreCarrierLoss, config_parse_bool, 0, offsetof(Network, ignore_carrier_loss)
7da377ef 95Network.KeepConfiguration, config_parse_keep_configuration, 0, offsetof(Network, keep_configuration)
e57319dd
YW
96Address.Address, config_parse_address, 0, 0
97Address.Peer, config_parse_address, 0, 0
98Address.Broadcast, config_parse_broadcast, 0, 0
99Address.Label, config_parse_label, 0, 0
100Address.PreferredLifetime, config_parse_lifetime, 0, 0
101Address.HomeAddress, config_parse_address_flags, 0, 0
102Address.DuplicateAddressDetection, config_parse_address_flags, 0, 0
103Address.ManageTemporaryAddress, config_parse_address_flags, 0, 0
104Address.PrefixRoute, config_parse_address_flags, 0, 0
105Address.AutoJoin, config_parse_address_flags, 0, 0
106Address.Scope, config_parse_address_scope, 0, 0
107IPv6AddressLabel.Prefix, config_parse_address_label_prefix, 0, 0
108IPv6AddressLabel.Label, config_parse_address_label, 0, 0
109Neighbor.Address, config_parse_neighbor_address, 0, 0
110Neighbor.MACAddress, config_parse_neighbor_hwaddr, 0, 0
111RoutingPolicyRule.TypeOfService, config_parse_routing_policy_rule_tos, 0, 0
112RoutingPolicyRule.Priority, config_parse_routing_policy_rule_priority, 0, 0
113RoutingPolicyRule.Table, config_parse_routing_policy_rule_table, 0, 0
114RoutingPolicyRule.FirewallMark, config_parse_routing_policy_rule_fwmark_mask, 0, 0
115RoutingPolicyRule.From, config_parse_routing_policy_rule_prefix, 0, 0
116RoutingPolicyRule.To, config_parse_routing_policy_rule_prefix, 0, 0
117RoutingPolicyRule.IncomingInterface, config_parse_routing_policy_rule_device, 0, 0
118RoutingPolicyRule.OutgoingInterface, config_parse_routing_policy_rule_device, 0, 0
119RoutingPolicyRule.IPProtocol, config_parse_routing_policy_rule_ip_protocol, 0, 0
120RoutingPolicyRule.SourcePort, config_parse_routing_policy_rule_port_range, 0, 0
121RoutingPolicyRule.DestinationPort, config_parse_routing_policy_rule_port_range, 0, 0
122RoutingPolicyRule.InvertRule, config_parse_routing_policy_rule_invert, 0, 0
123Route.Gateway, config_parse_gateway, 0, 0
124Route.Destination, config_parse_destination, 0, 0
125Route.Source, config_parse_destination, 0, 0
126Route.Metric, config_parse_route_priority, 0, 0
127Route.Scope, config_parse_route_scope, 0, 0
128Route.PreferredSource, config_parse_preferred_src, 0, 0
129Route.Table, config_parse_route_table, 0, 0
130Route.MTUBytes, config_parse_route_mtu, AF_UNSPEC, 0
131Route.GatewayOnLink, config_parse_gateway_onlink, 0, 0
132Route.GatewayOnlink, config_parse_gateway_onlink, 0, 0
133Route.IPv6Preference, config_parse_ipv6_route_preference, 0, 0
134Route.Protocol, config_parse_route_protocol, 0, 0
135Route.Type, config_parse_route_type, 0, 0
136Route.InitialCongestionWindow, config_parse_tcp_window, 0, 0
137Route.InitialAdvertisedReceiveWindow, config_parse_tcp_window, 0, 0
138Route.QuickAck, config_parse_quickack, 0, 0
633c7258 139Route.FastOpenNoCookie, config_parse_fast_open_no_cookie, 0, 0
9b88f20a 140Route.TTLPropagate, config_parse_route_ttl_propagate, 0, 0
e57319dd
YW
141DHCP.ClientIdentifier, config_parse_dhcp_client_identifier, 0, offsetof(Network, dhcp_client_identifier)
142DHCP.UseDNS, config_parse_bool, 0, offsetof(Network, dhcp_use_dns)
143DHCP.UseNTP, config_parse_bool, 0, offsetof(Network, dhcp_use_ntp)
144DHCP.UseMTU, config_parse_bool, 0, offsetof(Network, dhcp_use_mtu)
145DHCP.UseHostname, config_parse_bool, 0, offsetof(Network, dhcp_use_hostname)
146DHCP.UseDomains, config_parse_dhcp_use_domains, 0, offsetof(Network, dhcp_use_domains)
147DHCP.UseRoutes, config_parse_bool, 0, offsetof(Network, dhcp_use_routes)
148DHCP.Anonymize, config_parse_bool, 0, offsetof(Network, dhcp_anonymize)
149DHCP.SendHostname, config_parse_bool, 0, offsetof(Network, dhcp_send_hostname)
150DHCP.Hostname, config_parse_hostname, 0, offsetof(Network, dhcp_hostname)
151DHCP.RequestBroadcast, config_parse_bool, 0, offsetof(Network, dhcp_broadcast)
7da377ef 152DHCP.CriticalConnection, config_parse_tristate, 0, offsetof(Network, dhcp_critical) /* deprecated */
e57319dd 153DHCP.VendorClassIdentifier, config_parse_string, 0, offsetof(Network, dhcp_vendor_class_identifier)
715cedfb 154DHCP.MaxAttempts, config_parse_dhcp_max_attempts, 0, 0
e57319dd
YW
155DHCP.UserClass, config_parse_dhcp_user_class, 0, offsetof(Network, dhcp_user_class)
156DHCP.DUIDType, config_parse_duid_type, 0, offsetof(Network, duid)
157DHCP.DUIDRawData, config_parse_duid_rawdata, 0, offsetof(Network, duid)
158DHCP.RouteMetric, config_parse_unsigned, 0, offsetof(Network, dhcp_route_metric)
159DHCP.RouteTable, config_parse_section_route_table, 0, 0
160DHCP.UseTimezone, config_parse_bool, 0, offsetof(Network, dhcp_use_timezone)
161DHCP.IAID, config_parse_iaid, 0, 0
162DHCP.ListenPort, config_parse_uint16, 0, offsetof(Network, dhcp_client_port)
1501b429 163DHCP.SendRelease, config_parse_bool, 0, offsetof(Network, dhcp_send_release)
727b5734 164DHCP.BlackList, config_parse_dhcp_black_listed_ip_address, 0, 0
e57319dd
YW
165IPv6AcceptRA.UseAutonomousPrefix, config_parse_bool, 0, offsetof(Network, ipv6_accept_ra_use_autonomous_prefix)
166IPv6AcceptRA.UseOnLinkPrefix, config_parse_bool, 0, offsetof(Network, ipv6_accept_ra_use_onlink_prefix)
167IPv6AcceptRA.UseDNS, config_parse_bool, 0, offsetof(Network, ipv6_accept_ra_use_dns)
168IPv6AcceptRA.UseDomains, config_parse_dhcp_use_domains, 0, offsetof(Network, ipv6_accept_ra_use_domains)
169IPv6AcceptRA.RouteTable, config_parse_section_route_table, 0, 0
e520ce64 170IPv6AcceptRA.BlackList, config_parse_ndisc_black_listed_prefix, 0, 0
caa8ca42
SS
171DHCPv6.UseDNS, config_parse_bool, 0, offsetof(Network, dhcp6_use_dns)
172DHCPv6.UseNTP, config_parse_bool, 0, offsetof(Network, dhcp6_use_ntp)
173DHCPv6.RapidCommit, config_parse_bool, 0, offsetof(Network, rapid_commit)
174DHCPv6.ForceDHCPv6PDOtherInformation, config_parse_bool, 0, offsetof(Network, dhcp6_force_pd_other_information)
e57319dd
YW
175DHCPServer.MaxLeaseTimeSec, config_parse_sec, 0, offsetof(Network, dhcp_server_max_lease_time_usec)
176DHCPServer.DefaultLeaseTimeSec, config_parse_sec, 0, offsetof(Network, dhcp_server_default_lease_time_usec)
177DHCPServer.EmitDNS, config_parse_bool, 0, offsetof(Network, dhcp_server_emit_dns)
178DHCPServer.DNS, config_parse_dhcp_server_dns, 0, 0
179DHCPServer.EmitNTP, config_parse_bool, 0, offsetof(Network, dhcp_server_emit_ntp)
180DHCPServer.NTP, config_parse_dhcp_server_ntp, 0, 0
181DHCPServer.EmitRouter, config_parse_bool, 0, offsetof(Network, dhcp_server_emit_router)
182DHCPServer.EmitTimezone, config_parse_bool, 0, offsetof(Network, dhcp_server_emit_timezone)
183DHCPServer.Timezone, config_parse_timezone, 0, offsetof(Network, dhcp_server_timezone)
184DHCPServer.PoolOffset, config_parse_uint32, 0, offsetof(Network, dhcp_server_pool_offset)
185DHCPServer.PoolSize, config_parse_uint32, 0, offsetof(Network, dhcp_server_pool_size)
186Bridge.Cost, config_parse_uint32, 0, offsetof(Network, cost)
187Bridge.UseBPDU, config_parse_tristate, 0, offsetof(Network, use_bpdu)
188Bridge.HairPin, config_parse_tristate, 0, offsetof(Network, hairpin)
189Bridge.FastLeave, config_parse_tristate, 0, offsetof(Network, fast_leave)
190Bridge.AllowPortToBeRoot, config_parse_tristate, 0, offsetof(Network, allow_port_to_be_root)
191Bridge.UnicastFlood, config_parse_tristate, 0, offsetof(Network, unicast_flood)
192Bridge.MulticastFlood, config_parse_tristate, 0, offsetof(Network, multicast_flood)
193Bridge.MulticastToUnicast, config_parse_tristate, 0, offsetof(Network, multicast_to_unicast)
194Bridge.NeighborSuppression, config_parse_tristate, 0, offsetof(Network, neighbor_suppression)
195Bridge.Learning, config_parse_tristate, 0, offsetof(Network, learning)
1087623b
SS
196Bridge.ProxyARP, config_parse_tristate, 0, offsetof(Network, bridge_proxy_arp)
197Bridge.ProxyARPWiFi, config_parse_tristate, 0, offsetof(Network, bridge_proxy_arp_wifi)
e57319dd 198Bridge.Priority, config_parse_bridge_port_priority, 0, offsetof(Network, priority)
0fadb2a4 199Bridge.MulticastRouter, config_parse_multicast_router, 0, offsetof(Network, multicast_router)
e57319dd
YW
200BridgeFDB.MACAddress, config_parse_fdb_hwaddr, 0, 0
201BridgeFDB.VLANId, config_parse_fdb_vlan_id, 0, 0
c2c2793f 202BridgeFDB.Destination, config_parse_fdb_destination, 0, 0
61b824c5 203BridgeFDB.VNI, config_parse_fdb_vxlan_vni, 0, 0
bdb397ed 204BridgeFDB.AssociatedWith, config_parse_fdb_ntf_flags, 0, 0
e57319dd
YW
205BridgeVLAN.PVID, config_parse_brvlan_pvid, 0, 0
206BridgeVLAN.VLAN, config_parse_brvlan_vlan, 0, 0
207BridgeVLAN.EgressUntagged, config_parse_brvlan_untagged, 0, 0
208Network.IPv6PrefixDelegation, config_parse_router_prefix_delegation, 0, 0
209IPv6PrefixDelegation.RouterLifetimeSec, config_parse_sec, 0, offsetof(Network, router_lifetime_usec)
210IPv6PrefixDelegation.Managed, config_parse_bool, 0, offsetof(Network, router_managed)
211IPv6PrefixDelegation.OtherInformation, config_parse_bool, 0, offsetof(Network, router_other_information)
212IPv6PrefixDelegation.RouterPreference, config_parse_router_preference, 0, 0
213IPv6PrefixDelegation.EmitDNS, config_parse_bool, 0, offsetof(Network, router_emit_dns)
214IPv6PrefixDelegation.DNS, config_parse_radv_dns, 0, 0
215IPv6PrefixDelegation.EmitDomains, config_parse_bool, 0, offsetof(Network, router_emit_domains)
216IPv6PrefixDelegation.Domains, config_parse_radv_search_domains, 0, 0
217IPv6PrefixDelegation.DNSLifetimeSec, config_parse_sec, 0, offsetof(Network, router_dns_lifetime_usec)
218IPv6Prefix.Prefix, config_parse_prefix, 0, 0
219IPv6Prefix.OnLink, config_parse_prefix_flags, 0, 0
220IPv6Prefix.AddressAutoconfiguration, config_parse_prefix_flags, 0, 0
221IPv6Prefix.ValidLifetimeSec, config_parse_prefix_lifetime, 0, 0
222IPv6Prefix.PreferredLifetimeSec, config_parse_prefix_lifetime, 0, 0
223CAN.BitRate, config_parse_si_size, 0, offsetof(Network, can_bitrate)
224CAN.SamplePoint, config_parse_permille, 0, offsetof(Network, can_sample_point)
225CAN.RestartSec, config_parse_sec, 0, offsetof(Network, can_restart_us)
226CAN.TripleSampling, config_parse_tristate, 0, offsetof(Network, can_triple_sampling)
4cc7a82c 227/* backwards compatibility: do not add new entries to this section */
e57319dd
YW
228Network.IPv4LL, config_parse_ipv4ll, 0, offsetof(Network, link_local)
229DHCPv4.UseDNS, config_parse_bool, 0, offsetof(Network, dhcp_use_dns)
230DHCPv4.UseMTU, config_parse_bool, 0, offsetof(Network, dhcp_use_mtu)
231DHCPv4.UseHostname, config_parse_bool, 0, offsetof(Network, dhcp_use_hostname)
232DHCP.UseDomainName, config_parse_dhcp_use_domains, 0, offsetof(Network, dhcp_use_domains)
233DHCPv4.UseDomainName, config_parse_dhcp_use_domains, 0, offsetof(Network, dhcp_use_domains)
234DHCPv4.CriticalConnection, config_parse_bool, 0, offsetof(Network, dhcp_critical)
caa8ca42
SS
235DHCP.RapidCommit, config_parse_bool, 0, offsetof(Network, rapid_commit)
236DHCP.ForceDHCPv6PDOtherInformation, config_parse_bool, 0, offsetof(Network, dhcp6_force_pd_other_information)