4#ifndef PROTOCORE_UPLOAD_SERVICE_H
5#define PROTOCORE_UPLOAD_SERVICE_H
31 void (*begin)(uint8_t *,
const char *,
const char *);
32 size_t (*last_size)(uint8_t *);
#define PROTOCORE_NS_LAYOUT(T,...)
Pin every dispatch slot of a table that is nothing but function pointers.
#define PROTOCORE_NS
Storage for a dispatch table. The const is load bearing.
Dispatch table. Addressed by offset, so the layout is asserted below.
void(* begin)(uint8_t *, const char *, const char *)
#define PROTOCORE_BEGIN_DECLS
Give a header's declarations C linkage, so their symbol names carry no parameter types.
#define PROTOCORE_END_DECLS
uint8_t * protocore_upload_service_span(void)
The PROTOCORE_UPLOAD_SERVICE_BORROW bytes this module's state lives in.
void protocore_upload_service_begin(uint8_t *work, const char *path, const char *dest_path)
Register a streaming-upload endpoint. A POST path request streams .
PROTOCORE_NS UploadServiceNs UploadService PROTOCORE_UNUSED
Module namespace.
size_t protocore_upload_service_last_size(uint8_t *work)
Bytes written by the most recent upload (for handlers / tests).