You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.9 KiB
51 lines
1.9 KiB
7 years ago
|
From a5f395ec33af68cb924b797fed833d472ce090b1 Mon Sep 17 00:00:00 2001
|
||
|
From: Beniamino Galvani <bgalvani@redhat.com>
|
||
|
Date: Tue, 6 Feb 2018 10:04:53 +0100
|
||
|
Subject: [PATCH] ppp: don't start IPv6 configuration on the device
|
||
|
|
||
|
If IPV6CP terminates before IPCP, pppd enters the RUNNING phase and we
|
||
|
start IP configuration without having an IP interface set, which
|
||
|
triggers assertions. Instead, reimplement stage3_ip6_config_start to
|
||
|
be a no-op. Note that IPv6 configuration on PPP devices has never been
|
||
|
supported by NM.
|
||
|
|
||
|
This is a simpler version of upstream commit dd98ada33f33 ("ppp:
|
||
|
introduce SetIfindex pppd plugin D-Bus method") that doesn't require
|
||
|
changing the internal plugin API.
|
||
|
|
||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1515829
|
||
|
(cherry picked from commit 258f4fc76961f564c5d63d1eaf5246b21c2d0ce0)
|
||
|
---
|
||
|
src/devices/nm-device-ppp.c | 9 +++++++++
|
||
|
1 file changed, 9 insertions(+)
|
||
|
|
||
|
diff --git a/src/devices/nm-device-ppp.c b/src/devices/nm-device-ppp.c
|
||
|
index 8b3968d51..639ec44a7 100644
|
||
|
--- a/src/devices/nm-device-ppp.c
|
||
|
+++ b/src/devices/nm-device-ppp.c
|
||
|
@@ -207,6 +207,14 @@ act_stage3_ip4_config_start (NMDevice *device,
|
||
|
return NM_ACT_STAGE_RETURN_POSTPONE;
|
||
|
}
|
||
|
|
||
|
+static NMActStageReturn
|
||
|
+act_stage3_ip6_config_start (NMDevice *self,
|
||
|
+ NMIP6Config **out_config,
|
||
|
+ NMDeviceStateReason *out_failure_reason)
|
||
|
+{
|
||
|
+ return NM_ACT_STAGE_RETURN_IP_FAIL;
|
||
|
+}
|
||
|
+
|
||
|
static gboolean
|
||
|
create_and_realize (NMDevice *device,
|
||
|
NMConnection *connection,
|
||
|
@@ -273,6 +281,7 @@ nm_device_ppp_class_init (NMDevicePppClass *klass)
|
||
|
|
||
|
parent_class->act_stage2_config = act_stage2_config;
|
||
|
parent_class->act_stage3_ip4_config_start = act_stage3_ip4_config_start;
|
||
|
+ parent_class->act_stage3_ip6_config_start = act_stage3_ip6_config_start;
|
||
|
parent_class->check_connection_compatible = check_connection_compatible;
|
||
|
parent_class->create_and_realize = create_and_realize;
|
||
|
parent_class->deactivate = deactivate;
|
||
|
--
|
||
|
2.14.3
|