|
@@ -105,6 +105,7 @@ if { [::http::error $tok] != "" } {
|
|
|
|
|
|
set image {}
|
|
|
set config {}
|
|
|
+set sdm {}
|
|
|
set pnp 0
|
|
|
|
|
|
foreach line [split [::http::data $tok] "\n"] {
|
|
@@ -114,6 +115,9 @@ foreach line [split [::http::data $tok] "\n"] {
|
|
|
if { [regexp {^Config: (\S+)} $line -> res] } {
|
|
|
set config $res
|
|
|
}
|
|
|
+ if { [regexp {^SDM: (\S+)} $line -> res] } {
|
|
|
+ set sdm $res
|
|
|
+ }
|
|
|
if { [regexp {^PNP} $line] } {
|
|
|
set pnp 1
|
|
|
}
|
|
@@ -191,23 +195,18 @@ if { $config != {} } {
|
|
|
error $result $errorInfo
|
|
|
}
|
|
|
|
|
|
- if { [catch {cli_exec $cli(fd) "config t"} result] } {
|
|
|
- error $result $errorInfo
|
|
|
- }
|
|
|
-
|
|
|
- set failed 0
|
|
|
- if { [catch {cli_exec $cli(fd) "sdm prefer advanced"} result] } {
|
|
|
- set failed 1
|
|
|
- }
|
|
|
+ if { $sdm != {} } {
|
|
|
+ if { [catch {cli_exec $cli(fd) "config t"} result] } {
|
|
|
+ error $result $errorInfo
|
|
|
+ }
|
|
|
|
|
|
- if { $failed == 1 || [regexp {% Invalid input} $result] } {
|
|
|
- if { [catch {cli_exec $cli(fd) "sdm prefer vlan"} result] } {
|
|
|
- error $result $errorInfo
|
|
|
- }
|
|
|
- }
|
|
|
+ if { [catch {cli_exec $cli(fd) "sdm prefer $sdm"} result] } {
|
|
|
+ error $result $errorInfo
|
|
|
+ }
|
|
|
|
|
|
- if { [catch {cli_exec $cli(fd) "end"} result] } {
|
|
|
- error $result $errorInfo
|
|
|
+ if { [catch {cli_exec $cli(fd) "end"} result] } {
|
|
|
+ error $result $errorInfo
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
if { [catch {cli_exec $cli(fd) "show switch | inc ^\\*"} result] } {
|