Examples of IPv4Header


Examples of org.jnode.net.ipv4.IPv4Header

        if (srcBuf.getLinkLayerHeader().getDestinationAddress().isBroadcast()) {
            return;
        }

        // Gets the original IP header
        final IPv4Header origIpHdr = (IPv4Header) srcBuf.getNetworkLayerHeader();

        // Do not respond to networklayer broadcast/multicast messages
        if (origIpHdr.getDestination().isBroadcast() || origIpHdr.getDestination().isMulticast()) {
            return;
        }

        final int tos = 0;
        final int ttl = 0xFF;
        final IPv4Address dstAddr = origIpHdr.getSource();

        // Build the response ICMP header
        final ICMPHeader icmpHdr = new ICMPUnreachableHeader(code);
        // Build the response IP header
        final IPv4Header ipHdr = new IPv4Header(tos, ttl, IPv4Constants.IPPROTO_ICMP, dstAddr, 0);

        // Unpull the original transportlayer header
        srcBuf.unpull(srcBuf.getTransportLayerHeader().getLength());

        // Unpull the original IP header
View Full Code Here

Examples of org.pcap4j.packet.IpV4Packet.IpV4Header

    if (packet.length() <= mtu) {
      list.add(packet);
      return list;
    }

    IpV4Header header = packet.getHeader();
    byte[] payload = packet.getPayload().getRawData();
    int max_payload_length = mtu - header.length();
    int actual_max_payload_length
      = max_payload_length % 8 == 0 ? max_payload_length
                                    : max_payload_length - max_payload_length % 8;
    int rest_length = payload.length;
    int srcPos = 0;
View Full Code Here

Examples of org.pcap4j.packet.IpV4Packet.IpV4Header

   * @return a defragmented packet.
   */
  public static IpV4Packet defragment(List<IpV4Packet> list) {
    Collections.sort(list, comparator);

    IpV4Header lastPacketHeader = list.get(list.size() - 1).getHeader();
    int payloadLength
      = lastPacketHeader.getFlagmentOffset() * 8
          + lastPacketHeader.getTotalLengthAsInt()
          - lastPacketHeader.getIhl() * 4;
    if (payloadLength <= 0) {
      throw new IllegalArgumentException("Can't defragment: " + list);
    }

    final byte[] defragmentedPayload = new byte[payloadLength];
View Full Code Here

Examples of org.pcap4j.packet.IpV4Packet.IpV4Header

      RandomPacketTester.testClass(IpV4Packet.class, packet1);
  }

  @Test
  public void testGetHeader() {
    IpV4Header h = packet1.getHeader();
    assertEquals(version, h.getVersion());
    assertEquals(ihl, h.getIhl());
    assertEquals(tos, h.getTos());
    assertEquals(totalLength, h.getTotalLength());
    assertEquals(identification, h.getIdentification());
    assertEquals(reservedFlag, h.getReservedFlag());
    assertEquals(dontFragmentFlag, h.getDontFragmentFlag());
    assertEquals(moreFragmentFlag, h.getMoreFragmentFlag());
    assertEquals(flagmentOffset, h.getFlagmentOffset());
    assertEquals(ttl, h.getTtl());
    assertEquals(protocol, h.getProtocol());
    assertEquals(headerChecksum, h.getHeaderChecksum());
    assertEquals(srcAddr, h.getSrcAddr());
    assertEquals(dstAddr, h.getDstAddr());
    assertEquals(options.size(), h.getOptions().size());

    Iterator<IpV4Option> iter = h.getOptions().iterator();
    for (IpV4Option expected: options) {
      IpV4Option actual = iter.next();
      assertEquals(expected, actual);
    }

    assertArrayEquals(padding, h.getPadding());

    IpV4Packet.Builder b = packet1.getBuilder();
    IpV4Packet p;

    b.ihl((byte)0);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.