From 1ad20c6e31a73da0726c3d23219c4db5b9f879e8 Mon Sep 17 00:00:00 2001 From: Stuart Hendren Date: Tue, 12 Aug 2014 10:26:05 +0100 Subject: [PATCH] JCLOUDS-661: Supporting single port firewall rules in GCE Corresponding test added in https://git-wip-us.apache.org/repos/asf?p=jclouds.git;h=f3778b6 --- .../extensions/GoogleComputeEngineSecurityGroupExtension.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtension.java b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtension.java index fb35bed..9a5b39f 100644 --- a/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtension.java +++ b/google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/extensions/GoogleComputeEngineSecurityGroupExtension.java @@ -220,8 +220,12 @@ public SecurityGroup addIpPermission(IpPermission ipPermission, SecurityGroup gr } Firewall.Rule.Builder ruleBuilder = Firewall.Rule.builder(); ruleBuilder.IpProtocol(ipPermission.getIpProtocol()); - if (ipPermission.getToPort() > 0) { - ruleBuilder.addPortRange(ipPermission.getFromPort(), ipPermission.getToPort()); + if (ipPermission.getFromPort() > 0) { + if (ipPermission.getFromPort() == ipPermission.getToPort()) { + ruleBuilder.addPort(ipPermission.getToPort()); + } else { + ruleBuilder.addPortRange(ipPermission.getFromPort(), ipPermission.getToPort()); + } } fwOptions.addAllowedRule(ruleBuilder.build()); -- 2.0.3