summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-04-04 20:59:01 +0200
committerMergify <37929162+mergify[bot]@users.noreply.github.com>2024-04-04 19:26:52 +0000
commit8948a5d5b93614a16199df6f5b3d5b1b00164ac8 (patch)
treefd42d15c42c3b689eafb7159166e3dd48d9c64cf
parente4d6e98c6dfcf4c92e03583903288a5da834bab1 (diff)
downloadvyos-1x-8948a5d5b93614a16199df6f5b3d5b1b00164ac8.tar.gz
vyos-1x-8948a5d5b93614a16199df6f5b3d5b1b00164ac8.zip
ospf: T6089: fix invalid "ospf passive-interface default"
The option "passive-interface default" was set even if it was not present in the previous version we are migrating from. Fix migration script to handle this with a conditional path. (cherry picked from commit ef8d9a73335bc685084e3ff97238836e452dfa8c)
-rw-r--r--smoketest/config-tests/ospf-simple20
-rw-r--r--smoketest/configs/ospf-simple81
-rwxr-xr-xsrc/migration-scripts/ospf/0-to-13
3 files changed, 103 insertions, 1 deletions
diff --git a/smoketest/config-tests/ospf-simple b/smoketest/config-tests/ospf-simple
new file mode 100644
index 000000000..13d5e7038
--- /dev/null
+++ b/smoketest/config-tests/ospf-simple
@@ -0,0 +1,20 @@
+set interfaces ethernet eth0 vif 20 address '193.201.42.173/28'
+set interfaces ethernet eth0 vif 666 address '10.66.66.1/24'
+set interfaces loopback lo
+set protocols ospf area 0 network '10.66.66.0/24'
+set protocols ospf area 0 network '193.201.42.160/28'
+set protocols ospf area 0 area-type normal
+set protocols ospf interface eth0.20 cost '999'
+set protocols ospf interface eth0.20 dead-interval '4'
+set protocols ospf interface eth0.20 hello-interval '1'
+set protocols ospf interface eth0.20 priority '255'
+set protocols ospf interface eth0.20 retransmit-interval '5'
+set protocols ospf interface eth0.20 transmit-delay '1'
+set protocols ospf interface eth0.666 passive
+set protocols ospf log-adjacency-changes detail
+set protocols static route 0.0.0.0/0 next-hop 193.201.42.170 distance '130'
+set system config-management commit-revisions '100'
+set system host-name 'lab-vyos-r1'
+set system login user vyos authentication encrypted-password '$6$R.OnGzfXSfl6J$Iba/hl9bmjBs0VPtZ2zdW.Snh/nHuvxUwi0R6ruypgW63iKEbicJH.uUst8xZCyByURblxRtjAC1lAnYfIt.b0'
+set system login user vyos authentication plaintext-password ''
+set system console device ttyS0 speed '115200'
diff --git a/smoketest/configs/ospf-simple b/smoketest/configs/ospf-simple
new file mode 100644
index 000000000..0427062ae
--- /dev/null
+++ b/smoketest/configs/ospf-simple
@@ -0,0 +1,81 @@
+interfaces {
+ ethernet eth0 {
+ vif 20 {
+ address 193.201.42.173/28
+ ip {
+ ospf {
+ cost 999
+ dead-interval 4
+ hello-interval 1
+ priority 255
+ retransmit-interval 5
+ transmit-delay 1
+ }
+ }
+ }
+ vif 666 {
+ address 10.66.66.1/24
+ }
+ }
+ ethernet eth1 {
+ }
+ ethernet eth2 {
+ }
+ loopback lo {
+ }
+}
+protocols {
+ ospf {
+ area 0 {
+ area-type {
+ normal
+ }
+ network 193.201.42.160/28
+ network 10.66.66.0/24
+ }
+ log-adjacency-changes {
+ detail
+ }
+ passive-interface eth0.666
+ }
+ static {
+ route 0.0.0.0/0 {
+ next-hop 193.201.42.170 {
+ distance 130
+ }
+ }
+ }
+}
+system {
+ config-management {
+ commit-revisions 100
+ }
+ console {
+ device ttyS0 {
+ speed 115200
+ }
+ }
+ host-name lab-vyos-r1
+ login {
+ user vyos {
+ authentication {
+ encrypted-password $6$R.OnGzfXSfl6J$Iba/hl9bmjBs0VPtZ2zdW.Snh/nHuvxUwi0R6ruypgW63iKEbicJH.uUst8xZCyByURblxRtjAC1lAnYfIt.b0
+ plaintext-password ""
+ }
+ }
+ }
+ syslog {
+ global {
+ facility all {
+ level info
+ }
+ facility protocols {
+ level debug
+ }
+ }
+ }
+}
+
+// Warning: Do not remove the following line.
+// vyos-config-version: "broadcast-relay@1:cluster@1:config-management@1:conntrack@3:conntrack-sync@2:container@1:dhcp-relay@2:dhcp-server@6:dhcpv6-server@1:dns-forwarding@3:firewall@5:https@2:interfaces@22:ipoe-server@1:ipsec@5:isis@1:l2tp@3:lldp@1:mdns@1:nat@5:ntp@1:pppoe-server@5:pptp@2:qos@1:quagga@8:rpki@1:salt@1:snmp@2:ssh@2:sstp@3:system@21:vrrp@2:vyos-accel-ppp@2:wanloadbalance@3:webproxy@2:zone-policy@1"
+// Release version: 1.3.4
diff --git a/src/migration-scripts/ospf/0-to-1 b/src/migration-scripts/ospf/0-to-1
index a6cb9feb8..4085423a2 100755
--- a/src/migration-scripts/ospf/0-to-1
+++ b/src/migration-scripts/ospf/0-to-1
@@ -31,7 +31,8 @@ def ospf_passive_migration(config, ospf_base):
config.set_tag(ospf_base + ['interface'])
config.delete(ospf_base + ['passive-interface'])
- config.set(ospf_base + ['passive-interface'], value='default')
+ if default:
+ config.set(ospf_base + ['passive-interface'], value='default')
if config.exists(ospf_base + ['passive-interface-exclude']):
for interface in config.return_values(ospf_base + ['passive-interface-exclude']):