18#ifndef __VSF_HTTP_CLIENT_H__
19#define __VSF_HTTP_CLIENT_H__
27#if VSF_USE_MBEDTLS == ENABLED
33#if defined(__VSF_HTTP_CLIENT_CLASS_IMPLEMENT)
34# define __VSF_CLASS_IMPLEMENT__
35#elif defined(__VSF_HTTP_CLIENT_CLASS_INHERIT__)
36# define __VSF_CLASS_INHERIT__
47#ifndef VSF_HTTP_CLIENT_CFG_BUFFER_SIZE
48# define VSF_HTTP_CLIENT_CFG_BUFFER_SIZE 4096
51#ifndef VSF_HTTP_CLIENT_CFG_USER_AGENT
53# define VSF_HTTP_CLIENT_CFG_USER_AGENT "curl/8.5.0"
63 int (*fn_connect)(
void *param,
const char *host,
const char *port);
64 void (*fn_close)(
void *param);
72 int (*fn_write)(
void *param,
uint8_t *buf,
size_t len);
73 int (*fn_read)(
void *param,
uint8_t *buf,
size_t len);
81 int (*fn_set_timeout)(
void *param,
int timeout_ms);
89 int (*fn_get_fd)(
void *param);
112 const vsf_http_op_t *op;
141#if VSF_USE_MBEDTLS == ENABLED
180 const char *host,
const char *port);
vsf_err_t
Definition __type.h:42
Definition vsf_http_client.h:110
#define vsf_class(__name)
Definition ooc_class.h:52
#define vsf_declare_class(__name)
Definition ooc_class.h:49
unsigned char uint8_t
Definition stdint.h:5
Definition vsf_http_client.h:94
const char * verb
Definition vsf_http_client.h:97
uint8_t * txdata
Definition vsf_http_client.h:103
char * header
Definition vsf_http_client.h:100
const char * host
Definition vsf_http_client.h:95
size_t txdata_len
Definition vsf_http_client.h:104
const char * port
Definition vsf_http_client.h:96
void(* on_response_header)(vsf_http_client_t *http, vsf_http_client_req_t *req, char *line)
Definition vsf_http_client.h:107
char * path
Definition vsf_http_client.h:101
const char * connect_mode
Definition vsf_http_client.h:98
int vsf_http_client_write(vsf_http_client_t *http, uint8_t *buf, size_t len)
Definition vsf_http_client.c:376
void vsf_http_client_close(vsf_http_client_t *http)
Definition vsf_http_client.c:127
int vsf_http_client_connect(vsf_http_client_t *http, const char *host, const char *port)
Definition vsf_http_client.c:132
void vsf_http_client_fini(vsf_http_client_t *http)
Definition vsf_http_client.c:117
vsf_err_t vsf_http_client_init(vsf_http_client_t *http)
Definition vsf_http_client.c:82
const vsf_http_op_t vsf_mbedtls_http_op
Definition vsf_http_client.c:52
int vsf_http_client_send_header(vsf_http_client_t *http, vsf_http_client_req_t *req)
Definition vsf_http_client.c:154
vsf_err_t vsf_http_client_set_timeout(vsf_http_client_t *http, int timeout_ms)
Definition vsf_http_client.c:137
int vsf_http_client_get_fd(vsf_http_client_t *http)
Definition vsf_http_client.c:146
int vsf_http_client_request(vsf_http_client_t *http, vsf_http_client_req_t *req)
Definition vsf_http_client.c:285
int vsf_http_client_fetch_headers(vsf_http_client_t *http, vsf_http_client_req_t *req)
Definition vsf_http_client.c:193
int vsf_http_client_read(vsf_http_client_t *http, uint8_t *buf, size_t len)
Definition vsf_http_client.c:312