mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-10-02 22:38:01 +00:00
libnm-util: remove NM_UTIL_PRIVATE_CALL, NMSettingIP4Config:address-labels
Since libnm-util is no longer used from within NM, its copy of NM_UTIL_PRIVATE_CALL is now useless, and the internal-only NMSettingIP4Config:address-labels property is no longer needed.
This commit is contained in:
parent
058915a9ae
commit
b9fef07fff
|
@ -75,7 +75,6 @@ typedef struct {
|
|||
GArray *dns; /* array of guint32; elements in network byte order */
|
||||
GSList *dns_search; /* list of strings */
|
||||
GSList *addresses; /* array of NMIP4Address */
|
||||
GSList *address_labels; /* list of strings */
|
||||
GSList *routes; /* array of NMIP4Route */
|
||||
gboolean ignore_auto_routes;
|
||||
gboolean ignore_auto_dns;
|
||||
|
@ -92,7 +91,6 @@ enum {
|
|||
PROP_DNS,
|
||||
PROP_DNS_SEARCH,
|
||||
PROP_ADDRESSES,
|
||||
PROP_ADDRESS_LABELS,
|
||||
PROP_ROUTES,
|
||||
PROP_IGNORE_AUTO_ROUTES,
|
||||
PROP_IGNORE_AUTO_DNS,
|
||||
|
@ -439,19 +437,6 @@ nm_setting_ip4_config_get_address (NMSettingIP4Config *setting, guint32 i)
|
|||
return (NMIP4Address *) g_slist_nth_data (priv->addresses, i);
|
||||
}
|
||||
|
||||
const char *
|
||||
nm_setting_ip4_config_get_address_label (NMSettingIP4Config *setting, guint32 i)
|
||||
{
|
||||
NMSettingIP4ConfigPrivate *priv;
|
||||
|
||||
g_return_val_if_fail (NM_IS_SETTING_IP4_CONFIG (setting), NULL);
|
||||
|
||||
priv = NM_SETTING_IP4_CONFIG_GET_PRIVATE (setting);
|
||||
g_return_val_if_fail (i <= g_slist_length (priv->address_labels), NULL);
|
||||
|
||||
return (const char *) g_slist_nth_data (priv->address_labels, i);
|
||||
}
|
||||
|
||||
/**
|
||||
* nm_setting_ip4_config_add_address:
|
||||
* @setting: the #NMSettingIP4Config
|
||||
|
@ -466,14 +451,6 @@ nm_setting_ip4_config_get_address_label (NMSettingIP4Config *setting, guint32 i)
|
|||
gboolean
|
||||
nm_setting_ip4_config_add_address (NMSettingIP4Config *setting,
|
||||
NMIP4Address *address)
|
||||
{
|
||||
return nm_setting_ip4_config_add_address_with_label (setting, address, NULL);
|
||||
}
|
||||
|
||||
gboolean
|
||||
nm_setting_ip4_config_add_address_with_label (NMSettingIP4Config *setting,
|
||||
NMIP4Address *address,
|
||||
const char *label)
|
||||
{
|
||||
NMSettingIP4ConfigPrivate *priv;
|
||||
NMIP4Address *copy;
|
||||
|
@ -490,8 +467,6 @@ nm_setting_ip4_config_add_address_with_label (NMSettingIP4Config *setting,
|
|||
|
||||
copy = nm_ip4_address_dup (address);
|
||||
priv->addresses = g_slist_append (priv->addresses, copy);
|
||||
priv->address_labels = g_slist_append (priv->address_labels, g_strdup (label));
|
||||
|
||||
g_object_notify (G_OBJECT (setting), NM_SETTING_IP4_CONFIG_ADDRESSES);
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -507,21 +482,16 @@ void
|
|||
nm_setting_ip4_config_remove_address (NMSettingIP4Config *setting, guint32 i)
|
||||
{
|
||||
NMSettingIP4ConfigPrivate *priv;
|
||||
GSList *addr, *label;
|
||||
GSList *elt;
|
||||
|
||||
g_return_if_fail (NM_IS_SETTING_IP4_CONFIG (setting));
|
||||
|
||||
priv = NM_SETTING_IP4_CONFIG_GET_PRIVATE (setting);
|
||||
addr = g_slist_nth (priv->addresses, i);
|
||||
label = g_slist_nth (priv->address_labels, i);
|
||||
g_return_if_fail (addr != NULL && label != NULL);
|
||||
|
||||
nm_ip4_address_unref ((NMIP4Address *) addr->data);
|
||||
priv->addresses = g_slist_delete_link (priv->addresses, addr);
|
||||
if (label->data)
|
||||
g_free (label->data);
|
||||
priv->address_labels = g_slist_delete_link (priv->address_labels, label);
|
||||
elt = g_slist_nth (priv->addresses, i);
|
||||
g_return_if_fail (elt != NULL);
|
||||
|
||||
nm_ip4_address_unref ((NMIP4Address *) elt->data);
|
||||
priv->addresses = g_slist_delete_link (priv->addresses, elt);
|
||||
g_object_notify (G_OBJECT (setting), NM_SETTING_IP4_CONFIG_ADDRESSES);
|
||||
}
|
||||
|
||||
|
@ -573,8 +543,6 @@ nm_setting_ip4_config_clear_addresses (NMSettingIP4Config *setting)
|
|||
|
||||
g_slist_free_full (priv->addresses, (GDestroyNotify) nm_ip4_address_unref);
|
||||
priv->addresses = NULL;
|
||||
g_slist_free_full (priv->address_labels, g_free);
|
||||
priv->address_labels = NULL;
|
||||
g_object_notify (G_OBJECT (setting), NM_SETTING_IP4_CONFIG_ADDRESSES);
|
||||
}
|
||||
|
||||
|
@ -846,35 +814,11 @@ nm_setting_ip4_config_get_may_fail (NMSettingIP4Config *setting)
|
|||
return NM_SETTING_IP4_CONFIG_GET_PRIVATE (setting)->may_fail;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
verify_label (const char *label)
|
||||
{
|
||||
const char *p;
|
||||
char *iface;
|
||||
|
||||
p = strchr (label, ':');
|
||||
if (!p)
|
||||
return FALSE;
|
||||
iface = g_strndup (label, p - label);
|
||||
if (!nm_utils_iface_valid_name (iface)) {
|
||||
g_free (iface);
|
||||
return FALSE;
|
||||
}
|
||||
g_free (iface);
|
||||
|
||||
for (p++; *p; p++) {
|
||||
if (!g_ascii_isalnum (*p) && *p != '_')
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
verify (NMSetting *setting, GSList *all_settings, GError **error)
|
||||
{
|
||||
NMSettingIP4ConfigPrivate *priv = NM_SETTING_IP4_CONFIG_GET_PRIVATE (setting);
|
||||
GSList *iter, *l_iter;
|
||||
GSList *iter;
|
||||
int i;
|
||||
|
||||
if (!priv->method) {
|
||||
|
@ -961,11 +905,8 @@ verify (NMSetting *setting, GSList *all_settings, GError **error)
|
|||
}
|
||||
|
||||
/* Validate addresses */
|
||||
for (iter = priv->addresses, l_iter = priv->address_labels, i = 0;
|
||||
iter && l_iter;
|
||||
iter = g_slist_next (iter), l_iter = g_slist_next (l_iter), i++) {
|
||||
for (iter = priv->addresses, i = 0; iter; iter = g_slist_next (iter), i++) {
|
||||
NMIP4Address *addr = (NMIP4Address *) iter->data;
|
||||
const char *label = (const char *) l_iter->data;
|
||||
guint32 prefix = nm_ip4_address_get_prefix (addr);
|
||||
|
||||
if (!nm_ip4_address_get_address (addr)) {
|
||||
|
@ -987,27 +928,6 @@ verify (NMSetting *setting, GSList *all_settings, GError **error)
|
|||
g_prefix_error (error, "%s.%s: ", NM_SETTING_IP4_CONFIG_SETTING_NAME, NM_SETTING_IP4_CONFIG_ADDRESSES);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (label && !verify_label (label)) {
|
||||
g_set_error (error,
|
||||
NM_SETTING_IP4_CONFIG_ERROR,
|
||||
NM_SETTING_IP4_CONFIG_ERROR_INVALID_PROPERTY,
|
||||
_("%d. IPv4 address has invalid label '%s'"),
|
||||
i+1, label);
|
||||
g_prefix_error (error, "%s.%s: ", NM_SETTING_IP4_CONFIG_SETTING_NAME, "address-labels");
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
if (iter || l_iter) {
|
||||
g_set_error (error,
|
||||
NM_SETTING_IP4_CONFIG_ERROR,
|
||||
NM_SETTING_IP4_CONFIG_ERROR_INVALID_PROPERTY,
|
||||
_("IPv4 address / label count mismatch (%d vs %d)"),
|
||||
g_slist_length (priv->addresses),
|
||||
g_slist_length (priv->address_labels));
|
||||
g_prefix_error (error, "%s.%s: ", NM_SETTING_IP4_CONFIG_SETTING_NAME, "address-labels");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* Validate routes */
|
||||
|
@ -1063,7 +983,6 @@ finalize (GObject *object)
|
|||
|
||||
g_slist_free_full (priv->dns_search, g_free);
|
||||
g_slist_free_full (priv->addresses, (GDestroyNotify) nm_ip4_address_unref);
|
||||
g_slist_free_full (priv->address_labels, g_free);
|
||||
g_slist_free_full (priv->routes, (GDestroyNotify) nm_ip4_route_unref);
|
||||
|
||||
G_OBJECT_CLASS (nm_setting_ip4_config_parent_class)->finalize (object);
|
||||
|
@ -1075,7 +994,6 @@ set_property (GObject *object, guint prop_id,
|
|||
{
|
||||
NMSettingIP4Config *setting = NM_SETTING_IP4_CONFIG (object);
|
||||
NMSettingIP4ConfigPrivate *priv = NM_SETTING_IP4_CONFIG_GET_PRIVATE (setting);
|
||||
GSList *iter;
|
||||
|
||||
switch (prop_id) {
|
||||
case PROP_METHOD:
|
||||
|
@ -1095,24 +1013,6 @@ set_property (GObject *object, guint prop_id,
|
|||
case PROP_ADDRESSES:
|
||||
g_slist_free_full (priv->addresses, (GDestroyNotify) nm_ip4_address_unref);
|
||||
priv->addresses = nm_utils_ip4_addresses_from_gvalue (value);
|
||||
|
||||
if (g_slist_length (priv->addresses) != g_slist_length (priv->address_labels)) {
|
||||
g_slist_free_full (priv->address_labels, g_free);
|
||||
priv->address_labels = NULL;
|
||||
for (iter = priv->addresses; iter; iter = iter->next)
|
||||
priv->address_labels = g_slist_prepend (priv->address_labels, NULL);
|
||||
}
|
||||
break;
|
||||
case PROP_ADDRESS_LABELS:
|
||||
g_slist_free_full (priv->address_labels, g_free);
|
||||
priv->address_labels = g_value_dup_boxed (value);
|
||||
/* NULLs get converted to "" when this is sent over D-Bus. */
|
||||
for (iter = priv->address_labels; iter; iter = iter->next) {
|
||||
if (!g_strcmp0 (iter->data, "")) {
|
||||
g_free (iter->data);
|
||||
iter->data = NULL;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case PROP_ROUTES:
|
||||
g_slist_free_full (priv->routes, (GDestroyNotify) nm_ip4_route_unref);
|
||||
|
@ -1167,9 +1067,6 @@ get_property (GObject *object, guint prop_id,
|
|||
case PROP_ADDRESSES:
|
||||
nm_utils_ip4_addresses_to_gvalue (priv->addresses, value);
|
||||
break;
|
||||
case PROP_ADDRESS_LABELS:
|
||||
g_value_set_boxed (value, priv->address_labels);
|
||||
break;
|
||||
case PROP_ROUTES:
|
||||
nm_utils_ip4_routes_to_gvalue (priv->routes, value);
|
||||
break;
|
||||
|
@ -1292,19 +1189,6 @@ nm_setting_ip4_config_class_init (NMSettingIP4ConfigClass *setting_class)
|
|||
NM_SETTING_PARAM_INFERRABLE |
|
||||
G_PARAM_STATIC_STRINGS));
|
||||
|
||||
/**
|
||||
* NMSettingIP4Config:address-labels:
|
||||
*
|
||||
* Internal use only.
|
||||
**/
|
||||
g_object_class_install_property
|
||||
(object_class, PROP_ADDRESS_LABELS,
|
||||
_nm_param_spec_specialized ("address-labels", "", "",
|
||||
DBUS_TYPE_G_LIST_OF_STRING,
|
||||
G_PARAM_READWRITE |
|
||||
NM_SETTING_PARAM_INFERRABLE |
|
||||
G_PARAM_STATIC_STRINGS));
|
||||
|
||||
/**
|
||||
* NMSettingIP4Config:routes:
|
||||
*
|
||||
|
|
|
@ -21,7 +21,6 @@
|
|||
#ifndef NM_SETTING_PRIVATE_H
|
||||
#define NM_SETTING_PRIVATE_H
|
||||
|
||||
#include "nm-setting.h"
|
||||
#include "nm-glib-compat.h"
|
||||
|
||||
#define NM_SETTING_SECRET_FLAGS_ALL \
|
||||
|
@ -103,11 +102,6 @@ static void __attribute__((constructor)) register_setting (void) \
|
|||
|
||||
NMSetting *nm_setting_find_in_list (GSList *settings_list, const char *setting_name);
|
||||
|
||||
/* Private NMSettingIP4Config methods */
|
||||
#include "nm-setting-ip4-config.h"
|
||||
const char *nm_setting_ip4_config_get_address_label (NMSettingIP4Config *setting, guint32 i);
|
||||
gboolean nm_setting_ip4_config_add_address_with_label (NMSettingIP4Config *setting, NMIP4Address *address, const char *label);
|
||||
|
||||
NMSettingVerifyResult _nm_setting_verify_deprecated_virtual_iface_name (const char *interface_name,
|
||||
gboolean allow_missing,
|
||||
const char *setting_name,
|
||||
|
|
|
@ -34,32 +34,4 @@ gboolean _nm_utils_gvalue_array_validate (GValueArray *elements,
|
|||
|
||||
void _nm_value_transforms_register (void);
|
||||
|
||||
/***********************************************************/
|
||||
|
||||
typedef struct NMUtilsPrivateData {
|
||||
const char * (*nm_setting_ip4_config_get_address_label) (NMSettingIP4Config *setting,
|
||||
guint32 i);
|
||||
gboolean (*nm_setting_ip4_config_add_address_with_label) (NMSettingIP4Config *setting,
|
||||
NMIP4Address *address,
|
||||
const char *label);
|
||||
} NMUtilsPrivateData;
|
||||
|
||||
const NMUtilsPrivateData *nm_utils_get_private (void);
|
||||
|
||||
/**
|
||||
* NM_UTILS_PRIVATE_CALL:
|
||||
* @call: a call to a private libnm-util function
|
||||
*
|
||||
* Used to call private libnm-util functions. Eg, if there was a
|
||||
* private function called nm_foo_get_bar(), you could call it like:
|
||||
*
|
||||
* bar = NM_UTILS_PRIVATE_CALL (nm_foo_get_bar (foo, x, y, z));
|
||||
*
|
||||
* This macro only exists inside the NetworkManager source tree and
|
||||
* is not part of the public API.
|
||||
*
|
||||
* Since: 0.9.10
|
||||
*/
|
||||
#define NM_UTILS_PRIVATE_CALL(call) (nm_utils_get_private ()->call)
|
||||
|
||||
#endif
|
||||
|
|
|
@ -2490,13 +2490,10 @@ nm_utils_check_virtual_device_compatibility (GType virtual_type, GType other_typ
|
|||
|
||||
/***********************************************************/
|
||||
|
||||
/* Unused prototype to make the compiler happy */
|
||||
const NMUtilsPrivateData *nm_util_get_private (void);
|
||||
/* Unused prototypes to make the compiler happy */
|
||||
gconstpointer nm_utils_get_private (void);
|
||||
gconstpointer nm_util_get_private (void);
|
||||
|
||||
static const NMUtilsPrivateData data = {
|
||||
.nm_setting_ip4_config_get_address_label = nm_setting_ip4_config_get_address_label,
|
||||
.nm_setting_ip4_config_add_address_with_label = nm_setting_ip4_config_add_address_with_label,
|
||||
};
|
||||
|
||||
/**
|
||||
* nm_utils_get_private:
|
||||
|
@ -2508,10 +2505,11 @@ static const NMUtilsPrivateData data = {
|
|||
*
|
||||
* Since: 0.9.10
|
||||
*/
|
||||
const NMUtilsPrivateData *
|
||||
gconstpointer
|
||||
nm_utils_get_private (void)
|
||||
{
|
||||
return &data;
|
||||
/* We told you not to use it! */
|
||||
g_assert_not_reached ();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2523,9 +2521,9 @@ nm_utils_get_private (void)
|
|||
*
|
||||
* Since: 0.9.10
|
||||
*/
|
||||
const NMUtilsPrivateData *
|
||||
gconstpointer
|
||||
nm_util_get_private (void)
|
||||
{
|
||||
/* Compat function to preserve ABI */
|
||||
return nm_utils_get_private ();
|
||||
/* We told you not to use it! */
|
||||
g_assert_not_reached ();
|
||||
}
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
#include "nm-setting-vlan.h"
|
||||
#include "nm-setting-bond.h"
|
||||
#include "nm-utils.h"
|
||||
#include "nm-utils-private.h"
|
||||
#include "nm-dbus-glib-types.h"
|
||||
|
||||
#include "nm-test-utils.h"
|
||||
|
@ -307,156 +306,6 @@ test_setting_vpn_modify_during_foreach (void)
|
|||
g_object_unref (s_vpn);
|
||||
}
|
||||
|
||||
static void
|
||||
test_setting_ip4_config_labels (void)
|
||||
{
|
||||
NMSettingIP4Config *s_ip4;
|
||||
NMIP4Address *addr;
|
||||
const char *label;
|
||||
GPtrArray *addrs;
|
||||
GSList *labels;
|
||||
GError *error = NULL;
|
||||
|
||||
s_ip4 = (NMSettingIP4Config *) nm_setting_ip4_config_new ();
|
||||
g_object_set (G_OBJECT (s_ip4),
|
||||
NM_SETTING_IP4_CONFIG_METHOD, NM_SETTING_IP4_CONFIG_METHOD_MANUAL,
|
||||
NULL);
|
||||
|
||||
/* addr 1 */
|
||||
addr = nm_ip4_address_new ();
|
||||
nm_ip4_address_set_address (addr, 0x01010101);
|
||||
nm_ip4_address_set_prefix (addr, 24);
|
||||
|
||||
nm_setting_ip4_config_add_address (s_ip4, addr);
|
||||
nm_ip4_address_unref (addr);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_no_error (error);
|
||||
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 0));
|
||||
g_assert_cmpstr (label, ==, NULL);
|
||||
|
||||
/* addr 2 */
|
||||
addr = nm_ip4_address_new ();
|
||||
nm_ip4_address_set_address (addr, 0x02020202);
|
||||
nm_ip4_address_set_prefix (addr, 24);
|
||||
|
||||
NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_add_address_with_label (s_ip4, addr, "eth0:1"));
|
||||
nm_ip4_address_unref (addr);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_no_error (error);
|
||||
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 1));
|
||||
g_assert_cmpstr (label, ==, "eth0:1");
|
||||
|
||||
/* addr 3 */
|
||||
addr = nm_ip4_address_new ();
|
||||
nm_ip4_address_set_address (addr, 0x03030303);
|
||||
nm_ip4_address_set_prefix (addr, 24);
|
||||
|
||||
NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_add_address_with_label (s_ip4, addr, NULL));
|
||||
nm_ip4_address_unref (addr);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_no_error (error);
|
||||
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 2));
|
||||
g_assert_cmpstr (label, ==, NULL);
|
||||
|
||||
/* Remove addr 1 and re-verify remaining addresses */
|
||||
nm_setting_ip4_config_remove_address (s_ip4, 0);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_no_error (error);
|
||||
|
||||
addr = nm_setting_ip4_config_get_address (s_ip4, 0);
|
||||
g_assert_cmpint (nm_ip4_address_get_address (addr), ==, 0x02020202);
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 0));
|
||||
g_assert_cmpstr (label, ==, "eth0:1");
|
||||
|
||||
addr = nm_setting_ip4_config_get_address (s_ip4, 1);
|
||||
g_assert_cmpint (nm_ip4_address_get_address (addr), ==, 0x03030303);
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 1));
|
||||
g_assert_cmpstr (label, ==, NULL);
|
||||
|
||||
|
||||
/* Test explicit property assignment */
|
||||
g_object_get (G_OBJECT (s_ip4),
|
||||
NM_SETTING_IP4_CONFIG_ADDRESSES, &addrs,
|
||||
"address-labels", &labels,
|
||||
NULL);
|
||||
|
||||
nm_setting_ip4_config_clear_addresses (s_ip4);
|
||||
g_assert_cmpint (nm_setting_ip4_config_get_num_addresses (s_ip4), ==, 0);
|
||||
|
||||
/* Setting addrs but not labels will result in empty labels */
|
||||
g_object_set (G_OBJECT (s_ip4),
|
||||
NM_SETTING_IP4_CONFIG_ADDRESSES, addrs,
|
||||
NULL);
|
||||
g_boxed_free (DBUS_TYPE_G_ARRAY_OF_ARRAY_OF_UINT, addrs);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_no_error (error);
|
||||
g_assert_cmpint (nm_setting_ip4_config_get_num_addresses (s_ip4), ==, 2);
|
||||
|
||||
addr = nm_setting_ip4_config_get_address (s_ip4, 0);
|
||||
g_assert_cmpint (nm_ip4_address_get_address (addr), ==, 0x02020202);
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 0));
|
||||
g_assert_cmpstr (label, ==, NULL);
|
||||
|
||||
addr = nm_setting_ip4_config_get_address (s_ip4, 1);
|
||||
g_assert_cmpint (nm_ip4_address_get_address (addr), ==, 0x03030303);
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 1));
|
||||
g_assert_cmpstr (label, ==, NULL);
|
||||
|
||||
/* Setting labels now will leave addresses untouched */
|
||||
g_object_set (G_OBJECT (s_ip4),
|
||||
"address-labels", labels,
|
||||
NULL);
|
||||
g_boxed_free (DBUS_TYPE_G_LIST_OF_STRING, labels);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_no_error (error);
|
||||
g_assert_cmpint (nm_setting_ip4_config_get_num_addresses (s_ip4), ==, 2);
|
||||
|
||||
addr = nm_setting_ip4_config_get_address (s_ip4, 0);
|
||||
g_assert_cmpint (nm_ip4_address_get_address (addr), ==, 0x02020202);
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 0));
|
||||
g_assert_cmpstr (label, ==, "eth0:1");
|
||||
|
||||
addr = nm_setting_ip4_config_get_address (s_ip4, 1);
|
||||
g_assert_cmpint (nm_ip4_address_get_address (addr), ==, 0x03030303);
|
||||
label = NM_UTILS_PRIVATE_CALL (nm_setting_ip4_config_get_address_label (s_ip4, 1));
|
||||
g_assert_cmpstr (label, ==, NULL);
|
||||
|
||||
/* Setting labels to a value that's too short or too long will result in
|
||||
* the setting not verifying.
|
||||
*/
|
||||
labels = g_slist_append (NULL, "eth0:2");
|
||||
g_object_set (G_OBJECT (s_ip4),
|
||||
"address-labels", labels,
|
||||
NULL);
|
||||
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_error (error, NM_SETTING_IP4_CONFIG_ERROR, NM_SETTING_IP4_CONFIG_ERROR_INVALID_PROPERTY);
|
||||
g_assert (g_str_has_prefix (error->message, "ipv4.address-labels:"));
|
||||
g_clear_error (&error);
|
||||
|
||||
labels = g_slist_append (labels, "eth0:3");
|
||||
g_object_set (G_OBJECT (s_ip4),
|
||||
"address-labels", labels,
|
||||
NULL);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_no_error (error);
|
||||
|
||||
labels = g_slist_append (labels, "eth0:4");
|
||||
g_object_set (G_OBJECT (s_ip4),
|
||||
"address-labels", labels,
|
||||
NULL);
|
||||
nm_setting_verify (NM_SETTING (s_ip4), NULL, &error);
|
||||
g_assert_error (error, NM_SETTING_IP4_CONFIG_ERROR, NM_SETTING_IP4_CONFIG_ERROR_INVALID_PROPERTY);
|
||||
g_assert (g_str_has_prefix (error->message, "ipv4.address-labels:"));
|
||||
g_clear_error (&error);
|
||||
|
||||
|
||||
g_object_unref (s_ip4);
|
||||
}
|
||||
|
||||
#define OLD_DBUS_TYPE_G_IP6_ADDRESS (dbus_g_type_get_struct ("GValueArray", DBUS_TYPE_G_UCHAR_ARRAY, G_TYPE_UINT, G_TYPE_INVALID))
|
||||
#define OLD_DBUS_TYPE_G_ARRAY_OF_IP6_ADDRESS (dbus_g_type_get_collection ("GPtrArray", OLD_DBUS_TYPE_G_IP6_ADDRESS))
|
||||
|
||||
|
@ -1416,7 +1265,6 @@ test_connection_diff_a_only (void)
|
|||
{ NM_SETTING_IP4_CONFIG_DNS, NM_SETTING_DIFF_RESULT_IN_A },
|
||||
{ NM_SETTING_IP4_CONFIG_DNS_SEARCH, NM_SETTING_DIFF_RESULT_IN_A },
|
||||
{ NM_SETTING_IP4_CONFIG_ADDRESSES, NM_SETTING_DIFF_RESULT_IN_A },
|
||||
{ "address-labels", NM_SETTING_DIFF_RESULT_IN_A },
|
||||
{ NM_SETTING_IP4_CONFIG_ROUTES, NM_SETTING_DIFF_RESULT_IN_A },
|
||||
{ NM_SETTING_IP4_CONFIG_IGNORE_AUTO_ROUTES, NM_SETTING_DIFF_RESULT_IN_A },
|
||||
{ NM_SETTING_IP4_CONFIG_IGNORE_AUTO_DNS, NM_SETTING_DIFF_RESULT_IN_A },
|
||||
|
@ -2153,7 +2001,7 @@ test_setting_ip4_changed_signal (void)
|
|||
ASSERT_CHANGED (nm_setting_ip4_config_add_address (s_ip4, addr));
|
||||
ASSERT_CHANGED (nm_setting_ip4_config_remove_address (s_ip4, 0));
|
||||
|
||||
g_test_expect_message ("libnm-util", G_LOG_LEVEL_CRITICAL, "*addr != NULL && label != NULL*");
|
||||
g_test_expect_message ("libnm-util", G_LOG_LEVEL_CRITICAL, "*elt != NULL*");
|
||||
ASSERT_UNCHANGED (nm_setting_ip4_config_remove_address (s_ip4, 1));
|
||||
g_test_assert_expected_messages ();
|
||||
|
||||
|
@ -2609,7 +2457,6 @@ int main (int argc, char **argv)
|
|||
test_setting_vpn_items ();
|
||||
test_setting_vpn_update_secrets ();
|
||||
test_setting_vpn_modify_during_foreach ();
|
||||
test_setting_ip4_config_labels ();
|
||||
test_setting_ip6_config_old_address_array ();
|
||||
test_setting_gsm_apn_spaces ();
|
||||
test_setting_gsm_apn_bad_chars ();
|
||||
|
|
Loading…
Reference in a new issue