Fix tun_connect not to use 100% CPU (by only waiting for write-ready sockets that...
authorClaudio-Daniel Freire <claudio-daniel.freire@inria.fr>
Mon, 18 Apr 2011 16:16:11 +0000 (18:16 +0200)
committerClaudio-Daniel Freire <claudio-daniel.freire@inria.fr>
Mon, 18 Apr 2011 16:16:11 +0000 (18:16 +0200)
scripts/tun_connect.py

index ba74a6a..c416557 100644 (file)
@@ -310,7 +310,12 @@ def tun_fwd(tun, remote):
     fwbuf = ""
     bkbuf = ""
     while not abortme:
-        rdrdy, wrdy, errs = select.select((tun,remote),(tun,remote),(tun,remote),1)
+        wset = []
+        if packetReady(bkbuf):
+            wset.append(tun)
+        if packetReady(fwbuf):
+            wset.append(remote)
+        rdrdy, wrdy, errs = select.select((tun,remote),wset,(tun,remote),1)
         
         # check for errors
         if errs: