shared/util_linux.go
func GetErrno(err error) (errno error, iserrno bool) {
	sysErr, ok := err.(*os.SyscallError)
	if ok {
		return sysErr.Err, true
	}

	pathErr, ok := err.(*os.PathError)
	if ok {
		return pathErr.Err, true
	}

	tmpErrno, ok := err.(syscall.Errno)
	if ok {
		return tmpErrno, true
	}

	return nil, false
}
func GetErrno(err error) (errno error, iserrno bool) {
	sysErr, ok := err.(*os.SyscallError)
	if ok {
		return sysErr.Err, true
	}

	pathErr, ok := err.(*os.PathError)
	if ok {
		return pathErr.Err, true
	}

	tmpErrno, ok := err.(syscall.Errno)
	if ok {
		return tmpErrno, true
	}

	return nil, false
}
func GetErrno ( err error ) ( errno error , iserrno bool ) { sysErr , ok := err . ( * os . SyscallError ) if ok { return sysErr . Err , true } pathErr , ok := err . ( * os . PathError ) if ok { return pathErr . Err , true } tmpErrno , ok := err . ( syscall . Errno ) if ok { return tmpErrno , true } return nil , false }
// Detect whether err is an errno.
Detect whether err is an errno .