diff options
Diffstat (limited to 'internal/config')
| -rw-r--r-- | internal/config/config.go | 1 | ||||
| -rw-r--r-- | internal/config/defaults.go | 1 | ||||
| -rw-r--r-- | internal/config/helpers.gen.go | 25 |
3 files changed, 27 insertions, 0 deletions
diff --git a/internal/config/config.go b/internal/config/config.go index 07676627d..88083d491 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -175,6 +175,7 @@ type Configuration struct { AdvancedSenderMultiplier int `name:"advanced-sender-multiplier" usage:"Multiplier to use per cpu for batching outgoing fedi messages. 0 or less turns batching off (not recommended)."` AdvancedCSPExtraURIs []string `name:"advanced-csp-extra-uris" usage:"Additional URIs to allow when building content-security-policy for media + images."` AdvancedHeaderFilterMode string `name:"advanced-header-filter-mode" usage:"Set incoming request header filtering mode."` + AdvancedScraperDeterrence bool `name:"advanced-scraper-deterrence" usage:"Enable proof-of-work based scraper deterrence on profile / status pages"` // HTTPClient configuration vars. HTTPClient HTTPClientConfiguration `name:"http-client"` diff --git a/internal/config/defaults.go b/internal/config/defaults.go index f07aeb41b..4ef183aa6 100644 --- a/internal/config/defaults.go +++ b/internal/config/defaults.go @@ -142,6 +142,7 @@ var Defaults = Configuration{ AdvancedSenderMultiplier: 2, // 2 senders per CPU AdvancedCSPExtraURIs: []string{}, AdvancedHeaderFilterMode: RequestHeaderFilterModeDisabled, + AdvancedScraperDeterrence: false, Cache: CacheConfiguration{ // Rough memory target that the total diff --git a/internal/config/helpers.gen.go b/internal/config/helpers.gen.go index 56eb0e3e8..8fc4475b7 100644 --- a/internal/config/helpers.gen.go +++ b/internal/config/helpers.gen.go @@ -2906,6 +2906,31 @@ func GetAdvancedHeaderFilterMode() string { return global.GetAdvancedHeaderFilte // SetAdvancedHeaderFilterMode safely sets the value for global configuration 'AdvancedHeaderFilterMode' field func SetAdvancedHeaderFilterMode(v string) { global.SetAdvancedHeaderFilterMode(v) } +// GetAdvancedScraperDeterrence safely fetches the Configuration value for state's 'AdvancedScraperDeterrence' field +func (st *ConfigState) GetAdvancedScraperDeterrence() (v bool) { + st.mutex.RLock() + v = st.config.AdvancedScraperDeterrence + st.mutex.RUnlock() + return +} + +// SetAdvancedScraperDeterrence safely sets the Configuration value for state's 'AdvancedScraperDeterrence' field +func (st *ConfigState) SetAdvancedScraperDeterrence(v bool) { + st.mutex.Lock() + defer st.mutex.Unlock() + st.config.AdvancedScraperDeterrence = v + st.reloadToViper() +} + +// AdvancedScraperDeterrenceFlag returns the flag name for the 'AdvancedScraperDeterrence' field +func AdvancedScraperDeterrenceFlag() string { return "advanced-scraper-deterrence" } + +// GetAdvancedScraperDeterrence safely fetches the value for global configuration 'AdvancedScraperDeterrence' field +func GetAdvancedScraperDeterrence() bool { return global.GetAdvancedScraperDeterrence() } + +// SetAdvancedScraperDeterrence safely sets the value for global configuration 'AdvancedScraperDeterrence' field +func SetAdvancedScraperDeterrence(v bool) { global.SetAdvancedScraperDeterrence(v) } + // GetHTTPClientAllowIPs safely fetches the Configuration value for state's 'HTTPClient.AllowIPs' field func (st *ConfigState) GetHTTPClientAllowIPs() (v []string) { st.mutex.RLock() |
