Go to file
2018-07-11 18:06:27 +02:00
cmd/ooni Add support for crash reporting via sentry and change the send_crash_reports key 2018-06-29 15:29:05 +02:00
config Add support for crash reporting via sentry and change the send_crash_reports key 2018-06-29 15:29:05 +02:00
data Add support for crash reporting via sentry and change the send_crash_reports key 2018-06-29 15:29:05 +02:00
internal Fix bug in version info 2018-07-11 18:06:13 +02:00
nettests Make some improvements to the homedir ghetto hax 2018-07-09 19:17:59 +02:00
utils Create config file when it's missing 2018-06-25 17:49:17 +02:00
.gitignore Add macos garbage to .gitignore 2018-03-30 15:06:18 +02:00
Gopkg.lock Fix bug in version info 2018-07-11 18:06:13 +02:00
Gopkg.toml Add sentry for sending crash logs 2018-06-29 15:10:19 +02:00
LICENSE.md Add LICENSE.md 2018-07-11 18:06:27 +02:00
Makefile Update update-mk-libs make target 2018-05-31 08:00:42 +02:00
ooni.go Create config file when it's missing 2018-06-25 17:49:17 +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