ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
mdl_net_curl_internal.h
Go to the documentation of this file.
1
20
21#pragma once
22
23#include <curl/curl.h>
24#include <stddef.h>
25
26#include "mdl_net.h"
27#include "ra8_attributes.h"
28#include "ra8_err.h"
29
40typedef struct {
41 char* buf;
42 size_t cap;
43 size_t len;
44 bool overflow;
46
60
81
103 const mdl_net_bytes_t* ca_pem,
104 struct curl_blob* blob);
105
149RA8_PRIV ra8_err_t priv_mdl_net_curl_classify(CURLcode code, bool overflow, long status);
150
183RA8_PRIV size_t priv_mdl_net_curl_buf_write(char* data, size_t size, size_t nmemb, void* user);
184
203RA8_PRIV size_t priv_mdl_net_curl_body_write(char* data, size_t size, size_t nmemb, void* user);
Streaming HTTP(S) GET seam (a real function-pointer vtable) for the host manga downloader (v0).
ra8_err_t priv_mdl_net_curl_apply_cookies(CURL *curl, const mdl_net_bytes_t *cookies)
Enable the cookie engine and import validated caller-owned rows.
ra8_err_t priv_mdl_net_curl_classify(CURLcode code, bool overflow, long status)
Map a completed libcurl transfer to an ra8_err_t (pure classifier).
size_t priv_mdl_net_curl_buf_write(char *data, size_t size, size_t nmemb, void *user)
libcurl write callback: append into a bounded buffer, abort on cap.
size_t priv_mdl_net_curl_body_write(char *data, size_t size, size_t nmemb, void *user)
Adapt one libcurl body chunk to an injected bounded sink.
ra8_err_t priv_mdl_net_curl_apply_ca_blob(CURL *curl, const mdl_net_bytes_t *ca_pem, struct curl_blob *blob)
Bind complete caller-owned CA PEM bytes with NOCOPY semantics.
Annotation-attribute framework macros for ra8-firmware.
#define RA8_PRIV
Module-private helper: shared across TUs but only inside one library.
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Definition ra8_err.h:546
Bounded-buffer sink state for a page fetch.
char * buf
Destination buffer.
size_t len
Bytes written so far.
size_t cap
Capacity in bytes.
bool overflow
Set once the body exceeds cap.
Caller-owned lifecycle and write seam for one response body.
Definition mdl_net.h:162
Read-only caller-owned byte view retained by a network backend.
Definition mdl_net.h:60
Test-visible bounded adapter from libcurl chunks to an injected sink.
ra8_err_t sink_error
First callback failure, or k_ra8_ok.
uint64_t written
Bytes accepted across completed chunks.
bool overflow
Arithmetic or configured cap was hit.
uint64_t cap
Response cap, or zero for no cap.
mdl_net_body_sink_t * sink
Borrowed injected body sink.