mirror of
https://github.com/qdm12/gluetun.git
synced 2026-05-10 04:30:20 +02:00
chore: do not use sentinel errors when unneeded
- main reason being it's a burden to always define sentinel errors at global scope, wrap them with `%w` instead of using a string directly - only use sentinel errors when it has to be checked using `errors.Is` - replace all usage of these sentinel errors in `fmt.Errorf` with direct strings that were in the sentinel error - exclude the sentinel error definition requirement from .golangci.yml - update unit tests to use ContainersError instead of ErrorIs so it stays as a "not a change detector test" without requiring a sentinel error
This commit is contained in:
@@ -8,12 +8,6 @@ import (
|
||||
"strings"
|
||||
)
|
||||
|
||||
var (
|
||||
ErrUnknownProto = errors.New("unknown protocol")
|
||||
ErrNoRemoteHost = errors.New("remote host not found")
|
||||
ErrNoRemoteIP = errors.New("remote IP not found")
|
||||
)
|
||||
|
||||
func ExtractProto(b []byte) (tcp, udp bool, err error) {
|
||||
lines := strings.Split(string(b), "\n")
|
||||
const protoPrefix = "proto "
|
||||
@@ -30,7 +24,7 @@ func ExtractProto(b []byte) (tcp, udp bool, err error) {
|
||||
case "udp", "udp4", "udp6":
|
||||
return false, true, nil
|
||||
default:
|
||||
return false, false, fmt.Errorf("%w: %s", ErrUnknownProto, s)
|
||||
return false, false, fmt.Errorf("unknown protocol: %s", s)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,7 +39,7 @@ func ExtractHost(b []byte) (host, warning string, err error) {
|
||||
)
|
||||
hosts := extractRemoteHosts(b, rejectIP, rejectDomain)
|
||||
if len(hosts) == 0 {
|
||||
return "", "", ErrNoRemoteHost
|
||||
return "", "", errors.New("remote host not found")
|
||||
} else if len(hosts) > 1 {
|
||||
warning = fmt.Sprintf(
|
||||
"only using the first host %q and discarding %d other hosts",
|
||||
@@ -58,7 +52,7 @@ func ExtractIPs(b []byte) (ips []netip.Addr, err error) {
|
||||
const rejectIP, rejectDomain = false, true
|
||||
ipStrings := extractRemoteHosts(b, rejectIP, rejectDomain)
|
||||
if len(ipStrings) == 0 {
|
||||
return nil, ErrNoRemoteIP
|
||||
return nil, errors.New("remote IP not found")
|
||||
}
|
||||
|
||||
sort.Slice(ipStrings, func(i, j int) bool {
|
||||
|
||||
Reference in New Issue
Block a user