mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
net: make multi-IP resolution more flexible.
Remove the "netaddr" type, which ambiguously represented either one address, or a list of addresses. Instead, use "addrList" wherever multiple addresses are supported. The "first" method returns the first address matching some condition (e.g. "is it IPv4?"), primarily to support legacy code that can't handle multiple addresses. The "partition" method splits an addrList into two categories, as defined by some strategy function. This is useful for implementing Happy Eyeballs, and similar two-channel algorithms. Finally, internetAddrList (formerly resolveInternetAddr) no longer mangles the ordering defined by getaddrinfo. In the future, this may be used by a sequential Dial implementation. Updates #8453, #8455. Change-Id: I7375f4c34481580ab40e31d33002a4073a0474f3 Reviewed-on: https://go-review.googlesource.com/8360 Reviewed-by: Mikio Hara <mikioh.mikioh@gmail.com> Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
4b21be4670
commit
a5dec3859a
13 changed files with 228 additions and 171 deletions
|
|
@ -23,13 +23,6 @@ func (a *UnixAddr) String() string {
|
|||
return a.Name
|
||||
}
|
||||
|
||||
func (a *UnixAddr) toAddr() Addr {
|
||||
if a == nil {
|
||||
return nil
|
||||
}
|
||||
return a
|
||||
}
|
||||
|
||||
// ResolveUnixAddr parses addr as a Unix domain socket address.
|
||||
// The string net gives the network name, "unix", "unixgram" or
|
||||
// "unixpacket".
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue