Browse Source

NSX|P: Fix GW validation for updated subnet

Change-Id: I734e356f905171f2a26fa604cf273dbfdbf4f224
changes/91/739791/1
asarfaty 1 month ago
committed by Adit Sarfaty
parent
commit
9aaec75630
2 changed files with 7 additions and 2 deletions
  1. +4
    -2
      vmware_nsx/plugins/nsx_p/plugin.py
  2. +3
    -0
      vmware_nsx/tests/unit/nsx_p/test_plugin.py

+ 4
- 2
vmware_nsx/plugins/nsx_p/plugin.py View File

@@ -1378,10 +1378,12 @@ class NsxPolicyPlugin(nsx_plugin_common.NsxPluginV3Base):
def _validate_subnet_gw_ip(self, subnet, orig_subnet=None):
# Make sure the gw ip is legal and belongs to the subnet
raw_gw_ip = subnet.get('gateway_ip')
if orig_subnet and raw_gw_ip == const.ATTR_NOT_SPECIFIED:
if (orig_subnet and
(not raw_gw_ip or raw_gw_ip == const.ATTR_NOT_SPECIFIED)):
raw_gw_ip = orig_subnet.get('gateway_ip')
raw_cidr = subnet.get('cidr')
if orig_subnet and raw_cidr == const.ATTR_NOT_SPECIFIED:
if (orig_subnet and
(not raw_cidr or raw_cidr == const.ATTR_NOT_SPECIFIED)):
raw_cidr = orig_subnet.get('cidr')
if (not raw_gw_ip or raw_gw_ip == const.ATTR_NOT_SPECIFIED or
not raw_cidr or raw_cidr == const.ATTR_NOT_SPECIFIED):


+ 3
- 0
vmware_nsx/tests/unit/nsx_p/test_plugin.py View File

@@ -1149,6 +1149,9 @@ class NsxPTestSubnets(common_v3.NsxV3TestSubnets,
def test_create_subnet_gw_outside_cidr_returns_201(self):
self.skipTest("NSX subnet GW validation")

def test_update_subnet_gw_outside_cidr_returns_200(self):
self.skipTest("NSX subnet GW validation")

def test_create_subnet_ipv6_gw_validation(self):
# Illegal GW as first ip in range
gateway_ip = 'fe80::0'


Loading…
Cancel
Save