11/* SPDX-License-Identifier: LGPL-2.1+ */
22
3- #include <netinet/ether.h>
4- #include <linux/if_bonding.h>
5-
63#include "sd-netlink.h"
74
85#include "alloc-util.h"
6+ #include "bond.h"
97#include "conf-parser.h"
108#include "ether-addr-util.h"
119#include "extract-word.h"
12- #include "missing.h"
13- #include "netdev/bond.h"
1410#include "string-table.h"
1511#include "string-util.h"
1612
@@ -125,44 +121,6 @@ static const char *const bond_primary_reselect_table[_NETDEV_BOND_PRIMARY_RESELE
125121DEFINE_STRING_TABLE_LOOKUP (bond_primary_reselect , BondPrimaryReselect );
126122DEFINE_CONFIG_PARSE_ENUM (config_parse_bond_primary_reselect , bond_primary_reselect , BondPrimaryReselect , "Failed to parse bond primary reselect" );
127123
128- static uint8_t bond_mode_to_kernel (BondMode mode ) {
129- switch (mode ) {
130- case NETDEV_BOND_MODE_BALANCE_RR :
131- return BOND_MODE_ROUNDROBIN ;
132- case NETDEV_BOND_MODE_ACTIVE_BACKUP :
133- return BOND_MODE_ACTIVEBACKUP ;
134- case NETDEV_BOND_MODE_BALANCE_XOR :
135- return BOND_MODE_XOR ;
136- case NETDEV_BOND_MODE_BROADCAST :
137- return BOND_MODE_BROADCAST ;
138- case NETDEV_BOND_MODE_802_3AD :
139- return BOND_MODE_8023AD ;
140- case NETDEV_BOND_MODE_BALANCE_TLB :
141- return BOND_MODE_TLB ;
142- case NETDEV_BOND_MODE_BALANCE_ALB :
143- return BOND_MODE_ALB ;
144- default :
145- return (uint8_t ) -1 ;
146- }
147- }
148-
149- static uint8_t bond_xmit_hash_policy_to_kernel (BondXmitHashPolicy policy ) {
150- switch (policy ) {
151- case NETDEV_BOND_XMIT_HASH_POLICY_LAYER2 :
152- return BOND_XMIT_POLICY_LAYER2 ;
153- case NETDEV_BOND_XMIT_HASH_POLICY_LAYER34 :
154- return BOND_XMIT_POLICY_LAYER34 ;
155- case NETDEV_BOND_XMIT_HASH_POLICY_LAYER23 :
156- return BOND_XMIT_POLICY_LAYER23 ;
157- case NETDEV_BOND_XMIT_HASH_POLICY_ENCAP23 :
158- return BOND_XMIT_POLICY_ENCAP23 ;
159- case NETDEV_BOND_XMIT_HASH_POLICY_ENCAP34 :
160- return BOND_XMIT_POLICY_ENCAP34 ;
161- default :
162- return (uint8_t ) -1 ;
163- }
164- }
165-
166124static int netdev_bond_fill_message_create (NetDev * netdev , Link * link , sd_netlink_message * m ) {
167125 Bond * b ;
168126 ArpIpTarget * target = NULL ;
@@ -177,14 +135,13 @@ static int netdev_bond_fill_message_create(NetDev *netdev, Link *link, sd_netlin
177135 assert (b );
178136
179137 if (b -> mode != _NETDEV_BOND_MODE_INVALID ) {
180- r = sd_netlink_message_append_u8 (m , IFLA_BOND_MODE , bond_mode_to_kernel ( b -> mode ) );
138+ r = sd_netlink_message_append_u8 (m , IFLA_BOND_MODE , b -> mode );
181139 if (r < 0 )
182140 return log_netdev_error_errno (netdev , r , "Could not append IFLA_BOND_MODE attribute: %m" );
183141 }
184142
185143 if (b -> xmit_hash_policy != _NETDEV_BOND_XMIT_HASH_POLICY_INVALID ) {
186- r = sd_netlink_message_append_u8 (m , IFLA_BOND_XMIT_HASH_POLICY ,
187- bond_xmit_hash_policy_to_kernel (b -> xmit_hash_policy ));
144+ r = sd_netlink_message_append_u8 (m , IFLA_BOND_XMIT_HASH_POLICY , b -> xmit_hash_policy );
188145 if (r < 0 )
189146 return log_netdev_error_errno (netdev , r , "Could not append IFLA_BOND_XMIT_HASH_POLICY attribute: %m" );
190147 }
0 commit comments