Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/ooni/netem
Network emulation for writing integration tests in Go
https://github.com/ooni/netem
Part of https://github.com/ooni/probe/issues/2669
608dcbcd82b8eabcb675d482e2ca83cf3a41c27d authored 11 months ago by Simone Basso <[email protected]>
We need this feature to write test for StreamAllContext, which in turn
is one of the TODOs refe...
Part of https://github.com/ooni/probe/issues/2556
3cc1ea5e942c314859d1338a12505533cdb107b8 authored about 1 year ago by Simone Basso <[email protected]>
The previous martian code used http/1.1 by default. Now I know why: if
using http2 we cannot hi...
It turns out we can further simplify the ooni/probe-cli implementation
by adding more methods o...
The UNetStack and CA structures have similar functionality exposed
through a different interfac...
The refactoring at
https://github.com/ooni/netem/commit/45a7aa975636a8de271e07904ccd076a953618b...
Before writing this diff, netem automatically generated the correct cert
on the fly based on th...
It should not happen because GVisor should route the traffic to itself
but it's better to be su...
Required to write some tests for
https://github.com/ooni/probe/issues/2531
Also part of https://github.com/ooni/probe/issues/1803
85d962536ff3bc1ca376d97a891463f3b0c78902 authored over 1 year ago by Simone Basso <[email protected]>
To move forward with https://github.com/ooni/probe/issues/1803, I want
to generate expired cert...
This diff implements the missing DPI rules required to complete
https://github.com/ooni/probe/i...
Required to move forward with https://github.com/ooni/probe/issues/1803
4889f9501fcfb56e7e5be938e9b7b436ed42391a authored over 1 year ago by Simone Basso <[email protected]>Part of https://github.com/ooni/probe/issues/1803
42ca83ac5cbc4b90808a94965da6009250505ec8 authored over 1 year ago by Simone Basso <[email protected]>Useful to move forward with https://github.com/ooni/probe/issues/1803
c9f1063f21d9d533fdd85222e4f075e46b936a3d authored over 1 year ago by Simone Basso <[email protected]>Part of https://github.com/ooni/probe/issues/2029
219d252971fccbabe3ebf077eb2984e3471b880b authored over 1 year ago by Simone Basso <[email protected]>
I noticed this was possible while working on
https://github.com/ooni/probe-cli/pull/1205.
Re...
db1220e00a4b1e63605e72fd3e33600a46ae27eb authored over 1 year ago by Simone Basso <[email protected]>
These two functionalities are currently hidden, but users of this
library need to write less du...
This diff adds support for sending a RST segment when the client to
server flow includes a spec...
6bfb478aadf7bc439e7d881133273042afc4f58a authored over 1 year ago by Simone Basso <[email protected]>
Reference issue: [#2464](https://github.com/ooni/probe/issues/2464)
This diff aims to fix the...
dee7dba8cee9efa2a7eea41005ef331fc5da3edf authored over 1 year ago by kelmenhorst <[email protected]>
This diff upgrades to go1.20 and a recenty development snapshot posted
on the `go` branch of gv...
This diff implements DNS spoofing. To this end, we restructure how RST
injection works first. W...
Otherwise, if the user does not provide a canonical CNAME, the server
code will panic at runtime.
40fe207b306a893bcd95ac6ae0bd7404ad50390d authored almost 2 years ago by Simone Basso <[email protected]>
36778b8c7837844daa1028e901e72dd7a23045c3 authored almost 2 years ago by Simone Basso <[email protected]>
c305c357b8402e8c888ff8886440946f1ee1ac58 authored almost 2 years ago by Simone Basso <[email protected]>
So, we can model a link with more losses and more delay for the
throttled flow, which further s...
In this note, we explain why we think it's fine to use one of the link
models we have to write ...
Let's document how this Go module is structured.
0d3e8366dd713771e3f2a6f74a23c1f9a2d7f9ee authored almost 2 years ago by Simone Basso <[email protected]>This PR adds additional document that is nice to have.
51d09de57a5ee3e3c2b5245395de1c4d263c5b3b authored almost 2 years ago by Simone Basso <[email protected]>* dnsping is already an integration test
* httping is also already an integration test
* c...
4f18b2e46987fd0bd2432f5dd5838cf7832539b5 authored almost 2 years ago by Simone Basso <[email protected]>cbacd3f53f746ad44ae8df8f46a9d7e8004c18da authored almost 2 years ago by Simone Basso <[email protected]>
While there, get rid of the throttle command, which was useful earlier
on during development, b...
I think it's better to split them. Eventually coverage will be based on
unit tests while race d...
I do not fully understand what coveralls is showing and I'd like to see
the toplevel package an...
This diff attempts to make integration tests less flaky.
55b7af9d41e0f695684ac3ebad04ebe0a0817483 authored almost 2 years ago by Simone Basso <[email protected]>90842aedfd572643d358b3f55b0974887889fb9c authored almost 2 years ago by Simone Basso <[email protected]>
While there, recognize that we should support an UnderlyingNetwork
implemented using the stdlib...
4952cd82c073ab5e34a820f522ceede8d8fbd6d0 authored almost 2 years ago by Simone Basso <[email protected]>
While there, notice that we have a flaky test.
df21f07ede74d17657765dc4ca81419685a9ddb4 authored almost 2 years ago by Simone Basso <[email protected]>02a0ca8054ae35223cc2b8690572c1e9dafb2882 authored almost 2 years ago by Simone Basso <[email protected]>
We were using the wrong link layer constant.
6e0d618f0cb48b96c78cd066e23cf3aa1208b1dd authored almost 2 years ago by Simone Basso <[email protected]>
Now that we have a better link forwarding code implementation, drop the
old one.
Rather than always using the same function to emulate a link, choose the
best function by inspe...
fd4345edcf65318bb6b1ffb2e8b019209b32f26b authored almost 2 years ago by Simone Basso <[email protected]>
This algorithm is an evolution of the current link forwarding algorithm
attempting to make TCP ...
We put mandatory arguments first and optional ones later. In the current
state of the main bran...
We will select this algorithm when the user only configures a delay
without any PLR or DPI need...
This diff adds support for a fast forwarding algorithm that has as
little as possible overhead....
We need to include in each row:
1. the prefix of the PCAP files we're capturing;
2. the im...
c68c412766f419527431dba478cdf36cc869858b authored almost 2 years ago by Simone Basso <[email protected]>
By having a dedicated flag, we can separate dropping a single packet
from imposing a specific e...
Lacking precise performance data, it seems wiser to have the write
notification be as large as ...
To this end, we need to avoid writing into the notification channel once
the stack has been clo...
6279c1696ec2959f265b38714e9f26e16cd4f183 authored almost 2 years ago by Simone Basso <[email protected]>
We can perform all the operations we need inline.
90266b73a1ff8b943bccd5521debd20e57ebb2d3 authored almost 2 years ago by Simone Basso <[email protected]>
In particular, make sure we have always seen samples when we
expected to be samples (be them spe...
It was a bit difficult to implement deep packet inspection by
wrapping a network interface, so l...
While that mutation was safe, it is better to not even try.
We can easily make a shallow copy a...
704c5cba5c57de0f8a10e8fb13d9c05b5827b18a authored almost 2 years ago by Simone Basso <[email protected]>8a8c15832583eef72a02aee3d09eb05d87eb4b6c authored almost 2 years ago by Simone Basso <[email protected]>
We're not quite there in terms of DPI though. I think we
probably need to redesign it a bit for ...
e7d894ff937c1e446d3f43e5eb2d7481bbaaff91 authored almost 2 years ago by Simone Basso <[email protected]>
09291af58f89b0bded4d0db2e5d4af2491edc906 authored almost 2 years ago by Simone Basso <[email protected]>
45b2e1932460f87e3b7f278b7769f1f58ce4d95c authored almost 2 years ago by Simone Basso <[email protected]>
2e869049e13cccee0ae3c2d5da17f0bab22427c5 authored almost 2 years ago by Simone Basso <[email protected]>
e3c573fff2e862dcc4e7facdf6e1f9c9982136e4 authored almost 2 years ago by Simone Basso <[email protected]>
5c5e22e9fd412400c6a9fa8829a4143ae287453e authored almost 2 years ago by Simone Basso <[email protected]>
78374276144a5bb7690eeff1ce79a990290a1118 authored almost 2 years ago by Simone Basso <[email protected]>
There is no need to create goroutines in the router when
we can instead let the Link's writer do...
35cc5d456d4de81fc1196815b461926cbe828b32 authored almost 2 years ago by Simone Basso <[email protected]>
It seems there are some serious issues with the router and the
best way for me to investigate is...
e56876158650d1d9650bff51536f8cbf96610c17 authored almost 2 years ago by Simone Basso <[email protected]>
5d763a694a9706e3187600d7face84f386a44a41 authored almost 2 years ago by Simone Basso <[email protected]>
This change allows us to simplify the calibrate command.
1ce2199381a21cb75b4868a5c1a207efbcc827ba authored almost 2 years ago by Simone Basso <[email protected]>bf5ada7d77b7873fb3e38d7c13de45fd5c024908 authored almost 2 years ago by Simone Basso <[email protected]>
9c9e6037e2006e6a269904b1c6834dd4d225bded authored almost 2 years ago by Simone Basso <[email protected]>
The general idea here is that we now have a mechanism for wrapping NICs
when creating a link. Th...
While there, improve documentation.
15b840575d62572c95356961e9bc2a7c0c784d04 authored almost 2 years ago by Simone Basso <[email protected]>1c52219f230996b60ac38e938e04c3c9ec3ab41f authored almost 2 years ago by Simone Basso <[email protected]>
Let's introduce some library specific errors instead.
ad8158c6d1871aa999e5c098ecd39880e066944a authored almost 2 years ago by Simone Basso <[email protected]>f951aa89f11e39e8089f9c02f64c135b78fa31bc authored almost 2 years ago by Simone Basso <[email protected]>
48e3e1487ba9e1fe1106862b4f793ccdef39b939 authored almost 2 years ago by Simone Basso <[email protected]>
8b485a051467a92938ec08257aa5aa99f26cbd89 authored almost 2 years ago by Simone Basso <[email protected]>
326f6b19816ce5023f4593e171caf471b99837fc authored almost 2 years ago by Simone Basso <[email protected]>
341b79b7a58138de6fb53ba733ec6c2b406e2992 authored almost 2 years ago by Simone Basso <[email protected]>
cdc140b3479a868af6e25305a41533f8229d45d4 authored almost 2 years ago by Simone Basso <[email protected]>
21950869f44b8ee0262256db7b2c34d8fa63fad5 authored almost 2 years ago by Simone Basso <[email protected]>
When I wrote the prototype inside the OONI codebase, I thought
a periodic counter would be fine ...
The fact that previously we had a method called NIC() that
returned the NIC would have made PCAP...
764f6b40cea0c96d2befd60089348ac68587604e authored almost 2 years ago by Simone Basso <[email protected]>