mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-29 19:40:12 +01:00
bond: make _platform_lnk_bond_init_from_setting() more readable via a macro
Use macros to make the code shorter and easier to read.
(cherry picked from commit b7c56c3ae1)
This commit is contained in:
parent
1ae5af9898
commit
bb0fb83694
1 changed files with 40 additions and 38 deletions
|
|
@ -395,46 +395,48 @@ _platform_lnk_bond_init_from_setting(NMSettingBond *s_bond, NMPlatformLnkBond *p
|
|||
{
|
||||
const char *opt_value;
|
||||
|
||||
#define _v_fcn(fcn, s_bond, opt) (fcn(nm_setting_bond_get_option_normalized((s_bond), (opt))))
|
||||
#define _v_u8(s_bond, opt) _nm_setting_bond_opt_value_as_u8((s_bond), (opt))
|
||||
#define _v_u16(s_bond, opt) _nm_setting_bond_opt_value_as_u16((s_bond), (opt))
|
||||
#define _v_u32(s_bond, opt) _nm_setting_bond_opt_value_as_u32((s_bond), (opt))
|
||||
|
||||
*props = (NMPlatformLnkBond){
|
||||
.mode = _nm_setting_bond_mode_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_MODE)),
|
||||
.mode = _v_fcn(_nm_setting_bond_mode_from_string, s_bond, NM_SETTING_BOND_OPTION_MODE),
|
||||
.primary = _setting_bond_primary_opt_as_ifindex(s_bond),
|
||||
.miimon = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_MIIMON),
|
||||
.updelay = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_UPDELAY),
|
||||
.downdelay = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_DOWNDELAY),
|
||||
.arp_interval =
|
||||
_nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_ARP_INTERVAL),
|
||||
.resend_igmp =
|
||||
_nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_RESEND_IGMP),
|
||||
.min_links = _nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_MIN_LINKS),
|
||||
.lp_interval =
|
||||
_nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_LP_INTERVAL),
|
||||
.packets_per_port =
|
||||
_nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_PACKETS_PER_SLAVE),
|
||||
.peer_notif_delay =
|
||||
_nm_setting_bond_opt_value_as_u32(s_bond, NM_SETTING_BOND_OPTION_PEER_NOTIF_DELAY),
|
||||
.arp_all_targets = _nm_setting_bond_arp_all_targets_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_ARP_ALL_TARGETS)),
|
||||
.arp_validate = _nm_setting_bond_arp_validate_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_ARP_VALIDATE)),
|
||||
.ad_actor_sys_prio =
|
||||
_nm_setting_bond_opt_value_as_u16(s_bond, NM_SETTING_BOND_OPTION_AD_ACTOR_SYS_PRIO),
|
||||
.ad_user_port_key =
|
||||
_nm_setting_bond_opt_value_as_u16(s_bond, NM_SETTING_BOND_OPTION_AD_USER_PORT_KEY),
|
||||
.primary_reselect = _nm_setting_bond_primary_reselect_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_PRIMARY_RESELECT)),
|
||||
.fail_over_mac = _nm_setting_bond_fail_over_mac_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_FAIL_OVER_MAC)),
|
||||
.xmit_hash_policy = _nm_setting_bond_xmit_hash_policy_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_XMIT_HASH_POLICY)),
|
||||
.num_grat_arp =
|
||||
_nm_setting_bond_opt_value_as_u8(s_bond, NM_SETTING_BOND_OPTION_NUM_GRAT_ARP),
|
||||
.all_ports_active =
|
||||
_nm_setting_bond_opt_value_as_u8(s_bond, NM_SETTING_BOND_OPTION_ALL_SLAVES_ACTIVE),
|
||||
.lacp_rate = _nm_setting_bond_lacp_rate_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_LACP_RATE)),
|
||||
.ad_select = _nm_setting_bond_ad_select_from_string(
|
||||
nm_setting_bond_get_option_normalized(s_bond, NM_SETTING_BOND_OPTION_AD_SELECT)),
|
||||
.miimon = _v_u32(s_bond, NM_SETTING_BOND_OPTION_MIIMON),
|
||||
.updelay = _v_u32(s_bond, NM_SETTING_BOND_OPTION_UPDELAY),
|
||||
.downdelay = _v_u32(s_bond, NM_SETTING_BOND_OPTION_DOWNDELAY),
|
||||
.arp_interval = _v_u32(s_bond, NM_SETTING_BOND_OPTION_ARP_INTERVAL),
|
||||
.resend_igmp = _v_u32(s_bond, NM_SETTING_BOND_OPTION_RESEND_IGMP),
|
||||
.min_links = _v_u32(s_bond, NM_SETTING_BOND_OPTION_MIN_LINKS),
|
||||
.lp_interval = _v_u32(s_bond, NM_SETTING_BOND_OPTION_LP_INTERVAL),
|
||||
.packets_per_port = _v_u32(s_bond, NM_SETTING_BOND_OPTION_PACKETS_PER_SLAVE),
|
||||
.peer_notif_delay = _v_u32(s_bond, NM_SETTING_BOND_OPTION_PEER_NOTIF_DELAY),
|
||||
.arp_all_targets = _v_fcn(_nm_setting_bond_arp_all_targets_from_string,
|
||||
s_bond,
|
||||
NM_SETTING_BOND_OPTION_ARP_ALL_TARGETS),
|
||||
.arp_validate = _v_fcn(_nm_setting_bond_arp_validate_from_string,
|
||||
s_bond,
|
||||
NM_SETTING_BOND_OPTION_ARP_VALIDATE),
|
||||
.ad_actor_sys_prio = _v_u16(s_bond, NM_SETTING_BOND_OPTION_AD_ACTOR_SYS_PRIO),
|
||||
.ad_user_port_key = _v_u16(s_bond, NM_SETTING_BOND_OPTION_AD_USER_PORT_KEY),
|
||||
.primary_reselect = _v_fcn(_nm_setting_bond_primary_reselect_from_string,
|
||||
s_bond,
|
||||
NM_SETTING_BOND_OPTION_PRIMARY_RESELECT),
|
||||
.fail_over_mac = _v_fcn(_nm_setting_bond_fail_over_mac_from_string,
|
||||
s_bond,
|
||||
NM_SETTING_BOND_OPTION_FAIL_OVER_MAC),
|
||||
.xmit_hash_policy = _v_fcn(_nm_setting_bond_xmit_hash_policy_from_string,
|
||||
s_bond,
|
||||
NM_SETTING_BOND_OPTION_XMIT_HASH_POLICY),
|
||||
.num_grat_arp = _v_u8(s_bond, NM_SETTING_BOND_OPTION_NUM_GRAT_ARP),
|
||||
.all_ports_active = _v_u8(s_bond, NM_SETTING_BOND_OPTION_ALL_SLAVES_ACTIVE),
|
||||
.lacp_rate = _v_fcn(_nm_setting_bond_lacp_rate_from_string,
|
||||
s_bond,
|
||||
NM_SETTING_BOND_OPTION_LACP_RATE),
|
||||
.ad_select = _v_fcn(_nm_setting_bond_ad_select_from_string,
|
||||
s_bond,
|
||||
NM_SETTING_BOND_OPTION_AD_SELECT),
|
||||
};
|
||||
|
||||
nm_ether_addr_from_string(
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue