mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-01-08 01:20:16 +01:00
shared/libnm: move NMSettingPriority helpers to "shared/nm-meta-setting.h"
This commit is contained in:
parent
7595a8f817
commit
ac7915b3ce
4 changed files with 34 additions and 29 deletions
|
|
@ -20,7 +20,6 @@
|
|||
/*****************************************************************************/
|
||||
|
||||
NMSettingPriority _nm_setting_get_base_type_priority(NMSetting *setting);
|
||||
NMSettingPriority _nm_setting_type_get_base_type_priority(GType type);
|
||||
int _nm_setting_compare_priority(gconstpointer a, gconstpointer b);
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
|||
|
|
@ -57,26 +57,6 @@ static GenData *_gendata_hash(NMSetting *setting, gboolean create_if_necessary);
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
static NMSettingPriority
|
||||
_get_base_type_priority(const NMMetaSettingInfo *setting_info, GType gtype)
|
||||
{
|
||||
/* Historical oddity: PPPoE is a base-type even though it's not
|
||||
* priority 1. It needs to be sorted *after* lower-level stuff like
|
||||
* Wi-Fi security or 802.1x for secrets, but it's still allowed as a
|
||||
* base type.
|
||||
*/
|
||||
|
||||
if (setting_info) {
|
||||
if (NM_IN_SET(setting_info->setting_priority,
|
||||
NM_SETTING_PRIORITY_HW_BASE,
|
||||
NM_SETTING_PRIORITY_HW_NON_BASE)
|
||||
|| gtype == NM_TYPE_SETTING_PPPOE)
|
||||
return setting_info->setting_priority;
|
||||
}
|
||||
|
||||
return NM_SETTING_PRIORITY_INVALID;
|
||||
}
|
||||
|
||||
NMSettingPriority
|
||||
_nm_setting_get_setting_priority(NMSetting *setting)
|
||||
{
|
||||
|
|
@ -88,19 +68,13 @@ _nm_setting_get_setting_priority(NMSetting *setting)
|
|||
return setting_info ? setting_info->setting_priority : NM_SETTING_PRIORITY_INVALID;
|
||||
}
|
||||
|
||||
NMSettingPriority
|
||||
_nm_setting_type_get_base_type_priority(GType type)
|
||||
{
|
||||
return _get_base_type_priority(nm_meta_setting_infos_by_gtype(type), type);
|
||||
}
|
||||
|
||||
NMSettingPriority
|
||||
_nm_setting_get_base_type_priority(NMSetting *setting)
|
||||
{
|
||||
g_return_val_if_fail(NM_IS_SETTING(setting), NM_SETTING_PRIORITY_INVALID);
|
||||
|
||||
return _get_base_type_priority(NM_SETTING_GET_CLASS(setting)->setting_info,
|
||||
G_OBJECT_TYPE(setting));
|
||||
return nm_meta_setting_info_get_base_type_priority(NM_SETTING_GET_CLASS(setting)->setting_info,
|
||||
G_OBJECT_TYPE(setting));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -606,3 +606,31 @@ out_none:
|
|||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
NMSettingPriority
|
||||
nm_meta_setting_info_get_base_type_priority(const NMMetaSettingInfo *setting_info, GType gtype)
|
||||
{
|
||||
/* Historical oddity: PPPoE is a base-type even though it's not
|
||||
* priority 1. It needs to be sorted *after* lower-level stuff like
|
||||
* Wi-Fi security or 802.1x for secrets, but it's still allowed as a
|
||||
* base type.
|
||||
*/
|
||||
|
||||
if (setting_info) {
|
||||
if (NM_IN_SET(setting_info->setting_priority,
|
||||
NM_SETTING_PRIORITY_HW_BASE,
|
||||
NM_SETTING_PRIORITY_HW_NON_BASE)
|
||||
|| gtype == NM_TYPE_SETTING_PPPOE)
|
||||
return setting_info->setting_priority;
|
||||
}
|
||||
|
||||
return NM_SETTING_PRIORITY_INVALID;
|
||||
}
|
||||
|
||||
NMSettingPriority
|
||||
_nm_setting_type_get_base_type_priority(GType type)
|
||||
{
|
||||
return nm_meta_setting_info_get_base_type_priority(nm_meta_setting_infos_by_gtype(type), type);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
|
|
|||
|
|
@ -208,4 +208,8 @@ const NMMetaSettingInfo *nm_meta_setting_infos_by_gtype(GType gtype);
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
NMSettingPriority nm_meta_setting_info_get_base_type_priority(const NMMetaSettingInfo *setting_info,
|
||||
GType gtype);
|
||||
NMSettingPriority _nm_setting_type_get_base_type_priority(GType type);
|
||||
|
||||
#endif /* __NM_META_SETTING_H__ */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue