Documentation ¶
Overview ¶
Package sniblocking contains the SNI blocking network experiment.
See https://github.com/ooni/spec/blob/master/nettests/ts-024-sni-blocking.md.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewExperimentMeasurer ¶
func NewExperimentMeasurer(config Config) model.ExperimentMeasurer
NewExperimentMeasurer creates a new ExperimentMeasurer.
Types ¶
type Config ¶
type Config struct { // ControlSNI is the SNI to be used for the control. ControlSNI string // TestHelperAddress is the address of the test helper. TestHelperAddress string }
Config contains the experiment config.
type Measurer ¶
type Measurer struct {
// contains filtered or unexported fields
}
Measurer performs the measurement.
func (*Measurer) ExperimentName ¶
ExperimentName implements ExperimentMeasurer.ExperiExperimentName.
func (*Measurer) ExperimentVersion ¶
ExperimentVersion implements ExperimentMeasurer.ExperimentVersion.
func (*Measurer) GetSummaryKeys ¶
func (m *Measurer) GetSummaryKeys(measurement *model.Measurement) (interface{}, error)
GetSummaryKeys implements model.ExperimentMeasurer.GetSummaryKeys.
func (*Measurer) Run ¶
func (m *Measurer) Run( ctx context.Context, sess model.ExperimentSession, measurement *model.Measurement, callbacks model.ExperimentCallbacks, ) error
Run implements ExperimentMeasurer.Run.
type Subresult ¶
type Subresult struct { urlgetter.TestKeys Cached bool `json:"-"` SNI string `json:"sni"` THAddress string `json:"th_address"` }
Subresult contains the keys of a single measurement that targets either the target or the control.
type SummaryKeys ¶
type SummaryKeys struct {
IsAnomaly bool `json:"-"`
}
SummaryKeys contains summary keys for this experiment.
Note that this structure is part of the ABI contract with ooniprobe therefore we should be careful when changing it.