4.2.0-rc.0

This commit is contained in:
wjqserver 2025-07-22 16:37:59 +08:00
parent 95dd34a456
commit d2d9ad1db7
12 changed files with 139 additions and 15 deletions

22
main.go
View file

@ -21,6 +21,7 @@ import (
"ghproxy/weakcache"
"github.com/fenthope/ikumi"
"github.com/fenthope/ipfilter"
"github.com/fenthope/reco"
"github.com/fenthope/record"
"github.com/infinite-iroha/touka"
@ -366,6 +367,27 @@ func main() {
Burst: cfg.RateLimit.Burst,
}))
}
if cfg.IPFilter.Enabled {
var err error
ipAllowList, ipBlockList, err := auth.ReadIPFilterList(cfg)
if err != nil {
fmt.Printf("Failed to read IP filter list: %v\n", err)
os.Exit(1)
}
ipBlockFilter, err := ipfilter.NewIPFilter(ipfilter.IPFilterConfig{
EnableAllowList: cfg.IPFilter.EnableAllowList,
EnableBlockList: cfg.IPFilter.EnableBlockList,
AllowList: ipAllowList,
BlockList: ipBlockList,
})
if err != nil {
fmt.Printf("Failed to initialize IP filter: %v\n", err)
os.Exit(1)
} else {
r.Use(ipBlockFilter)
}
}
setupApi(cfg, r, version)
setupPages(cfg, r)
r.SetRedirectTrailingSlash(false)