summaryrefslogtreecommitdiff
path: root/src/migration-scripts/sstp
diff options
context:
space:
mode:
authoraapostoliuk <a.apostoliuk@vyos.io>2023-12-29 15:02:48 +0200
committerChristian Breunig <christian@breunig.cc>2024-01-01 23:25:06 +0100
commite933efdca291b00186397466d43a0b5ea1160164 (patch)
treede95635fb92f6d246425ab0da32f01a7a0d64f6e /src/migration-scripts/sstp
parent66949bb982c600439424174171edd850b4c1bb35 (diff)
downloadvyos-1x-e933efdca291b00186397466d43a0b5ea1160164.tar.gz
vyos-1x-e933efdca291b00186397466d43a0b5ea1160164.zip
T5688: Fixed ip pool migration scripts for l2tp, sstp, pppoe
Fixed migration 'subnet' option in l2tp, sstp, pppoe. 'subnet' option can contain several values. (cherry picked from commit 21e5db430f93fd48ebc598ddf95c67d77485f5f5)
Diffstat (limited to 'src/migration-scripts/sstp')
-rwxr-xr-xsrc/migration-scripts/sstp/4-to-519
1 files changed, 15 insertions, 4 deletions
diff --git a/src/migration-scripts/sstp/4-to-5 b/src/migration-scripts/sstp/4-to-5
index 0f332e04f..3a86c79ec 100755
--- a/src/migration-scripts/sstp/4-to-5
+++ b/src/migration-scripts/sstp/4-to-5
@@ -43,12 +43,23 @@ if not config.exists(base):
if not config.exists(pool_base):
exit(0)
-subnet_pool_name = 'default-subnet-pool'
+subnet_base_name = 'default-subnet-pool'
+number = 1
+subnet_pool_name = f'{subnet_base_name}-{number}'
+prev_subnet_pool = subnet_pool_name
if config.exists(pool_base + ['subnet']):
- subnet = config.return_value(pool_base + ['subnet'])
+ default_pool = subnet_pool_name
+ for subnet in config.return_values(pool_base + ['subnet']):
+ config.set(pool_base + [subnet_pool_name, 'range'], value=subnet)
+ if prev_subnet_pool != subnet_pool_name:
+ config.set(pool_base + [prev_subnet_pool, 'next-pool'],
+ value=subnet_pool_name)
+ prev_subnet_pool = subnet_pool_name
+ number += 1
+ subnet_pool_name = f'{subnet_base_name}-{number}'
+
config.delete(pool_base + ['subnet'])
- config.set(pool_base + [subnet_pool_name, 'range'], value=subnet)
- config.set(base + ['default-pool'], value=subnet_pool_name)
+ config.set(base + ['default-pool'], value=default_pool)
# format as tag node
config.set_tag(pool_base)