summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--interface-definitions/vpn_sstp.xml.in2
-rwxr-xr-xsrc/conf_mode/vpn_sstp.py4
-rwxr-xr-xsrc/migration-scripts/sstp/2-to-347
3 files changed, 50 insertions, 3 deletions
diff --git a/interface-definitions/vpn_sstp.xml.in b/interface-definitions/vpn_sstp.xml.in
index 5433a4ea7..d5e23fe40 100644
--- a/interface-definitions/vpn_sstp.xml.in
+++ b/interface-definitions/vpn_sstp.xml.in
@@ -44,7 +44,7 @@
#include <include/interface-mtu-68-1500.xml.i>
</children>
</node>
- <node name="ppp-settings">
+ <node name="ppp-options">
<properties>
<help>PPP (Point-to-Point Protocol) settings</help>
</properties>
diff --git a/src/conf_mode/vpn_sstp.py b/src/conf_mode/vpn_sstp.py
index 7fc370f99..5d928a945 100755
--- a/src/conf_mode/vpn_sstp.py
+++ b/src/conf_mode/vpn_sstp.py
@@ -273,9 +273,9 @@ def get_config(config=None):
#
# read in PPP stuff
- conf.set_level(base_path + ['ppp-settings'])
+ conf.set_level(base_path + ['ppp-options'])
if conf.exists('mppe'):
- sstp['ppp_mppe'] = conf.return_value(['ppp-settings', 'mppe'])
+ sstp['ppp_mppe'] = conf.return_value(['mppe'])
if conf.exists(['lcp-echo-failure']):
sstp['ppp_echo_failure'] = conf.return_value(['lcp-echo-failure'])
diff --git a/src/migration-scripts/sstp/2-to-3 b/src/migration-scripts/sstp/2-to-3
new file mode 100755
index 000000000..51f4effed
--- /dev/null
+++ b/src/migration-scripts/sstp/2-to-3
@@ -0,0 +1,47 @@
+#!/usr/bin/env python3
+#
+# Copyright (C) 2020 VyOS maintainers and contributors
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 or later as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# - Rename SSTP ppp-settings node to ppp-options to make use of a common
+# Jinja Template to render Accel-PPP services
+
+from vyos.configtree import ConfigTree
+from sys import argv
+from sys import exit
+
+if (len(argv) < 1):
+ print("Must specify file name!")
+ exit(1)
+
+file_name = argv[1]
+
+with open(file_name, 'r') as f:
+ config_file = f.read()
+
+config = ConfigTree(config_file)
+base_path = ['vpn', 'sstp']
+if not config.exists(base_path):
+ # Nothing to do
+ exit(0)
+else:
+ if config.exists(base_path + ['ppp-settings']):
+ config.rename(base_path + ['ppp-settings'], 'ppp-options')
+
+ try:
+ with open(file_name, 'w') as f:
+ f.write(config.to_string())
+ except OSError as e:
+ print("Failed to save the modified config: {}".format(e))
+ exit(1)