From: Mikio Hara Date: Fri, 19 May 2017 09:49:28 +0000 (+0900) Subject: internal/poll: implement RawControl of FD on Windows X-Git-Tag: go1.9beta1~206 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=fd25fe60fac4014dfe09c364c8c73ff2c95251e5;p=gostls13.git internal/poll: implement RawControl of FD on Windows This is a followup to https://go-review.googlesource.com/37038. Updates #19435. Change-Id: If3d56bca0e8816d1a169f5cf97f27b20695a9955 Reviewed-on: https://go-review.googlesource.com/43692 Reviewed-by: Brad Fitzpatrick Reviewed-by: Ian Lance Taylor --- diff --git a/src/internal/poll/fd_windows.go b/src/internal/poll/fd_windows.go index 5c55c948c2..9f40886d08 100644 --- a/src/internal/poll/fd_windows.go +++ b/src/internal/poll/fd_windows.go @@ -837,7 +837,12 @@ func (fd *FD) GetFileInformationByHandle(data *syscall.ByHandleFileInformation) // RawControl invokes the user-defined function f for a non-IO // operation. func (fd *FD) RawControl(f func(uintptr)) error { - return errors.New("not implemented") + if err := fd.incref(); err != nil { + return err + } + defer fd.decref() + f(uintptr(fd.Sysfd)) + return nil } // RawRead invokes the user-defined function f for a read operation.