home

package
v0.107.49 Latest Latest
Warning

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

Go to latest
Published: May 21, 2024 License: GPL-3.0 Imports: 84 Imported by: 0

Documentation

Overview

Package home contains AdGuard Home's HTTP API methods.

Index

Constants

View Source
const MaxFileSize = 1024 * 1024

MaxFileSize is a maximum file length in bytes.

View Source
const PasswordMinRunes = 8

PasswordMinRunes is the minimum length of user's password in runes.

Variables

View Source
var Context homeContext

Context - a global context object

View Source
var GLMode bool

GLMode - enable GL-Inet compatibility mode

Functions

func Main

func Main(clientBuildFS fs.FS)

Main is the entry point

func RegisterAuthHandlers

func RegisterAuthHandlers()

RegisterAuthHandlers - register handlers

Types

type Auth

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

Auth is the global authentication object.

func InitAuth

func InitAuth(
	dbFilename string,
	users []webUser,
	sessionTTL uint32,
	rateLimiter *authRateLimiter,
	trustedProxies netutil.SubnetSet,
) (a *Auth)

InitAuth initializes the global authentication object.

func (*Auth) Close

func (a *Auth) Close()

Close closes the authentication database.

type BlockedClientChecker added in v0.107.49

type BlockedClientChecker interface {
	IsBlockedClient(ip netip.Addr, clientID string) (blocked bool, rule string)
}

BlockedClientChecker checks if a client is blocked by the current access settings.

type DHCP added in v0.107.33

type DHCP interface {
	// Leases returns all the DHCP leases.
	Leases() (leases []*dhcpsvc.Lease)

	// HostByIP returns the hostname of the DHCP client with the given IP
	// address.  The address will be netip.Addr{} if there is no such client,
	// due to an assumption that a DHCP client must always have a hostname.
	HostByIP(ip netip.Addr) (host string)

	// MACByIP returns the MAC address for the given IP address leased.  It
	// returns nil if there is no such client, due to an assumption that a DHCP
	// client must always have a MAC address.
	MACByIP(ip netip.Addr) (mac net.HardwareAddr)
}

DHCP is an interface for accessing DHCP lease data the [clientsContainer] needs.

type Theme added in v0.107.22

type Theme string

Theme is an enum of all allowed UI themes.

const (
	ThemeAuto  Theme = "auto"
	ThemeLight Theme = "light"
	ThemeDark  Theme = "dark"
)

Allowed Theme values.

Keep in sync with client/src/helpers/constants.js.

func (*Theme) UnmarshalText added in v0.107.22

func (t *Theme) UnmarshalText(b []byte) (err error)

UnmarshalText implements encoding.TextUnmarshaler interface for *Theme.

Jump to

Keyboard shortcuts

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