diff options
author | Marek Gradzki <mgradzki@cisco.com> | 2017-11-20 13:14:17 +0100 |
---|---|---|
committer | Marek Gradzki <mgradzki@cisco.com> | 2017-11-20 13:25:55 +0100 |
commit | f491b8b15cb634eac60378b0504a715c0ad8ccda (patch) | |
tree | 8c6445f290d2e0a6b58062f1a14ba43dd8e72e78 /infra/northbound/bgp | |
parent | 0f92e8f1eb7ec29f589ed92c55b049f13cce0f30 (diff) |
Use InetAddresses.forString instead of InetAddress.getByName
Unlike InetAddress.getByName(), Guava's InetAddresses.forString()
never cause DNS services to be accessed.
JDK equivalents whenever you are expecting to handle only IP address string literals,
so there is no blocking DNS penalty for a malformed string.
See:
https://google.github.io/guava/releases/22.0/api/docs/com/google/common/net/InetAddresses.html#forString-java.lang.String-
Change-Id: Id1fc5fa45465b0e0b3aea7d60b9fdb855240d902
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
Diffstat (limited to 'infra/northbound/bgp')
-rw-r--r-- | infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpServerProvider.java | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpServerProvider.java b/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpServerProvider.java index 876a39f14..5f9104cf1 100644 --- a/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpServerProvider.java +++ b/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpServerProvider.java @@ -17,6 +17,7 @@ package io.fd.honeycomb.infra.bgp; import com.google.common.base.Preconditions; +import com.google.common.net.InetAddresses; import com.google.inject.Inject; import io.fd.honeycomb.binding.init.ProviderTrait; import io.netty.channel.Channel; @@ -26,7 +27,6 @@ import io.netty.channel.epoll.Epoll; import io.netty.channel.epoll.EpollChannelOption; import java.net.InetAddress; import java.net.InetSocketAddress; -import java.net.UnknownHostException; import org.opendaylight.protocol.bgp.rib.impl.spi.BGPDispatcher; import org.opendaylight.protocol.bgp.rib.impl.spi.BGPPeerRegistry; import org.opendaylight.protocol.bgp.rib.impl.spi.BGPSessionPreferences; @@ -49,12 +49,7 @@ public final class BgpServerProvider extends ProviderTrait<BgpServerProvider.Bg @Override protected BgpServer create() { // code based on org.opendaylight.controller.config.yang.bgp.rib.impl.BGPPeerAcceptorModule from Boron-SR3 - final InetAddress bindingAddress; - try { - bindingAddress = InetAddress.getByName(cfg.bgpBindingAddress.get()); - } catch (UnknownHostException e) { - throw new IllegalArgumentException("Illegal BGP binding address", e); - } + final InetAddress bindingAddress = InetAddresses.forString(cfg.bgpBindingAddress.get()); final InetSocketAddress address = new InetSocketAddress(bindingAddress, cfg.bgpPort.get()); LOG.debug("Creating BgpServer for {}", address); final ChannelFuture localServer = dispatcher.createServer(address); |