mirror of https://github.com/apache/cloudstack.git
CLOUDSTACK-1303: Fix NPE when extend vlan with ipv4 only
This commit is contained in:
parent
6823adb3ac
commit
a0762bc4a7
|
|
@ -568,6 +568,9 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel {
|
|||
@Override
|
||||
public boolean isIP6AddressAvailableInVlan(long vlanId) {
|
||||
VlanVO vlan = _vlanDao.findById(vlanId);
|
||||
if (vlan.getIp6Range() == null) {
|
||||
return false;
|
||||
}
|
||||
long existedCount = _ipv6Dao.countExistedIpsInVlan(vlanId);
|
||||
BigInteger existedInt = BigInteger.valueOf(existedCount);
|
||||
BigInteger rangeInt = NetUtils.countIp6InRange(vlan.getIp6Range());
|
||||
|
|
|
|||
|
|
@ -1192,6 +1192,9 @@ public class NetUtils {
|
|||
|
||||
// Can cover 127 bits
|
||||
public static BigInteger countIp6InRange(String ip6Range) {
|
||||
if (ip6Range == null) {
|
||||
return null;
|
||||
}
|
||||
String[] ips = ip6Range.split("-");
|
||||
String startIp = ips[0];
|
||||
String endIp = ips[0];
|
||||
|
|
@ -1214,6 +1217,9 @@ public class NetUtils {
|
|||
}
|
||||
|
||||
public static boolean isIp6InRange(String ip6, String ip6Range) {
|
||||
if (ip6Range == null) {
|
||||
return false;
|
||||
}
|
||||
String[] ips = ip6Range.split("-");
|
||||
String startIp = ips[0];
|
||||
String endIp = null;
|
||||
|
|
|
|||
|
|
@ -122,5 +122,10 @@ public class NetUtilsTest extends TestCase {
|
|||
assertTrue(NetUtils.isIp6InNetwork("1234:5678::1", "1234:5678::/64"));
|
||||
assertTrue(NetUtils.isIp6InNetwork("1234:5678::ffff:ffff:ffff:ffff", "1234:5678::/64"));
|
||||
assertTrue(NetUtils.isIp6InNetwork("1234:5678::", "1234:5678::/64"));
|
||||
//Test isIp6InRange
|
||||
assertTrue(NetUtils.isIp6InRange("1234:5678:abcd::1", "1234:5678:abcd::1-1234:5678:abcd::1"));
|
||||
assertFalse(NetUtils.isIp6InRange("1234:5678:abcd::1", "1234:5678:abcd::2-1234:5678:abcd::1"));
|
||||
assertFalse(NetUtils.isIp6InRange("1234:5678:abcd::1", null));
|
||||
assertTrue(NetUtils.isIp6InRange("1234:5678:abcd::1", "1234:5678::1-1234:5679::1"));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue