Prevent using port 0 with address_mode=driver

This commit is contained in:
Michael Schurter
2017-12-07 22:04:22 -08:00
parent b999358892
commit fa5faa5a09
2 changed files with 12 additions and 0 deletions

View File

@@ -1126,6 +1126,9 @@ func getAddress(addrMode, portLabel string, networks structs.Networks, driverNet
if err != nil {
return "", 0, fmt.Errorf("invalid port %q: %v", portLabel, err)
}
if port == 0 {
return "", 0, fmt.Errorf("invalid port: %q: port 0 is invalid", portLabel)
}
return driverNet.IP, port, nil

View File

@@ -1541,6 +1541,15 @@ func TestGetAddress(t *testing.T) {
},
ErrContains: "invalid port",
},
{
Name: "DriverZeroPort",
Mode: structs.AddressModeDriver,
PortLabel: "0",
Driver: &cstructs.DriverNetwork{
IP: "10.1.2.3",
},
ErrContains: "invalid port",
},
{
Name: "HostBadPort",
Mode: structs.AddressModeHost,