Merge pull request #103 from picatz/fix-mac-changer-configure-bug

Fix Issue #102
This commit is contained in:
Simone Margaritelli 2018-02-28 12:09:01 +01:00 committed by GitHub
commit d3468683ad
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,6 +1,7 @@
package modules package modules
import ( import (
"errors"
"fmt" "fmt"
"net" "net"
"runtime" "runtime"
@ -64,6 +65,10 @@ func (mc *MacChanger) Author() string {
func (mc *MacChanger) Configure() (err error) { func (mc *MacChanger) Configure() (err error) {
var changeTo string var changeTo string
if mc.originalMac != nil {
return errors.New("mac.changer has already been configured, you will need to turn it off to re-configure")
}
if err, mc.iface = mc.StringParam("mac.changer.iface"); err != nil { if err, mc.iface = mc.StringParam("mac.changer.iface"); err != nil {
return err return err
} }
@ -119,6 +124,9 @@ func (mc *MacChanger) Stop() error {
return err return err
} }
// the the module can now be reconfigured
mc.originalMac = nil
return mc.SetRunning(false, func() { return mc.SetRunning(false, func() {
log.Info("Interface mac address restored to %s", core.Bold(mc.originalMac.String())) log.Info("Interface mac address restored to %s", core.Bold(mc.originalMac.String()))
}) })