go error_unix_test 源码

2022-07-15 浏览 (867)

golang error_unix_test 代码

文件路径:/src/net/error_unix_test.go

// Copyright 2015 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

//go:build !plan9 && !windows

package net

import (
	"errors"
	"os"
	"syscall"
)

var (
	errTimedout       = syscall.ETIMEDOUT
	errOpNotSupported = syscall.EOPNOTSUPP

	abortedConnRequestErrors = []error{syscall.ECONNABORTED} // see accept in fd_unix.go
)

func isPlatformError(err error) bool {
	_, ok := err.(syscall.Errno)
	return ok
}

func samePlatformError(err, want error) bool {
	if op, ok := err.(*OpError); ok {
		err = op.Err
	}
	if sys, ok := err.(*os.SyscallError); ok {
		err = sys.Err
	}
	return err == want
}

func isENOBUFS(err error) bool {
	return errors.Is(err, syscall.ENOBUFS)
}

相关信息

go 源码目录

相关文章

go addrselect 源码

go addrselect_test 源码

go cgo_aix 源码

go cgo_android 源码

go cgo_bsd 源码

go cgo_linux 源码

go cgo_netbsd 源码

go cgo_openbsd 源码

go cgo_resnew 源码

go cgo_resold 源码

  • 所属分类: 后端技术
  • 本文标签: golang
  • 版权声明: 本文链接 https://seaxiang.com/blog/25a2e71fe0d240aea066774954848c2a