summaryrefslogtreecommitdiffhomepage
path: root/tun.go
diff options
context:
space:
mode:
Diffstat (limited to 'tun.go')
-rw-r--r--tun.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/tun.go b/tun.go
index 6259f33..7b044ad 100644
--- a/tun.go
+++ b/tun.go
@@ -26,6 +26,7 @@ type TUNDevice interface {
}
func (device *Device) RoutineTUNEventReader() {
+ setUp := false
logInfo := device.log.Info
logError := device.log.Error
@@ -45,13 +46,15 @@ func (device *Device) RoutineTUNEventReader() {
}
}
- if event&TUNEventUp != 0 && !device.isUp.Get() {
+ if event&TUNEventUp != 0 && !setUp {
logInfo.Println("Interface set up")
+ setUp = true
device.Up()
}
- if event&TUNEventDown != 0 && device.isUp.Get() {
+ if event&TUNEventDown != 0 && setUp {
logInfo.Println("Interface set down")
+ setUp = false
device.Down()
}
}