diff options
author | Christian Poessinger <christian@poessinger.com> | 2019-11-11 20:13:46 +0100 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2019-11-11 20:13:46 +0100 |
commit | 80375d2be96c53f2fa4a827f93105dc32931401f (patch) | |
tree | 0b805551a0d65cbec00857501e11e721fe0429ac /src/migration-scripts/interfaces | |
parent | 8abde544455dd158d080eb6ea7b7ed226b27965a (diff) | |
parent | c9c8cd50f4165c7f86e71a6723f0ebb3a2cbdaf5 (diff) | |
download | vyos-1x-80375d2be96c53f2fa4a827f93105dc32931401f.tar.gz vyos-1x-80375d2be96c53f2fa4a827f93105dc32931401f.zip |
Merge branch 'current' of github.com:vyos/vyos-1x into equuleus
* 'current' of github.com:vyos/vyos-1x:
ifconfig: T1793: extend set_speed_duplex() delta check
[OpenVPN]: T1704: Added uppercase entries of ncp-ciphers, since there seems to be a bug in OpenVPN client when comparing pushed cipher with local ncp cipher list
[OpenVPN]: T1704: Moved ncp-ciphers out of encryption block in config template
[OpenVPN]: T1704: Changed the description of ncp-ciphers in config
[OpenVPN]: T1704: Added function for ncp-ciphers, and ability to disable it. [OpenVPN]: T1704: Changed config structure for OpenVPN encryption to support ncp-ciphers. [OpenVPN]: T1704: Added migration scripts for interface 2-to-3
Intel QAT: T1788: Intel QAT implementation
ifconfig: T1793: add delta check on set_speed_duplex()
ifconfig: T1793: add delta check on set_flow_control()
Python/ifconfig: wireguard: remove trailing whitespaces
l2tp: T1747: automatically calculate gw-ip-address
QAT: T1788: Intel QAT implementation
Diffstat (limited to 'src/migration-scripts/interfaces')
-rwxr-xr-x | src/migration-scripts/interfaces/2-to-3 | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/migration-scripts/interfaces/2-to-3 b/src/migration-scripts/interfaces/2-to-3 new file mode 100755 index 000000000..a63a54cdf --- /dev/null +++ b/src/migration-scripts/interfaces/2-to-3 @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 + +# Change syntax of openvpn encryption settings +# - move cipher from encryption to encryption cipher +# https://phabricator.vyos.net/T1704 + +import sys +from vyos.configtree import ConfigTree + +if (len(sys.argv) < 1): + print("Must specify file name!") + sys.exit(1) + +file_name = sys.argv[1] + +with open(file_name, 'r') as f: + config_file = f.read() + +config = ConfigTree(config_file) +base = ['interfaces', 'openvpn'] + +if not config.exists(base): + # Nothing to do + sys.exit(0) +else: + # + # move cipher from "encryption" to "encryption cipher" + # + for intf in config.list_nodes(['interfaces', 'openvpn']): + # Check if encryption is set + if config.exists(['interfaces', 'openvpn', intf, 'encryption']): + # Get cipher used + cipher = config.return_value(['interfaces', 'openvpn', intf, 'encryption']) + # Delete old syntax + config.delete(['interfaces', 'openvpn', intf, 'encryption']) + # Add new syntax to config + config.set(['interfaces', 'openvpn', intf, 'encryption', 'cipher'], value=cipher) + 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)) + sys.exit(1) |