libfetch 0.0.0
A lightweight asynchronous HTTP/1.1 client library implementing a subset of the WHATWG Fetch API.
Loading...
Searching...
No Matches
Global Configuration

Configure library-wide settings. More...

Data Structures

struct  fetch_config
 Global configuration for the fetch library. More...
 

Typedefs

typedef struct fetch_config fetch_config_t
 Global configuration for the fetch library.
 

Functions

static bool fetch_config_get_flag (uint32_t flags, fetch_flag_bit_t bit)
 Get a configuration flag value.
 
static void fetch_config_set_flag (fetch_config_t *config, fetch_flag_bit_t flag, bool value)
 Set or clear a configuration flag.
 
static fetch_config_t fetch_config_default (void)
 Get default configuration.
 
void fetch_global_init (const fetch_config_t *config)
 Initialize the fetch library with configuration.
 
void fetch_global_dispose (void)
 Clean up the fetch library.
 

Detailed Description

Configure library-wide settings.

Typedef Documentation

◆ fetch_config_t

typedef struct fetch_config fetch_config_t

Global configuration for the fetch library.

Function Documentation

◆ fetch_config_default()

static fetch_config_t fetch_config_default ( void )
inlinestatic

Get default configuration.

Returns
Default configuration struct
// Configure library with custom settings
config.default_timeout_ms = 5000; // 5 seconds
config.user_agent = "MyApp/1.0";
// Create cookie jar if needed
cookie_jar_t *jar = fetch_create_cookie_jar(NULL); // Memory-only
config.cookie_jar = jar; // Borrowed reference
// Library is now configured...
// Cleanup
fetch_global_dispose(); // This doesn't free the cookie jar
fetch_cookie_jar_free(jar); // Required: free cookie jar separately
void fetch_global_dispose(void)
Clean up the fetch library.
Definition fetch.c:7620
void fetch_global_init(const fetch_config_t *config)
Initialize the fetch library with configuration.
Definition fetch.c:7519
static fetch_config_t fetch_config_default(void)
Get default configuration.
Definition fetch.h:1885
Cookie jar implementation.
Definition cookie.h:184
Global configuration for the fetch library.
Definition fetch.h:1818
const char * user_agent
Definition fetch.h:1819
uint32_t default_timeout_ms
Definition fetch.h:1824
cookie_jar_t * cookie_jar
Definition fetch.h:1822

◆ fetch_config_get_flag()

static bool fetch_config_get_flag ( uint32_t flags,
fetch_flag_bit_t bit )
inlinestatic

Get a configuration flag value.

Parameters
flagsFlags bitfield
bitFlag to check
Returns
true if flag is set

◆ fetch_config_set_flag()

static void fetch_config_set_flag ( fetch_config_t * config,
fetch_flag_bit_t flag,
bool value )
inlinestatic

Set or clear a configuration flag.

Parameters
configConfiguration object
flagFlag to modify
valuetrue to set, false to clear

◆ fetch_global_dispose()

void fetch_global_dispose ( void )

Clean up the fetch library.

Stops the event loop and frees all resources. Call this during application shutdown.

Note
Memory: Frees all library resources
Threading: Must be called from the same thread that initialized the library

◆ fetch_global_init()

void fetch_global_init ( const fetch_config_t * config)

Initialize the fetch library with configuration.

Parameters
configConfiguration options (NULL for defaults, borrowed reference)
Note
Memory: Configuration is copied, original can be freed
Threading: Must be called before any fetch operations, not thread-safe
// Initialize with defaults
// Or with custom config
config.default_timeout_ms = 10000;
config.user_agent = "MyCustomApp/1.0";
// config can now be freed/go out of scope