2008-10-30 Dan Williams <dcbw@redhat.com>

Patch from Alexander Sack <asac@canonical.com>

	Fix "ppp connections don't honour ip4 connection settings"

	* src/nm-device-ethernet.c
		- (real_act_stage4_get_ip4_config): merge ip4config settings
			with results from ppp manager

	* src/nm-serial-device.c
		- (real_act_stage4_get_ip4_config): merge ip4config settings
			with results from ppp manager



git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4234 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
Dan Williams
2008-10-30 04:31:29 +00:00
parent bfb7243663
commit b955a8197e
3 changed files with 36 additions and 0 deletions

View File

@@ -1333,6 +1333,7 @@ real_act_stage4_get_ip4_config (NMDevice *device,
g_return_val_if_fail (config != NULL, NM_ACT_STAGE_RETURN_FAILURE);
g_return_val_if_fail (*config == NULL, NM_ACT_STAGE_RETURN_FAILURE);
g_return_val_if_fail (reason != NULL, NM_ACT_STAGE_RETURN_FAILURE);
if (!priv->ppp_manager) {
/* Regular ethernet connection. */
@@ -1356,9 +1357,17 @@ real_act_stage4_get_ip4_config (NMDevice *device,
nm_ip4_config_set_mtu (*config, mtu);
}
} else {
NMConnection *connection;
NMSettingIP4Config *s_ip4;
connection = nm_act_request_get_connection (nm_device_get_act_request (device));
g_assert (connection);
s_ip4 = (NMSettingIP4Config *) nm_connection_get_setting (connection, NM_TYPE_SETTING_IP4_CONFIG);
/* PPPoE */
*config = priv->pending_ip4_config;
priv->pending_ip4_config = NULL;
nm_utils_merge_ip4_config (*config, s_ip4);
ret = NM_ACT_STAGE_RETURN_SUCCESS;
}