#include <rte_string_fns.h>
#include <rte_cycles.h>
#include <rte_kvargs.h>
+#include <rte_vdev.h>
#include <net/if.h>
-#include "rte_eth_pcap.h"
+#include <pcap.h>
#define RTE_ETH_PCAP_SNAPSHOT_LEN 65535
#define RTE_ETH_PCAP_SNAPLEN 4096
return num_tx;
}
-#ifdef PCAP_CAN_SEND
/*
* Callback to handle sending packets through a real NIC.
*/
tx_queue->err_pkts += nb_pkts - num_tx;
return num_tx;
}
-#else
-static uint16_t
-eth_pcap_tx(__rte_unused void *queue,
- __rte_unused struct rte_mbuf **bufs,
- __rte_unused uint16_t nb_pkts)
-{
- RTE_LOG(ERR, PMD, "pcap library cannot send packets, please rebuild "
- "with a more up to date libpcap\n");
- return -1;
-}
-#endif
static int
eth_dev_start(struct rte_eth_dev *dev)
}
-int
-rte_pmd_pcap_init(const char *name, const char *params)
+static int
+rte_pmd_pcap_devinit(const char *name, const char *params)
{
unsigned numa_node, using_dumpers = 0;
int ret;
}
+static struct rte_vdev_driver pmd_pcap_drv = {
+ .name = "eth_pcap",
+ .init = rte_pmd_pcap_devinit,
+};
+
+PMD_REGISTER_DRIVER(pmd_pcap_drv, PMD_VDEV);