Add some more cases where comment is set in pcapng file.

Signed-off-by: Stephen Hemminger <[email protected]>
---
 app/test/test_pcapng.c | 26 ++++++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

diff --git a/app/test/test_pcapng.c b/app/test/test_pcapng.c
index bcf99724fa..f2b49c31c7 100644
--- a/app/test/test_pcapng.c
+++ b/app/test/test_pcapng.c
@@ -125,8 +125,7 @@ test_setup(void)
 
        /* Make a pool for cloned packets */
        mp = rte_pktmbuf_pool_create_by_ops("pcapng_test_pool",
-                                           MAX_BURST * 32, 0, 0,
-                                           rte_pcapng_mbuf_size(pkt_len) + 128,
+                                           MAX_BURST * 32, 0, 0, 
rte_pcapng_mbuf_size(pkt_len),
                                            SOCKET_ID_ANY, "ring_mp_sc");
        if (mp == NULL) {
                fprintf(stderr, "Cannot create mempool\n");
@@ -149,6 +148,13 @@ fill_pcapng_file(rte_pcapng_t *pcapng, unsigned int 
num_packets)
        unsigned int burst_size;
        unsigned int count;
        ssize_t len;
+       const char *examples[] = {
+               "EAL init complete. May the cores be ever in your favor.",
+               "No packets were harmed in the making of this burst.",
+               "rte_eth_dev_start(): crossing fingers and enabling queues...",
+               "Congratulations, you’ve reached the end of the RX path. Please 
collect your free cache miss.",
+               "Lockless and fearless — that’s how we roll in userspace."
+       };
 
        /* make a dummy packet */
        mbuf1_prepare(&mbfs, pkt_len);
@@ -162,9 +168,14 @@ fill_pcapng_file(rte_pcapng_t *pcapng, unsigned int 
num_packets)
                burst_size = rte_rand_max(MAX_BURST) + 1;
                for (i = 0; i < burst_size; i++) {
                        struct rte_mbuf *mc;
+                       const char *comment = NULL;
+
+                       /* Put comment on occasional packets */
+                       if ((count + i) % 42 == 0)
+                               comment = 
examples[rte_rand_max(RTE_DIM(examples))];
 
                        mc = rte_pcapng_copy(port_id, 0, orig, mp, 
rte_pktmbuf_pkt_len(orig),
-                                            RTE_PCAPNG_DIRECTION_IN, NULL);
+                                            RTE_PCAPNG_DIRECTION_IN, comment);
                        if (mc == NULL) {
                                fprintf(stderr, "Cannot copy packet\n");
                                return -1;
@@ -386,7 +397,7 @@ static int
 test_write_packets(void)
 {
        char file_name[] = "/tmp/pcapng_test_XXXXXX.pcapng";
-       static rte_pcapng_t *pcapng;
+       rte_pcapng_t *pcapng = NULL;
        int ret, tmp_fd, count;
        uint64_t now = current_timestamp();
 
@@ -413,6 +424,13 @@ test_write_packets(void)
                goto fail;
        }
 
+       /* write a statistics block */
+       ret = rte_pcapng_write_stats(pcapng, port_id, 0, 0, NULL);
+       if (ret <= 0) {
+               fprintf(stderr, "Write of statistics failed\n");
+               goto fail;
+       }
+
        count = fill_pcapng_file(pcapng, TOTAL_PACKETS);
        if (count < 0)
                goto fail;
-- 
2.51.0

Reply via email to