ooni-probe-cli/internal/model
Simone Basso 01a513a496
refactor: DNSTransport I/Os DNS messages (#760)
This diff refactors the DNSTransport model to receive in input a DNSQuery and return in output a DNSResponse.

The design of DNSQuery and DNSResponse takes into account the use case of a transport using getaddrinfo, meaning that we don't need to serialize and deserialize messages when using getaddrinfo.

The current codebase does not use a getaddrinfo transport, but I wrote one such a transport in the Websteps Winter 2021 prototype (https://github.com/bassosimone/websteps-illustrated/).

The design conversation that lead to producing this diff is https://github.com/ooni/probe/issues/2099
2022-05-25 17:03:58 +02:00
..
mocks refactor: DNSTransport I/Os DNS messages (#760) 2022-05-25 17:03:58 +02:00
archival_test.go refactor: move i/netx/archival structs to i/model (#659) 2022-01-10 11:25:52 +01:00
archival.go tls_handshakes: add endpoint addresses to handshake list (#711) 2022-05-06 11:09:54 +02:00
doc.go refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
experiment_test.go refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
experiment.go fix(webconnectivity): pass TestHelpers to measurement (#736) 2022-05-18 15:46:08 +02:00
http.go cleanup: merge httpheader and httpfailure into model (#758) 2022-05-25 09:54:50 +02:00
keyvaluestore.go refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
logger_test.go fix(dnscheck): log "ok" rather than "<nil>" on success (#695) 2022-02-16 20:47:44 +01:00
logger.go fix(dnscheck): log "ok" rather than "<nil>" on success (#695) 2022-02-16 20:47:44 +01:00
measurement_test.go refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
measurement.go refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
netx.go refactor: DNSTransport I/Os DNS messages (#760) 2022-05-25 17:03:58 +02:00
ooapi.go fix(ooniprobe): use ooniprobe-cli-unattended for unattended runs (#714) 2022-04-29 13:41:09 +02:00
README.md refactor: interfaces and data types into the model package (#642) 2022-01-03 13:53:23 +01:00
runtype.go fix(ooniprobe): use ooniprobe-cli-unattended for unattended runs (#714) 2022-04-29 13:41:09 +02:00

Package github.com/ooni/probe-engine/model

Shared data structures and interfaces. We include in this package the most fundamental types. Use go doc to get more thorough documentation about what is inside this package and when to put a type inside this package.