diff options
author | Valery Piashchynski <[email protected]> | 2021-04-28 14:10:27 +0300 |
---|---|---|
committer | Valery Piashchynski <[email protected]> | 2021-04-28 14:10:27 +0300 |
commit | 30c25f17fa7d6386e33a4894c812f7ca5db990ad (patch) | |
tree | 03f53535addf71a81eca4b9a1d3ba29d4ebf4984 /plugins/http/worker_handler/errors_windows.go | |
parent | 4cb2247f909d02c922edb6f8e3d3741cc5a2c077 (diff) |
- Fix middleware order
- Update tests
- Move worker handler into a separate folder with separate package name
Signed-off-by: Valery Piashchynski <[email protected]>
Diffstat (limited to 'plugins/http/worker_handler/errors_windows.go')
-rw-r--r-- | plugins/http/worker_handler/errors_windows.go | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/plugins/http/worker_handler/errors_windows.go b/plugins/http/worker_handler/errors_windows.go new file mode 100644 index 00000000..390cc7d1 --- /dev/null +++ b/plugins/http/worker_handler/errors_windows.go @@ -0,0 +1,27 @@ +// +build windows + +package handler + +import ( + "errors" + "net" + "os" + "syscall" +) + +//Software caused connection abort. +//An established connection was aborted by the software in your host computer, +//possibly due to a data transmission time-out or protocol error. +var errEPIPE = errors.New("WSAECONNABORTED (10053) -> an established connection was aborted by peer") + +// handleWriteError just check if error was caused by aborted connection on windows +func handleWriteError(err error) error { + if netErr, ok2 := err.(*net.OpError); ok2 { + if syscallErr, ok3 := netErr.Err.(*os.SyscallError); ok3 { + if syscallErr.Err == syscall.WSAECONNABORTED { + return errEPIPE + } + } + } + return err +} |