CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
NetDatagramFilter Struct Reference

Base for datagram filters (attached between the application and a datagram flow) More...

#include <filter.h>

Data Fields

NetMsgQueue encOut
 This stage's output toward the wire (a chain boundary queue)
 
NetMsgQueue decOut
 
NetPoolpool
 The pool this stage allocates its output from, held strongly.
 

Detailed Description

Base for datagram filters (attached between the application and a datagram flow)

A datagram filter transforms whole NetMessages at message boundaries – DTLS is one datagram per record. Each stage owns a pair of boundary queues, encOut/decOut, playing the same role NetStreamFilter's boundary rings play for a byte stream: a stage need not produce exactly one output per input. Consuming a handshake record and producing nothing is how a stage swallows it; producing more messages than consumed is how a stage fragments an oversized message for the wire's MTU.

Definition at line 400 of file filter.h.

Field Documentation

◆ decOut

NetMsgQueue NetDatagramFilter::decOut

This stage's output toward the app (a chain boundary queue)

Definition at line 416 of file filter.h.

◆ pool

NetPool* NetDatagramFilter::pool

The pool this stage allocates its output from, held strongly.

Set by the framework when the stage is added to a flow's chain; a concrete filter neither sets nor releases it, and simply uses it to allocate messages for encOut/decOut. See Buffer Pool.

Definition at line 422 of file filter.h.


The documentation for this struct was generated from the following file: