|
wired
libc-free QUIC/HTTP3 SDK in C for x86_64-linux
|
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). | |
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.