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

Public Types

enum  { SEND_MODE_MEMORY , SEND_MODE_FILE }
 

Data Fields

uint64_t connection_id
 
fetch_promise_tpromise
 
fetch_request_trequest
 
FETCH_SOCKET socket
 
connection_state_t state
 
struct sockaddr_storage addr
 
int addr_family
 
bool addr_resolved
 
char * host
 
bool is_https
 
fetch_host_type_t host_type
 
uint16_t port
 
dns_request_tdns_request
 
char * request_buffer
 
size_t request_size
 
size_t bytes_sent
 
enum fetch_connection:: { ... }  send_mode
 
union { 
 
   struct { 
 
      char   dummy 
 
   }   memory 
 
   struct { 
 
enum  { CHUNK_STATE_HEADER , CHUNK_STATE_DATA , CHUNK_STATE_TRAILER , CHUNK_STATE_FINAL }
 
      size_t   headers_sent 
 
      size_t   file_bytes_sent 
 
      char   buffer [8192] 
 
      size_t   buffer_size 
 
      size_t   buffer_sent 
 
      bool   use_chunked_encoding 
 
      enum fetch_connection:: { ... }    chunk_state 
 
      char   chunk_header [16] 
 
      size_t   chunk_header_size 
 
      size_t   chunk_header_sent 
 
   }   file 
 
send_state 
 
char * response_buffer
 
size_t response_capacity
 
size_t response_size
 
size_t bytes_received
 
bool response_supports_keep_alive
 
struct http_parse_contextparse_ctx
 
uint64_t start_time_ms
 
uint64_t last_activity_ms
 
uint32_t redirect_count
 
bool following_redirect
 
char * redirect_url
 

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
SEND_MODE_MEMORY 
SEND_MODE_FILE 

Field Documentation

◆ addr

struct sockaddr_storage fetch_connection::addr

◆ addr_family

int fetch_connection::addr_family

◆ addr_resolved

bool fetch_connection::addr_resolved

◆ buffer

char fetch_connection::buffer[8192]

◆ buffer_sent

size_t fetch_connection::buffer_sent

◆ buffer_size

size_t fetch_connection::buffer_size

◆ bytes_received

size_t fetch_connection::bytes_received

◆ bytes_sent

size_t fetch_connection::bytes_sent

◆ chunk_header

char fetch_connection::chunk_header[16]

◆ chunk_header_sent

size_t fetch_connection::chunk_header_sent

◆ chunk_header_size

size_t fetch_connection::chunk_header_size

◆ []

enum { ... } fetch_connection::chunk_state

◆ connection_id

uint64_t fetch_connection::connection_id

◆ dns_request

dns_request_t* fetch_connection::dns_request

◆ dummy

char fetch_connection::dummy

◆ [struct]

struct { ... } fetch_connection::file

◆ file_bytes_sent

size_t fetch_connection::file_bytes_sent

◆ following_redirect

bool fetch_connection::following_redirect

◆ headers_sent

size_t fetch_connection::headers_sent

◆ host

char* fetch_connection::host

◆ host_type

fetch_host_type_t fetch_connection::host_type

◆ is_https

bool fetch_connection::is_https

◆ last_activity_ms

uint64_t fetch_connection::last_activity_ms

◆ [struct]

struct { ... } fetch_connection::memory

◆ parse_ctx

struct http_parse_context* fetch_connection::parse_ctx

◆ port

uint16_t fetch_connection::port

◆ promise

fetch_promise_t* fetch_connection::promise

◆ redirect_count

uint32_t fetch_connection::redirect_count

◆ redirect_url

char* fetch_connection::redirect_url

◆ request

fetch_request_t* fetch_connection::request

◆ request_buffer

char* fetch_connection::request_buffer

◆ request_size

size_t fetch_connection::request_size

◆ response_buffer

char* fetch_connection::response_buffer

◆ response_capacity

size_t fetch_connection::response_capacity

◆ response_size

size_t fetch_connection::response_size

◆ response_supports_keep_alive

bool fetch_connection::response_supports_keep_alive

◆ []

enum { ... } fetch_connection::send_mode

◆ [union]

union { ... } fetch_connection::send_state

◆ socket

FETCH_SOCKET fetch_connection::socket

◆ start_time_ms

uint64_t fetch_connection::start_time_ms

◆ state

connection_state_t fetch_connection::state

◆ use_chunked_encoding

bool fetch_connection::use_chunked_encoding

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