CWE-190 netmask as long form cidr-size as method

This commit is contained in:
Daan Hoogland 2015-11-11 10:05:47 +01:00
parent 3ae4dd06f3
commit 1bc837837f
1 changed files with 12 additions and 4 deletions

View File

@ -776,11 +776,19 @@ public class NetUtils {
}
public static String getCidrSubNet(final String ip, final long cidrSize) {
final long numericNetmask = ((long)0xffffffff) >> MAX_CIDR - cidrSize << MAX_CIDR - cidrSize;
final long numericNetmask = netMaskFromCidr(cidrSize);
final String netmask = NetUtils.long2Ip(numericNetmask);
return getSubNet(ip, netmask);
}
/**
* @param cidrSize
* @return
*/
static long netMaskFromCidr(final long cidrSize) {
return ((long)0xffffffff) >> MAX_CIDR - cidrSize << MAX_CIDR - cidrSize;
}
public static String ipAndNetMaskToCidr(final String ip, final String netmask) {
if (!isValidIp(ip)) {
return null;
@ -882,7 +890,7 @@ public class NetUtils {
throw new CloudRuntimeException("cidr is not bvalid in ip space" + cidr);
}
long cidrSizeNum = getCidrSizeFromString(cidrSize);
final long numericNetmask = (long)0xffffffff >> MAX_CIDR - cidrSizeNum << MAX_CIDR - cidrSizeNum;
final long numericNetmask = netMaskFromCidr(cidrSizeNum);
final long ipAddr = ip2Long(cidrAddress);
final Long[] cidrlong = {ipAddr & numericNetmask, (long)cidrSizeNum};
return cidrlong;
@ -922,13 +930,13 @@ public class NetUtils {
return null;
}
long cidrSizeNum = getCidrSizeFromString(cidrSize);
final long numericNetmask = (long)0xffffffff >> MAX_CIDR - cidrSizeNum << MAX_CIDR - cidrSizeNum;
final long numericNetmask = netMaskFromCidr(cidrSizeNum);
final String netmask = NetUtils.long2Ip(numericNetmask);
return getSubNet(cidrAddress, netmask);
}
public static String getCidrNetmask(final long cidrSize) {
final long numericNetmask = (long)0xffffffff >> MAX_CIDR - cidrSize << MAX_CIDR - cidrSize;
final long numericNetmask = netMaskFromCidr(cidrSize);
return long2Ip(numericNetmask);
}