in activeio-core/src/main/java/org/apache/activeio/xnet/hba/ServiceAccessController.java [77:103]
private void parseAdminIPs(Properties props) throws ServiceException {
LinkedList ipAddressMasksList = new LinkedList();
try {
InetAddress[] localIps = InetAddress.getAllByName("localhost");
for (int i = 0; i < localIps.length; i++) {
if (localIps[i] instanceof Inet4Address) {
ipAddressMasksList.add(new ExactIPAddressPermission(localIps[i].getAddress()));
} else {
ipAddressMasksList.add(new ExactIPv6AddressPermission(localIps[i].getAddress()));
}
}
} catch (UnknownHostException e) {
throw new ServiceException("Could not get localhost inet address", e);
}
String ipString = props.getProperty("only_from");
if (ipString != null) {
StringTokenizer st = new StringTokenizer(ipString, " ");
while (st.hasMoreTokens()) {
String mask = st.nextToken();
ipAddressMasksList.add(IPAddressPermissionFactory.getIPAddressMask(mask));
}
}
allowHosts = (IPAddressPermission[]) ipAddressMasksList.toArray(new IPAddressPermission[ipAddressMasksList.size()]);
}