Documentation ¶
Overview ¶
Package config deals with the configuration of the HTTP client.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // Version defines the version of the application. Version = "unknown" // Revision is the hash in VCS (git commit). Revision = "unknown" )
Functions ¶
This section is empty.
Types ¶
type Config ¶
Config stores client configuration of your FRITZ!Box
func (*Config) GetLoginResponseURL ¶
GetLoginResponseURL returns the URL that is queried for the login challenge
func (*Config) GetLoginURL ¶
GetLoginURL returns the URL that is queried for the login challenge
type Configurer ¶
type Configurer interface { Greet() Obtain(r io.Reader) (ExtendedConfig, error) }
Configurer provides functions to obtain user data from stdin and write the result to a file.
type Decode ¶
Decode uses an io.Reader, whose read bytes shall be marshaled into the passed interface. An error is returned if the operation did not work.
type ExtendedConfig ¶
type ExtendedConfig struct {
// contains filtered or unexported fields
}
ExtendedConfig contains the fritz core config along with other data (like config file location).
func (*ExtendedConfig) Write ¶
func (c *ExtendedConfig) Write() error
Write writes the user data to the configured file.
type Login ¶
type Login struct { LoginURL string `json:"loginURL" yaml:"url"` // The URL for the login negotiation. Username string `json:"username" yaml:"username"` // Username to log in. In user-agnostic setups this can be left empty. Password string `json:"password" yaml:"password"` // The password corresponding to the Username. }
Login wraps the login data to be used by the client.
type Net ¶
type Net struct { Protocol string `json:"protocol" yaml:"protocol"` // The protocol to use when communicating with the FRITZ!Box. "http" or "https". Host string `json:"host" yaml:"host"` // Host name or ip address of the FRITZ!Box. In most home setups "fritz.box" can be used. Other possible formats: "192.168.2.200". Port string `json:"port" yaml:"port"` // Port to use for the HTTP interface. Leave empty for default values. }
Net wraps the protocol://host:port data to contact the FRITZ!Box.
type Pki ¶
type Pki struct { SkipTLSVerify bool `json:"skipTlsVerify" yaml:"skip_tls_verify"` // Skip TLS verification when using https. CertificateFile string `json:"certificateFile" yaml:"certificate_file"` // Points to a certificate file (in PEM format) to verify the integrity of the FRITZ!Box. }
Pki wraps the client-side certificate handling.