private byte resolveTrafficType(IpPrefix prefix) { if (prefix.getIpv4Prefix() != null) { return VPP_IPV4_TYPE; } else if (prefix.getIpv6Prefix() != null) { return VPP_IPV6_TYPE; } return VPP_UNRESOLVED_TYPE; }
private String stripToCidr(final IpPrefix value) { return value.getIpv4Prefix().getValue(); } }
public static boolean isPlain(final IpPrefix key) { return key.getIpv4Prefix().getValue().endsWith(FULL_IPV4_MASK_SUFFIX); }
public static String getStringIpPrefix(IpPrefix ipPrefix) { Preconditions.checkNotNull(ipPrefix); if (ipPrefix.getIpv4Prefix() != null) { String ipPrefixIpv4 = ipPrefix.getIpv4Prefix().getValue(); return ipPrefixIpv4.replace('/', '_'); } String ipPrefixIpv6 = ipPrefix.getIpv6Prefix().getValue(); return ipPrefixIpv6.replace('/', '_').replace(':', '.'); }
/** * Detects whether {@code IpPrefix} is ipv6 */ public static boolean isIpv6(IpPrefix address) { checkNotNull(address, "Address cannot be null"); checkState(!(address.getIpv4Prefix() == null && address.getIpv6Prefix() == null), "Invalid address"); return address.getIpv6Prefix() != null; }
private static void translate(@Nonnull final IpPrefix prefix, final IpAddDelRoute request) { // BGP Prefix SID for v6 is not supported final Ipv4Prefix ipv4Prefix = prefix.getIpv4Prefix(); checkArgument(ipv4Prefix != null, "Unsupported IpPrefix: %s, ipv4Prefix is missing.", prefix); request.dstAddressLength = Ipv4Translator.INSTANCE.extractPrefix(ipv4Prefix); request.dstAddress = Ipv4Translator.INSTANCE.ipv4AddressPrefixToArray(ipv4Prefix); }
public static String ipPrefixToStringIpAddress(IpPrefix prefix) { if (prefix.getIpv4Prefix() != null) { String[] split = prefix.getIpv4Prefix().getValue().split("/"); return split[0]; } else if (prefix.getIpv6Prefix() != null) { String[] split = prefix.getIpv6Prefix().getValue().split("/"); return split[0]; } throw new IllegalArgumentException("Cannot extract IP prefix from IP address {}" + prefix); } }
private static String getDestinationAddress(final List<Subobject> subobjects, final String defaultAddress) { if ((subobjects != null) && !subobjects.isEmpty()) { final String prefix = ((IpPrefixCase) subobjects.get(subobjects.size() - 1).getSubobjectType()) .getIpPrefix().getIpPrefix().getIpv4Prefix().getValue(); return prefix.substring(0, prefix.indexOf('/')); } return defaultAddress; } }
/** * {@inheritDoc} */ @Override public String getCidrText() { return getIpPrefix().getIpv4Prefix().getValue(); }
public static IpPrefix createGwPrefix(IpAddress ipAddress, IpPrefix network) { StringBuilder buf = new StringBuilder(); buf.append(ipAddress.getValue()); String str = network.getIpv4Prefix().getValue(); buf.append(str.substring(str.indexOf("/"))); return new IpPrefix(new Ipv4Prefix(buf.toString())); }
@Override public void serializeTlvBody(final IpPrefix tlv, final ByteBuf body) { if (tlv.getIpv4Prefix() != null) { ByteBufWriteUtil.writeMinimalPrefix(tlv.getIpv4Prefix(), body); } else if (tlv.getIpv6Prefix() != null) { ByteBufWriteUtil.writeMinimalPrefix(tlv.getIpv6Prefix(), body); } }
private AccessListEntries createAceListFromIPv4PrefixPairs(List<Subnet> subnets) { List<Ace> aceList = new ArrayList<>(); for (Subnet entrys: subnets) { for (Subnet entryd: subnets) { Ace ace = this.createAceForGroupComm(entrys.getIpPrefix().getIpv4Prefix(), entryd.getIpPrefix().getIpv4Prefix()); aceList.add(ace); } } AccessListEntriesBuilder accessListEntriesBuilder = new AccessListEntriesBuilder(); accessListEntriesBuilder.setAce(aceList); return accessListEntriesBuilder.build(); }
private void translate(@Nonnull final InSegment inSegment, @Nonnull final IpAddDelRoute request) { checkArgument(inSegment.getConfig() != null, "Configuring impose-and-forward, but in-segment config is missing."); final Type type = inSegment.getConfig().getType(); checkArgument(type instanceof IpPrefix, "Only ip-prefix type is supported, but %s given.", type); // TODO(HC2VPP-264): add support for mpls + v6 final Ipv4Prefix prefix = ((IpPrefix) type).getIpPrefix().getIpv4Prefix(); request.dstAddressLength = extractPrefix(prefix); request.dstAddress = ipv4AddressPrefixToArray(prefix); }
private String getIpPrefixStr(final IpPrefix ipPrefix) { final Ipv4Prefix ipv4 = ipPrefix.getIpv4Prefix(); if (ipv4 != null) { return ipv4.getValue(); } else { return ipPrefix.getIpv6Prefix().getValue(); } }
/** * Initial IPPrefixHelper. * @param ipPrefix * @throws UnknownHostException */ public IPPrefixHelper(IpPrefix ipPrefix) throws UnknownHostException { initializeIpv4(ipPrefix.getIpv4Prefix()); initializeIpv6(ipPrefix.getIpv6Prefix()); }
/** * Return a MD-SAL IP address which represents this network address. * * @return An {@link Ipv4} instance. */ @Override public Ipv4 getMdAddress() { IpPrefix ipp = getIpPrefix(); return new Ipv4Builder().setIpv4Address(ipp.getIpv4Prefix()).build(); }
public static SubnetInfoKeyDecorator buildSubnetInfoKey(@Nonnull final IpPrefix value) { return new SubnetInfoKeyDecorator(new SubnetUtils(value.getIpv4Prefix().getValue()).getInfo()); }
private static boolean isIPv4Address(AllowedAddressPairs aap) { IpPrefixOrAddress ipPrefixOrAddress = aap.getIpAddress(); IpPrefix ipPrefix = ipPrefixOrAddress.getIpPrefix(); if (ipPrefix != null) { if (ipPrefix.getIpv4Prefix() != null) { return true; } } else { IpAddress ipAddress = ipPrefixOrAddress.getIpAddress(); if (ipAddress.getIpv4Address() != null) { return true; } } return false; }
public static Subnet resolveSubnetForIpv4Address(IndexedTenant t, Ipv4Address ipv4Addr) { Preconditions.checkNotNull(ipv4Addr); if (t == null || t.getTenant() == null || t.getTenant().getForwardingContext() == null) { return null; } List<Subnet> subnets = t.getTenant().getForwardingContext().getSubnet(); if (subnets != null) { for (Subnet subnet : subnets) { if (belongsToSubnet(ipv4Addr, subnet.getIpPrefix().getIpv4Prefix())) { return subnet; } } } return null; }
private @Nullable Ipv4Address createSenderIpAddress(EndpointL3 l3Ep, ReadTransaction rTx) { Subnet subnetOfL3Ep = readSubnet(l3Ep, rTx); if (subnetOfL3Ep == null) { return null; } SubnetInfo subnetInfo = new SubnetUtils(subnetOfL3Ep.getIpPrefix().getIpv4Prefix().getValue()).getInfo(); String senderIp = subnetInfo.getHighAddress(); if (senderIp.equals(l3Ep.getKey().getIpAddress().getIpv4Address().getValue())) { senderIp = subnetInfo.getLowAddress(); } return new Ipv4Address(senderIp); }