No description
  • Go 97.6%
  • Python 1.2%
  • Shell 0.9%
  • Makefile 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Arturo Filastò ecf3370f53 Implement result listing from CLI
Change the schema to include ASN and Network Name in the results table
2018-05-03 18:40:52 +02:00
cmd/ooni Rename gooni to probe-cli 2018-05-03 14:59:55 +02:00
config Add functions to handling migration from legacy OONI Probe 2018-02-12 12:18:14 +02:00
data Implement result listing from CLI 2018-05-03 18:40:52 +02:00
internal Implement result listing from CLI 2018-05-03 18:40:52 +02:00
nettests Rename gooni to probe-cli 2018-05-03 14:59:55 +02:00
utils Move all directory related functionality into paths utils 2018-03-27 15:09:34 +02:00
.gitignore Add macos garbage to .gitignore 2018-03-30 15:06:18 +02:00
Gopkg.lock Get web_connectivity to work with dynamic URL fetching 2018-03-23 12:41:06 +01:00
Gopkg.toml Implement geoip related functionality in gooni 2018-03-22 18:28:38 +01:00
Makefile Get web_connectivity to work with dynamic URL fetching 2018-03-23 12:41:06 +01:00
ooni.go Rename gooni to probe-cli 2018-05-03 14:59:55 +02:00
Readme.md Remove item from todo 2018-03-20 14:19:45 +01:00

gooni

An attempt at writing OONI Probe in golang.

This is heavy work in progress.

Development setup

This project uses dep with the vendor/ dir in .gitignore.

Once you have dep installed, run:

dep ensure

Next, you'll need a recent version of Measurement Kit. As this is a work in progress, you'll likely need to build a version of the library from source.

You should then be able to build a ooni binary by running:

make build

If you want to build gooni against a development version of MK without installing it to your system, you can explicitly specify the path where MK was built as

CGO_LDFLAGS="-L/path/to/measurement-kit/.libs/" CGO_CFLAGS="-I/path/to/measurement-kit/include" make build

Todo

  • Add support for outputing structured logging messages, while tests are running, to be consumed by the desktop app

  • Add support for the missing tests, namely:

  • HTTP Invalid Request Line
  • HTTP Header Field Manipulation
  • Facebook Messenger
  • Telegram
  • WhatsApp
  • WebConnectivity
  • Fix issue with the informed consent being bypassed on first run

  • Finish the config file implementation

  • Add support for listing results in the CLI