Browse Source

Fix osx for mq changes, this does not implement mq on osx (#395)

Nathan Brown 4 years ago
parent
commit
ecfb40f29c
1 changed files with 6 additions and 2 deletions
  1. 6 2
      interface.go

+ 6 - 2
interface.go

@@ -130,7 +130,7 @@ func (f *Interface) run() {
 		go f.listenOut(i)
 	}
 
-	// Launch n queues to read packets from tun dev
+	// Prepare n tun queues
 	var reader io.ReadWriteCloser = f.inside
 	for i := 0; i < f.routines; i++ {
 		if i > 0 {
@@ -140,12 +140,16 @@ func (f *Interface) run() {
 			}
 		}
 		f.readers[i] = reader
-		go f.listenIn(reader, i)
 	}
 
 	if err := f.inside.Activate(); err != nil {
 		l.Fatal(err)
 	}
+
+	// Launch n queues to read packets from tun dev
+	for i := 0; i < f.routines; i++ {
+		go f.listenIn(f.readers[i], i)
+	}
 }
 
 func (f *Interface) listenOut(i int) {