1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
4 _Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"")
7 #include "conf-parser.h"
9 #include "net-condition.h"
10 #include "networkd-address-label.h"
11 #include "networkd-address.h"
12 #include "networkd-bridge-fdb.h"
13 #include "networkd-bridge-mdb.h"
14 #include "networkd-can.h"
15 #include "networkd-dhcp-common.h"
16 #include "networkd-dhcp-server-static-lease.h"
17 #include "networkd-dhcp-server.h"
18 #include "networkd-dhcp4.h"
19 #include "networkd-dhcp6.h"
20 #include "networkd-ipv4ll.h"
21 #include "networkd-ipv6-proxy-ndp.h"
22 #include "networkd-ndisc.h"
23 #include "networkd-network.h"
24 #include "networkd-neighbor.h"
25 #include "networkd-nexthop.h"
26 #include "networkd-radv.h"
27 #include "networkd-route.h"
28 #include "networkd-routing-policy-rule.h"
29 #include "networkd-sriov.h"
32 #include "vlan-util.h"
34 struct ConfigPerfItem;
37 %define slot-name section_and_lvalue
38 %define hash-function-name network_network_gperf_hash
39 %define lookup-function-name network_network_gperf_lookup
45 Match.MACAddress, config_parse_hwaddrs, 0, offsetof(Network, match.mac)
46 Match.PermanentMACAddress, config_parse_hwaddrs, 0, offsetof(Network, match.permanent_mac)
47 Match.Path, config_parse_match_strv, 0, offsetof(Network, match.path)
48 Match.Driver, config_parse_match_strv, 0, offsetof(Network, match.driver)
49 Match.Type, config_parse_match_strv, 0, offsetof(Network, match.iftype)
50 Match.WLANInterfaceType, config_parse_match_strv, 0, offsetof(Network, match.wifi_iftype)
51 Match.SSID, config_parse_match_strv, 0, offsetof(Network, match.ssid)
52 Match.BSSID, config_parse_hwaddrs, 0, offsetof(Network, match.bssid)
53 Match.Name, config_parse_match_ifnames, IFNAME_VALID_ALTERNATIVE, offsetof(Network, match.ifname)
54 Match.Property, config_parse_match_property, 0, offsetof(Network, match.property)
55 Match.Host, config_parse_net_condition, CONDITION_HOST, offsetof(Network, conditions)
56 Match.Virtualization, config_parse_net_condition, CONDITION_VIRTUALIZATION, offsetof(Network, conditions)
57 Match.KernelCommandLine, config_parse_net_condition, CONDITION_KERNEL_COMMAND_LINE, offsetof(Network, conditions)
58 Match.KernelVersion, config_parse_net_condition, CONDITION_KERNEL_VERSION, offsetof(Network, conditions)
59 Match.Architecture, config_parse_net_condition, CONDITION_ARCHITECTURE, offsetof(Network, conditions)
60 Match.Firmware, config_parse_net_condition, CONDITION_FIRMWARE, offsetof(Network, conditions)
61 Link.MACAddress, config_parse_hwaddr, 0, offsetof(Network, mac)
62 Link.MTUBytes, config_parse_mtu, AF_UNSPEC, offsetof(Network, mtu)
63 Link.Group, config_parse_link_group, 0, 0
64 Link.ARP, config_parse_tristate, 0, offsetof(Network, arp)
65 Link.Multicast, config_parse_tristate, 0, offsetof(Network, multicast)
66 Link.AllMulticast, config_parse_tristate, 0, offsetof(Network, allmulticast)
67 Link.Promiscuous, config_parse_tristate, 0, offsetof(Network, promiscuous)
68 Link.Unmanaged, config_parse_bool, 0, offsetof(Network, unmanaged)
69 Link.ActivationPolicy, config_parse_activation_policy, 0, offsetof(Network, activation_policy)
70 Link.RequiredForOnline, config_parse_required_for_online, 0, 0
71 Link.RequiredFamilyForOnline, config_parse_required_family_for_online, 0, offsetof(Network, required_family_for_online)
72 SR-IOV.VirtualFunction, config_parse_sr_iov_uint32, 0, 0
73 SR-IOV.VLANId, config_parse_sr_iov_uint32, 0, 0
74 SR-IOV.QualityOfService, config_parse_sr_iov_uint32, 0, 0
75 SR-IOV.VLANProtocol, config_parse_sr_iov_vlan_proto, 0, 0
76 SR-IOV.MACSpoofCheck, config_parse_sr_iov_boolean, 0, 0
77 SR-IOV.QueryReceiveSideScaling, config_parse_sr_iov_boolean, 0, 0
78 SR-IOV.Trust, config_parse_sr_iov_boolean, 0, 0
79 SR-IOV.LinkState, config_parse_sr_iov_link_state, 0, 0
80 SR-IOV.MACAddress, config_parse_sr_iov_mac, 0, 0
81 Network.Description, config_parse_string, 0, offsetof(Network, description)
82 Network.BatmanAdvanced, config_parse_ifname, 0, offsetof(Network, batadv_name)
83 Network.Bond, config_parse_ifname, 0, offsetof(Network, bond_name)
84 Network.Bridge, config_parse_ifname, 0, offsetof(Network, bridge_name)
85 Network.VRF, config_parse_ifname, 0, offsetof(Network, vrf_name)
86 Network.IPVLAN, config_parse_stacked_netdev, NETDEV_KIND_IPVLAN, offsetof(Network, stacked_netdev_names)
87 Network.IPVTAP, config_parse_stacked_netdev, NETDEV_KIND_IPVTAP, offsetof(Network, stacked_netdev_names)
88 Network.L2TP, config_parse_stacked_netdev, NETDEV_KIND_L2TP, offsetof(Network, stacked_netdev_names)
89 Network.MACsec, config_parse_stacked_netdev, NETDEV_KIND_MACSEC, offsetof(Network, stacked_netdev_names)
90 Network.MACVLAN, config_parse_stacked_netdev, NETDEV_KIND_MACVLAN, offsetof(Network, stacked_netdev_names)
91 Network.MACVTAP, config_parse_stacked_netdev, NETDEV_KIND_MACVTAP, offsetof(Network, stacked_netdev_names)
92 Network.Tunnel, config_parse_stacked_netdev, _NETDEV_KIND_TUNNEL, offsetof(Network, stacked_netdev_names)
93 Network.VLAN, config_parse_stacked_netdev, NETDEV_KIND_VLAN, offsetof(Network, stacked_netdev_names)
94 Network.VXLAN, config_parse_stacked_netdev, NETDEV_KIND_VXLAN, offsetof(Network, stacked_netdev_names)
95 Network.Xfrm, config_parse_stacked_netdev, NETDEV_KIND_XFRM, offsetof(Network, stacked_netdev_names)
96 Network.DHCP, config_parse_dhcp, 0, offsetof(Network, dhcp)
97 Network.DHCPServer, config_parse_bool, 0, offsetof(Network, dhcp_server)
98 Network.LinkLocalAddressing, config_parse_link_local_address_family, 0, offsetof(Network, link_local)
99 Network.IPv6LinkLocalAddressGenerationMode, config_parse_ipv6_link_local_address_gen_mode, 0, offsetof(Network, ipv6ll_address_gen_mode)
100 Network.IPv6StableSecretAddress, config_parse_in_addr_non_null, AF_INET6, offsetof(Network, ipv6ll_stable_secret)
101 Network.IPv4LLRoute, config_parse_bool, 0, offsetof(Network, ipv4ll_route)
102 Network.DefaultRouteOnDevice, config_parse_bool, 0, offsetof(Network, default_route_on_device)
103 Network.IPv6Token, config_parse_address_generation_type, 0, 0
104 Network.LLDP, config_parse_lldp_mode, 0, offsetof(Network, lldp_mode)
105 Network.EmitLLDP, config_parse_lldp_emit, 0, offsetof(Network, lldp_emit)
106 Network.Address, config_parse_address, 0, 0
107 Network.Gateway, config_parse_gateway, 0, 0
108 Network.Domains, config_parse_domains, 0, 0
109 Network.DNS, config_parse_dns, 0, 0
110 Network.DNSDefaultRoute, config_parse_tristate, 0, offsetof(Network, dns_default_route)
111 Network.LLMNR, config_parse_resolve_support, 0, offsetof(Network, llmnr)
112 Network.MulticastDNS, config_parse_resolve_support, 0, offsetof(Network, mdns)
113 Network.DNSOverTLS, config_parse_dns_over_tls_mode, 0, offsetof(Network, dns_over_tls_mode)
114 Network.DNSSEC, config_parse_dnssec_mode, 0, offsetof(Network, dnssec_mode)
115 Network.DNSSECNegativeTrustAnchors, config_parse_dnssec_negative_trust_anchors, 0, offsetof(Network, dnssec_negative_trust_anchors)
116 Network.NTP, config_parse_ntp, 0, offsetof(Network, ntp)
117 Network.IPForward, config_parse_address_family_with_kernel, 0, offsetof(Network, ip_forward)
118 Network.IPMasquerade, config_parse_ip_masquerade, 0, offsetof(Network, ip_masquerade)
119 Network.IPv6PrivacyExtensions, config_parse_ipv6_privacy_extensions, 0, offsetof(Network, ipv6_privacy_extensions)
120 Network.IPv6AcceptRA, config_parse_tristate, 0, offsetof(Network, ipv6_accept_ra)
121 Network.IPv6AcceptRouterAdvertisements, config_parse_tristate, 0, offsetof(Network, ipv6_accept_ra)
122 Network.IPv6DuplicateAddressDetection, config_parse_int, 0, offsetof(Network, ipv6_dad_transmits)
123 Network.IPv6HopLimit, config_parse_int, 0, offsetof(Network, ipv6_hop_limit)
124 Network.IPv6ProxyNDP, config_parse_tristate, 0, offsetof(Network, ipv6_proxy_ndp)
125 Network.IPv6MTUBytes, config_parse_mtu, AF_INET6, offsetof(Network, ipv6_mtu)
126 Network.IPv4AcceptLocal, config_parse_tristate, 0, offsetof(Network, ipv4_accept_local)
127 Network.IPv4RouteLocalnet, config_parse_tristate, 0, offsetof(Network, ipv4_route_localnet)
128 Network.ActiveSlave, config_parse_bool, 0, offsetof(Network, active_slave)
129 Network.PrimarySlave, config_parse_bool, 0, offsetof(Network, primary_slave)
130 Network.IPv4ProxyARP, config_parse_tristate, 0, offsetof(Network, proxy_arp)
131 Network.ProxyARP, config_parse_tristate, 0, offsetof(Network, proxy_arp)
132 Network.IPv6ProxyNDPAddress, config_parse_ipv6_proxy_ndp_address, 0, 0
133 Network.BindCarrier, config_parse_strv, 0, offsetof(Network, bind_carrier)
134 Network.ConfigureWithoutCarrier, config_parse_bool, 0, offsetof(Network, configure_without_carrier)
135 Network.IgnoreCarrierLoss, config_parse_tristate, 0, offsetof(Network, ignore_carrier_loss)
136 Network.KeepConfiguration, config_parse_keep_configuration, 0, offsetof(Network, keep_configuration)
137 Network.IPv6SendRA, config_parse_router_prefix_delegation, 0, offsetof(Network, router_prefix_delegation)
138 Network.DHCPv6PrefixDelegation, config_parse_tristate, 0, offsetof(Network, dhcp6_pd)
139 Address.Address, config_parse_address, 0, 0
140 Address.Peer, config_parse_address, 0, 0
141 Address.Broadcast, config_parse_broadcast, 0, 0
142 Address.Label, config_parse_label, 0, 0
143 Address.PreferredLifetime, config_parse_lifetime, 0, 0
144 Address.HomeAddress, config_parse_address_flags, IFA_F_HOMEADDRESS, 0
145 Address.ManageTemporaryAddress, config_parse_address_flags, IFA_F_MANAGETEMPADDR, 0
146 Address.PrefixRoute, config_parse_address_flags, IFA_F_NOPREFIXROUTE, 0 /* deprecated */
147 Address.AddPrefixRoute, config_parse_address_flags, IFA_F_NOPREFIXROUTE, 0
148 Address.AutoJoin, config_parse_address_flags, IFA_F_MCAUTOJOIN, 0
149 Address.DuplicateAddressDetection, config_parse_duplicate_address_detection, 0, 0
150 Address.Scope, config_parse_address_scope, 0, 0
151 Address.RouteMetric, config_parse_address_route_metric, 0, 0
152 IPv6AddressLabel.Prefix, config_parse_address_label_prefix, 0, 0
153 IPv6AddressLabel.Label, config_parse_address_label, 0, 0
154 Neighbor.Address, config_parse_neighbor_address, 0, 0
155 Neighbor.LinkLayerAddress, config_parse_neighbor_lladdr, 0, 0
156 Neighbor.MACAddress, config_parse_neighbor_hwaddr, 0, 0 /* deprecated */
157 RoutingPolicyRule.TypeOfService, config_parse_routing_policy_rule_tos, 0, 0
158 RoutingPolicyRule.Priority, config_parse_routing_policy_rule_priority, 0, 0
159 RoutingPolicyRule.Table, config_parse_routing_policy_rule_table, 0, 0
160 RoutingPolicyRule.FirewallMark, config_parse_routing_policy_rule_fwmark_mask, 0, 0
161 RoutingPolicyRule.From, config_parse_routing_policy_rule_prefix, 0, 0
162 RoutingPolicyRule.To, config_parse_routing_policy_rule_prefix, 0, 0
163 RoutingPolicyRule.IncomingInterface, config_parse_routing_policy_rule_device, 0, 0
164 RoutingPolicyRule.OutgoingInterface, config_parse_routing_policy_rule_device, 0, 0
165 RoutingPolicyRule.IPProtocol, config_parse_routing_policy_rule_ip_protocol, 0, 0
166 RoutingPolicyRule.SourcePort, config_parse_routing_policy_rule_port_range, 0, 0
167 RoutingPolicyRule.DestinationPort, config_parse_routing_policy_rule_port_range, 0, 0
168 RoutingPolicyRule.InvertRule, config_parse_routing_policy_rule_invert, 0, 0
169 RoutingPolicyRule.Family, config_parse_routing_policy_rule_family, 0, 0
170 RoutingPolicyRule.User, config_parse_routing_policy_rule_uid_range, 0, 0
171 RoutingPolicyRule.SuppressPrefixLength, config_parse_routing_policy_rule_suppress_prefixlen, 0, 0
172 RoutingPolicyRule.Type, config_parse_routing_policy_rule_type, 0, 0
173 Route.Gateway, config_parse_gateway, 0, 0
174 Route.Destination, config_parse_destination, 0, 0
175 Route.Source, config_parse_destination, 0, 0
176 Route.Metric, config_parse_route_priority, 0, 0
177 Route.Scope, config_parse_route_scope, 0, 0
178 Route.PreferredSource, config_parse_preferred_src, 0, 0
179 Route.Table, config_parse_route_table, 0, 0
180 Route.MTUBytes, config_parse_route_mtu, AF_UNSPEC, 0
181 Route.GatewayOnLink, config_parse_route_boolean, 0, 0
182 Route.GatewayOnlink, config_parse_route_boolean, 0, 0
183 Route.IPv6Preference, config_parse_ipv6_route_preference, 0, 0
184 Route.Protocol, config_parse_route_protocol, 0, 0
185 Route.Type, config_parse_route_type, 0, 0
186 Route.InitialCongestionWindow, config_parse_tcp_window, 0, 0
187 Route.InitialAdvertisedReceiveWindow, config_parse_tcp_window, 0, 0
188 Route.TCPAdvertisedMaximumSegmentSize, config_parse_tcp_advmss, 0, 0
189 Route.QuickAck, config_parse_route_boolean, 0, 0
190 Route.FastOpenNoCookie, config_parse_route_boolean, 0, 0
191 Route.TTLPropagate, config_parse_route_boolean, 0, 0
192 Route.MultiPathRoute, config_parse_multipath_route, 0, 0
193 Route.NextHop, config_parse_route_nexthop, 0, 0
194 NextHop.Id, config_parse_nexthop_id, 0, 0
195 NextHop.Gateway, config_parse_nexthop_gateway, 0, 0
196 NextHop.Family, config_parse_nexthop_family, 0, 0
197 NextHop.OnLink, config_parse_nexthop_onlink, 0, 0
198 NextHop.Blackhole, config_parse_nexthop_blackhole, 0, 0
199 NextHop.Group, config_parse_nexthop_group, 0, 0
200 DHCPv4.ClientIdentifier, config_parse_dhcp_client_identifier, 0, offsetof(Network, dhcp_client_identifier)
201 DHCPv4.UseDNS, config_parse_dhcp_use_dns, 0, 0
202 DHCPv4.RoutesToDNS, config_parse_bool, 0, offsetof(Network, dhcp_routes_to_dns)
203 DHCPv4.UseNTP, config_parse_dhcp_use_ntp, 0, 0
204 DHCPv4.RoutesToNTP, config_parse_bool, 0, offsetof(Network, dhcp_routes_to_ntp)
205 DHCPv4.UseSIP, config_parse_bool, 0, offsetof(Network, dhcp_use_sip)
206 DHCPv4.UseMTU, config_parse_bool, 0, offsetof(Network, dhcp_use_mtu)
207 DHCPv4.UseHostname, config_parse_bool, 0, offsetof(Network, dhcp_use_hostname)
208 DHCPv4.UseDomains, config_parse_dhcp_use_domains, 0, 0
209 DHCPv4.UseRoutes, config_parse_bool, 0, offsetof(Network, dhcp_use_routes)
210 DHCPv4.UseGateway, config_parse_tristate, 0, offsetof(Network, dhcp_use_gateway)
211 DHCPv4.RequestOptions, config_parse_dhcp_request_options, AF_INET, 0
212 DHCPv4.Anonymize, config_parse_bool, 0, offsetof(Network, dhcp_anonymize)
213 DHCPv4.SendHostname, config_parse_bool, 0, offsetof(Network, dhcp_send_hostname)
214 DHCPv4.Hostname, config_parse_hostname, 0, offsetof(Network, dhcp_hostname)
215 DHCPv4.RequestBroadcast, config_parse_tristate, 0, offsetof(Network, dhcp_broadcast)
216 DHCPv4.VendorClassIdentifier, config_parse_string, 0, offsetof(Network, dhcp_vendor_class_identifier)
217 DHCPv4.MUDURL, config_parse_dhcp_mud_url, 0, 0
218 DHCPv4.MaxAttempts, config_parse_dhcp_max_attempts, 0, 0
219 DHCPv4.UserClass, config_parse_dhcp_user_or_vendor_class, AF_INET, offsetof(Network, dhcp_user_class)
220 DHCPv4.IAID, config_parse_iaid, AF_INET, 0
221 DHCPv4.DUIDType, config_parse_network_duid_type, 0, 0
222 DHCPv4.DUIDRawData, config_parse_network_duid_rawdata, 0, 0
223 DHCPv4.RouteMetric, config_parse_dhcp_route_metric, 0, 0
224 DHCPv4.RouteTable, config_parse_section_route_table, 0, 0
225 DHCPv4.UseTimezone, config_parse_bool, 0, offsetof(Network, dhcp_use_timezone)
226 DHCPv4.ListenPort, config_parse_uint16, 0, offsetof(Network, dhcp_client_port)
227 DHCPv4.SendRelease, config_parse_bool, 0, offsetof(Network, dhcp_send_release)
228 DHCPv4.SendDecline, config_parse_bool, 0, offsetof(Network, dhcp_send_decline)
229 DHCPv4.DenyList, config_parse_dhcp_acl_ip_address, 0, 0
230 DHCPv4.AllowList, config_parse_dhcp_acl_ip_address, 0, 0
231 DHCPv4.IPServiceType, config_parse_dhcp_ip_service_type, 0, offsetof(Network, dhcp_ip_service_type)
232 DHCPv4.SendOption, config_parse_dhcp_send_option, AF_INET, offsetof(Network, dhcp_client_send_options)
233 DHCPv4.SendVendorOption, config_parse_dhcp_send_option, 0, offsetof(Network, dhcp_client_send_vendor_options)
234 DHCPv4.RouteMTUBytes, config_parse_mtu, AF_INET, offsetof(Network, dhcp_route_mtu)
235 DHCPv4.FallbackLeaseLifetimeSec, config_parse_dhcp_fallback_lease_lifetime, 0, 0
236 DHCPv6.UseAddress, config_parse_bool, 0, offsetof(Network, dhcp6_use_address)
237 DHCPv6.UseDNS, config_parse_dhcp_use_dns, 0, 0
238 DHCPv6.UseHostname, config_parse_bool, 0, offsetof(Network, dhcp6_use_hostname)
239 DHCPv6.UseDomains, config_parse_dhcp_use_domains, 0, 0
240 DHCPv6.UseNTP, config_parse_dhcp_use_ntp, 0, 0
241 DHCPv6.RapidCommit, config_parse_bool, 0, offsetof(Network, dhcp6_rapid_commit)
242 DHCPv6.MUDURL, config_parse_dhcp6_mud_url, 0, 0
243 DHCPv6.RequestOptions, config_parse_dhcp_request_options, AF_INET6, 0
244 DHCPv6.UserClass, config_parse_dhcp_user_or_vendor_class, AF_INET6, offsetof(Network, dhcp6_user_class)
245 DHCPv6.VendorClass, config_parse_dhcp_user_or_vendor_class, AF_INET6, offsetof(Network, dhcp6_vendor_class)
246 DHCPv6.SendVendorOption, config_parse_dhcp_send_option, AF_INET6, offsetof(Network, dhcp6_client_send_vendor_options)
247 DHCPv6.ForceDHCPv6PDOtherInformation, config_parse_bool, 0, offsetof(Network, dhcp6_force_pd_other_information)
248 DHCPv6.PrefixDelegationHint, config_parse_dhcp6_pd_hint, 0, 0
249 DHCPv6.WithoutRA, config_parse_dhcp6_client_start_mode, 0, offsetof(Network, dhcp6_without_ra)
250 DHCPv6.SendOption, config_parse_dhcp_send_option, AF_INET6, offsetof(Network, dhcp6_client_send_options)
251 DHCPv6.IAID, config_parse_iaid, AF_INET6, 0
252 DHCPv6.DUIDType, config_parse_duid_type, 0, offsetof(Network, dhcp6_duid)
253 DHCPv6.DUIDRawData, config_parse_duid_rawdata, 0, offsetof(Network, dhcp6_duid)
254 IPv6AcceptRA.UseAutonomousPrefix, config_parse_bool, 0, offsetof(Network, ipv6_accept_ra_use_autonomous_prefix)
255 IPv6AcceptRA.UseOnLinkPrefix, config_parse_bool, 0, offsetof(Network, ipv6_accept_ra_use_onlink_prefix)
256 IPv6AcceptRA.UseDNS, config_parse_bool, 0, offsetof(Network, ipv6_accept_ra_use_dns)
257 IPv6AcceptRA.UseDomains, config_parse_ipv6_accept_ra_use_domains, 0, offsetof(Network, ipv6_accept_ra_use_domains)
258 IPv6AcceptRA.DHCPv6Client, config_parse_ipv6_accept_ra_start_dhcp6_client, 0, offsetof(Network, ipv6_accept_ra_start_dhcp6_client)
259 IPv6AcceptRA.RouteTable, config_parse_section_route_table, 0, 0
260 IPv6AcceptRA.RouteMetric, config_parse_dhcp_route_metric, 0, 0
261 IPv6AcceptRA.RouterAllowList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_allow_listed_router)
262 IPv6AcceptRA.RouterDenyList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_deny_listed_router)
263 IPv6AcceptRA.PrefixAllowList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_allow_listed_prefix)
264 IPv6AcceptRA.PrefixDenyList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_deny_listed_prefix)
265 IPv6AcceptRA.RouteAllowList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_allow_listed_route_prefix)
266 IPv6AcceptRA.RouteDenyList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_deny_listed_route_prefix)
267 DHCPServer.ServerAddress, config_parse_dhcp_server_address, 0, 0
268 DHCPServer.UplinkInterface, config_parse_dhcp_server_uplink, 0, 0
269 DHCPServer.RelayTarget, config_parse_in_addr_non_null, AF_INET, offsetof(Network, dhcp_server_relay_target)
270 DHCPServer.RelayAgentCircuitId, config_parse_dhcp_server_relay_agent_suboption, 0, offsetof(Network, dhcp_server_relay_agent_circuit_id)
271 DHCPServer.RelayAgentRemoteId, config_parse_dhcp_server_relay_agent_suboption, 0, offsetof(Network, dhcp_server_relay_agent_remote_id)
272 DHCPServer.MaxLeaseTimeSec, config_parse_sec, 0, offsetof(Network, dhcp_server_max_lease_time_usec)
273 DHCPServer.DefaultLeaseTimeSec, config_parse_sec, 0, offsetof(Network, dhcp_server_default_lease_time_usec)
274 DHCPServer.EmitDNS, config_parse_bool, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_DNS].emit)
275 DHCPServer.DNS, config_parse_dhcp_server_emit, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_DNS])
276 DHCPServer.EmitNTP, config_parse_bool, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_NTP].emit)
277 DHCPServer.NTP, config_parse_dhcp_server_emit, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_NTP])
278 DHCPServer.EmitSIP, config_parse_bool, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_SIP].emit)
279 DHCPServer.SIP, config_parse_dhcp_server_emit, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_SIP])
280 DHCPServer.EmitPOP3, config_parse_bool, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_POP3].emit)
281 DHCPServer.POP3, config_parse_dhcp_server_emit, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_POP3])
282 DHCPServer.EmitSMTP, config_parse_bool, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_SMTP].emit)
283 DHCPServer.SMTP, config_parse_dhcp_server_emit, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_SMTP])
284 DHCPServer.EmitLPR, config_parse_bool, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_LPR].emit)
285 DHCPServer.LPR, config_parse_dhcp_server_emit, 0, offsetof(Network, dhcp_server_emit[SD_DHCP_LEASE_LPR])
286 DHCPServer.EmitRouter, config_parse_bool, 0, offsetof(Network, dhcp_server_emit_router)
287 DHCPServer.EmitTimezone, config_parse_bool, 0, offsetof(Network, dhcp_server_emit_timezone)
288 DHCPServer.Timezone, config_parse_timezone, 0, offsetof(Network, dhcp_server_timezone)
289 DHCPServer.PoolOffset, config_parse_uint32, 0, offsetof(Network, dhcp_server_pool_offset)
290 DHCPServer.PoolSize, config_parse_uint32, 0, offsetof(Network, dhcp_server_pool_size)
291 DHCPServer.SendVendorOption, config_parse_dhcp_send_option, 0, offsetof(Network, dhcp_server_send_vendor_options)
292 DHCPServer.SendOption, config_parse_dhcp_send_option, 0, offsetof(Network, dhcp_server_send_options)
293 DHCPServer.BindToInterface, config_parse_bool, 0, offsetof(Network, dhcp_server_bind_to_interface)
294 DHCPServerStaticLease.Address, config_parse_dhcp_static_lease_address, 0, 0
295 DHCPServerStaticLease.MACAddress, config_parse_dhcp_static_lease_hwaddr, 0, 0
296 Bridge.Cost, config_parse_uint32, 0, offsetof(Network, cost)
297 Bridge.UseBPDU, config_parse_tristate, 0, offsetof(Network, use_bpdu)
298 Bridge.HairPin, config_parse_tristate, 0, offsetof(Network, hairpin)
299 Bridge.FastLeave, config_parse_tristate, 0, offsetof(Network, fast_leave)
300 Bridge.AllowPortToBeRoot, config_parse_tristate, 0, offsetof(Network, allow_port_to_be_root)
301 Bridge.UnicastFlood, config_parse_tristate, 0, offsetof(Network, unicast_flood)
302 Bridge.MulticastFlood, config_parse_tristate, 0, offsetof(Network, multicast_flood)
303 Bridge.MulticastToUnicast, config_parse_tristate, 0, offsetof(Network, multicast_to_unicast)
304 Bridge.NeighborSuppression, config_parse_tristate, 0, offsetof(Network, neighbor_suppression)
305 Bridge.Learning, config_parse_tristate, 0, offsetof(Network, learning)
306 Bridge.ProxyARP, config_parse_tristate, 0, offsetof(Network, bridge_proxy_arp)
307 Bridge.ProxyARPWiFi, config_parse_tristate, 0, offsetof(Network, bridge_proxy_arp_wifi)
308 Bridge.Priority, config_parse_bridge_port_priority, 0, offsetof(Network, priority)
309 Bridge.MulticastRouter, config_parse_multicast_router, 0, offsetof(Network, multicast_router)
310 BridgeFDB.MACAddress, config_parse_fdb_hwaddr, 0, 0
311 BridgeFDB.VLANId, config_parse_fdb_vlan_id, 0, 0
312 BridgeFDB.Destination, config_parse_fdb_destination, 0, 0
313 BridgeFDB.VNI, config_parse_fdb_vxlan_vni, 0, 0
314 BridgeFDB.AssociatedWith, config_parse_fdb_ntf_flags, 0, 0
315 BridgeFDB.OutgoingInterface, config_parse_fdb_interface, 0, 0
316 BridgeMDB.MulticastGroupAddress, config_parse_mdb_group_address, 0, 0
317 BridgeMDB.VLANId, config_parse_mdb_vlan_id, 0, 0
318 BridgeVLAN.PVID, config_parse_brvlan_pvid, 0, 0
319 BridgeVLAN.VLAN, config_parse_brvlan_vlan, 0, 0
320 BridgeVLAN.EgressUntagged, config_parse_brvlan_untagged, 0, 0
321 DHCPv6PrefixDelegation.SubnetId, config_parse_dhcp6_pd_subnet_id, 0, offsetof(Network, dhcp6_pd_subnet_id)
322 DHCPv6PrefixDelegation.Announce, config_parse_bool, 0, offsetof(Network, dhcp6_pd_announce)
323 DHCPv6PrefixDelegation.Assign, config_parse_bool, 0, offsetof(Network, dhcp6_pd_assign)
324 DHCPv6PrefixDelegation.ManageTemporaryAddress, config_parse_bool, 0, offsetof(Network, dhcp6_pd_manage_temporary_address)
325 DHCPv6PrefixDelegation.Token, config_parse_in_addr_non_null, AF_INET6, offsetof(Network, dhcp6_pd_token)
326 DHCPv6PrefixDelegation.RouteMetric, config_parse_uint32, 0, offsetof(Network, dhcp6_pd_route_metric)
327 IPv6SendRA.RouterLifetimeSec, config_parse_sec, 0, offsetof(Network, router_lifetime_usec)
328 IPv6SendRA.Managed, config_parse_bool, 0, offsetof(Network, router_managed)
329 IPv6SendRA.OtherInformation, config_parse_bool, 0, offsetof(Network, router_other_information)
330 IPv6SendRA.RouterPreference, config_parse_router_preference, 0, 0
331 IPv6SendRA.EmitDNS, config_parse_bool, 0, offsetof(Network, router_emit_dns)
332 IPv6SendRA.DNS, config_parse_radv_dns, 0, 0
333 IPv6SendRA.EmitDomains, config_parse_bool, 0, offsetof(Network, router_emit_domains)
334 IPv6SendRA.Domains, config_parse_radv_search_domains, 0, 0
335 IPv6SendRA.DNSLifetimeSec, config_parse_sec, 0, offsetof(Network, router_dns_lifetime_usec)
336 IPv6Prefix.Prefix, config_parse_prefix, 0, 0
337 IPv6Prefix.OnLink, config_parse_prefix_flags, 0, 0
338 IPv6Prefix.AddressAutoconfiguration, config_parse_prefix_flags, 0, 0
339 IPv6Prefix.ValidLifetimeSec, config_parse_prefix_lifetime, 0, 0
340 IPv6Prefix.PreferredLifetimeSec, config_parse_prefix_lifetime, 0, 0
341 IPv6Prefix.Assign, config_parse_prefix_assign, 0, 0
342 IPv6Prefix.RouteMetric, config_parse_prefix_metric, 0, 0
343 IPv6RoutePrefix.Route, config_parse_route_prefix, 0, 0
344 IPv6RoutePrefix.LifetimeSec, config_parse_route_prefix_lifetime, 0, 0
345 LLDP.MUDURL, config_parse_lldp_mud, 0, 0
346 CAN.BitRate, config_parse_can_bitrate, 0, offsetof(Network, can_bitrate)
347 CAN.SamplePoint, config_parse_permille, 0, offsetof(Network, can_sample_point)
348 CAN.DataBitRate, config_parse_can_bitrate, 0, offsetof(Network, can_data_bitrate)
349 CAN.DataSamplePoint, config_parse_permille, 0, offsetof(Network, can_data_sample_point)
350 CAN.FDMode, config_parse_tristate, 0, offsetof(Network, can_fd_mode)
351 CAN.FDNonISO, config_parse_tristate, 0, offsetof(Network, can_non_iso)
352 CAN.RestartSec, config_parse_sec, 0, offsetof(Network, can_restart_us)
353 CAN.TripleSampling, config_parse_tristate, 0, offsetof(Network, can_triple_sampling)
354 CAN.BusErrorReporting, config_parse_tristate, 0, offsetof(Network, can_berr_reporting)
355 CAN.Termination, config_parse_tristate, 0, offsetof(Network, can_termination)
356 CAN.ListenOnly, config_parse_tristate, 0, offsetof(Network, can_listen_only)
357 QDisc.Parent, config_parse_qdisc_parent, _QDISC_KIND_INVALID, 0
358 QDisc.Handle, config_parse_qdisc_handle, _QDISC_KIND_INVALID, 0
359 BFIFO.Parent, config_parse_qdisc_parent, QDISC_KIND_BFIFO, 0
360 BFIFO.Handle, config_parse_qdisc_handle, QDISC_KIND_BFIFO, 0
361 BFIFO.LimitBytes, config_parse_bfifo_size, QDISC_KIND_BFIFO, 0
362 CAKE.Parent, config_parse_qdisc_parent, QDISC_KIND_CAKE, 0
363 CAKE.Handle, config_parse_qdisc_handle, QDISC_KIND_CAKE, 0
364 CAKE.Bandwidth, config_parse_cake_bandwidth, QDISC_KIND_CAKE, 0
365 CAKE.OverheadBytes, config_parse_cake_overhead, QDISC_KIND_CAKE, 0
366 ControlledDelay.Parent, config_parse_qdisc_parent, QDISC_KIND_CODEL, 0
367 ControlledDelay.Handle, config_parse_qdisc_handle, QDISC_KIND_CODEL, 0
368 ControlledDelay.PacketLimit, config_parse_controlled_delay_u32, QDISC_KIND_CODEL, 0
369 ControlledDelay.TargetSec, config_parse_controlled_delay_usec, QDISC_KIND_CODEL, 0
370 ControlledDelay.IntervalSec, config_parse_controlled_delay_usec, QDISC_KIND_CODEL, 0
371 ControlledDelay.CEThresholdSec, config_parse_controlled_delay_usec, QDISC_KIND_CODEL, 0
372 ControlledDelay.ECN, config_parse_controlled_delay_bool, QDISC_KIND_CODEL, 0
373 DeficitRoundRobinScheduler.Parent, config_parse_qdisc_parent, QDISC_KIND_DRR, 0
374 DeficitRoundRobinScheduler.Handle, config_parse_qdisc_handle, QDISC_KIND_DRR, 0
375 DeficitRoundRobinSchedulerClass.Parent, config_parse_tclass_parent, TCLASS_KIND_DRR, 0
376 DeficitRoundRobinSchedulerClass.ClassId, config_parse_tclass_classid, TCLASS_KIND_DRR, 0
377 DeficitRoundRobinSchedulerClass.QuantumBytes, config_parse_drr_size, TCLASS_KIND_DRR, 0
378 EnhancedTransmissionSelection.Parent, config_parse_qdisc_parent, QDISC_KIND_ETS, 0
379 EnhancedTransmissionSelection.Handle, config_parse_qdisc_handle, QDISC_KIND_ETS, 0
380 EnhancedTransmissionSelection.Bands, config_parse_ets_u8, QDISC_KIND_ETS, 0
381 EnhancedTransmissionSelection.StrictBands, config_parse_ets_u8, QDISC_KIND_ETS, 0
382 EnhancedTransmissionSelection.QuantumBytes, config_parse_ets_quanta, QDISC_KIND_ETS, 0
383 EnhancedTransmissionSelection.PriorityMap, config_parse_ets_prio, QDISC_KIND_ETS, 0
384 PFIFO.Parent, config_parse_qdisc_parent, QDISC_KIND_PFIFO, 0
385 PFIFO.Handle, config_parse_qdisc_handle, QDISC_KIND_PFIFO, 0
386 PFIFO.PacketLimit, config_parse_pfifo_size, QDISC_KIND_PFIFO, 0
387 PFIFOFast.Parent, config_parse_qdisc_parent, QDISC_KIND_PFIFO_FAST, 0
388 PFIFOFast.Handle, config_parse_qdisc_handle, QDISC_KIND_PFIFO_FAST, 0
389 PFIFOHeadDrop.Parent, config_parse_qdisc_parent, QDISC_KIND_PFIFO_HEAD_DROP, 0
390 PFIFOHeadDrop.Handle, config_parse_qdisc_handle, QDISC_KIND_PFIFO_HEAD_DROP, 0
391 PFIFOHeadDrop.PacketLimit, config_parse_pfifo_size, QDISC_KIND_PFIFO_HEAD_DROP, 0
392 QuickFairQueueing.Parent, config_parse_qdisc_parent, QDISC_KIND_QFQ, 0
393 QuickFairQueueing.Handle, config_parse_qdisc_handle, QDISC_KIND_QFQ, 0
394 QuickFairQueueingClass.Parent, config_parse_tclass_parent, TCLASS_KIND_QFQ, 0
395 QuickFairQueueingClass.ClassId, config_parse_tclass_classid, TCLASS_KIND_QFQ, 0
396 QuickFairQueueingClass.Weight, config_parse_quick_fair_queueing_weight, TCLASS_KIND_QFQ, 0
397 QuickFairQueueingClass.MaxPacketBytes, config_parse_quick_fair_queueing_max_packet, TCLASS_KIND_QFQ, 0
398 FairQueueing.Parent, config_parse_qdisc_parent, QDISC_KIND_FQ, 0
399 FairQueueing.Handle, config_parse_qdisc_handle, QDISC_KIND_FQ, 0
400 FairQueueing.PacketLimit, config_parse_fair_queueing_u32, QDISC_KIND_FQ, 0
401 FairQueueing.FlowLimit, config_parse_fair_queueing_u32, QDISC_KIND_FQ, 0
402 FairQueueing.QuantumBytes, config_parse_fair_queueing_size, QDISC_KIND_FQ, 0
403 FairQueueing.InitialQuantumBytes, config_parse_fair_queueing_size, QDISC_KIND_FQ, 0
404 FairQueueing.MaximumRate, config_parse_fair_queueing_max_rate, QDISC_KIND_FQ, 0
405 FairQueueing.Buckets, config_parse_fair_queueing_u32, QDISC_KIND_FQ, 0
406 FairQueueing.OrphanMask, config_parse_fair_queueing_u32, QDISC_KIND_FQ, 0
407 FairQueueing.Pacing, config_parse_fair_queueing_bool, QDISC_KIND_FQ, 0
408 FairQueueing.CEThresholdSec, config_parse_fair_queueing_usec, QDISC_KIND_FQ, 0
409 FairQueueingControlledDelay.Parent, config_parse_qdisc_parent, QDISC_KIND_FQ_CODEL, 0
410 FairQueueingControlledDelay.Handle, config_parse_qdisc_handle, QDISC_KIND_FQ_CODEL, 0
411 FairQueueingControlledDelay.PacketLimit, config_parse_fair_queueing_controlled_delay_u32, QDISC_KIND_FQ_CODEL, 0
412 FairQueueingControlledDelay.MemoryLimitBytes, config_parse_fair_queueing_controlled_delay_size, QDISC_KIND_FQ_CODEL, 0
413 FairQueueingControlledDelay.Flows, config_parse_fair_queueing_controlled_delay_u32, QDISC_KIND_FQ_CODEL, 0
414 FairQueueingControlledDelay.QuantumBytes, config_parse_fair_queueing_controlled_delay_size, QDISC_KIND_FQ_CODEL, 0
415 FairQueueingControlledDelay.TargetSec, config_parse_fair_queueing_controlled_delay_usec, QDISC_KIND_FQ_CODEL, 0
416 FairQueueingControlledDelay.IntervalSec, config_parse_fair_queueing_controlled_delay_usec, QDISC_KIND_FQ_CODEL, 0
417 FairQueueingControlledDelay.CEThresholdSec, config_parse_fair_queueing_controlled_delay_usec, QDISC_KIND_FQ_CODEL, 0
418 FairQueueingControlledDelay.ECN, config_parse_fair_queueing_controlled_delay_bool, QDISC_KIND_FQ_CODEL, 0
419 FlowQueuePIE.Parent, config_parse_qdisc_parent, QDISC_KIND_FQ_PIE, 0
420 FlowQueuePIE.Handle, config_parse_qdisc_handle, QDISC_KIND_FQ_PIE, 0
421 FlowQueuePIE.PacketLimit, config_parse_fq_pie_packet_limit, QDISC_KIND_FQ_PIE, 0
422 GenericRandomEarlyDetection.Parent, config_parse_qdisc_parent, QDISC_KIND_GRED, 0
423 GenericRandomEarlyDetection.Handle, config_parse_qdisc_handle, QDISC_KIND_GRED, 0
424 GenericRandomEarlyDetection.VirtualQueues, config_parse_generic_random_early_detection_u32, QDISC_KIND_GRED, 0
425 GenericRandomEarlyDetection.DefaultVirtualQueue, config_parse_generic_random_early_detection_u32, QDISC_KIND_GRED, 0
426 GenericRandomEarlyDetection.GenericRIO, config_parse_generic_random_early_detection_bool, QDISC_KIND_GRED, 0
427 HeavyHitterFilter.Parent, config_parse_qdisc_parent, QDISC_KIND_HHF, 0
428 HeavyHitterFilter.Handle, config_parse_qdisc_handle, QDISC_KIND_HHF, 0
429 HeavyHitterFilter.PacketLimit, config_parse_heavy_hitter_filter_packet_limit, QDISC_KIND_HHF, 0
430 HierarchyTokenBucket.Parent, config_parse_qdisc_parent, QDISC_KIND_HTB, 0
431 HierarchyTokenBucket.Handle, config_parse_qdisc_handle, QDISC_KIND_HTB, 0
432 HierarchyTokenBucket.DefaultClass, config_parse_hierarchy_token_bucket_default_class, QDISC_KIND_HTB, 0
433 HierarchyTokenBucket.RateToQuantum, config_parse_hierarchy_token_bucket_u32, QDISC_KIND_HTB, 0
434 HierarchyTokenBucketClass.Parent, config_parse_tclass_parent, TCLASS_KIND_HTB, 0
435 HierarchyTokenBucketClass.ClassId, config_parse_tclass_classid, TCLASS_KIND_HTB, 0
436 HierarchyTokenBucketClass.Priority, config_parse_hierarchy_token_bucket_class_u32, TCLASS_KIND_HTB, 0
437 HierarchyTokenBucketClass.QuantumBytes, config_parse_hierarchy_token_bucket_class_size, TCLASS_KIND_HTB, 0
438 HierarchyTokenBucketClass.MTUBytes, config_parse_hierarchy_token_bucket_class_size, TCLASS_KIND_HTB, 0
439 HierarchyTokenBucketClass.OverheadBytes, config_parse_hierarchy_token_bucket_class_size, TCLASS_KIND_HTB, 0
440 HierarchyTokenBucketClass.Rate, config_parse_hierarchy_token_bucket_class_rate, TCLASS_KIND_HTB, 0
441 HierarchyTokenBucketClass.CeilRate, config_parse_hierarchy_token_bucket_class_rate, TCLASS_KIND_HTB, 0
442 HierarchyTokenBucketClass.BufferBytes, config_parse_hierarchy_token_bucket_class_size, TCLASS_KIND_HTB, 0
443 HierarchyTokenBucketClass.CeilBufferBytes, config_parse_hierarchy_token_bucket_class_size, TCLASS_KIND_HTB, 0
444 NetworkEmulator.Parent, config_parse_qdisc_parent, QDISC_KIND_NETEM, 0
445 NetworkEmulator.Handle, config_parse_qdisc_handle, QDISC_KIND_NETEM, 0
446 NetworkEmulator.DelaySec, config_parse_network_emulator_delay, QDISC_KIND_NETEM, 0
447 NetworkEmulator.DelayJitterSec, config_parse_network_emulator_delay, QDISC_KIND_NETEM, 0
448 NetworkEmulator.LossRate, config_parse_network_emulator_rate, QDISC_KIND_NETEM, 0
449 NetworkEmulator.DuplicateRate, config_parse_network_emulator_rate, QDISC_KIND_NETEM, 0
450 NetworkEmulator.PacketLimit, config_parse_network_emulator_packet_limit, QDISC_KIND_NETEM, 0
451 PIE.Parent, config_parse_qdisc_parent, QDISC_KIND_PIE, 0
452 PIE.Handle, config_parse_qdisc_handle, QDISC_KIND_PIE, 0
453 PIE.PacketLimit, config_parse_pie_packet_limit, QDISC_KIND_PIE, 0
454 StochasticFairBlue.Parent, config_parse_qdisc_parent, QDISC_KIND_SFB, 0
455 StochasticFairBlue.Handle, config_parse_qdisc_handle, QDISC_KIND_SFB, 0
456 StochasticFairBlue.PacketLimit, config_parse_stochastic_fair_blue_u32, QDISC_KIND_SFB, 0
457 StochasticFairnessQueueing.Parent, config_parse_qdisc_parent, QDISC_KIND_SFQ, 0
458 StochasticFairnessQueueing.Handle, config_parse_qdisc_handle, QDISC_KIND_SFQ, 0
459 StochasticFairnessQueueing.PerturbPeriodSec, config_parse_stochastic_fairness_queueing_perturb_period, QDISC_KIND_SFQ, 0
460 TokenBucketFilter.Parent, config_parse_qdisc_parent, QDISC_KIND_TBF, 0
461 TokenBucketFilter.Handle, config_parse_qdisc_handle, QDISC_KIND_TBF, 0
462 TokenBucketFilter.Rate, config_parse_token_bucket_filter_rate, QDISC_KIND_TBF, 0
463 TokenBucketFilter.BurstBytes, config_parse_token_bucket_filter_size, QDISC_KIND_TBF, 0
464 TokenBucketFilter.LimitBytes, config_parse_token_bucket_filter_size, QDISC_KIND_TBF, 0
465 TokenBucketFilter.MTUBytes, config_parse_token_bucket_filter_size, QDISC_KIND_TBF, 0
466 TokenBucketFilter.MPUBytes, config_parse_token_bucket_filter_size, QDISC_KIND_TBF, 0
467 TokenBucketFilter.PeakRate, config_parse_token_bucket_filter_rate, QDISC_KIND_TBF, 0
468 TokenBucketFilter.LatencySec, config_parse_token_bucket_filter_latency, QDISC_KIND_TBF, 0
469 TrivialLinkEqualizer.Parent, config_parse_qdisc_parent, QDISC_KIND_TEQL, 0
470 TrivialLinkEqualizer.Handle, config_parse_qdisc_handle, QDISC_KIND_TEQL, 0
471 TrivialLinkEqualizer.Id, config_parse_trivial_link_equalizer_id, QDISC_KIND_TEQL, 0
472 /* backwards compatibility: do not add new entries to this section */
473 Network.IPv4LL, config_parse_ipv4ll, 0, offsetof(Network, link_local)
474 Network.IPv6PrefixDelegation, config_parse_router_prefix_delegation, 0, offsetof(Network, router_prefix_delegation)
475 IPv6PrefixDelegation.RouterLifetimeSec, config_parse_sec, 0, offsetof(Network, router_lifetime_usec)
476 IPv6PrefixDelegation.Managed, config_parse_bool, 0, offsetof(Network, router_managed)
477 IPv6PrefixDelegation.OtherInformation, config_parse_bool, 0, offsetof(Network, router_other_information)
478 IPv6PrefixDelegation.RouterPreference, config_parse_router_preference, 0, 0
479 IPv6PrefixDelegation.EmitDNS, config_parse_bool, 0, offsetof(Network, router_emit_dns)
480 IPv6PrefixDelegation.DNS, config_parse_radv_dns, 0, 0
481 IPv6PrefixDelegation.EmitDomains, config_parse_bool, 0, offsetof(Network, router_emit_domains)
482 IPv6PrefixDelegation.Domains, config_parse_radv_search_domains, 0, 0
483 IPv6PrefixDelegation.DNSLifetimeSec, config_parse_sec, 0, offsetof(Network, router_dns_lifetime_usec)
484 DHCPv4.BlackList, config_parse_dhcp_acl_ip_address, 0, 0
485 DHCP.ClientIdentifier, config_parse_dhcp_client_identifier, 0, offsetof(Network, dhcp_client_identifier)
486 DHCP.UseDNS, config_parse_dhcp_use_dns, 0, 0
487 DHCP.UseNTP, config_parse_dhcp_use_ntp, 0, 0
488 DHCP.UseMTU, config_parse_bool, 0, offsetof(Network, dhcp_use_mtu)
489 DHCP.UseHostname, config_parse_bool, 0, offsetof(Network, dhcp_use_hostname)
490 DHCP.UseDomains, config_parse_dhcp_use_domains, 0, 0
491 DHCP.UseDomainName, config_parse_dhcp_use_domains, 0, 0
492 DHCP.UseRoutes, config_parse_bool, 0, offsetof(Network, dhcp_use_routes)
493 DHCP.Anonymize, config_parse_bool, 0, offsetof(Network, dhcp_anonymize)
494 DHCP.SendHostname, config_parse_bool, 0, offsetof(Network, dhcp_send_hostname)
495 DHCP.Hostname, config_parse_hostname, 0, offsetof(Network, dhcp_hostname)
496 DHCP.RequestBroadcast, config_parse_tristate, 0, offsetof(Network, dhcp_broadcast)
497 DHCP.CriticalConnection, config_parse_tristate, 0, offsetof(Network, dhcp_critical)
498 DHCP.VendorClassIdentifier, config_parse_string, 0, offsetof(Network, dhcp_vendor_class_identifier)
499 DHCP.UserClass, config_parse_dhcp_user_or_vendor_class, AF_INET, offsetof(Network, dhcp_user_class)
500 DHCP.IAID, config_parse_iaid, AF_INET, 0
501 DHCP.DUIDType, config_parse_network_duid_type, 0, 0
502 DHCP.DUIDRawData, config_parse_network_duid_rawdata, 0, 0
503 DHCP.RouteMetric, config_parse_dhcp_route_metric, 0, 0
504 DHCP.RouteTable, config_parse_section_route_table, 0, 0
505 DHCP.UseTimezone, config_parse_bool, 0, offsetof(Network, dhcp_use_timezone)
506 DHCP.ListenPort, config_parse_uint16, 0, offsetof(Network, dhcp_client_port)
507 DHCP.RapidCommit, config_parse_bool, 0, offsetof(Network, dhcp6_rapid_commit)
508 DHCP.ForceDHCPv6PDOtherInformation, config_parse_bool, 0, offsetof(Network, dhcp6_force_pd_other_information)
509 DHCPv4.UseDomainName, config_parse_dhcp_use_domains, 0, 0
510 DHCPv4.CriticalConnection, config_parse_tristate, 0, offsetof(Network, dhcp_critical)
511 DHCPv6.RouteMetric, config_parse_dhcp_route_metric, 0, 0
512 IPv6AcceptRA.DenyList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_deny_listed_prefix)
513 IPv6AcceptRA.BlackList, config_parse_ndisc_address_filter, 0, offsetof(Network, ndisc_deny_listed_prefix)
514 TrafficControlQueueingDiscipline.Parent, config_parse_qdisc_parent, _QDISC_KIND_INVALID, 0
515 TrafficControlQueueingDiscipline.NetworkEmulatorDelaySec, config_parse_network_emulator_delay, 0, 0
516 TrafficControlQueueingDiscipline.NetworkEmulatorDelayJitterSec, config_parse_network_emulator_delay, 0, 0
517 TrafficControlQueueingDiscipline.NetworkEmulatorLossRate, config_parse_network_emulator_rate, 0, 0
518 TrafficControlQueueingDiscipline.NetworkEmulatorDuplicateRate, config_parse_network_emulator_rate, 0, 0
519 TrafficControlQueueingDiscipline.NetworkEmulatorPacketLimit, config_parse_network_emulator_packet_limit, 0, 0
520 FairQueueing.Quantum, config_parse_fair_queueing_size, QDISC_KIND_FQ, 0
521 FairQueueing.InitialQuantum, config_parse_fair_queueing_size, QDISC_KIND_FQ, 0
522 FairQueueingControlledDelay.MemoryLimit, config_parse_fair_queueing_controlled_delay_size, QDISC_KIND_FQ_CODEL, 0
523 FairQueueingControlledDelay.Quantum, config_parse_fair_queueing_controlled_delay_size, QDISC_KIND_FQ_CODEL, 0
524 TokenBucketFilter.Burst, config_parse_token_bucket_filter_size, QDISC_KIND_TBF, 0
525 TokenBucketFilter.LimitSize, config_parse_token_bucket_filter_size, QDISC_KIND_TBF, 0