diff options
Diffstat (limited to 'tun_darwin.go')
-rw-r--r-- | tun_darwin.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/tun_darwin.go b/tun_darwin.go index d2cdcd5..b8afdfd 100644 --- a/tun_darwin.go +++ b/tun_darwin.go @@ -303,6 +303,9 @@ func (tun *NativeTun) Close() error { // Surprisingly, on Darwin, simply closing a route socket is enough to unblock it. // We don't even need to call shutdown, or use a rwcancel. err3 = unix.Close(tun.routeSocket) + tun.routeSocket = -1 + } else if tun.events != nil { + close(tun.events) } if err1 != nil { return err1 |