From 5d686b19758084a8752e22d331904baf80b1791c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arturo=20Filast=C3=B2?= Date: Mon, 13 Nov 2023 10:24:58 +0300 Subject: [PATCH 1/5] Update signal endpoints based on: https://github.com/ooni/probe/issues/2627 --- internal/experiment/signal/signal.go | 44 +++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/internal/experiment/signal/signal.go b/internal/experiment/signal/signal.go index 28f1ba504..4c07fd3f3 100644 --- a/internal/experiment/signal/signal.go +++ b/internal/experiment/signal/signal.go @@ -164,24 +164,35 @@ func (m Measurer) Run(ctx context.Context, args *model.ExperimentArgs) error { } inputs := []urlgetter.MultiInput{ + // Here we need to provide the method explicitly. See // https://github.com/ooni/probe-engine/issues/827. - {Target: "https://textsecure-service.whispersystems.org/", Config: urlgetter.Config{ + {Target: "https://api.backup.signal.org/", Config: urlgetter.Config{ Method: "GET", FailOnHTTPError: false, CertPool: certPool, }}, - {Target: "https://storage.signal.org/", Config: urlgetter.Config{ + {Target: "https://cdn.signal.org/", Config: urlgetter.Config{ Method: "GET", FailOnHTTPError: false, CertPool: certPool, }}, - {Target: "https://cdn.signal.org/", Config: urlgetter.Config{ + {Target: "https://cdn2.signal.org/", Config: urlgetter.Config{ Method: "GET", FailOnHTTPError: false, CertPool: certPool, }}, - {Target: "https://cdn2.signal.org/", Config: urlgetter.Config{ + {Target: "https://cdsi.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, + {Target: "https://chat.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, + {Target: "https://contentproxy.signal.org/", Config: urlgetter.Config{ Method: "GET", FailOnHTTPError: false, CertPool: certPool, @@ -191,6 +202,31 @@ func (m Measurer) Run(ctx context.Context, args *model.ExperimentArgs) error { FailOnHTTPError: false, CertPool: certPool, }}, + {Target: "https://storage.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, + {Target: "https://svr2.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, + {Target: "https://ud-chat.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, + {Target: "https://updates.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, + {Target: "https://updates2.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, {Target: "dnslookup://uptime.signal.org"}, } multi := urlgetter.Multi{Begin: time.Now(), Getter: m.Getter, Session: sess} From 1ee77e286b9be0d6c458d639d0bad91d5363f34a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arturo=20Filast=C3=B2?= Date: Mon, 13 Nov 2023 10:30:32 +0300 Subject: [PATCH 2/5] Drop endpoint that does not speak TLS --- internal/experiment/signal/signal.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/internal/experiment/signal/signal.go b/internal/experiment/signal/signal.go index 4c07fd3f3..5a774c369 100644 --- a/internal/experiment/signal/signal.go +++ b/internal/experiment/signal/signal.go @@ -192,11 +192,14 @@ func (m Measurer) Run(ctx context.Context, args *model.ExperimentArgs) error { FailOnHTTPError: false, CertPool: certPool, }}, - {Target: "https://contentproxy.signal.org/", Config: urlgetter.Config{ - Method: "GET", - FailOnHTTPError: false, - CertPool: certPool, - }}, + /* + TODO: understand why this endpoint does not speak TLS + {Target: "https://contentproxy.signal.org/", Config: urlgetter.Config{ + Method: "GET", + FailOnHTTPError: false, + CertPool: certPool, + }}, + */ {Target: "https://sfu.voip.signal.org/", Config: urlgetter.Config{ Method: "GET", FailOnHTTPError: false, From c7e7cb7969e0f1dc32a4ab1478bb0139dd6c1381 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arturo=20Filast=C3=B2?= Date: Mon, 13 Nov 2023 10:36:53 +0300 Subject: [PATCH 3/5] Bump test version --- internal/experiment/signal/signal.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/experiment/signal/signal.go b/internal/experiment/signal/signal.go index 5a774c369..dd0951f89 100644 --- a/internal/experiment/signal/signal.go +++ b/internal/experiment/signal/signal.go @@ -15,7 +15,7 @@ import ( const ( testName = "signal" - testVersion = "0.2.3" + testVersion = "0.2.4" signalCA = `-----BEGIN CERTIFICATE----- MIID7zCCAtegAwIBAgIJAIm6LatK5PNiMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYD From 64f0cdfc13fe1b6af10e60e2420e37685592d5ff Mon Sep 17 00:00:00 2001 From: Simone Basso Date: Tue, 21 Nov 2023 14:45:06 +0100 Subject: [PATCH 4/5] fix: bump version number also in tests --- internal/experiment/signal/signal_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/experiment/signal/signal_test.go b/internal/experiment/signal/signal_test.go index 1b8456bf0..cbae88470 100644 --- a/internal/experiment/signal/signal_test.go +++ b/internal/experiment/signal/signal_test.go @@ -17,7 +17,7 @@ func TestNewExperimentMeasurer(t *testing.T) { if measurer.ExperimentName() != "signal" { t.Fatal("unexpected name") } - if measurer.ExperimentVersion() != "0.2.3" { + if measurer.ExperimentVersion() != "0.2.4" { t.Fatal("unexpected version") } } From 6090166caf5fef9facc27b6451d4ca5def22403d Mon Sep 17 00:00:00 2001 From: Simone Basso Date: Tue, 21 Nov 2023 14:55:54 +0100 Subject: [PATCH 5/5] fix: remove redundant return statement --- internal/experiment/signal/signal.go | 1 - 1 file changed, 1 deletion(-) diff --git a/internal/experiment/signal/signal.go b/internal/experiment/signal/signal.go index dd0951f89..c991e0309 100644 --- a/internal/experiment/signal/signal.go +++ b/internal/experiment/signal/signal.go @@ -117,7 +117,6 @@ func (tk *TestKeys) Update(v urlgetter.MultiOutput) { tk.SignalBackendFailure = v.TestKeys.Failure return } - return } // Measurer performs the measurement