From a704adc982fbe3f53f155421fe8d3124e427ca01 Mon Sep 17 00:00:00 2001 From: Everton Marques Date: Mon, 27 Mar 2017 18:11:39 -0300 Subject: [PATCH] Clean-up Mikrotik username suffix. --- conf/conf.go | 1 + dev/model.go | 5 +---- dev/model_mikrotik.go | 1 + 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/conf/conf.go b/conf/conf.go index 7e5d1ae..032caf6 100644 --- a/conf/conf.go +++ b/conf/conf.go @@ -79,6 +79,7 @@ type DevAttributes struct { ErrlogHistSize int // max number of lines in errlog history PostLoginPromptPattern string // mikrotik: Please press "Enter" to continue! PostLoginPromptResponse string // mikrotik: \r\n + UsernameAppend string // mikrotik: +cte // readTimeout: per-read timeout (protection against inactivity) // matchTimeout: full match timeout (protection against slow sender -- think 1 byte per second) diff --git a/dev/model.go b/dev/model.go index 363fc43..23baf08 100644 --- a/dev/model.go +++ b/dev/model.go @@ -32,10 +32,7 @@ type Device struct { // Username gets the username for login into a device. func (d *Device) Username() string { - if d.Model() == "mikrotik" { - return d.DevConfig.LoginUser + "+cte" - } - return d.DevConfig.LoginUser + return d.DevConfig.LoginUser + d.DevConfig.Attr.UsernameAppend } // Printf formats device-specific messages into logs. diff --git a/dev/model_mikrotik.go b/dev/model_mikrotik.go index f8e12f8..fdba05a 100644 --- a/dev/model_mikrotik.go +++ b/dev/model_mikrotik.go @@ -25,6 +25,7 @@ func registerModelMikrotik(logger hasPrintf, t *DeviceTable) { a.CommandReadTimeout = 20 * time.Second // larger timeout for slow 'sh run' a.CommandMatchTimeout = 30 * time.Second // larger timeout for slow 'sh run' a.QuoteSentCommandsFormat = `##[%s]` + a.UsernameAppend = "+cte" m := &Model{name: "mikrotik"} m.defaultAttr = a