Categorygithub.com/getlantern/fronted
modulepackage
0.0.0-20250219040712-771dbc843542
Repository: https://github.com/getlantern/fronted.git
Documentation: pkg.go.dev

# README

fronted Coverage Status GoDoc

To install:

go get github.com/getlantern/fronted

For docs:

godoc github.com/getlantern/fronted

See ddftool for more details on how to generate and tests fronting domains for the supported CDNs.

[!NOTE] Since the masquerade domains and IP addresses can change, tests might fail and they need to be updated. You can basically ping some of the masquerade domains (from default_masquerade.go) and update the IPs accordingly.

To generate an updated domain fronting configuration file, just run:

./updateFrontedConfig.bash

# Functions

No description provided by the author
ConfigureForTest configures fronted for testing using default masquerades and certificate authorities.
No description provided by the author
NewFronted creates a new Fronted instance with the given cache file.
Create a Provider with the given details.
Create a new ResponseValidator that rejects any response with a given list of http status codes.
Vet vets the specified Masquerade, verifying certificate using the given CertPool.
WithCacheFile sets the file to use for caching domains that have successfully connected.
WithConfigURL sets the URL from which to continually fetch updated domain fronting configurations.
WithCountryCode sets the country code to use for fronting, which is particularly relevant for the SNI to use when connecting to the fronting domain.
WithHTTPClient sets the HTTP client to use for fetching the fronted configuration.
No description provided by the author

# Constants

number of worker goroutines for verifying.

# Variables

No description provided by the author
No description provided by the author
No description provided by the author

# Structs

CA represents a certificate authority.
Masquerade contains the data for a single masquerade host, including the domain and the root CA.
A Direct fronting provider configuration.
No description provided by the author

# Interfaces

Create a masquerade interface for easier testing.
Interface for sending HTTP traffic over domain fronting.

# Type aliases

Option is a functional option type that allows us to configure the fronted client.
A validator for fronted responses.