>Subject: [dpdk-dev] [PATCH v3 4/4] ipfrag: add unit test case
>
>Initial IP fragmentation unit test.
>
>Signed-off-by: Aaron Conole <acon...@redhat.com>
>---
> MAINTAINERS            |   1 +
> app/test/meson.build   |   2 +
> app/test/test_ipfrag.c | 277
>+++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 280 insertions(+)
> create mode 100644 app/test/test_ipfrag.c
>

<snip>

>+static int
>+v4_allocate_packet_of(struct rte_mbuf *b, int fill, size_t s, int df,
>+                    uint8_t ttl, uint8_t proto, uint16_t pktid)
>+{
>+      /* Create a packet, 2k bytes long */
>+      b->data_off = 0;
>+      char *data = rte_pktmbuf_mtod(b, char *);
>+
>+      memset(data, fill, sizeof(struct rte_ipv4_hdr) + s);
>+
>+      struct rte_ipv4_hdr *hdr = (struct rte_ipv4_hdr *)data;
>+
>+      hdr->version_ihl = 0x45; /* standard IP header... */
>+      hdr->type_of_service = 0;
>+      b->pkt_len = s + sizeof(struct rte_ipv4_hdr);
>+      b->data_len = b->pkt_len;
>+      hdr->total_length = htonl(b->pkt_len);  

Minor nit, please use rte_cpu_to_be_xx() for byte order conversion across the 
file.

>+      hdr->packet_id = htons(pktid);
>+      hdr->fragment_offset = 0;
>+      if (df)
>+              hdr->fragment_offset = htons(0x4000);
>+
>+      if (!ttl)
>+              ttl = 64; /* default to 64 */
>+
>+      if (!proto)
>+              proto = 1; /* icmp */
>+
>+      hdr->time_to_live = ttl;
>+      hdr->next_proto_id = proto;
>+      hdr->hdr_checksum = 0;
>+      hdr->src_addr = htonl(0x8080808);
>+      hdr->dst_addr = htonl(0x8080404);
>+
>+      return 0;
>+}
>+

Reply via email to