From 47a2a1d29a6191c3ef2715e278a1ec440d04add2 Mon Sep 17 00:00:00 2001 From: SunBK201 Date: Wed, 5 Nov 2025 21:37:04 +0800 Subject: [PATCH] refactor: rename UAPattern to UARegex for consistency --- src/internal/config/config.go | 8 ++++---- src/internal/log/log.go | 2 +- src/internal/rewrite/rewriter.go | 4 ++-- src/internal/rewrite/rewriter_test.go | 6 +++--- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/internal/config/config.go b/src/internal/config/config.go index 4317b4a..e896c83 100644 --- a/src/internal/config/config.go +++ b/src/internal/config/config.go @@ -20,7 +20,7 @@ type Config struct { ListenAddr string LogLevel string PayloadUA string - UAPattern string + UARegex string EnablePartialReplace bool } @@ -31,7 +31,7 @@ func Parse() (*Config, bool) { port int loglevel string payloadUA string - uaPattern string + uaRegx string partial bool showVer bool ) @@ -40,7 +40,7 @@ func Parse() (*Config, bool) { flag.StringVar(&bindAddr, "b", "127.0.0.1", "bind address (default: 127.0.0.1)") flag.IntVar(&port, "p", 1080, "port") flag.StringVar(&payloadUA, "f", "FFF", "User-Agent") - flag.StringVar(&uaPattern, "r", "", "UA-Pattern") + flag.StringVar(&uaRegx, "r", "", "UA-Pattern") flag.BoolVar(&partial, "s", false, "Enable Regex Partial Replace") flag.StringVar(&loglevel, "l", "info", "Log level (default: info)") flag.BoolVar(&showVer, "v", false, "show version") @@ -53,7 +53,7 @@ func Parse() (*Config, bool) { ListenAddr: fmt.Sprintf("%s:%d", bindAddr, port), LogLevel: loglevel, PayloadUA: payloadUA, - UAPattern: uaPattern, + UARegex: uaRegx, EnablePartialReplace: partial, } if serverMode == ServerModeRedirect { diff --git a/src/internal/log/log.go b/src/internal/log/log.go index b83f33d..522ff55 100644 --- a/src/internal/log/log.go +++ b/src/internal/log/log.go @@ -73,7 +73,7 @@ func LogHeader(version string, cfg *config.Config) { logrus.Info("Server Mode: " + cfg.ServerMode) logrus.Infof("Listen on %s", cfg.ListenAddr) logrus.Infof("User-Agent: %s", cfg.PayloadUA) - logrus.Infof("User-Agent Regex: '%s'", cfg.UAPattern) + logrus.Infof("User-Agent Regex: '%s'", cfg.UARegex) logrus.Infof("Partial Replace: %v", cfg.EnablePartialReplace) logrus.Infof("Log level: %s", cfg.LogLevel) } diff --git a/src/internal/rewrite/rewriter.go b/src/internal/rewrite/rewriter.go index 136b039..1efbcf1 100644 --- a/src/internal/rewrite/rewriter.go +++ b/src/internal/rewrite/rewriter.go @@ -35,7 +35,7 @@ type Rewriter struct { // New constructs a Rewriter from config. Compiles regex and allocates cache. func New(cfg *config.Config) (*Rewriter, error) { // UA pattern is compiled with case-insensitive prefix (?i) - pattern := "(?i)" + cfg.UAPattern + pattern := "(?i)" + cfg.UARegex uaRegex, err := regexp2.Compile(pattern, regexp2.None) if err != nil { return nil, err @@ -43,7 +43,7 @@ func New(cfg *config.Config) (*Rewriter, error) { return &Rewriter{ payloadUA: cfg.PayloadUA, - pattern: cfg.UAPattern, + pattern: cfg.UARegex, partialReplace: cfg.EnablePartialReplace, uaRegex: uaRegex, Cache: expirable.NewLRU[string, struct{}](1024, nil, 30*time.Minute), diff --git a/src/internal/rewrite/rewriter_test.go b/src/internal/rewrite/rewriter_test.go index 50d3962..d96ab78 100644 --- a/src/internal/rewrite/rewriter_test.go +++ b/src/internal/rewrite/rewriter_test.go @@ -26,7 +26,7 @@ func (m *mockConn) SetWriteDeadline(t time.Time) error { return nil } func newTestRewriter(t *testing.T) *Rewriter { cfg := &config.Config{ - UAPattern: "TestUA", + UARegex: "TestUA", PayloadUA: "MockUA/1.0", EnablePartialReplace: false, } @@ -37,14 +37,14 @@ func newTestRewriter(t *testing.T) *Rewriter { func TestNewRewriter(t *testing.T) { cfg := &config.Config{ - UAPattern: "TestUA", + UARegex: "TestUA", PayloadUA: "FFF0", EnablePartialReplace: false, } rewriter, err := New(cfg) assert.NoError(t, err) assert.Equal(t, cfg.PayloadUA, rewriter.payloadUA) - assert.Equal(t, cfg.UAPattern, rewriter.pattern) + assert.Equal(t, cfg.UARegex, rewriter.pattern) assert.Equal(t, cfg.EnablePartialReplace, rewriter.partialReplace) assert.NotNil(t, rewriter.uaRegex) assert.NotNil(t, rewriter.Cache)