@Override public Boolean visitIpIpSpace(IpIpSpace ipIpSpace) { return _ipWildcard.containsIp(ipIpSpace.getIp()); }
public IpIpSpace toIpSpace() { return new IpIpSpace(this); }
@Test public void resolveIpSpaceOfLocationTestDefault() { SpecifiersQuestion question = new SpecifiersQuestion(QueryType.IP_SPACE); assertThat( resolveIpSpaceOfLocation(question, _context).getRows().getData(), equalTo( ImmutableMultiset.of( Row.of( COL_LOCATIONS, ImmutableSet.of(new InterfaceLocation(_c1.getHostname(), _iface1.getName())) .toString(), COL_IP_SPACE, _iface1.getAddress().getIp().toIpSpace().toString()), Row.of( COL_LOCATIONS, ImmutableSet.of(new InterfaceLocation(_c2.getHostname(), _iface2.getName())) .toString(), COL_IP_SPACE, _iface2.getAddress().getIp().toIpSpace().toString())))); }
@Test public void testIpSpaceReference() { Ip ip = Ip.parse("1.1.1.1"); Map<String, IpSpace> namedIpSpaces = ImmutableMap.of("foo", ip.toIpSpace()); IpSpace reference = new IpSpaceReference("foo"); IpSpaceToBDD ipSpaceToBDD = new IpSpaceToBDD(_ipAddrBdd, namedIpSpaces); BDD ipBDD = ip.toIpSpace().accept(ipSpaceToBDD); BDD referenceBDD = reference.accept(ipSpaceToBDD); assertThat(referenceBDD, equalTo(ipBDD)); }
@Test public void testComplement() { IpSpace ipSpace = Ip.parse("1.1.1.1").toIpSpace().complement(); assertThat(ipSpace, not(containsIp(Ip.parse("1.1.1.1")))); assertThat(ipSpace, containsIp(Ip.parse("1.2.3.4"))); } }
@Test public void resolveIpSpaceOfLocationTest() { SpecifiersQuestion questionWithLocation = new SpecifiersQuestion(QueryType.IP_SPACE_OF_LOCATION); questionWithLocation.setLocationSpecifierInput(_c1.getHostname()); // only c1:iface1 should be present assertThat( resolveIpSpaceOfLocation(questionWithLocation, _context).getRows().getData(), equalTo( ImmutableMultiset.of( Row.of( COL_LOCATIONS, ImmutableSet.of(new InterfaceLocation(_c1.getHostname(), _iface1.getName())) .toString(), COL_IP_SPACE, _iface1.getAddress().getIp().toIpSpace().toString())))); }
@Override public Void visitIpIpSpace(IpIpSpace ipIpSpace) { _prefixes.add(Prefix.create(ipIpSpace.getIp(), Prefix.MAX_PREFIX_LENGTH)); return null; }
@Override public BDD visitIpIpSpace(IpIpSpace ipIpSpace) { return toBDD(ipIpSpace.getIp()); }
@Override public Boolean visitIpIpSpace(IpIpSpace ipIpSpace) { return _ipWildcard.containsIp(ipIpSpace.getIp()); }
@Override public IpSpace visitIpIpSpace(IpIpSpace ipIpSpace) { return specialize(ipIpSpace.getIp()); }
@Override public BooleanExpr visitIpIpSpace(IpIpSpace ipIpSpace) { Ip ip = ipIpSpace.getIp(); return matchAnyField(field -> HeaderSpaceMatchExpr.matchIp(ip, field)); }
@Override public String visitIpIpSpace(IpIpSpace ipIpSpace) { String metadataDescription = computeMetadataDescription(ipIpSpace); if (metadataDescription != null) { return metadataDescription; } return ipIpSpace.getIp().toString(); }
@Override public Boolean visitIpIpSpace(IpIpSpace ipIpSpace) { return !new IpWildcard(ipIpSpace.getIp()).equals(_ipWildcard); }
@Override public BoolExpr visitIpIpSpace(IpIpSpace ipIpSpace) { return _context.mkEq(_var, _context.mkBV(ipIpSpace.getIp().asLong(), 32)); }