From 93b4afb78bb58b250d17b3baded6ca1913fe0495 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jordi=20Subir=C3=A0=20Nieto?= Date: Thu, 28 Sep 2023 14:26:30 +0200 Subject: [PATCH] fix broken rebase --- acceptance/hidden_paths/test.py | 17 ++++++++++------- private/app/appnet/infraenv.go | 8 ++------ 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/acceptance/hidden_paths/test.py b/acceptance/hidden_paths/test.py index 8c5dfe2854..d6fb6dfbaa 100755 --- a/acceptance/hidden_paths/test.py +++ b/acceptance/hidden_paths/test.py @@ -74,6 +74,12 @@ def setup_prepare(self): "4": "172.20.0.65", "5": "172.20.0.73", } + control_addresses = { + "2": "172.20.0.51:30090", + "3": "172.20.0.59:30090", + "4": "172.20.0.67:30090", + "5": "172.20.0.75:30090", + } # Each AS participating in hidden paths has their own hidden paths configuration file. hp_configs = { "2": "hp_groups_as2_as5.yml", @@ -101,16 +107,13 @@ def setup_prepare(self): # even though some don't need the registration service. as_dir_path = self.artifacts / "gen" / ("ASff00_0_%s" % as_number) - # The hidden_segment services are behind the same server as the control_service. - topology_file = as_dir_path / "topology.json" - control_service_addr = scion.load_from_json( - 'control_service.%s.addr' % control_id, [topology_file]) topology_update = { "hidden_segment_lookup_service.%s.addr" % control_id: - control_service_addr, + control_addresses[as_number], "hidden_segment_registration_service.%s.addr" % control_id: - control_service_addr, + control_addresses[as_number], } + topology_file = as_dir_path / "topology.json" scion.update_json(topology_update, [topology_file]) def setup_start(self): @@ -156,4 +159,4 @@ def configuration_server(server): if __name__ == "__main__": - base.main(Test) + base.main(Test) \ No newline at end of file diff --git a/private/app/appnet/infraenv.go b/private/app/appnet/infraenv.go index 5e03a21687..e58c353764 100644 --- a/private/app/appnet/infraenv.go +++ b/private/app/appnet/infraenv.go @@ -99,7 +99,7 @@ func (nc *NetworkConfig) TCPStack() (net.Listener, error) { func (nc *NetworkConfig) QUICStack() (*QUICStack, error) { if nc.QUIC.Address == "" { - nc.QUIC.Address = nc.Public.String() + nc.QUIC.Address = net.JoinHostPort(nc.Public.IP.String(), "0") } client, server, err := nc.initQUICSockets() @@ -293,11 +293,7 @@ func (nc *NetworkConfig) initSvcRedirect(quicAddress string) (func(), error) { Metrics: nc.SCIONNetworkMetrics, } - // The service resolution address gets a dynamic port. In reality, neither the - // address nor the port are needed to address the resolver, but the dispatcher still - // requires them and checks unicity. At least a dynamic port is allowed. - srAddr := &net.UDPAddr{IP: nc.Public.IP, Port: 0} - conn, err := network.Listen(context.Background(), "udp", srAddr, addr.SvcWildcard) + conn, err := network.Listen(context.Background(), "udp", nc.Public, addr.SvcWildcard) if err != nil { return nil, serrors.WrapStr("listening on SCION", err, "addr", conn.LocalAddr()) }