@@ -273,6 +273,12 @@ bool net_tx_pkt_parse(struct NetTxPkt *pkt)
}
}
+struct eth_header *net_tx_pkt_get_eth_hdr(struct NetTxPkt *pkt)
+{
+ assert(pkt);
+ return (struct eth_header *)&pkt->l2_hdr;
+}
+
struct virtio_net_hdr *net_tx_pkt_get_vhdr(struct NetTxPkt *pkt)
{
assert(pkt);
@@ -45,6 +45,14 @@ void net_tx_pkt_init(struct NetTxPkt **pkt, PCIDevice *pci_dev,
*/
void net_tx_pkt_uninit(struct NetTxPkt *pkt);
+/**
+ * get ethernet header
+ *
+ * @pkt: packet
+ * @ret: ethernet header
+ */
+struct eth_header *net_tx_pkt_get_eth_hdr(struct NetTxPkt *pkt);
+
/**
* get virtio header
*