---
name: "rte_swx_port_out_pkt_tx_t"
section: "3"
platform: "linux"
package: "dpdk-doc"
version: "24.11.4-0+deb13u1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/rte_swx_port.h"
---

# rte\_swx\_port\_out\_pkt\_tx\_t(3)

Part of [rte\_swx\_port.h(3)](/rte_swx_port.h/3.md).

## NAME

rte\_swx\_port.h

## SYNOPSIS

`#include <stdint.h>`\

### Data Structures

struct **rte\_swx\_pkt**\
 struct **rte\_swx\_port\_in\_stats**\
 struct **rte\_swx\_port\_in\_ops**\
 struct **rte\_swx\_port\_out\_stats**\
 struct **rte\_swx\_port\_out\_ops**\

### Typedefs

**typedef** void \*(\* **rte\_swx\_port\_in\_create\_t**) (void \*args)\
 **typedef** void(\* **rte\_swx\_port\_in\_free\_t**) (void \*port)\
 **typedef** int(\* **rte\_swx\_port\_in\_pkt\_rx\_t**) (void \*port, struct **rte\_swx\_pkt** \*pkt)\
 **typedef** void(\* **rte\_swx\_port\_in\_stats\_read\_t**) (void \*port, struct **rte\_swx\_port\_in\_stats** \*stats)\
 **typedef** void \*(\* **rte\_swx\_port\_out\_create\_t**) (void \*args)\
 **typedef** void(\* **rte\_swx\_port\_out\_free\_t**) (void \*port)\
 **typedef** void(\* **rte\_swx\_port\_out\_pkt\_tx\_t**) (void \*port, struct **rte\_swx\_pkt** \*pkt)\
 **typedef** void(\* **rte\_swx\_port\_out\_pkt\_fast\_clone\_tx\_t**) (void \*port, struct **rte\_swx\_pkt** \*pkt)\
 **typedef** void(\* **rte\_swx\_port\_out\_pkt\_clone\_tx\_t**) (void \*port, struct **rte\_swx\_pkt** \*pkt, uint32\_t truncation\_length)\
 **typedef** void(\* **rte\_swx\_port\_out\_flush\_t**) (void \*port)\
 **typedef** void(\* **rte\_swx\_port\_out\_stats\_read\_t**) (void \*port, struct **rte\_swx\_port\_out\_stats** \*stats)\

## Detailed Description

RTE SWX Port

Packet I/O port interface.

Definition in file **rte\_swx\_port.h**.

## Typedef Documentation

### typedef void \*(\* rte\_swx\_port\_in\_create\_t) (void \*args)

Input port create

**Parameters**

*args* Arguments for input port creation. Format specific to each port type.

**Returns**

Handle to input port instance on success, NULL on error.

Definition at line **43** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_in\_free\_t) (void \*port)

Input port free

**Parameters**

*port* Input port handle.

Definition at line **52** of file **rte\_swx\_port.h**.

### typedef int(\* rte\_swx\_port\_in\_pkt\_rx\_t) (void \*port, struct rte\_swx\_pkt \*pkt)

Input port packet receive

**Parameters**

*port* Input port handle. \
 *pkt* Received packet. Only valid when the function returns 1. Must point to valid memory.

**Returns**

0 when no packet was received, 1 when a packet was received. No other return values are allowed.

Definition at line **67** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_in\_stats\_read\_t) (void \*port, struct rte\_swx\_port\_in\_stats \*stats)

Input port statistics counters read

**Parameters**

*port* Input port handle. \
 *stats* Input port statistics counters. Must point to valid memory.

Definition at line **91** of file **rte\_swx\_port.h**.

### typedef void \*(\* rte\_swx\_port\_out\_create\_t) (void \*args)

Output port create

**Parameters**

*args* Arguments for output port creation. Format specific to each port type.

**Returns**

Handle to output port instance on success, NULL on error.

Definition at line **122** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_out\_free\_t) (void \*port)

Output port free

**Parameters**

*port* Output port handle.

Definition at line **131** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_out\_pkt\_tx\_t) (void \*port, struct rte\_swx\_pkt \*pkt)

Output port packet transmit

**Parameters**

*port* Output port handle. \
 *pkt* Packet to be transmitted.

Definition at line **142** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_out\_pkt\_fast\_clone\_tx\_t) (void \*port, struct rte\_swx\_pkt \*pkt)

Output port packet fast clone and transmit

**Parameters**

*port* Output port handle. \
 *pkt* Packet to be transmitted.

Definition at line **154** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_out\_pkt\_clone\_tx\_t) (void \*port, struct rte\_swx\_pkt \*pkt, uint32\_t truncation\_length)

Output port packet clone and transmit

**Parameters**

*port* Output port handle. \
 *pkt* Packet to be transmitted. \
 *truncation\_length* Packet length to be cloned.

Definition at line **168** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_out\_flush\_t) (void \*port)

Output port flush

**Parameters**

*port* Output port handle.

Definition at line **179** of file **rte\_swx\_port.h**.

### typedef void(\* rte\_swx\_port\_out\_stats\_read\_t) (void \*port, struct rte\_swx\_port\_out\_stats \*stats)

Output port statistics counters read

**Parameters**

*port* Output port handle. \
 *stats* Output port statistics counters. Must point to valid memory.

Definition at line **211** of file **rte\_swx\_port.h**.

## Author

Generated automatically by Doxygen for DPDK from the source code.
