RTE_FLOW_ACTION_RAW_ENCAP(3)

πŸ’– rte_flow_action_raw_encap πŸ’–

okay bestie, welcome to rte_flow_action_raw_encap(3) β€” it's a section 3 (Library Functions Manual) page from DPDK, and it's lowkey just a lil struct that tells your NIC how to wrap a packet up in a tunnel. not the whole function, not the whole action β€” the data definition. let's get into it πŸŽ€


✨ NAME ✨

rte_flow_action_raw_encap β€” the struct that holds raw tunnel end-point encapsulation data, iykyk πŸ¦‹


🌸 SYNOPSIS 🌸

#include <rte_flow.h>

πŸ“¦ Data Fields

  • uint8_t * data
  • uint8_t * preserve
  • size_t size

πŸ’… Detailed Description πŸ’…

⚠️ Warning β€” EXPERIMENTAL: this structure may change without prior notice 😭

This whole thing backs RTE_FLOW_ACTION_TYPE_RAW_ENCAP.

It's the raw tunnel end-point encapsulation data definition. Periodt. πŸ‘‘

So here's the tea: data holds the header definitions that get applied onto the packet. And the way that it must work is that data starts with the ETH header and goes all the way up to the tunnel item header itself β€” no skipping, no cutting corners, it's giving very "start from the top or don't start at all" energy ✨

But wait, there's a lil twist 🫢 β€” when it's used right after RAW_DECAP (for example when you're decapsulating an L3 tunnel type like MPLSoGRE), then data will just hold the layer 2 header. that's it. just L2. iconic behaviour honestly.

Then we have preserve, the bodyguard field πŸ’€ β€” it holds which bits in the packet the PMD is not allowed to change. Protected. Untouchable. And ngl, this parameter can also be NULL, and in that case the PMD is allowed to update any field it wants. free rein. main character energy for the PMD, truly.

And size? simple queen πŸ‘‘ β€” it holds the number of bytes in data and preserve. both of them. count accordingly.

πŸ“ Definition at line 3760 of file rte_flow.h.

πŸ” Field Documentation πŸ”

πŸ“ uint8_t* data

Encapsulation data.

πŸ“ Definition at line 3761 of file rte_flow.h.

🧚 uint8_t* preserve

Bit-mask of data to preserve on output.

πŸ“ Definition at line 3762 of file rte_flow.h.

πŸ’œ size_t size

Size of data and preserve.

πŸ“ Definition at line 3763 of file rte_flow.h.

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for DPDK from the source code. yes bestie, no human wrote this one, the robot did it and honestly it ate πŸ€–βœ¨


and that's the whole page!! this lil guy lives in DPDK, version 25.11.3 β€” that's the version tag stamped on the page, and the footer keeps it company with the standard rte_flow_a...n_raw_encap(3) header situation (it's the truncated title, the man page tooling's doing, not mine πŸ™ˆ). no extra date was handed down to us, so the version is what we've got to go by. mwah, go encapsulate something responsibly πŸ’–πŸŒˆπŸ«Ά

πŸ“¦ where this page comes from