in services/minho-jmx/src/main/java/org/apache/karaf/minho/jmx/ConnectorServerFactory.java [333:362]
private static Socket checkLocal(Socket socket) throws IOException {
InetAddress addr = socket.getInetAddress();
if (addr != null) {
if (addr.isLoopbackAddress()) {
return socket;
} else {
try {
Enumeration<NetworkInterface> nis = NetworkInterface.getNetworkInterfaces();
while (nis.hasMoreElements()) {
NetworkInterface ni = nis.nextElement();
Enumeration<InetAddress> ads = ni.getInetAddresses();
while (ads.hasMoreElements()) {
InetAddress ad = ads.nextElement();
if (ad.equals(addr)) {
return socket;
}
}
}
} catch (SocketException e) {
// Ignore
}
}
}
try {
socket.close();
} catch (Exception e) {
// Ignore
}
throw new IOException("Only connections from clients running on the host where the RMI remote objects have been exported are accepted.");
}