axfr

package
v2.0.5 Latest Latest
Warning

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

Go to latest
Published: Jul 23, 2025 License: Apache-2.0 Imports: 10 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AXFRResult

type AXFRResult struct {
	Servers []AXFRServerResult `json:"servers,omitempty" groups:"short,normal,long,trace"`
}

type AXFRServerResult

type AXFRServerResult struct {
	Server  string `json:"server" groups:"short,normal,long,trace"`
	Status  zdns.Status
	Error   string        `json:"error,omitempty" groups:"short,normal,long,trace"`
	Records []interface{} `json:"records,omitempty" groups:"short,normal,long,trace"`
}

type AxfrLookupModule

type AxfrLookupModule struct {
	cli.BasicLookupModule
	NSModule      nslookup.NSLookupModule
	BlacklistPath string `long:"blacklist-file" description:"path to blacklist file" default:""`
	Blacklist     *safeblacklist.SafeBlacklist
	TransferFact  TransferFactory
}

func (*AxfrLookupModule) CLIInit

func (axfrMod *AxfrLookupModule) CLIInit(gc *cli.CLIConf, rc *zdns.ResolverConfig) error

CLIInit initializes the AxfrLookupModule with the given parameters, used to call AXFR from the command line

func (*AxfrLookupModule) GetDescription

func (axfrMod *AxfrLookupModule) GetDescription() string

func (*AxfrLookupModule) Help

func (axfrMod *AxfrLookupModule) Help() string

func (*AxfrLookupModule) Lookup

func (axfrMod *AxfrLookupModule) Lookup(ctx context.Context, resolver *zdns.Resolver, name string, nameServer *zdns.NameServer) (interface{}, zdns.Trace, zdns.Status, error)

func (*AxfrLookupModule) NewFlags

func (axfrMod *AxfrLookupModule) NewFlags() interface{}

func (*AxfrLookupModule) Validate

func (axfrMod *AxfrLookupModule) Validate(args []string) error

type RealTransferFactory

type RealTransferFactory struct{}

func (*RealTransferFactory) NewTransfer

func (f *RealTransferFactory) NewTransfer() TransferInterface

type TransferFactory

type TransferFactory interface {
	NewTransfer() TransferInterface
}

TransferFactory each AXFR module isn't thread-safe, so we need to create a new Transfer object for each AXFR lookup

type TransferInterface

type TransferInterface interface {
	In(m *dns.Msg, address string) (chan *dns.Envelope, error)
}

TransferInterface used to enable mocking for dns.In

Jump to

Keyboard shortcuts

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