1/* SPDX-License-Identifier: LGPL-2.1-or-later */
2%{
3#if __GNUC__ >= 7
4_Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"")
5#endif
6#include <stddef.h>
7#include "bareudp.h"
8#include "batadv.h"
9#include "bond.h"
10#include "bridge.h"
11#include "conf-parser.h"
12#include "fou-tunnel.h"
13#include "geneve.h"
14#include "ipoib.h"
15#include "ipvlan.h"
16#include "l2tp-tunnel.h"
17#include "macsec.h"
18#include "macvlan.h"
19#include "net-condition.h"
20#include "netdev.h"
21#include "tunnel.h"
22#include "tuntap.h"
23#include "veth.h"
24#include "vlan-util.h"
25#include "vlan.h"
26#include "vrf.h"
27#include "vxcan.h"
28#include "vxlan.h"
29#include "wireguard.h"
30#include "wlan.h"
31#include "xfrm.h"
32%}
33struct ConfigPerfItem;
34%null_strings
35%language=ANSI-C
36%define slot-name section_and_lvalue
37%define hash-function-name network_netdev_gperf_hash
38%define lookup-function-name network_netdev_gperf_lookup
39%readonly-tables
40%omit-struct-type
41%struct-type
42%includes
43%%
44Match.Host,                               config_parse_net_condition,                CONDITION_HOST,                offsetof(NetDev, conditions)
45Match.Virtualization,                     config_parse_net_condition,                CONDITION_VIRTUALIZATION,      offsetof(NetDev, conditions)
46Match.KernelCommandLine,                  config_parse_net_condition,                CONDITION_KERNEL_COMMAND_LINE, offsetof(NetDev, conditions)
47Match.KernelVersion,                      config_parse_net_condition,                CONDITION_KERNEL_VERSION,      offsetof(NetDev, conditions)
48Match.Architecture,                       config_parse_net_condition,                CONDITION_ARCHITECTURE,        offsetof(NetDev, conditions)
49Match.Firmware,                           config_parse_net_condition,                CONDITION_FIRMWARE,            offsetof(NetDev, conditions)
50NetDev.Description,                       config_parse_string,                       0,                             offsetof(NetDev, description)
51NetDev.Name,                              config_parse_ifname,                       0,                             offsetof(NetDev, ifname)
52NetDev.Kind,                              config_parse_netdev_kind,                  0,                             offsetof(NetDev, kind)
53NetDev.MTUBytes,                          config_parse_mtu,                          AF_UNSPEC,                     offsetof(NetDev, mtu)
54NetDev.MACAddress,                        config_parse_netdev_hw_addr,               ETH_ALEN,                      offsetof(NetDev, hw_addr)
55VLAN.Id,                                  config_parse_vlanid,                       0,                             offsetof(VLan, id)
56VLAN.Protocol,                            config_parse_vlanprotocol,                 0,                             offsetof(VLan, protocol)
57VLAN.GVRP,                                config_parse_tristate,                     0,                             offsetof(VLan, gvrp)
58VLAN.MVRP,                                config_parse_tristate,                     0,                             offsetof(VLan, mvrp)
59VLAN.LooseBinding,                        config_parse_tristate,                     0,                             offsetof(VLan, loose_binding)
60VLAN.ReorderHeader,                       config_parse_tristate,                     0,                             offsetof(VLan, reorder_hdr)
61VLAN.EgressQOSMaps,                       config_parse_vlan_qos_maps,                0,                             offsetof(VLan, egress_qos_maps)
62VLAN.IngressQOSMaps,                      config_parse_vlan_qos_maps,                0,                             offsetof(VLan, ingress_qos_maps)
63MACVLAN.Mode,                             config_parse_macvlan_mode,                 0,                             offsetof(MacVlan, mode)
64MACVLAN.SourceMACAddress,                 config_parse_ether_addrs,                  0,                             offsetof(MacVlan, match_source_mac)
65MACVLAN.BroadcastMulticastQueueLength,    config_parse_macvlan_broadcast_queue_size, 0,                             offsetof(MacVlan, bc_queue_length)
66MACVTAP.Mode,                             config_parse_macvlan_mode,                 0,                             offsetof(MacVlan, mode)
67MACVTAP.SourceMACAddress,                 config_parse_ether_addrs,                  0,                             offsetof(MacVlan, match_source_mac)
68IPVLAN.Mode,                              config_parse_ipvlan_mode,                  0,                             offsetof(IPVlan, mode)
69IPVLAN.Flags,                             config_parse_ipvlan_flags,                 0,                             offsetof(IPVlan, flags)
70IPVTAP.Mode,                              config_parse_ipvlan_mode,                  0,                             offsetof(IPVlan, mode)
71IPVTAP.Flags,                             config_parse_ipvlan_flags,                 0,                             offsetof(IPVlan, flags)
72Tunnel.Local,                             config_parse_tunnel_local_address,         0,                             0
73Tunnel.Remote,                            config_parse_tunnel_remote_address,        0,                             0
74Tunnel.TOS,                               config_parse_unsigned,                     0,                             offsetof(Tunnel, tos)
75Tunnel.TTL,                               config_parse_unsigned,                     0,                             offsetof(Tunnel, ttl)
76Tunnel.Key,                               config_parse_tunnel_key,                   0,                             offsetof(Tunnel, key)
77Tunnel.InputKey,                          config_parse_tunnel_key,                   0,                             offsetof(Tunnel, ikey)
78Tunnel.OutputKey,                         config_parse_tunnel_key,                   0,                             offsetof(Tunnel, okey)
79Tunnel.DiscoverPathMTU,                   config_parse_bool,                         0,                             offsetof(Tunnel, pmtudisc)
80Tunnel.Mode,                              config_parse_ip6tnl_mode,                  0,                             offsetof(Tunnel, ip6tnl_mode)
81Tunnel.IPv6FlowLabel,                     config_parse_ipv6_flowlabel,               0,                             0
82Tunnel.CopyDSCP,                          config_parse_bool,                         0,                             offsetof(Tunnel, copy_dscp)
83Tunnel.EncapsulationLimit,                config_parse_encap_limit,                  0,                             0
84Tunnel.Independent,                       config_parse_bool,                         0,                             offsetof(Tunnel, independent)
85Tunnel.AssignToLoopback,                  config_parse_bool,                         0,                             offsetof(Tunnel, assign_to_loopback)
86Tunnel.AllowLocalRemote,                  config_parse_tristate,                     0,                             offsetof(Tunnel, allow_localremote)
87Tunnel.FooOverUDP,                        config_parse_bool,                         0,                             offsetof(Tunnel, fou_tunnel)
88Tunnel.FOUDestinationPort,                config_parse_ip_port,                      0,                             offsetof(Tunnel, fou_destination_port)
89Tunnel.FOUSourcePort,                     config_parse_ip_port,                      0,                             offsetof(Tunnel, encap_src_port)
90Tunnel.Encapsulation,                     config_parse_fou_encap_type,               0,                             offsetof(Tunnel, fou_encap_type)
91Tunnel.IPv6RapidDeploymentPrefix,         config_parse_6rd_prefix,                   0,                             0
92Tunnel.ERSPANIndex,                       config_parse_uint32,                       0,                             offsetof(Tunnel, erspan_index)
93Tunnel.SerializeTunneledPackets,          config_parse_tristate,                     0,                             offsetof(Tunnel, gre_erspan_sequence)
94Tunnel.ISATAP,                            config_parse_tristate,                     0,                             offsetof(Tunnel, isatap)
95Tunnel.External,                          config_parse_bool,                         0,                             offsetof(Tunnel, external)
96FooOverUDP.Protocol,                      config_parse_ip_protocol,                  0,                             offsetof(FouTunnel, fou_protocol)
97FooOverUDP.Encapsulation,                 config_parse_fou_encap_type,               0,                             offsetof(FouTunnel, fou_encap_type)
98FooOverUDP.Port,                          config_parse_ip_port,                      0,                             offsetof(FouTunnel, port)
99FooOverUDP.PeerPort,                      config_parse_ip_port,                      0,                             offsetof(FouTunnel, peer_port)
100FooOverUDP.Local,                         config_parse_fou_tunnel_address,           0,                             offsetof(FouTunnel, local)
101FooOverUDP.Peer,                          config_parse_fou_tunnel_address,           0,                             offsetof(FouTunnel, peer)
102L2TP.TunnelId,                            config_parse_l2tp_tunnel_id,               0,                             offsetof(L2tpTunnel, tunnel_id)
103L2TP.PeerTunnelId,                        config_parse_l2tp_tunnel_id,               0,                             offsetof(L2tpTunnel, peer_tunnel_id)
104L2TP.UDPSourcePort,                       config_parse_ip_port,                      0,                             offsetof(L2tpTunnel, l2tp_udp_sport)
105L2TP.UDPDestinationPort,                  config_parse_ip_port,                      0,                             offsetof(L2tpTunnel, l2tp_udp_dport)
106L2TP.Local,                               config_parse_l2tp_tunnel_local_address,    0,                             0
107L2TP.Remote,                              config_parse_l2tp_tunnel_remote_address,   0,                             0
108L2TP.EncapsulationType,                   config_parse_l2tp_encap_type,              0,                             offsetof(L2tpTunnel, l2tp_encap_type)
109L2TP.UDPCheckSum,                         config_parse_bool,                         0,                             offsetof(L2tpTunnel, udp_csum)
110L2TP.UDP6CheckSumRx,                      config_parse_bool,                         0,                             offsetof(L2tpTunnel, udp6_csum_rx)
111L2TP.UDP6CheckSumTx,                      config_parse_bool,                         0,                             offsetof(L2tpTunnel, udp6_csum_tx)
112L2TPSession.SessionId,                    config_parse_l2tp_session_id,              0,                             0
113L2TPSession.PeerSessionId,                config_parse_l2tp_session_id,              0,                             0
114L2TPSession.Layer2SpecificHeader,         config_parse_l2tp_session_l2spec,          0,                             0
115L2TPSession.Name,                         config_parse_l2tp_session_name,            0,                             0
116Peer.Name,                                config_parse_ifname,                       0,                             offsetof(Veth, ifname_peer)
117Peer.MACAddress,                          config_parse_netdev_hw_addr,               ETH_ALEN,                      offsetof(Veth, hw_addr_peer)
118VXCAN.Peer,                               config_parse_ifname,                       0,                             offsetof(VxCan, ifname_peer)
119VXLAN.VNI,                                config_parse_uint32,                       0,                             offsetof(VxLan, vni)
120VXLAN.Id,                                 config_parse_uint32,                       0,                             offsetof(VxLan, vni) /* deprecated */
121VXLAN.Group,                              config_parse_vxlan_address,                0,                             offsetof(VxLan, group)
122VXLAN.Local,                              config_parse_vxlan_address,                0,                             offsetof(VxLan, local)
123VXLAN.Remote,                             config_parse_vxlan_address,                0,                             offsetof(VxLan, remote)
124VXLAN.TOS,                                config_parse_unsigned,                     0,                             offsetof(VxLan, tos)
125VXLAN.TTL,                                config_parse_vxlan_ttl,                    0,                             offsetof(VxLan, ttl)
126VXLAN.MacLearning,                        config_parse_bool,                         0,                             offsetof(VxLan, learning)
127VXLAN.ARPProxy,                           config_parse_bool,                         0,                             offsetof(VxLan, arp_proxy)
128VXLAN.ReduceARPProxy,                     config_parse_bool,                         0,                             offsetof(VxLan, arp_proxy)
129VXLAN.L2MissNotification,                 config_parse_bool,                         0,                             offsetof(VxLan, l2miss)
130VXLAN.L3MissNotification,                 config_parse_bool,                         0,                             offsetof(VxLan, l3miss)
131VXLAN.RouteShortCircuit,                  config_parse_bool,                         0,                             offsetof(VxLan, route_short_circuit)
132VXLAN.UDPCheckSum,                        config_parse_bool,                         0,                             offsetof(VxLan, udpcsum)
133VXLAN.UDPChecksum,                        config_parse_bool,                         0,                             offsetof(VxLan, udpcsum)
134VXLAN.UDP6ZeroCheckSumRx,                 config_parse_bool,                         0,                             offsetof(VxLan, udp6zerocsumrx)
135VXLAN.UDP6ZeroChecksumRx,                 config_parse_bool,                         0,                             offsetof(VxLan, udp6zerocsumrx)
136VXLAN.UDP6ZeroCheckSumTx,                 config_parse_bool,                         0,                             offsetof(VxLan, udp6zerocsumtx)
137VXLAN.UDP6ZeroChecksumTx,                 config_parse_bool,                         0,                             offsetof(VxLan, udp6zerocsumtx)
138VXLAN.RemoteChecksumTx,                   config_parse_bool,                         0,                             offsetof(VxLan, remote_csum_tx)
139VXLAN.RemoteChecksumRx,                   config_parse_bool,                         0,                             offsetof(VxLan, remote_csum_rx)
140VXLAN.FDBAgeingSec,                       config_parse_sec,                          0,                             offsetof(VxLan, fdb_ageing)
141VXLAN.GroupPolicyExtension,               config_parse_bool,                         0,                             offsetof(VxLan, group_policy)
142VXLAN.GenericProtocolExtension,           config_parse_bool,                         0,                             offsetof(VxLan, generic_protocol_extension)
143VXLAN.MaximumFDBEntries,                  config_parse_unsigned,                     0,                             offsetof(VxLan, max_fdb)
144VXLAN.PortRange,                          config_parse_port_range,                   0,                             0
145VXLAN.DestinationPort,                    config_parse_ip_port,                      0,                             offsetof(VxLan, dest_port)
146VXLAN.FlowLabel,                          config_parse_flow_label,                   0,                             0
147VXLAN.IPDoNotFragment,                    config_parse_df,                           0,                             offsetof(VxLan, df)
148VXLAN.Independent,                        config_parse_bool,                         0,                             offsetof(VxLan, independent)
149GENEVE.Id,                                config_parse_geneve_vni,                   0,                             offsetof(Geneve, id)
150GENEVE.Remote,                            config_parse_geneve_address,               0,                             offsetof(Geneve, remote)
151GENEVE.TOS,                               config_parse_uint8,                        0,                             offsetof(Geneve, tos)
152GENEVE.TTL,                               config_parse_geneve_ttl,                   0,                             offsetof(Geneve, ttl)
153GENEVE.UDPChecksum,                       config_parse_bool,                         0,                             offsetof(Geneve, udpcsum)
154GENEVE.UDP6ZeroCheckSumRx,                config_parse_bool,                         0,                             offsetof(Geneve, udp6zerocsumrx)
155GENEVE.UDP6ZeroChecksumRx,                config_parse_bool,                         0,                             offsetof(Geneve, udp6zerocsumrx)
156GENEVE.UDP6ZeroCheckSumTx,                config_parse_bool,                         0,                             offsetof(Geneve, udp6zerocsumtx)
157GENEVE.UDP6ZeroChecksumTx,                config_parse_bool,                         0,                             offsetof(Geneve, udp6zerocsumtx)
158GENEVE.DestinationPort,                   config_parse_ip_port,                      0,                             offsetof(Geneve, dest_port)
159GENEVE.IPDoNotFragment,                   config_parse_geneve_df,                    0,                             offsetof(Geneve, geneve_df)
160GENEVE.FlowLabel,                         config_parse_geneve_flow_label,            0,                             0
161MACsec.Port,                              config_parse_macsec_port,                  0,                             0
162MACsec.Encrypt,                           config_parse_tristate,                     0,                             offsetof(MACsec, encrypt)
163MACsecReceiveChannel.Port,                config_parse_macsec_port,                  0,                             0
164MACsecReceiveChannel.MACAddress,          config_parse_macsec_hw_address,            0,                             0
165MACsecTransmitAssociation.PacketNumber,   config_parse_macsec_packet_number,         0,                             0
166MACsecTransmitAssociation.KeyId,          config_parse_macsec_key_id,                0,                             0
167MACsecTransmitAssociation.Key,            config_parse_macsec_key,                   0,                             0
168MACsecTransmitAssociation.KeyFile,        config_parse_macsec_key_file,              0,                             0
169MACsecTransmitAssociation.Activate,       config_parse_macsec_sa_activate,           0,                             0
170MACsecTransmitAssociation.UseForEncoding, config_parse_macsec_use_for_encoding,      0,                             0
171MACsecReceiveAssociation.Port,            config_parse_macsec_port,                  0,                             0
172MACsecReceiveAssociation.MACAddress,      config_parse_macsec_hw_address,            0,                             0
173MACsecReceiveAssociation.PacketNumber,    config_parse_macsec_packet_number,         0,                             0
174MACsecReceiveAssociation.KeyId,           config_parse_macsec_key_id,                0,                             0
175MACsecReceiveAssociation.Key,             config_parse_macsec_key,                   0,                             0
176MACsecReceiveAssociation.KeyFile,         config_parse_macsec_key_file,              0,                             0
177MACsecReceiveAssociation.Activate,        config_parse_macsec_sa_activate,           0,                             0
178Tun.OneQueue,                             config_parse_warn_compat,                  DISABLED_LEGACY,               0
179Tun.MultiQueue,                           config_parse_bool,                         0,                             offsetof(TunTap, multi_queue)
180Tun.PacketInfo,                           config_parse_bool,                         0,                             offsetof(TunTap, packet_info)
181Tun.VNetHeader,                           config_parse_bool,                         0,                             offsetof(TunTap, vnet_hdr)
182Tun.User,                                 config_parse_string,                       CONFIG_PARSE_STRING_SAFE,      offsetof(TunTap, user_name)
183Tun.Group,                                config_parse_string,                       CONFIG_PARSE_STRING_SAFE,      offsetof(TunTap, group_name)
184Tap.OneQueue,                             config_parse_warn_compat,                  DISABLED_LEGACY,               0
185Tap.MultiQueue,                           config_parse_bool,                         0,                             offsetof(TunTap, multi_queue)
186Tap.PacketInfo,                           config_parse_bool,                         0,                             offsetof(TunTap, packet_info)
187Tap.VNetHeader,                           config_parse_bool,                         0,                             offsetof(TunTap, vnet_hdr)
188Tap.User,                                 config_parse_string,                       CONFIG_PARSE_STRING_SAFE,      offsetof(TunTap, user_name)
189Tap.Group,                                config_parse_string,                       CONFIG_PARSE_STRING_SAFE,      offsetof(TunTap, group_name)
190Bond.Mode,                                config_parse_bond_mode,                    0,                             offsetof(Bond, mode)
191Bond.TransmitHashPolicy,                  config_parse_bond_xmit_hash_policy,        0,                             offsetof(Bond, xmit_hash_policy)
192Bond.LACPTransmitRate,                    config_parse_bond_lacp_rate,               0,                             offsetof(Bond, lacp_rate)
193Bond.AdSelect,                            config_parse_bond_ad_select,               0,                             offsetof(Bond, ad_select)
194Bond.FailOverMACPolicy,                   config_parse_bond_fail_over_mac,           0,                             offsetof(Bond, fail_over_mac)
195Bond.ARPIPTargets,                        config_parse_arp_ip_target_address,        0,                             0
196Bond.ARPValidate,                         config_parse_bond_arp_validate,            0,                             offsetof(Bond, arp_validate)
197Bond.ARPAllTargets,                       config_parse_bond_arp_all_targets,         0,                             offsetof(Bond, arp_all_targets)
198Bond.PrimaryReselectPolicy,               config_parse_bond_primary_reselect,        0,                             offsetof(Bond, primary_reselect)
199Bond.ResendIGMP,                          config_parse_unsigned,                     0,                             offsetof(Bond, resend_igmp)
200Bond.PacketsPerSlave,                     config_parse_unsigned,                     0,                             offsetof(Bond, packets_per_slave)
201Bond.GratuitousARP,                       config_parse_unsigned,                     0,                             offsetof(Bond, num_grat_arp)
202Bond.AllSlavesActive,                     config_parse_bool,                         0,                             offsetof(Bond, all_slaves_active)
203Bond.DynamicTransmitLoadBalancing,        config_parse_tristate,                     0,                             offsetof(Bond, tlb_dynamic_lb)
204Bond.MinLinks,                            config_parse_unsigned,                     0,                             offsetof(Bond, min_links)
205Bond.MIIMonitorSec,                       config_parse_sec,                          0,                             offsetof(Bond, miimon)
206Bond.UpDelaySec,                          config_parse_sec,                          0,                             offsetof(Bond, updelay)
207Bond.DownDelaySec,                        config_parse_sec,                          0,                             offsetof(Bond, downdelay)
208Bond.ARPIntervalSec,                      config_parse_sec,                          0,                             offsetof(Bond, arp_interval)
209Bond.LearnPacketIntervalSec,              config_parse_sec,                          0,                             offsetof(Bond, lp_interval)
210Bond.AdActorSystemPriority,               config_parse_ad_actor_sys_prio,            0,                             offsetof(Bond, ad_actor_sys_prio)
211Bond.AdUserPortKey,                       config_parse_ad_user_port_key,             0,                             offsetof(Bond, ad_user_port_key)
212Bond.AdActorSystem,                       config_parse_ad_actor_system,              0,                             offsetof(Bond, ad_actor_system)
213Bridge.HelloTimeSec,                      config_parse_sec,                          0,                             offsetof(Bridge, hello_time)
214Bridge.MaxAgeSec,                         config_parse_sec,                          0,                             offsetof(Bridge, max_age)
215Bridge.AgeingTimeSec,                     config_parse_sec,                          0,                             offsetof(Bridge, ageing_time)
216Bridge.ForwardDelaySec,                   config_parse_sec,                          0,                             offsetof(Bridge, forward_delay)
217Bridge.Priority,                          config_parse_uint16,                       0,                             offsetof(Bridge, priority)
218Bridge.GroupForwardMask,                  config_parse_uint16,                       0,                             offsetof(Bridge, group_fwd_mask)
219Bridge.DefaultPVID,                       config_parse_default_port_vlanid,          0,                             offsetof(Bridge, default_pvid)
220Bridge.MulticastQuerier,                  config_parse_tristate,                     0,                             offsetof(Bridge, mcast_querier)
221Bridge.MulticastSnooping,                 config_parse_tristate,                     0,                             offsetof(Bridge, mcast_snooping)
222Bridge.VLANFiltering,                     config_parse_tristate,                     0,                             offsetof(Bridge, vlan_filtering)
223Bridge.VLANProtocol,                      config_parse_vlanprotocol,                 0,                             offsetof(Bridge, vlan_protocol)
224Bridge.STP,                               config_parse_tristate,                     0,                             offsetof(Bridge, stp)
225Bridge.MulticastIGMPVersion,              config_parse_uint8,                        0,                             offsetof(Bridge, igmp_version)
226VRF.TableId,                              config_parse_uint32,                       0,                             offsetof(Vrf, table) /* deprecated */
227VRF.Table,                                config_parse_uint32,                       0,                             offsetof(Vrf, table)
228BareUDP.DestinationPort,                  config_parse_ip_port,                      0,                             offsetof(BareUDP, dest_port)
229BareUDP.EtherType,                        config_parse_bare_udp_iftype,              0,                             offsetof(BareUDP, iftype)
230WireGuard.FirewallMark,                   config_parse_unsigned,                     0,                             offsetof(Wireguard, fwmark)
231WireGuard.FwMark,                         config_parse_unsigned,                     0,                             offsetof(Wireguard, fwmark) /* deprecated */
232WireGuard.ListenPort,                     config_parse_wireguard_listen_port,        0,                             offsetof(Wireguard, port)
233WireGuard.PrivateKey,                     config_parse_wireguard_private_key,        0,                             0
234WireGuard.PrivateKeyFile,                 config_parse_wireguard_private_key_file,   0,                             0
235WireGuard.RouteTable,                     config_parse_wireguard_route_table,        0,                             offsetof(Wireguard, route_table)
236WireGuard.RouteMetric,                    config_parse_wireguard_route_priority,     0,                             offsetof(Wireguard, route_priority)
237WireGuardPeer.AllowedIPs,                 config_parse_wireguard_allowed_ips,        0,                             0
238WireGuardPeer.Endpoint,                   config_parse_wireguard_endpoint,           0,                             0
239WireGuardPeer.PublicKey,                  config_parse_wireguard_peer_key,           0,                             0
240WireGuardPeer.PresharedKey,               config_parse_wireguard_peer_key,           0,                             0
241WireGuardPeer.PresharedKeyFile,           config_parse_wireguard_preshared_key_file, 0,                             0
242WireGuardPeer.PersistentKeepalive,        config_parse_wireguard_keepalive,          0,                             0
243WireGuardPeer.RouteTable,                 config_parse_wireguard_peer_route_table,   0,                             0
244WireGuardPeer.RouteMetric,                config_parse_wireguard_peer_route_priority,0,                             0
245Xfrm.InterfaceId,                         config_parse_uint32,                       0,                             offsetof(Xfrm, if_id)
246Xfrm.Independent,                         config_parse_bool,                         0,                             offsetof(Xfrm, independent)
247BatmanAdvanced.Aggregation,               config_parse_bool,                         0,                             offsetof(BatmanAdvanced, aggregation)
248BatmanAdvanced.BridgeLoopAvoidance,       config_parse_bool,                         0,                             offsetof(BatmanAdvanced, bridge_loop_avoidance)
249BatmanAdvanced.DistributedArpTable,       config_parse_bool,                         0,                             offsetof(BatmanAdvanced, distributed_arp_table)
250BatmanAdvanced.Fragmentation,             config_parse_bool,                         0,                             offsetof(BatmanAdvanced, fragmentation)
251BatmanAdvanced.GatewayMode,               config_parse_batadv_gateway_mode,          0,                             offsetof(BatmanAdvanced, gateway_mode)
252BatmanAdvanced.GatewayBandwithDown,       config_parse_badadv_bandwidth,             0,                             offsetof(BatmanAdvanced, gateway_bandwidth_down)
253BatmanAdvanced.GatewayBandwithUp,         config_parse_badadv_bandwidth,             0,                             offsetof(BatmanAdvanced, gateway_bandwidth_up)
254BatmanAdvanced.GatewayBandwidthDown,      config_parse_badadv_bandwidth,             0,                             offsetof(BatmanAdvanced, gateway_bandwidth_down)
255BatmanAdvanced.GatewayBandwidthUp,        config_parse_badadv_bandwidth,             0,                             offsetof(BatmanAdvanced, gateway_bandwidth_up)
256BatmanAdvanced.HopPenalty,                config_parse_uint8,                        0,                             offsetof(BatmanAdvanced, hop_penalty)
257BatmanAdvanced.OriginatorIntervalSec,     config_parse_sec,                          0,                             offsetof(BatmanAdvanced, originator_interval)
258BatmanAdvanced.RoutingAlgorithm,          config_parse_batadv_routing_algorithm,     0,                             offsetof(BatmanAdvanced, routing_algorithm)
259IPoIB.PartitionKey,                       config_parse_ipoib_pkey,                   0,                             offsetof(IPoIB, pkey)
260IPoIB.Mode,                               config_parse_ipoib_mode,                   0,                             offsetof(IPoIB, mode)
261IPoIB.IgnoreUserspaceMulticastGroups,     config_parse_tristate,                     0,                             offsetof(IPoIB, umcast)
262WLAN.PhysicalDevice,                      config_parse_wiphy,                        0,                             0
263WLAN.Type,                                config_parse_wlan_iftype,                  0,                             offsetof(WLan, iftype)
264WLAN.WDS,                                 config_parse_tristate,                     0,                             offsetof(WLan, wds)
265