mirror of
https://github.com/SunBK201/UA3F.git
synced 2025-12-16 16:57:08 +00:00
refactor: rename UAPattern to UARegex for consistency
This commit is contained in:
parent
f6f693ad11
commit
47a2a1d29a
@ -20,7 +20,7 @@ type Config struct {
|
|||||||
ListenAddr string
|
ListenAddr string
|
||||||
LogLevel string
|
LogLevel string
|
||||||
PayloadUA string
|
PayloadUA string
|
||||||
UAPattern string
|
UARegex string
|
||||||
EnablePartialReplace bool
|
EnablePartialReplace bool
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -31,7 +31,7 @@ func Parse() (*Config, bool) {
|
|||||||
port int
|
port int
|
||||||
loglevel string
|
loglevel string
|
||||||
payloadUA string
|
payloadUA string
|
||||||
uaPattern string
|
uaRegx string
|
||||||
partial bool
|
partial bool
|
||||||
showVer 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.StringVar(&bindAddr, "b", "127.0.0.1", "bind address (default: 127.0.0.1)")
|
||||||
flag.IntVar(&port, "p", 1080, "port")
|
flag.IntVar(&port, "p", 1080, "port")
|
||||||
flag.StringVar(&payloadUA, "f", "FFF", "User-Agent")
|
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.BoolVar(&partial, "s", false, "Enable Regex Partial Replace")
|
||||||
flag.StringVar(&loglevel, "l", "info", "Log level (default: info)")
|
flag.StringVar(&loglevel, "l", "info", "Log level (default: info)")
|
||||||
flag.BoolVar(&showVer, "v", false, "show version")
|
flag.BoolVar(&showVer, "v", false, "show version")
|
||||||
@ -53,7 +53,7 @@ func Parse() (*Config, bool) {
|
|||||||
ListenAddr: fmt.Sprintf("%s:%d", bindAddr, port),
|
ListenAddr: fmt.Sprintf("%s:%d", bindAddr, port),
|
||||||
LogLevel: loglevel,
|
LogLevel: loglevel,
|
||||||
PayloadUA: payloadUA,
|
PayloadUA: payloadUA,
|
||||||
UAPattern: uaPattern,
|
UARegex: uaRegx,
|
||||||
EnablePartialReplace: partial,
|
EnablePartialReplace: partial,
|
||||||
}
|
}
|
||||||
if serverMode == ServerModeRedirect {
|
if serverMode == ServerModeRedirect {
|
||||||
|
|||||||
@ -73,7 +73,7 @@ func LogHeader(version string, cfg *config.Config) {
|
|||||||
logrus.Info("Server Mode: " + cfg.ServerMode)
|
logrus.Info("Server Mode: " + cfg.ServerMode)
|
||||||
logrus.Infof("Listen on %s", cfg.ListenAddr)
|
logrus.Infof("Listen on %s", cfg.ListenAddr)
|
||||||
logrus.Infof("User-Agent: %s", cfg.PayloadUA)
|
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("Partial Replace: %v", cfg.EnablePartialReplace)
|
||||||
logrus.Infof("Log level: %s", cfg.LogLevel)
|
logrus.Infof("Log level: %s", cfg.LogLevel)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,7 +35,7 @@ type Rewriter struct {
|
|||||||
// New constructs a Rewriter from config. Compiles regex and allocates cache.
|
// New constructs a Rewriter from config. Compiles regex and allocates cache.
|
||||||
func New(cfg *config.Config) (*Rewriter, error) {
|
func New(cfg *config.Config) (*Rewriter, error) {
|
||||||
// UA pattern is compiled with case-insensitive prefix (?i)
|
// UA pattern is compiled with case-insensitive prefix (?i)
|
||||||
pattern := "(?i)" + cfg.UAPattern
|
pattern := "(?i)" + cfg.UARegex
|
||||||
uaRegex, err := regexp2.Compile(pattern, regexp2.None)
|
uaRegex, err := regexp2.Compile(pattern, regexp2.None)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@ -43,7 +43,7 @@ func New(cfg *config.Config) (*Rewriter, error) {
|
|||||||
|
|
||||||
return &Rewriter{
|
return &Rewriter{
|
||||||
payloadUA: cfg.PayloadUA,
|
payloadUA: cfg.PayloadUA,
|
||||||
pattern: cfg.UAPattern,
|
pattern: cfg.UARegex,
|
||||||
partialReplace: cfg.EnablePartialReplace,
|
partialReplace: cfg.EnablePartialReplace,
|
||||||
uaRegex: uaRegex,
|
uaRegex: uaRegex,
|
||||||
Cache: expirable.NewLRU[string, struct{}](1024, nil, 30*time.Minute),
|
Cache: expirable.NewLRU[string, struct{}](1024, nil, 30*time.Minute),
|
||||||
|
|||||||
@ -26,7 +26,7 @@ func (m *mockConn) SetWriteDeadline(t time.Time) error { return nil }
|
|||||||
|
|
||||||
func newTestRewriter(t *testing.T) *Rewriter {
|
func newTestRewriter(t *testing.T) *Rewriter {
|
||||||
cfg := &config.Config{
|
cfg := &config.Config{
|
||||||
UAPattern: "TestUA",
|
UARegex: "TestUA",
|
||||||
PayloadUA: "MockUA/1.0",
|
PayloadUA: "MockUA/1.0",
|
||||||
EnablePartialReplace: false,
|
EnablePartialReplace: false,
|
||||||
}
|
}
|
||||||
@ -37,14 +37,14 @@ func newTestRewriter(t *testing.T) *Rewriter {
|
|||||||
|
|
||||||
func TestNewRewriter(t *testing.T) {
|
func TestNewRewriter(t *testing.T) {
|
||||||
cfg := &config.Config{
|
cfg := &config.Config{
|
||||||
UAPattern: "TestUA",
|
UARegex: "TestUA",
|
||||||
PayloadUA: "FFF0",
|
PayloadUA: "FFF0",
|
||||||
EnablePartialReplace: false,
|
EnablePartialReplace: false,
|
||||||
}
|
}
|
||||||
rewriter, err := New(cfg)
|
rewriter, err := New(cfg)
|
||||||
assert.NoError(t, err)
|
assert.NoError(t, err)
|
||||||
assert.Equal(t, cfg.PayloadUA, rewriter.payloadUA)
|
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.Equal(t, cfg.EnablePartialReplace, rewriter.partialReplace)
|
||||||
assert.NotNil(t, rewriter.uaRegex)
|
assert.NotNil(t, rewriter.uaRegex)
|
||||||
assert.NotNil(t, rewriter.Cache)
|
assert.NotNil(t, rewriter.Cache)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user