[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [bridgedb/main] Add a fake rdsys to run bridgedb for development



commit c73a2463f516da8f0e48dfdf9bb9e808c6b6f2a2
Author: meskio <meskio@xxxxxxxxxxxxxx>
Date:   Wed Feb 16 18:26:39 2022 +0100

    Add a fake rdsys to run bridgedb for development
    
    Let's remove the need of running rdsys to run bridgedb for development
    by running a fake rdsys server that hands out a static list of bridges.
    
    Closes: #40034
---
 README.rst                        |    8 +-
 bridgedb/configure.py             |    7 +-
 scripts/fake_rdsys                |   33 +
 scripts/fake_rdsys_resources.json | 1330 +++++++++++++++++++++++++++++++++++++
 4 files changed, 1375 insertions(+), 3 deletions(-)

diff --git a/README.rst b/README.rst
index de93734..d3c29de 100644
--- a/README.rst
+++ b/README.rst
@@ -284,7 +284,13 @@ To run the test suites, do::
 Running BridgeDB
 ================
 
-To run BridgeDB, simply make any necessary changes to bridgedb.conf, and do::
+To run BridgeDB you need rdsys running. There is a fake rdsys in bridgedb
+that you can run by doing::
+
+      ./scripts/fake_rdsys
+
+Once rdsys is running simply make any necessary changes to bridgedb.conf,
+and do::
 
       bridgedb
 
diff --git a/bridgedb/configure.py b/bridgedb/configure.py
index 5fb1492..8befc78 100644
--- a/bridgedb/configure.py
+++ b/bridgedb/configure.py
@@ -157,8 +157,11 @@ def loadConfig(configFile=None, configCls=None):
     if conffile: # Store the pathname of the config file, if one was used
         config.CONFIG_FILE = os.path.abspath(os.path.expanduser(conffile))
 
-    with open(config.RDSYS_TOKEN_FILE) as f:
-        setattr(config, "RDSYS_TOKEN", f.read())
+    if os.path.isfile(config.RDSYS_TOKEN_FILE):
+        with open(config.RDSYS_TOKEN_FILE) as f:
+            setattr(config, "RDSYS_TOKEN", f.read())
+    else:
+        config.RDSYS_TOKEN = ""
 
     return config
 
diff --git a/scripts/fake_rdsys b/scripts/fake_rdsys
new file mode 100755
index 0000000..783b9ad
--- /dev/null
+++ b/scripts/fake_rdsys
@@ -0,0 +1,33 @@
+#!/usr/bin/env python3
+import sys
+import os.path
+from twisted.web import server, resource
+from twisted.internet import reactor
+
+scripts_folder=os.path.dirname(sys.argv[0])
+RESOURCES_JSON=os.path.join(scripts_folder, "fake_rdsys_resources.json")
+LISTEN_PORT=7100
+inter_message_delimiter = b"\r"
+
+
+class ResourceStream(resource.Resource):
+    isLeaf = True
+
+    def __init__(self):
+        resource.Resource.__init__(self)
+        with open(RESOURCES_JSON) as f:
+            self.resources_json = bytes(f.read(), "utf-8")
+
+    def render_GET(self, request):
+        print("Got a bridgedb request")
+        request.write(self.resources_json)
+        request.write(inter_message_delimiter)
+        return server.NOT_DONE_YET
+
+
+root = ResourceStream()
+root.putChild(b'resource-stream', ResourceStream())
+site = server.Site(root)
+
+reactor.listenTCP(LISTEN_PORT, site)
+reactor.run()
diff --git a/scripts/fake_rdsys_resources.json b/scripts/fake_rdsys_resources.json
new file mode 100644
index 0000000..f8fde3a
--- /dev/null
+++ b/scripts/fake_rdsys_resources.json
@@ -0,0 +1,1330 @@
+{
+    "new": {
+        "obfs4": [
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "222.180.163.245",
+                "port": 53379,
+                "fingerprint": "C518EC4F6B42AB6EA1F45274B85F4DD72E1E1DD1",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "fbd6d7d2ab130f02cedf1d1d5ef220edb6f3c525",
+                    "public-key": "cff3a163e0daf664f1df7b1a42c5dedd58a8928698fed83f6596244b0919cd20"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "5.149.234.208",
+                "port": 21529,
+                "fingerprint": "9FE74620BFF2FAED64F0AFC73B67BD103FAC9720",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "0b8bf9fc37ad802cefa6733ec62b09d5f43a1b75",
+                    "public-key": "6d9c54dee5660c46886f32d80e57e9dd0ffa57ee0cd2a762b036d9c8e0c3a33a"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "110.151.87.87",
+                "port": 64958,
+                "fingerprint": "755016DCD7EF9301D43AA278FB964E8975BB66BF",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "624e4110b6241707578ecefcb0f9188e5c514cf4",
+                    "public-key": "b7f064b4bd27a3d68b5e66519cfac498d2e96da9bfd1bacf4110f4c7c98feca3"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "62.84.203.68",
+                "port": 16952,
+                "fingerprint": "08E8B7FA24A0C20A9F1EAEE711565145160B7346",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "89d6a3b70b33bb0e4d95cbd78aa26411d18f281d",
+                    "public-key": "d81bfb50e59a9abbe66f6ae0c6b45c7b9c0bc6eead2cf982118ac4d62b6ffeda"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "175.130.108.99",
+                "port": 6845,
+                "fingerprint": "155F8662F72A330FFBFB373296D44623608FD0AB",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "bd94219a79987af3e4d4ce45b07edc2230aaf655",
+                    "public-key": "1a5ce2eb33e4dcd8bf09a57d740649e2aec359dc2c0fd952ac0d19d4a63d0c42"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "193.255.235.203",
+                "port": 14172,
+                "fingerprint": "893DF87E32113ADA0EF383F5DA2C10DE8EA52E20",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "db4bf2f8ca37a35fdd742bdb5d37e7d646451922",
+                    "public-key": "c419a92c7dce5225606f604f79d0d07009ebd882b5d5d41d234b71617b691774"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "188.16.218.4",
+                "port": 1630,
+                "fingerprint": "7F50362946FCB51E1975D0BA6714E1544EB7EE92",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "75e43426b4fd82102d0e825523b9bf043ed01e5e",
+                    "public-key": "06ea118edadd836a02b202c05bc7e47356b57e28c01edf1dad6cc4cf90c662e2"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "35.41.173.158",
+                "port": 57116,
+                "fingerprint": "6BAF389D9C0FD48EF0C15D3194F3A683E3A04EED",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "381904152a017cd2762e192125c5c69e226c522b",
+                    "public-key": "017ab4b70ea129c29e932d44baddc185ad136bf719c4ada63a10b5bf796af91e"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "121.73.38.89",
+                "port": 40149,
+                "fingerprint": "F08F4BE53F977A7CAA254442CEDD5D12D338A2B9",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "558ae348a40d50bb93d89fa2f25483d0afed1d32",
+                    "public-key": "3addfb141cd7c9c4c6543a82191a3707ac29c7a041217782e61d4d91c691aee8"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "207.229.82.233",
+                "port": 23419,
+                "fingerprint": "DD8074CDBF395FE81AC2175517A630076839598E",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "9797edf8d0eed36b1cf92547816051c8af4e45ee",
+                    "public-key": "015275e61fa0d0751c1d9f45541c7804c895404455470710ade3786f282f2da0"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "171.254.147.97",
+                "port": 27676,
+                "fingerprint": "AB04F28EB691B841A1D63D6491C26CA129C40637",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "c387184c46b35fa4a2ef17efb19f8cb838b973c1",
+                    "public-key": "7b8ec8dd836b564f0c85ad088fc744de820345204e154bc1503e04e9d6fdd9f1"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "1.173.112.166",
+                "port": 49311,
+                "fingerprint": "212F080453518B63AD1158B37F26050A620689AE",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "707efc314ec536abed535cdb1b2414aba4713577",
+                    "public-key": "0805dcdc42ca47abdc3d8fe11f8e0c7a108602022f71ab349648cfdd30a75aa6"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "140.113.140.142",
+                "port": 56383,
+                "fingerprint": "8A3549955EC1FBB1E701562A7D9E932B6E2AF3DB",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "4d634c7d083557e72213c4bd55cc4e7365ccf66f",
+                    "public-key": "a8e63d1668da80b7902494cbbfe1313ef5c5fe3c455435e316b48072c8f4b52d"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "12.56.4.205",
+                "port": 4273,
+                "fingerprint": "75658D7A0F8C96496919AFD708132F48321CB586",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "5c0a9085206c2dafcf9c1cb2c0a8dabdc387c895",
+                    "public-key": "cd00e292c5970d3c5e2f0ffa5171e555bc46bfc4faddfb4a418b6840b86e79a3"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "98.22.9.231",
+                "port": 11088,
+                "fingerprint": "0469A5A09C3DA2E56E9EE1D251EAD5D12FA6ECEE",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "666820973fd95e6cd9e7bc5f1c53732acbc99326",
+                    "public-key": "ec3e3f34b1ed7f551522cd727ba4e749acd4b5dac1d6a438a91f9cc2ca67620c"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "61.115.1.152",
+                "port": 45035,
+                "fingerprint": "A04E7611C3F2A9F2D0BDF55264D93F613B5CF900",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "a6c2c0ae7ee4fd6ac925189e1bd14e6217ef6914",
+                    "public-key": "7b8ec8dd836b564f0c85ad088fc744de820345204e154bc1503e04e9d6fdd9f1"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "53.105.19.116",
+                "port": 2362,
+                "fingerprint": "70C3734092ABC767303CDE17D89529791E65A6AA",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "0b8bf9fc37ad802cefa6733ec62b09d5f43a1b75",
+                    "public-key": "df3f619804a92fdb4057192dc43dd748ea778adc52bc498ce80524c014b81119"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "11.158.130.203",
+                "port": 7281,
+                "fingerprint": "926B26F8B7631BCA94D4B3576F8208BBF81FC7DB",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "5b9e36ec3fb5698a93d45103ee2f541249c68be4",
+                    "public-key": "1171666c3e0af069667251bbb8dbac52aeff187a6866daa07c597c813aa289e0"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "14.38.159.224",
+                "port": 25368,
+                "fingerprint": "49FD7C6D391FB40EC498B04DB4B75599D0D77BE0",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "c8d7d0ef0eedfa82d2ea1aa592845b9a6d4b02b7",
+                    "public-key": "ba7aa0bfea71dbaf1033edc80705d4db3d0f8f5f938385f764912619b1c344c9"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "164.208.170.231",
+                "port": 48910,
+                "fingerprint": "F0857ECEE1A28B427E53DBB0877AADC728842A19",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "75e43426b4fd82102d0e825523b9bf043ed01e5e",
+                    "public-key": "353fd628b7f6e7d426e5d6a27d1bc3ac22fa7f812e7594cf2ec5ca1175785b50"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "213.170.127.119",
+                "port": 14021,
+                "fingerprint": "4F2432ECA2A4BA4FE96D3F7A3DBEE87ECCA2319A",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "cf4ca14a7adcbc197cd84c1997efdd076911d608",
+                    "public-key": "9e1736c43d19118e6ce4302118af337109491ecc52757dfb949bad6a7940b0c2"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "106.167.126.56",
+                "port": 35468,
+                "fingerprint": "86B4B015034FF712B776DD58FB616470095FFFAC",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "1da89865c5192465f8f4fe62d454c2175aff4441",
+                    "public-key": "85759b3811ff7dc47b03792ac85317be51431a3f9e01dcafce317ed736a391b0"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "164.29.241.115",
+                "port": 22505,
+                "fingerprint": "97742B46FFFDAD3E703BA564B3D920739FDA4F38",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "786892d85904e693af3d718785f8fed2b92d38a5",
+                    "public-key": "207917dc40abfe615add0b459890d82014421c5255629382e2063e11391e5290"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "91.233.127.48",
+                "port": 15499,
+                "fingerprint": "7054D84C8C8127CF914E1949ECFC5DAA5746B4C6",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "fbd6d7d2ab130f02cedf1d1d5ef220edb6f3c525",
+                    "public-key": "59bf9091f4cbbd2a8796bfe086a501c57226c42739dcf8ad323e7493ad51e38f"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "210.238.165.10",
+                "port": 22520,
+                "fingerprint": "C5DC903BD1BD93A40A3BA619762476600C23C593",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "06b24c317c2670cd151afe7c8d194f510690a7aa",
+                    "public-key": "dd46c3eebb1884ff3b5258c0a2fc9398e560a29e0780d4b53869b6254aa46a96"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "154.248.223.112",
+                "port": 11231,
+                "fingerprint": "C9C953A0902B12650A1D397E902CAC140AFB6DA1",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "5c7d7be28c2b70cc806f465667a798f8c5272b19",
+                    "public-key": "e258fc78e23908bdff0123123cb31e7a81008118ab1188ddcb740360727add4f"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "54.62.2.215",
+                "port": 40098,
+                "fingerprint": "54D233EACE42EE140697DC2906332719FAF0893A",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "20edc764a349bcac33d8d034eec1f8e933eebe01",
+                    "public-key": "e7e7ba7c94c2574ab9e0d47a90f4660dd0b83d4a935141568c8bfc1024ec87cb"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "136.39.91.9",
+                "port": 23229,
+                "fingerprint": "3C1872189CA2444515165D643D2C6A8E54112430",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "9f9719e06258c2440ba70f37e55bb54440bb12b5",
+                    "public-key": "5d89f056865052bcb89c910d2d62872e029fb273c3db03f8968a52a41593c1b5"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "113.95.32.31",
+                "port": 19065,
+                "fingerprint": "3ECB76705E87CF4E312B88F174EAC659F28827E5",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "558ae348a40d50bb93d89fa2f25483d0afed1d32",
+                    "public-key": "6eb69e26de2a26eda48af77d4cec893aa0cf4748a64cbefcfe11a22c1e680ad9"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "156.250.133.191",
+                "port": 8739,
+                "fingerprint": "52AE35A2CA74D8C535CFF5451E9817039483D2AC",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "12b445e0dbf65060bfc3dd1a0958f2524d48d324",
+                    "public-key": "9b0966fae6a6ad5cc3a0112c5ae1f9b1879c9ba5f87951002c330ffffaf24a6c"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "203.61.221.137",
+                "port": 60968,
+                "fingerprint": "F97C2BCE6731818597D7EAD4F3471D71893CB2BD",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "0",
+                    "node-id": "4d634c7d083557e72213c4bd55cc4e7365ccf66f",
+                    "public-key": "486a8212c0d6860840d883981ca52daaad3bf3b2ab5be56cdc47ed9b42daba22"
+                }
+            },
+            {
+                "type": "obfs4",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "130.56.204.197",
+                "port": 22750,
+                "fingerprint": "7C213E44DF0C74777033B33E3366A8967100B8A5",
+                "or-addresses": null,
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                },
+                "params": {
+                    "iat-mode": "1",
+                    "node-id": "93fa51b309f36ae636e0e7b4dd03d383b5645648",
+                    "public-key": "ec3e3f34b1ed7f551522cd727ba4e749acd4b5dac1d6a438a91f9cc2ca67620c"
+                }
+            }
+        ],
+        "vanilla": [
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "141.32.185.180",
+                "port": 18320,
+                "fingerprint": "99614BAD883AEAAFB2FFF1A70FCAF9803F2F06BA",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 18319,
+                        "address": "a7a:a015:78ee:9641:1da1:662a:c812:7e34"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 18320,
+                        "address": "141.32.185.180"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "125.19.156.136",
+                "port": 8481,
+                "fingerprint": "3BAA38769F0E12C789B4DE6332531542C1DE62D3",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 8480,
+                        "address": "985:f1ca:4e06:db4c:5451:42c9:3c15:ea86"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 8481,
+                        "address": "125.19.156.136"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "216.225.253.6",
+                "port": 23062,
+                "fingerprint": "1A96967EA23327B36DF9172FE84E0BAF8A1F71E0",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 23061,
+                        "address": "6f52:84ba:ba71:24fb:13ec:7ab1:a2a:fdad"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 23062,
+                        "address": "216.225.253.6"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "161.117.83.199",
+                "port": 23265,
+                "fingerprint": "A9112B3C50EFD9C0F361CA9F098B645CF5BE89C8",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 23264,
+                        "address": "c291:a853:6572:d1a0:49a:bd51:cd38:1739"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 23265,
+                        "address": "161.117.83.199"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "165.4.211.186",
+                "port": 51505,
+                "fingerprint": "B40F50D512B15213355B1C623730429A158E17DA",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 51504,
+                        "address": "7eef:714c:d6b2:8c0c:f64d:3f6a:91b2:99b7"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 51505,
+                        "address": "165.4.211.186"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "83.249.223.10",
+                "port": 28655,
+                "fingerprint": "631375996503A502FD23B03020AA51618CEEF6AF",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 28654,
+                        "address": "60c3:8ade:aeb0:108a:6f21:50b:b0b7:4313"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 28655,
+                        "address": "83.249.223.10"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "23.22.229.56",
+                "port": 26741,
+                "fingerprint": "69E8E78844F31C4EB7ED56007C8C8D6EF3887A53",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 26740,
+                        "address": "a0aa:54de:c576:7f91:f9fb:b454:acb6:1cb0"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 26741,
+                        "address": "23.22.229.56"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "50.178.16.181",
+                "port": 46110,
+                "fingerprint": "CDEE01E3F59C259B62B89342DEEEDF339D4413EC",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 46109,
+                        "address": "5e82:4351:1e68:5f21:6532:14d5:94b3:cc2a"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 46110,
+                        "address": "50.178.16.181"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "151.123.78.243",
+                "port": 51134,
+                "fingerprint": "4658494EBE395B7148C2E4DE776FE343AD8AE73C",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 51133,
+                        "address": "6863:372b:d79d:a75c:2b6b:ee70:f360:b9b"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 51134,
+                        "address": "151.123.78.243"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "6.114.238.141",
+                "port": 49026,
+                "fingerprint": "B172FF1BBCC2DD23ACAC988B3FD4010A67A6A4A4",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 49025,
+                        "address": "5fe:1ebb:5c31:b0de:aebc:f535:5c5d:55b7"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 49026,
+                        "address": "6.114.238.141"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "123.63.25.182",
+                "port": 5868,
+                "fingerprint": "1E87B222275D1A4C68CD1DFA7AD33C1C5F797A86",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 5867,
+                        "address": "f8bb:afc:5af2:159a:b5f0:e56d:6f56:3d2c"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 5868,
+                        "address": "123.63.25.182"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "188.27.93.240",
+                "port": 18899,
+                "fingerprint": "62D70E9A78B9E9B0B6D76A754166C114761A51AF",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 18898,
+                        "address": "eb12:69f9:311d:89a5:f19:c7d8:b87a:a55b"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 18899,
+                        "address": "188.27.93.240"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "14.232.206.74",
+                "port": 43490,
+                "fingerprint": "F93392D0267929CCD141DA90B771A0248BBCA2CA",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 43489,
+                        "address": "677b:d4bb:1b65:38ed:847f:5c4:cc17:ab53"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 43490,
+                        "address": "14.232.206.74"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "138.72.141.173",
+                "port": 43290,
+                "fingerprint": "D8204804772B5E4D8DDD8BB096E215277340B29A",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 43289,
+                        "address": "51a8:4c7e:c07b:9fe9:eca2:92d6:987c:b75e"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 43290,
+                        "address": "138.72.141.173"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "102.203.31.165",
+                "port": 51642,
+                "fingerprint": "C9445164A03E9C2770631AFE65C2113ACD040FA0",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 51641,
+                        "address": "5d34:f061:e871:ab90:a437:48c2:7daf:32cd"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 51642,
+                        "address": "102.203.31.165"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "22.75.82.192",
+                "port": 14641,
+                "fingerprint": "AFFE790B2FA1E17DF7CCC221F7D144276B884E68",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 14640,
+                        "address": "c390:97e3:e093:986b:3a5b:8e40:cb9c:aae3"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 14641,
+                        "address": "22.75.82.192"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "4.71.185.34",
+                "port": 36007,
+                "fingerprint": "0F6EB67327AC9576929E72F5B567DB64541DE09B",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 36006,
+                        "address": "fe63:ee77:8a88:13f6:d6ab:30ad:b9b6:2f41"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 36007,
+                        "address": "4.71.185.34"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "194.153.56.12",
+                "port": 38705,
+                "fingerprint": "00440022F0A1CF78652D532F8B348AE35D24EAED",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 38704,
+                        "address": "30d4:549c:3c30:5860:83aa:78b8:2167:8011"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 38705,
+                        "address": "194.153.56.12"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "11.79.163.38",
+                "port": 24863,
+                "fingerprint": "292FC1DA0B6B7D4F02A97DF3B765127A17893B30",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 24862,
+                        "address": "1787:c4b4:4af6:f02d:f40c:652f:f715:877f"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 24863,
+                        "address": "11.79.163.38"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "151.222.111.180",
+                "port": 58716,
+                "fingerprint": "98EF45AFA46B45EC30DF830866C7BF7EDDD59B79",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 58715,
+                        "address": "fe68:952f:f2da:7236:1fa9:15d0:195f:6933"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 58716,
+                        "address": "151.222.111.180"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "72.164.158.250",
+                "port": 13620,
+                "fingerprint": "845159B5D87A8269CCF65BF2FF04367B03C93E7B",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 13619,
+                        "address": "7fc9:6775:637a:7e10:1f31:f151:154e:5457"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 13620,
+                        "address": "72.164.158.250"
+                    }
+                ],
+                "distribution": "https",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            },
+            {
+                "type": "vanilla",
+                "blocked_in": {},
+                "Location": null,
+                "protocol": "tcp",
+                "address": "118.104.21.43",
+                "port": 16554,
+                "fingerprint": "9FF0A204DA72745D9835E9F88FA7A78E41C3999E",
+                "or-addresses": [
+                    {
+                        "ip-version": 6,
+                        "port": 16553,
+                        "address": "6725:b482:1c3e:f222:7da0:7ae7:9cc2:feee"
+                    },
+                    {
+                        "ip-version": 4,
+                        "port": 16554,
+                        "address": "118.104.21.43"
+                    }
+                ],
+                "distribution": "",
+                "flags": {
+                    "fast": true,
+                    "stable": true,
+                    "running": true,
+                    "valid": true
+                }
+            }
+        ]
+    },
+    "changed": null,
+    "gone": null
+}

_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits