wired
libc-free QUIC/HTTP3 SDK in C for x86_64-linux
Loading...
Searching...
No Matches
moqfetch_req Struct Reference

Version-neutral FETCH request, an upper set of draft-19's Standalone + Joining split and draft-22's single Track Namespace/Name + LOCATION_FILTER parameter form. More...

#include <moqfetch.h>

Data Fields

u64 request_id
 Request ID of this FETCH.
u64 fetch_type
 MOQFETCH_STANDALONE / _RELATIVE_JOINING / _ABSOLUTE_JOINING.
int is_joining
 1 for a draft-19 Relative/Absolute Joining Fetch.
u64 joining_request_id
 Request ID of the joined subscription; valid iff is_joining.
u64 joining_start
 Joining Start (relative or absolute per fetch_type); valid iff is_joining.
moqctl_ftn track
 Track Namespace + Track Name (views into the decoded body); valid iff !is_joining.
moqctl_rangeloc range
 Requested Location range; valid iff !is_joining.
moqctl_params params
 Message Parameters (FETCH scope).

Detailed Description

Version-neutral FETCH request, an upper set of draft-19's Standalone + Joining split and draft-22's single Track Namespace/Name + LOCATION_FILTER parameter form.

is_joining is only ever set by a d19 Relative/Absolute Joining Fetch (draft-22 has no Joining Fetch); track/range are then unused – the publisher resolves the range from the joined subscription, which this layer does not have. fetch_type keeps d19's own Fetch Type (needed to tell a Relative Joining's relative joining_start from an Absolute Joining's absolute one, SS10.12.2.1); it is always MOQFETCH_STANDALONE for a draft-22 request.


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