From 9ee92da5e3d52fe11415193a9391eee3ad541c72 Mon Sep 17 00:00:00 2001 From: maride Date: Sat, 8 Sep 2018 01:29:22 +0200 Subject: Avoid collision by adding the hashed username to networks --- src/docker.go | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) (limited to 'src/docker.go') diff --git a/src/docker.go b/src/docker.go index eefd8c8..405afd3 100644 --- a/src/docker.go +++ b/src/docker.go @@ -1,14 +1,20 @@ package main import ( - "github.com/docker/docker/client" "context" + "fmt" + "github.com/docker/docker/client" ) const ( fixedDockerVersion = "1.38" ) +var ( + compiledContainerNetworkName string + compiledChallengeNetworkName string +) + var ( dockerCtx context.Context dockerCli *client.Client @@ -26,4 +32,21 @@ func setupDockerCLI() (err error) { } return err -} \ No newline at end of file +} + +// Returns the network name for the companion<=>vpn network +func getVPNNetworkName() (string) { + if compiledContainerNetworkName == "" { + compiledContainerNetworkName = fmt.Sprintf("circus-vpnnet-%s", getUsernameHash()) + } + + return compiledContainerNetworkName +} + +func getChallengeNetworkName() (string) { + if compiledChallengeNetworkName == "" { + compiledChallengeNetworkName = fmt.Sprintf("circus-vpnhostnet-%s", getUsernameHash()) + } + + return compiledChallengeNetworkName +} -- cgit 1.4.1