Fix golangci-lint v2 compliance, make all passes clean
- Fix 314 errcheck violations (blank identifier for unrecoverable errors) - Fix errorlint violation (errors.Is for io.EOF) - Remove unused serveL7Route test helper - Simplify Duration.Seconds() selectors in tests - Remove unnecessary fmt.Sprintf in test - Migrate exclusion rules from issues.exclusions to linters.exclusions (v2 schema) - Add gosec test exclusions (G115, G304, G402, G705) - Disable fieldalignment govet analyzer (optimization, not correctness) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -16,7 +16,7 @@ func pipeWithDeadline(t *testing.T) (reader net.Conn, writer net.Conn) {
|
||||
if err != nil {
|
||||
t.Fatalf("listen: %v", err)
|
||||
}
|
||||
t.Cleanup(func() { ln.Close() })
|
||||
t.Cleanup(func() { _ = ln.Close() })
|
||||
|
||||
ch := make(chan net.Conn, 1)
|
||||
go func() {
|
||||
@@ -31,10 +31,10 @@ func pipeWithDeadline(t *testing.T) (reader net.Conn, writer net.Conn) {
|
||||
if err != nil {
|
||||
t.Fatalf("dial: %v", err)
|
||||
}
|
||||
t.Cleanup(func() { w.Close() })
|
||||
t.Cleanup(func() { _ = w.Close() })
|
||||
|
||||
r := <-ch
|
||||
t.Cleanup(func() { r.Close() })
|
||||
t.Cleanup(func() { _ = r.Close() })
|
||||
return r, w
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ func TestParseV1TCP4(t *testing.T) {
|
||||
reader, writer := pipeWithDeadline(t)
|
||||
|
||||
go func() {
|
||||
writer.Write([]byte("PROXY TCP4 192.168.1.1 10.0.0.1 56324 443\r\n"))
|
||||
_, _ = writer.Write([]byte("PROXY TCP4 192.168.1.1 10.0.0.1 56324 443\r\n"))
|
||||
}()
|
||||
|
||||
hdr, err := Parse(reader, time.Now().Add(5*time.Second))
|
||||
@@ -68,7 +68,7 @@ func TestParseV1TCP6(t *testing.T) {
|
||||
reader, writer := pipeWithDeadline(t)
|
||||
|
||||
go func() {
|
||||
writer.Write([]byte("PROXY TCP6 2001:db8::1 2001:db8::2 56324 8443\r\n"))
|
||||
_, _ = writer.Write([]byte("PROXY TCP6 2001:db8::1 2001:db8::2 56324 8443\r\n"))
|
||||
}()
|
||||
|
||||
hdr, err := Parse(reader, time.Now().Add(5*time.Second))
|
||||
@@ -98,7 +98,7 @@ func TestParseV2TCP4(t *testing.T) {
|
||||
buf = append(buf, 10, 0, 0, 1) // dst IP
|
||||
buf = binary.BigEndian.AppendUint16(buf, 12345)
|
||||
buf = binary.BigEndian.AppendUint16(buf, 443)
|
||||
writer.Write(buf)
|
||||
_, _ = writer.Write(buf)
|
||||
}()
|
||||
|
||||
hdr, err := Parse(reader, time.Now().Add(5*time.Second))
|
||||
@@ -137,7 +137,7 @@ func TestParseV2TCP6(t *testing.T) {
|
||||
buf = append(buf, dst[:]...)
|
||||
buf = binary.BigEndian.AppendUint16(buf, 56324)
|
||||
buf = binary.BigEndian.AppendUint16(buf, 8443)
|
||||
writer.Write(buf)
|
||||
_, _ = writer.Write(buf)
|
||||
}()
|
||||
|
||||
hdr, err := Parse(reader, time.Now().Add(5*time.Second))
|
||||
@@ -163,7 +163,7 @@ func TestParseV2Local(t *testing.T) {
|
||||
buf = append(buf, 0x20) // version 2, LOCAL command
|
||||
buf = append(buf, 0x00) // unspec family, unspec protocol
|
||||
buf = binary.BigEndian.AppendUint16(buf, 0)
|
||||
writer.Write(buf)
|
||||
_, _ = writer.Write(buf)
|
||||
}()
|
||||
|
||||
hdr, err := Parse(reader, time.Now().Add(5*time.Second))
|
||||
@@ -195,7 +195,7 @@ func TestParseV1Malformed(t *testing.T) {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
reader, writer := pipeWithDeadline(t)
|
||||
go func() {
|
||||
writer.Write([]byte(tt.data))
|
||||
_, _ = writer.Write([]byte(tt.data))
|
||||
}()
|
||||
_, err := Parse(reader, time.Now().Add(2*time.Second))
|
||||
if err == nil {
|
||||
@@ -211,7 +211,7 @@ func TestParseV2Malformed(t *testing.T) {
|
||||
go func() {
|
||||
bad := make([]byte, v2HeaderLen)
|
||||
bad[0] = v2Signature[0] // first byte matches but rest doesn't
|
||||
writer.Write(bad)
|
||||
_, _ = writer.Write(bad)
|
||||
}()
|
||||
_, err := Parse(reader, time.Now().Add(2*time.Second))
|
||||
if err == nil {
|
||||
@@ -227,7 +227,7 @@ func TestParseV2Malformed(t *testing.T) {
|
||||
buf = append(buf, 0x31) // version 3, PROXY command
|
||||
buf = append(buf, 0x11)
|
||||
buf = binary.BigEndian.AppendUint16(buf, 0)
|
||||
writer.Write(buf)
|
||||
_, _ = writer.Write(buf)
|
||||
}()
|
||||
_, err := Parse(reader, time.Now().Add(2*time.Second))
|
||||
if err == nil {
|
||||
@@ -244,8 +244,8 @@ func TestParseV2Malformed(t *testing.T) {
|
||||
buf = append(buf, 0x11) // AF_INET, STREAM
|
||||
buf = binary.BigEndian.AppendUint16(buf, 12)
|
||||
buf = append(buf, 1, 2, 3) // only 3 bytes, need 12
|
||||
writer.Write(buf)
|
||||
writer.Close()
|
||||
_, _ = writer.Write(buf)
|
||||
_ = writer.Close()
|
||||
}()
|
||||
_, err := Parse(reader, time.Now().Add(2*time.Second))
|
||||
if err == nil {
|
||||
@@ -261,7 +261,7 @@ func TestParseV2Malformed(t *testing.T) {
|
||||
buf = append(buf, 0x21) // version 2, PROXY
|
||||
buf = append(buf, 0x31) // AF_UNIX (3), STREAM
|
||||
buf = binary.BigEndian.AppendUint16(buf, 0)
|
||||
writer.Write(buf)
|
||||
_, _ = writer.Write(buf)
|
||||
}()
|
||||
_, err := Parse(reader, time.Now().Add(2*time.Second))
|
||||
if err == nil {
|
||||
@@ -332,7 +332,7 @@ func TestRoundTripV2IPv4(t *testing.T) {
|
||||
reader, writer := pipeWithDeadline(t)
|
||||
|
||||
go func() {
|
||||
WriteV2(writer, src, dst)
|
||||
_ = WriteV2(writer, src, dst)
|
||||
}()
|
||||
|
||||
hdr, err := Parse(reader, time.Now().Add(5*time.Second))
|
||||
@@ -361,7 +361,7 @@ func TestRoundTripV2IPv6(t *testing.T) {
|
||||
reader, writer := pipeWithDeadline(t)
|
||||
|
||||
go func() {
|
||||
WriteV2(writer, src, dst)
|
||||
_ = WriteV2(writer, src, dst)
|
||||
}()
|
||||
|
||||
hdr, err := Parse(reader, time.Now().Add(5*time.Second))
|
||||
@@ -380,7 +380,7 @@ func TestRoundTripV2IPv6(t *testing.T) {
|
||||
func TestParseGarbageFirstByte(t *testing.T) {
|
||||
reader, writer := pipeWithDeadline(t)
|
||||
go func() {
|
||||
writer.Write([]byte{0xFF, 0x00, 0x01})
|
||||
_, _ = writer.Write([]byte{0xFF, 0x00, 0x01})
|
||||
}()
|
||||
_, err := Parse(reader, time.Now().Add(2*time.Second))
|
||||
if err == nil {
|
||||
|
||||
Reference in New Issue
Block a user