From 0105ae3d0fa3b509f7ed08132670bcfd790a16f4 Mon Sep 17 00:00:00 2001 From: Seth Mos Date: Sun, 7 Jun 2009 01:07:53 +0200 Subject: Add bridge upgrade code for 1.2 -> 2.0 Like the vlan upgrade code this uses slot 38 to make sure it will not run on a 2.0 configuration. This is blind coded and needs testing. Please help testing. --- etc/inc/upgrade_config.inc | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'etc') diff --git a/etc/inc/upgrade_config.inc b/etc/inc/upgrade_config.inc index 460c77e..f039f38 100644 --- a/etc/inc/upgrade_config.inc +++ b/etc/inc/upgrade_config.inc @@ -585,7 +585,32 @@ function upgrade_036_to_037() { function upgrade_037_to_038() { global $config; - /* Insert upgrade code here */ + + /* This should only be valid when upgrading bridges from a 1.2 config */ + $a_bridges = array(); + $counter = 0; + foreach($config['interfaces'] as & $interface => $name) { + if($interface['bridge'] <> "") { + $bridge = array(); + $bridge['members'] = "{$name},{$interface['bridge']}"; + $bridge['descr'] = "Upgraded from 1.2" + $bridge['maxaddr'] = ""; + $bridge['timeout'] = ""; + $bridge['maxage'] = ""; + $bridge['fwdelay'] = ""; + $bridge['hellotime'] = ""; + $bridge['priority'] = ""; + $bridge['proto'] = "rstp"; + $bridge['holdcount'] = ""; + $bridge['ifpriority'] = ""; + $bridge['ifpathcost'] = ""; + $bridge['bridgeif'] = "bridge{$counter}"; + /* done collecting info, have to burn those bridges */ + $config['interfaces'][$name]['bridge'] = true; + $a_bridges[] = $bridge; + } + } + $config['bridges'] = $a_bridges; } -- cgit v1.1