diff --git a/tun/tun_windows.go b/tun/tun_windows.go index 05fc3df..1de74e6 100644 --- a/tun/tun_windows.go +++ b/tun/tun_windows.go @@ -141,6 +141,12 @@ func (tun *NativeTun) openTUN() error { } return err } + firstSize := (*uint32)(unsafe.Pointer(&tun.wrBuff.data[0])) + saved := *firstSize + *firstSize = 0 + // Set the maximum buffer length with an invalid write. + tun.tunFileWrite.Write(tun.wrBuff.data[:]) + *firstSize = saved } return nil }