| // Copyright 2018 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. | |
| // +build aix darwin dragonfly freebsd js,wasm linux netbsd openbsd solaris windows | |
| package net | |
| import ( | |
| "syscall" | |
| ) | |
| // A sockaddr represents a TCP, UDP, IP or Unix network endpoint | |
| // address that can be converted into a syscall.Sockaddr. | |
| type sockaddr interface { | |
| Addr | |
| // family returns the platform-dependent address family | |
| // identifier. | |
| family() int | |
| // isWildcard reports whether the address is a wildcard | |
| // address. | |
| isWildcard() bool | |
| // sockaddr returns the address converted into a syscall | |
| // sockaddr type that implements syscall.Sockaddr | |
| // interface. It returns a nil interface when the address is | |
| // nil. | |
| sockaddr(family int) (syscall.Sockaddr, error) | |
| // toLocal maps the zero address to a local system address (127.0.0.1 or ::1) | |
| toLocal(net string) sockaddr | |
| } |