blob: c3352a521ce8bcd46557ac265dc844400ad11bae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
//go:build !windows
// +build !windows
package handler
import (
"errors"
"net"
"os"
"syscall"
)
// Broken pipe
var errEPIPE = errors.New("EPIPE(32) -> connection reset by peer")
// handleWriteError just check if error was caused by aborted connection on linux
func handleWriteError(err error) error {
if netErr, ok2 := err.(*net.OpError); ok2 {
if syscallErr, ok3 := netErr.Err.(*os.SyscallError); ok3 {
if errors.Is(syscallErr.Err, syscall.EPIPE) {
return errEPIPE
}
}
}
return err
}
|