Commit e7ae055b authored by Nick Mathewson's avatar Nick Mathewson 🦀
Browse files

Merge branch 'ticket34447_v2'

parents 67f27aea 1e810b6d
Loading
Loading
Loading
Loading

networks/basic-025

deleted100644 → 0
+0 −8
Original line number Diff line number Diff line
# By default, Authorities are not configured as exits
Authority = Node(tag="a", authority=1, relay=1, torrc="authority.tmpl")
ExitRelay = Node(tag="r", relay=1, exit=1, torrc="relay.tmpl")
Client = Node(tag="c", client=1, torrc="client.tmpl")

NODES = Authority.getN(4) + ExitRelay.getN(16) + Client.getN(5)

ConfigureNodes(NODES)

networks/basic-100

deleted100644 → 0
+0 −10
Original line number Diff line number Diff line
# WARNING: This network can bring down a low-specced machine

# By default, Authorities are not configured as exits
Authority = Node(tag="a", authority=1, relay=1, torrc="authority.tmpl")
ExitRelay = Node(tag="r", relay=1, exit=1, torrc="relay.tmpl")
Client = Node(tag="c", client=1, torrc="client.tmpl")

NODES = Authority.getN(5) + ExitRelay.getN(35) + Client.getN(60)

ConfigureNodes(NODES)

networks/basic-min-mixed

deleted100644 → 0
+0 −47
Original line number Diff line number Diff line
# This network generates a random mix of tor versions each time it is run
# You'll need at least 4 runs to cover all possibilities

import random
rng = random.SystemRandom()

# We have to use the same tags for old and new versions, otherwise switching
# between them at random does not work
OLD_TOR="tor-stable"

# By default, Authorities are not configured as exits
Authority = Node(tag="a", authority=1, relay=1, torrc="authority.tmpl")
OldAuthority = Node(tag="a", authority=1, relay=1, torrc="authority.tmpl",
                    tor=OLD_TOR)

ExitRelay = Node(tag="r", relay=1, exit=1, torrc="relay.tmpl")
OldExitRelay = Node(tag="r", relay=1, exit=1, torrc="relay.tmpl",
                    tor=OLD_TOR)

Client = Node(tag="c", client=1, torrc="client.tmpl")
OldClient = Node(tag="c", client=1, torrc="client.tmpl", tor=OLD_TOR)

# Choose old or new Exit and Client at random
OldNewExitRelay = rng.choice([OldExitRelay, ExitRelay])
OldNewClient = rng.choice([OldClient, Client])

def version(node):
  if node._env["tor"] == Authority._env["tor"]:
    return "new"
  elif node._env["tor"] == OldAuthority._env["tor"]:
    return "old"
  else:
    return "unk"

# Every time chutney takes an action, it will pick versions at random
# It will likely choose different versions for each action
# This could be confusing, so log a message each time
print("Chose 1 %s authority, 1 %s authority, 1 %s exit and 1 %s client"
      % (version(Authority),
         version(OldAuthority),
         version(OldNewExitRelay),
         version(OldNewClient)))

# The minimum number of authorities/relays/exits is 3, the minimum path length
NODES = Authority.getN(1) + OldAuthority.getN(1) + OldExitRelay.getN(1) + OldClient.getN(1)

ConfigureNodes(NODES)

networks/bridges

deleted100644 → 0
+0 −14
Original line number Diff line number Diff line
# By default, Authorities are not configured as exits
Authority = Node(tag="a", authority=1, relay=1, torrc="authority.tmpl")
ExitRelay = Node(tag="r", relay=1, exit=1, torrc="relay.tmpl")
Client = Node(tag="c", client=1, torrc="client.tmpl")

BridgeAuthority = Node(tag="ba", authority=1, bridgeauthority=1,
                       relay=1, torrc="bridgeauthority.tmpl")
Bridge = Node(tag="br", bridge=1, relay=1, torrc="bridge.tmpl")
BridgeClient = Node(tag="bc", client=1, bridgeclient=1, torrc="bridgeclient.tmpl")

NODES = Authority.getN(3) + BridgeAuthority.getN(1) + ExitRelay.getN(4) + \
    Bridge.getN(1) + Client.getN(1) + BridgeClient.getN(1)

ConfigureNodes(NODES)

networks/bridges+hs

deleted100644 → 0
+0 −19
Original line number Diff line number Diff line
# By default, Authorities are not configured as exits
Authority = Node(tag="a", authority=1, relay=1, torrc="authority.tmpl")
ExitRelay = Node(tag="r", relay=1, exit=1, torrc="relay.tmpl")
Client = Node(tag="c", client=1, torrc="client.tmpl")

BridgeAuthority = Node(tag="ba", authority=1, bridgeauthority=1,
                       relay=1, torrc="bridgeauthority.tmpl")
Bridge = Node(tag="br", bridge=1, relay=1, torrc="bridge.tmpl")
BridgeClient = Node(tag="bc", client=1, bridgeclient=1, torrc="bridgeclient.tmpl")
HS = Node(tag="h", hs=1, torrc="hs.tmpl")

# We need 5 authorities/relays/exits to ensure we can build HS connections
NODES = Authority.getN(3) + BridgeAuthority.getN(1) + \
    ExitRelay.getN(4) + \
    Bridge.getN(1) + \
    Client.getN(1) + BridgeClient.getN(1) + \
    HS.getN(1)

ConfigureNodes(NODES)
Loading