Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
dplpmtud.h File Reference

Datagram PLPMTUD transport-facing API. More...

Go to the source code of this file.

Data Structures

struct  net_dplpmtud_path
 Transport-owned DPLPMTUD path handle. More...

Macros

#define NET_DPLPMTUD_BASE_PLPMTU   1200U
 Default base PLPMTU from RFC 8899/RFC 9000 for UDP-based transports.

Enumerations

enum  net_dplpmtud_state { NET_DPLPMTUD_STATE_BASE = 0 , NET_DPLPMTUD_STATE_SEARCHING , NET_DPLPMTUD_STATE_SEARCH_COMPLETE , NET_DPLPMTUD_STATE_ERROR }
 DPLPMTUD search state. More...

Functions

int net_dplpmtud_init_path (struct net_dplpmtud_path *path, const struct net_sockaddr *dst, uint16_t max_plpmtu)
 Initialize a DPLPMTUD path handle for a remote destination.
void net_dplpmtud_set_path_max_plpmtu (struct net_dplpmtud_path *path, uint16_t max_plpmtu)
 Update the transport-local maximum PLPMTU for a path.
int net_dplpmtud_get_path_mtu (struct net_dplpmtud_path *path)
 Get the currently validated PLPMTU for a path.
int net_dplpmtud_get_path_probe_size (struct net_dplpmtud_path *path)
 Get the next probe size a transport may transmit for a path.
bool net_dplpmtud_path_probe_in_flight (struct net_dplpmtud_path *path)
 Check whether a probe is currently in flight for a path.
int net_dplpmtud_on_path_probe_sent (struct net_dplpmtud_path *path, uint16_t probe_size)
 Report that a probe has been sent for a path.
int net_dplpmtud_on_path_probe_acked (struct net_dplpmtud_path *path, uint16_t probe_size)
 Report that a probe was acknowledged for a path.
int net_dplpmtud_on_path_probe_lost (struct net_dplpmtud_path *path, uint16_t probe_size)
 Report that a probe was lost for a path.
void net_dplpmtud_note_path_blackhole (struct net_dplpmtud_path *path)
 Report black-hole fallback for a path.

Detailed Description

Datagram PLPMTUD transport-facing API.