auth.mx raw

   1  package config
   2  
   3  // AuthCfg groups access control, authentication, mute, rate-limit, and IP
   4  // policy fields. Pass this slice to domain constructors that only need auth
   5  // configuration (e.g. access control checks, ACL services).
   6  type AuthCfg struct {
   7  	AuthRequired    bool
   8  	AuthToWrite     bool
   9  	PrivilegedOpen  bool
  10  	NIP70Enforce    bool
  11  	MarmotOpen      bool
  12  	NIP46BypassAuth bool
  13  	ACLMode         string
  14  	MuteBlacklist   string
  15  	Admins          []string
  16  	Owners          []string
  17  	FreeWriteLimit  int
  18  	FreeWriteWindow int
  19  	IPWhitelist     []string
  20  	IPBlacklist     []string
  21  	FollowListFreqSec     int
  22  	FollowsThrottle       bool
  23  	FollowsThrottleIncrMs int
  24  	FollowsThrottleMaxMs  int
  25  	SocialThrottleD2IncrMs       int
  26  	SocialThrottleD2MaxMs        int
  27  	SocialThrottleD3IncrMs       int
  28  	SocialThrottleD3MaxMs        int
  29  	SocialThrottleOutsiderIncrMs int
  30  	SocialThrottleOutsiderMaxMs  int
  31  	SocialWoTMaxDepth            int
  32  	SocialWoTRefreshSec          int
  33  	GrapeVineEnabled         bool
  34  	GrapeVineMaxDepth        int
  35  	GrapeVineMaxCycles       int
  36  	GrapeVineAttenuation     float64
  37  	GrapeVineRigor           float64
  38  	GrapeVineFollowConf      float64
  39  	GrapeVineObservers       []string
  40  	GrapeVineRefreshSec      int
  41  	GrapeVineAutoWhitelist   bool
  42  	GrapeVineWhitelistThresh float64
  43  	GrapeVineWhitelistRefSec int
  44  }
  45