geodata

package
v1.18.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 29, 2024 License: GPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	AutoUpdate     bool
	UpdateInterval int
)

Functions

func ClearCache

func ClearCache()

func GeoAutoUpdate added in v1.18.2

func GeoAutoUpdate() bool

func GeoUpdateInterval added in v1.18.2

func GeoUpdateInterval() int

func GeodataMode added in v1.18.2

func GeodataMode() bool

func InitASN added in v1.18.2

func InitASN() error

func InitGeoIP

func InitGeoIP() error

func InitGeoSite

func InitGeoSite() error

func LoadGeoIPMatcher

func LoadGeoIPMatcher(country string) (*router.GeoIPMatcher, int, error)

func LoadGeoSiteMatcher

func LoadGeoSiteMatcher(countryCode string) (router.DomainMatcher, int, error)

func LoaderName

func LoaderName() string

func RegisterGeoDataLoaderImplementationCreator

func RegisterGeoDataLoaderImplementationCreator(name string, loader func() LoaderImplementation)

func SetGeoAutoUpdate added in v1.18.2

func SetGeoAutoUpdate(newAutoUpdate bool)

func SetGeoUpdateInterval added in v1.18.2

func SetGeoUpdateInterval(newGeoUpdateInterval int)

func SetGeodataMode added in v1.18.2

func SetGeodataMode(newGeodataMode bool)

func SetLoader

func SetLoader(newLoader string)

func SetSiteMatcher added in v1.18.0

func SetSiteMatcher(newMatcher string)

func SiteMatcherName added in v1.18.0

func SiteMatcherName() string

func Verify

func Verify(name string) error

Types

type AttributeList

type AttributeList struct {
	// contains filtered or unexported fields
}

func (*AttributeList) IsEmpty

func (al *AttributeList) IsEmpty() bool

func (*AttributeList) Match

func (al *AttributeList) Match(domain *router.Domain) bool

type AttributeMatcher

type AttributeMatcher interface {
	Match(*router.Domain) bool
}

type BooleanMatcher

type BooleanMatcher string

func (BooleanMatcher) Match

func (m BooleanMatcher) Match(domain *router.Domain) bool

type Loader

type Loader interface {
	LoaderImplementation
	LoadGeoSite(list string) ([]*router.Domain, error)
	LoadGeoIP(country string) ([]*router.CIDR, error)
}

func GetGeoDataLoader

func GetGeoDataLoader(name string) (Loader, error)

type LoaderImplementation

type LoaderImplementation interface {
	LoadSiteByPath(filename, list string) ([]*router.Domain, error)
	LoadSiteByBytes(geositeBytes []byte, list string) ([]*router.Domain, error)
	LoadIPByPath(filename, country string) ([]*router.CIDR, error)
	LoadIPByBytes(geoipBytes []byte, country string) ([]*router.CIDR, error)
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL