diff options
author | Christian Poessinger <christian@poessinger.com> | 2020-04-18 12:35:10 +0200 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2020-04-18 14:31:51 +0200 |
commit | 901d5e89ec6e3fb0f3d13f90f0495a4dda592454 (patch) | |
tree | 6a18d5bcbfa1fbdf7d83d1ba828a7641ac694af5 /src/migration-scripts/pppoe-server/2-to-3 | |
parent | 3a81e26a23b5e1b372bfa15c63dbc725a2f448ed (diff) | |
download | vyos-1x-901d5e89ec6e3fb0f3d13f90f0495a4dda592454.tar.gz vyos-1x-901d5e89ec6e3fb0f3d13f90f0495a4dda592454.zip |
pppoe-server: T2314: migrate IPv6 to common CLI nodes with embeeded validation
Diffstat (limited to 'src/migration-scripts/pppoe-server/2-to-3')
-rwxr-xr-x | src/migration-scripts/pppoe-server/2-to-3 | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/migration-scripts/pppoe-server/2-to-3 b/src/migration-scripts/pppoe-server/2-to-3 index 977f1ef43..eb3e00b8b 100755 --- a/src/migration-scripts/pppoe-server/2-to-3 +++ b/src/migration-scripts/pppoe-server/2-to-3 @@ -75,6 +75,37 @@ else: if config.exists(radius_base + ['server', server, 'req-limit']): config.delete(radius_base + ['server', server, 'req-limit']) + # Migrate IPv6 prefixes + ipv6_base = base + ['client-ipv6-pool'] + if config.exists(ipv6_base + ['prefix']): + prefix_old = config.return_values(ipv6_base + ['prefix']) + # delete old prefix CLI nodes + config.delete(ipv6_base + ['prefix']) + # create ned prefix tag node + config.set(ipv6_base + ['prefix']) + config.set_tag(ipv6_base + ['prefix']) + + for p in prefix_old: + prefix = p.split(',')[0] + mask = p.split(',')[1] + config.set(ipv6_base + ['prefix', prefix, 'mask'], value=mask) + + if config.exists(ipv6_base + ['delegate-prefix']): + prefix_old = config.return_values(ipv6_base + ['delegate-prefix']) + # delete old delegate prefix CLI nodes + config.delete(ipv6_base + ['delegate-prefix']) + # create ned delegation tag node + config.set(ipv6_base + ['delegate']) + config.set_tag(ipv6_base + ['delegate']) + + for p in prefix_old: + prefix = p.split(',')[0] + mask = p.split(',')[1] + config.set(ipv6_base + ['delegate', prefix, 'delegation-prefix'], value=mask) + + print(config.to_string()) + exit(1) + try: with open(file_name, 'w') as f: f.write(config.to_string()) |