From bfa98b1050426409b26209ceb0cbb6da7a6d1c44 Mon Sep 17 00:00:00 2001 From: Pearl Dsilva Date: Thu, 16 Nov 2023 21:21:38 -0500 Subject: [PATCH] update order of ports in PF & FW rules --- .../java/org/apache/cloudstack/service/NsxElement.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxElement.java b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxElement.java index 0872515ec8e..9e2176bef53 100644 --- a/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxElement.java +++ b/plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/service/NsxElement.java @@ -526,7 +526,7 @@ public class NsxElement extends AdapterBase implements DhcpServiceProvider, Dns long zoneId = Objects.nonNull(vpc) ? vpc.getZoneId() : networkVO.getDataCenterId(); String publicPort = getPublicPortRange(rule); - String privatePort = getPrivatePortRange(rule); + String privatePort = getPrivatePFPortRange(rule); NsxNetworkRule networkRule = new NsxNetworkRule.Builder() .setDomainId(domainId) @@ -574,6 +574,12 @@ public class NsxElement extends AdapterBase implements DhcpServiceProvider, Dns } private static String getPublicPortRange(PortForwardingRule rule) { + return Objects.equals(rule.getSourcePortStart(), rule.getSourcePortEnd()) ? + String.valueOf(rule.getSourcePortStart()) : + String.valueOf(rule.getSourcePortStart()).concat("-").concat(String.valueOf(rule.getSourcePortEnd())); + } + + private static String getPrivatePFPortRange(PortForwardingRule rule) { return rule.getDestinationPortStart() == rule.getDestinationPortEnd() ? String.valueOf(rule.getDestinationPortStart()) : String.valueOf(rule.getDestinationPortStart()).concat("-").concat(String.valueOf(rule.getDestinationPortEnd()));