dns

package
v0.0.0-...-eff5e3f Latest Latest
Warning

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

Go to latest
Published: Nov 19, 2019 License: MPL-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DnsMessage

type DnsMessage struct {
	Domain, Token, KeyAuth string
}

Message used to ferry the provider challenges to the DNS server.

type DnsProvider

type DnsProvider struct {
	RecordHandler chan DnsMessage
}

func NewDnsProvider

func NewDnsProvider(recordHandler chan DnsMessage) *DnsProvider

func (*DnsProvider) CleanUp

func (d *DnsProvider) CleanUp(domain, token, keyAuth string) error

func (*DnsProvider) Present

func (d *DnsProvider) Present(domain, token, keyAuth string) error

type IntegrationServer

type IntegrationServer struct {
	// RecordsHandler that can be queried against.
	TestRecords map[string]string

	// Records received and available for downstream processing.
	Records []DnsMessage

	// Channel for receiving records. Mostly used for internal purposes.
	RecordsHandler chan DnsMessage

	// Options on how the DNS instance is running.
	Opts *IntegrationServerOpts

	// The base DNS instance.
	Server *dns.Server

	// Stop the DNS Server
	Stopper chan struct{}
	// contains filtered or unexported fields
}

func NewIntegrationServer

func NewIntegrationServer(opts *IntegrationServerOpts) *IntegrationServer

Generate a new DNS integration server configuration.

func (*IntegrationServer) PreCheck

func (is *IntegrationServer) PreCheck(domain, fqdn, value string, check dns01.PreCheckFunc) (b bool, e error)

func (*IntegrationServer) Start

func (is *IntegrationServer) Start()

Start the DNS integration.

type IntegrationServerOpts

type IntegrationServerOpts struct {
	// Set to true if you want records automatically generated by Gravel to be added to the DNS server for automatic
	// verification.
	AutoUpdateAuthZRecords bool

	// Set to false if records being added to the server are already encrypted. Defaults to false.
	AlreadyHashed bool

	// The records handler so the DNS server can interact update records.
	RecordHandler chan DnsMessage

	// The base domain you want to test with. For example, if you are testing with `test.service`, your base domain
	// would be "service"
	BaseDomain string

	// Reserved:
	//   53: localhost
	//   5353: mDNS on macos
	// Defaults to 5454 due to lack of setcap on macos.
	DnsPort int

	// Logger
	Logger *logrus.Logger

	// DNS Challenge provider
	Provider challenge.Provider
}

Helpful testing options.

func NewDefaultIntegrationServerOpts

func NewDefaultIntegrationServerOpts() *IntegrationServerOpts

Jump to

Keyboard shortcuts

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