mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-10-15 12:34:55 +00:00
core: add nm_config_data_get_device_config() helper to lookup by match-data
This commit is contained in:
parent
ac7b6e532f
commit
97d6b7e92a
|
@ -1546,11 +1546,12 @@ out:
|
|||
return NULL;
|
||||
}
|
||||
|
||||
const char *
|
||||
nm_config_data_get_device_config_by_device(const NMConfigData *self,
|
||||
const char *property,
|
||||
NMDevice *device,
|
||||
gboolean *has_match)
|
||||
static const char *
|
||||
_config_data_get_device_config(const NMConfigData *self,
|
||||
const char *property,
|
||||
const NMMatchSpecDeviceData *match_data,
|
||||
NMDevice *device,
|
||||
gboolean *has_match)
|
||||
{
|
||||
const NMConfigDataPrivate *priv;
|
||||
const MatchSectionInfo *connection_info;
|
||||
|
@ -1561,18 +1562,39 @@ nm_config_data_get_device_config_by_device(const NMConfigData *self,
|
|||
g_return_val_if_fail(self, NULL);
|
||||
g_return_val_if_fail(property && *property, NULL);
|
||||
|
||||
nm_assert(!match_data || !device);
|
||||
nm_assert(!device || NM_IS_DEVICE(device));
|
||||
|
||||
priv = NM_CONFIG_DATA_GET_PRIVATE(self);
|
||||
|
||||
connection_info = _match_section_infos_lookup(&priv->device_infos[0],
|
||||
priv->keyfile,
|
||||
property,
|
||||
NULL,
|
||||
match_data,
|
||||
device,
|
||||
&value);
|
||||
NM_SET_OUT(has_match, !!connection_info);
|
||||
return value;
|
||||
}
|
||||
|
||||
const char *
|
||||
nm_config_data_get_device_config(const NMConfigData *self,
|
||||
const char *property,
|
||||
const NMMatchSpecDeviceData *match_data,
|
||||
gboolean *has_match)
|
||||
{
|
||||
return _config_data_get_device_config(self, property, match_data, NULL, has_match);
|
||||
}
|
||||
|
||||
const char *
|
||||
nm_config_data_get_device_config_by_device(const NMConfigData *self,
|
||||
const char *property,
|
||||
NMDevice *device,
|
||||
gboolean *has_match)
|
||||
{
|
||||
return _config_data_get_device_config(self, property, NULL, device, has_match);
|
||||
}
|
||||
|
||||
const char *
|
||||
nm_config_data_get_device_config_by_pllink(const NMConfigData *self,
|
||||
const char *property,
|
||||
|
|
|
@ -219,6 +219,13 @@ gint64 nm_config_data_get_connection_default_int64(const NMConfigData *self,
|
|||
gint64 max,
|
||||
gint64 fallback);
|
||||
|
||||
struct _NMMatchSpecDeviceData;
|
||||
|
||||
const char *nm_config_data_get_device_config(const NMConfigData *self,
|
||||
const char *property,
|
||||
const struct _NMMatchSpecDeviceData *match_data,
|
||||
gboolean *has_match);
|
||||
|
||||
const char *nm_config_data_get_device_config_by_device(const NMConfigData *self,
|
||||
const char *property,
|
||||
NMDevice *device,
|
||||
|
|
Loading…
Reference in a new issue