Skip to content

Commit

Permalink
Use logger instead of fmt.Println to log socks5 parsing errors
Browse files Browse the repository at this point in the history
  • Loading branch information
patrickpichler committed Jul 22, 2024
1 parent bfcf8bf commit 5a34401
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 6 deletions.
2 changes: 1 addition & 1 deletion pkg/ebpftracer/signature/signature_rules.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ func DefaultSignatures(log *logging.Logger, cfg DefaultSignatureConfig) ([]Signa
}

if cfg.SOCKS5DetectedSignatureEnabled {
if s, err := NewSOCKS5DetectedSignature(cfg.SOCKS5DetectedSignatureConfig); err != nil {
if s, err := NewSOCKS5DetectedSignature(log, cfg.SOCKS5DetectedSignatureConfig); err != nil {
return nil, err
} else {
result = append(result, s)
Expand Down
9 changes: 5 additions & 4 deletions pkg/ebpftracer/signature/socks5_detected.go
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
package signature

import (
"fmt"

v1 "github.com/castai/kvisor/api/v1/runtime"
"github.com/castai/kvisor/pkg/ebpftracer/events"
"github.com/castai/kvisor/pkg/ebpftracer/types"
"github.com/castai/kvisor/pkg/logging"
"github.com/castai/kvisor/pkg/net/packet"
"github.com/castai/kvisor/pkg/proc"
"github.com/elastic/go-freelru"
Expand All @@ -30,10 +29,11 @@ type SOCKS5DetectionSignatureConfig struct {
}

type SOCKS5Detected struct {
log *logging.Logger
detectionStateCache freelru.Cache[proc.PID, SOCKS5DetectionState]
}

func NewSOCKS5DetectedSignature(cfg SOCKS5DetectionSignatureConfig) (Signature, error) {
func NewSOCKS5DetectedSignature(log *logging.Logger, cfg SOCKS5DetectionSignatureConfig) (Signature, error) {
var cacheSize uint32 = DefaultSOCKS5SignatureCacheSize
if cfg.CacheSize > 0 {
cacheSize = cfg.CacheSize
Expand All @@ -47,6 +47,7 @@ func NewSOCKS5DetectedSignature(cfg SOCKS5DetectionSignatureConfig) (Signature,
}

return &SOCKS5Detected{
log: log,
detectionStateCache: cache,
}, nil
}
Expand Down Expand Up @@ -120,7 +121,7 @@ func (s *SOCKS5Detected) OnEvent(event *types.Event) *v1.SignatureFinding {

payload, _, err := packet.ExtractPayload(networkData)
if err != nil {
fmt.Println(err)
s.log.Warnf("error parsing socks5 payload: %v", err)
return nil
}

Expand Down
5 changes: 4 additions & 1 deletion pkg/ebpftracer/signature/socks5_detected_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"github.com/castai/kvisor/pkg/containers"
"github.com/castai/kvisor/pkg/ebpftracer/events"
"github.com/castai/kvisor/pkg/ebpftracer/types"
"github.com/castai/kvisor/pkg/logging"
"github.com/stretchr/testify/require"
)

Expand Down Expand Up @@ -340,11 +341,13 @@ func TestSOCKS5DetectedSignature(t *testing.T) {
},
}

log := logging.New(&logging.Config{})

for _, test := range testCases {
t.Run(test.title, func(t *testing.T) {
r := require.New(t)

signature, err := NewSOCKS5DetectedSignature(SOCKS5DetectionSignatureConfig{})
signature, err := NewSOCKS5DetectedSignature(log, SOCKS5DetectionSignatureConfig{})
r.NoError(err)

for i, e := range test.events {
Expand Down

0 comments on commit 5a34401

Please sign in to comment.