void
nm_ip4_config_add_address (NMIP4Config *config,
                           NMIP4Address *address)
{
    NMIP4ConfigPrivate *priv;

    g_return_if_fail (NM_IS_IP4_CONFIG (config));
    g_return_if_fail (address != NULL);

    priv = NM_IP4_CONFIG_GET_PRIVATE (config);
    priv->addresses = g_slist_append (priv->addresses, nm_ip4_address_dup (address));
}
void
nm_ip4_config_replace_address (NMIP4Config *config,
                               guint i,
                               NMIP4Address *new_address)
{
    NMIP4ConfigPrivate *priv;
    GSList *old;

    g_return_if_fail (NM_IS_IP4_CONFIG (config));

    priv = NM_IP4_CONFIG_GET_PRIVATE (config);
    old = g_slist_nth (priv->addresses, i);
    g_return_if_fail (old != NULL);
    nm_ip4_address_unref ((NMIP4Address *) old->data);

    old->data = nm_ip4_address_dup (new_address);
}
Example #3
0
void
nm_ip4_config_add_address (NMIP4Config *config,
                           NMIP4Address *address)
{
	NMIP4ConfigPrivate *priv;
	GSList *iter;

	g_return_if_fail (NM_IS_IP4_CONFIG (config));
	g_return_if_fail (address != NULL);

	priv = NM_IP4_CONFIG_GET_PRIVATE (config);
	for (iter = priv->addresses; iter; iter = g_slist_next (iter)) {
		if (nm_ip4_address_compare ((NMIP4Address *) iter->data, address))
			return;
	}

	priv->addresses = g_slist_append (priv->addresses, nm_ip4_address_dup (address));
}
gboolean
nm_setting_ip4_config_add_address (NMSettingIP4Config *setting,
                                   NMIP4Address *address)
{
	NMSettingIP4ConfigPrivate *priv;
	NMIP4Address *copy;
	GSList *iter;

	g_return_val_if_fail (NM_IS_SETTING_IP4_CONFIG (setting), FALSE);
	g_return_val_if_fail (address != NULL, FALSE);

	priv = NM_SETTING_IP4_CONFIG_GET_PRIVATE (setting);
	for (iter = priv->addresses; iter; iter = g_slist_next (iter)) {
		if (nm_ip4_address_compare ((NMIP4Address *) iter->data, address))
			return FALSE;
	}

	copy = nm_ip4_address_dup (address);
	g_return_val_if_fail (copy != NULL, FALSE);

	priv->addresses = g_slist_append (priv->addresses, copy);
	return TRUE;
}