diff options
Diffstat (limited to 'libnm-core/nm-setting-hostname.c')
| -rw-r--r-- | libnm-core/nm-setting-hostname.c | 339 |
1 files changed, 0 insertions, 339 deletions
diff --git a/libnm-core/nm-setting-hostname.c b/libnm-core/nm-setting-hostname.c deleted file mode 100644 index 2396b7bd..00000000 --- a/libnm-core/nm-setting-hostname.c +++ /dev/null @@ -1,339 +0,0 @@ -/* SPDX-License-Identifier: LGPL-2.1-or-later */ -/* - * Copyright (C) 2020 Red Hat, Inc. - */ - -#include "libnm-core/nm-default-libnm-core.h" - -#include "nm-setting-hostname.h" - -#include "nm-setting-private.h" -#include "nm-utils-private.h" - -/** - * SECTION:nm-setting-hostname - * @short_description: Contains properties related to the hostname - * @include: nm-setting-hostname.h - **/ - -/*****************************************************************************/ - -NM_GOBJECT_PROPERTIES_DEFINE(NMSettingHostname, - PROP_PRIORITY, - PROP_FROM_DHCP, - PROP_FROM_DNS_LOOKUP, - PROP_ONLY_FROM_DEFAULT, ); - -/** - * NMSettingHostname: - * - * Hostname settings - * - * Since: 1.30 - */ -struct _NMSettingHostname { - NMSetting parent; - int priority; - NMTernary from_dhcp; - NMTernary from_dns_lookup; - NMTernary only_from_default; -}; - -struct _NMSettingHostnameClass { - NMSettingClass parent; -}; - -G_DEFINE_TYPE(NMSettingHostname, nm_setting_hostname, NM_TYPE_SETTING) - -/** - * nm_setting_hostname_get_priority: - * @setting: the #NMSettingHostname - * - * Returns the value contained in the #NMSettingHostname:priority - * property. - * - * Returns: the 'priority' property value - * - * Since: 1.30 - **/ -int -nm_setting_hostname_get_priority(NMSettingHostname *setting) -{ - g_return_val_if_fail(NM_IS_SETTING_HOSTNAME(setting), 0); - - return setting->priority; -} - -/** - * nm_setting_hostname_get_from_dhcp: - * @setting: the #NMSettingHostname - * - * Returns the value contained in the #NMSettingHostname:from-dhcp - * property. - * - * Returns: the 'from-dhcp' property value - * - * Since: 1.30 - **/ -NMTernary -nm_setting_hostname_get_from_dhcp(NMSettingHostname *setting) -{ - g_return_val_if_fail(NM_IS_SETTING_HOSTNAME(setting), NM_TERNARY_DEFAULT); - - return setting->from_dhcp; -} - -/** - * nm_setting_hostname_get_from_dns_lookup: - * @setting: the #NMSettingHostname - * - * Returns the value contained in the #NMSettingHostname:from-dns-lookup - * property. - * - * Returns: the 'from-dns-lookup' property value - * - * Since: 1.30 - **/ -NMTernary -nm_setting_hostname_get_from_dns_lookup(NMSettingHostname *setting) -{ - g_return_val_if_fail(NM_IS_SETTING_HOSTNAME(setting), NM_TERNARY_DEFAULT); - - return setting->from_dns_lookup; -} - -/** - * nm_setting_hostname_get_only_from_default: - * @setting: the #NMSettingHostname - * - * Returns the value contained in the #NMSettingHostname:only-from-default - * property. - * - * Returns: the 'only-from-default' property value - * - * Since: 1.30 - **/ -NMTernary -nm_setting_hostname_get_only_from_default(NMSettingHostname *setting) -{ - g_return_val_if_fail(NM_IS_SETTING_HOSTNAME(setting), NM_TERNARY_DEFAULT); - - return setting->only_from_default; -} - -/*****************************************************************************/ - -static void -get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) -{ - NMSettingHostname *self = NM_SETTING_HOSTNAME(object); - - switch (prop_id) { - case PROP_PRIORITY: - g_value_set_int(value, self->priority); - break; - case PROP_FROM_DHCP: - g_value_set_enum(value, self->from_dhcp); - break; - case PROP_FROM_DNS_LOOKUP: - g_value_set_enum(value, self->from_dns_lookup); - break; - case PROP_ONLY_FROM_DEFAULT: - g_value_set_enum(value, self->only_from_default); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); - break; - } -} - -static void -set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) -{ - NMSettingHostname *self = NM_SETTING_HOSTNAME(object); - - switch (prop_id) { - case PROP_PRIORITY: - self->priority = g_value_get_int(value); - break; - case PROP_FROM_DHCP: - self->from_dhcp = g_value_get_enum(value); - break; - case PROP_FROM_DNS_LOOKUP: - self->from_dns_lookup = g_value_get_enum(value); - break; - case PROP_ONLY_FROM_DEFAULT: - self->only_from_default = g_value_get_enum(value); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); - break; - } -} - -/*****************************************************************************/ - -static void -nm_setting_hostname_init(NMSettingHostname *setting) -{ - setting->from_dhcp = NM_TERNARY_DEFAULT; - setting->from_dns_lookup = NM_TERNARY_DEFAULT; - setting->only_from_default = NM_TERNARY_DEFAULT; -} - -/** - * nm_setting_hostname_new: - * - * Creates a new #NMSettingHostname object with default values. - * - * Returns: (transfer full): the new empty #NMSettingHostname object - * - * Since: 1.30 - **/ -NMSetting * -nm_setting_hostname_new(void) -{ - return g_object_new(NM_TYPE_SETTING_HOSTNAME, NULL); -} - -static void -nm_setting_hostname_class_init(NMSettingHostnameClass *klass) -{ - GObjectClass * object_class = G_OBJECT_CLASS(klass); - NMSettingClass *setting_class = NM_SETTING_CLASS(klass); - - object_class->get_property = get_property; - object_class->set_property = set_property; - - /** - * NMSettingHostname:priority - * - * The relative priority of this connection to determine the - * system hostname. A lower numerical value is better (higher - * priority). A connection with higher priority is considered - * before connections with lower priority. - * - * If the value is zero, it can be overridden by a global value - * from NetworkManager configuration. If the property doesn't have - * a value in the global configuration, the value is assumed to be - * 100. - * - * Negative values have the special effect of excluding other - * connections with a greater numerical priority value; so in - * presence of at least one negative priority, only connections - * with the lowest priority value will be used to determine the - * hostname. - * - * Since: 1.30 - **/ - /* ---ifcfg-rh--- - * property: priority - * variable: HOSTNAME_PRIORITY(+) - * default: missing variable means global value or 100 - * description: hostname priority - * example: HOSTNAME_PRIORITY=50 - * ---end--- - */ - obj_properties[PROP_PRIORITY] = g_param_spec_int(NM_SETTING_HOSTNAME_PRIORITY, - "", - "", - G_MININT32, - G_MAXINT32, - 0, - G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); - - /** - * NMSettingHostname:from-dhcp - * - * Whether the system hostname can be determined from DHCP on - * this connection. - * - * When set to %NM_TERNARY_DEFAULT, the value from global configuration - * is used. If the property doesn't have a value in the global - * configuration, NetworkManager assumes the value to be %NM_TERNARY_TRUE. - * - * Since: 1.30 - **/ - /* ---ifcfg-rh--- - * property: from-dhcp - * variable: HOSTNAME_FROM_DHCP(+) - * default: missing variable means global default or 1 - * description: whether the system hostname can be determined from DHCP - * example: HOSTNAME_FROM_DHCP=0,1 - * ---end--- - */ - obj_properties[PROP_FROM_DHCP] = g_param_spec_enum( - NM_SETTING_HOSTNAME_FROM_DHCP, - "", - "", - NM_TYPE_TERNARY, - NM_TERNARY_DEFAULT, - NM_SETTING_PARAM_FUZZY_IGNORE | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); - - /** - * NMSettingHostname:from-dns-lookup - * - * Whether the system hostname can be determined from reverse - * DNS lookup of addresses on this device. - * - * When set to %NM_TERNARY_DEFAULT, the value from global configuration - * is used. If the property doesn't have a value in the global - * configuration, NetworkManager assumes the value to be %NM_TERNARY_TRUE. - * - * Since: 1.30 - **/ - /* ---ifcfg-rh--- - * property: from-dhcp - * variable: HOSTNAME_FROM_DNS_LOOKUP(+) - * default: missing variable means global default or 1 - * description: whether the system hostname can be determined from reverse - * DNS lookup - * example: HOSTNAME_FROM_DNS_LOOKUP=0,1 - * ---end--- - */ - obj_properties[PROP_FROM_DNS_LOOKUP] = g_param_spec_enum( - NM_SETTING_HOSTNAME_FROM_DNS_LOOKUP, - "", - "", - NM_TYPE_TERNARY, - NM_TERNARY_DEFAULT, - NM_SETTING_PARAM_FUZZY_IGNORE | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); - - /** - * NMSettingHostname:only-from-default - * - * If set to %NM_TERNARY_TRUE, NetworkManager attempts to get - * the hostname via DHCPv4/DHCPv6 or reverse DNS lookup on this - * device only when the device has the default route for the given - * address family (IPv4/IPv6). - * - * If set to %NM_TERNARY_FALSE, the hostname can be set from this - * device even if it doesn't have the default route. - * - * When set to %NM_TERNARY_DEFAULT, the value from global configuration - * is used. If the property doesn't have a value in the global - * configuration, NetworkManager assumes the value to be %NM_TERNARY_FALSE. - * - * Since: 1.30 - **/ - /* ---ifcfg-rh--- - * property: only-best-device - * variable: HOSTNAME_ONLY_FROM_DEFAULT(+) - * default: missing variable means global default or 1 - * description: whether the hostname can be determined only from - * devices with the default route - * example: HOSTNAME_ONLY_FROM_DEFAULT=0,1 - * ---end--- - */ - obj_properties[PROP_ONLY_FROM_DEFAULT] = g_param_spec_enum( - NM_SETTING_HOSTNAME_ONLY_FROM_DEFAULT, - "", - "", - NM_TYPE_TERNARY, - NM_TERNARY_DEFAULT, - NM_SETTING_PARAM_FUZZY_IGNORE | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); - - g_object_class_install_properties(object_class, _PROPERTY_ENUMS_LAST, obj_properties); - - _nm_setting_class_commit(setting_class, NM_META_SETTING_TYPE_HOSTNAME); -} |