Go to the documentation of this file.
105 unsigned port,
bool proxy,
107 bool idempotent,
bool has_data,
struct vlc_http_conn * vlc_h2_conn_create(void *ctx, struct vlc_tls *)
Definition: h2conn.c:877
static void vlc_chunked_close(struct vlc_http_stream *stream, bool abort)
Definition: chunked.c:160
struct vlc_http_stream * vlc_h1_request(void *ctx, const char *hostname, unsigned port, bool proxy, const struct vlc_http_msg *req, bool idempotent, bool has_data, struct vlc_http_conn **restrict connp)
Sends an HTTP/1.x request through a new connection.
Definition: h1conn.c:357
#define unlikely(p)
Predicted false condition.
Definition: vlc_common.h:227
const struct vlc_http_stream_cbs * cbs
Definition: message.h:368
struct vlc_http_stream * vlc_chunked_open(struct vlc_http_stream *parent, struct vlc_tls *tls)
Definition: chunked.c:180
ssize_t vlc_tls_Read(vlc_tls_t *session, void *buf, size_t len, bool waitall)
Receives data through a socket.
Definition: stream.c:53
bool error
Definition: chunked.c:72
size_t i_buffer
Payload length.
Definition: vlc_block.h:122
void void vlc_http_dbg(void *, const char *msg,...) VLC_FORMAT(2
const struct vlc_http_conn_cbs * cbs
Definition: conn.h:43
void(* release)(struct vlc_http_conn *)
Definition: conn.h:38
static void * vlc_chunked_fatal(struct vlc_chunked_stream *s)
Definition: chunked.c:75
static struct vlc_http_stream_cbs vlc_chunked_callbacks
Definition: chunked.c:172
struct vlc_http_conn * vlc_h1_conn_create(void *ctx, struct vlc_tls *, bool proxy)
Definition: h1conn.c:340
Transport layer socket.
Definition: vlc_tls.h:65
bool eof
Definition: chunked.c:71
static struct vlc_http_stream * vlc_http_stream_open(struct vlc_http_conn *conn, const struct vlc_http_msg *m, bool has_data)
Definition: conn.h:48
HTTP stream callbacks.
Definition: message.h:357
struct vlc_http_stream stream
Definition: chunked.c:67
struct vlc_tls * tls
Definition: chunked.c:69
char * vlc_tls_GetLine(vlc_tls_t *session)
Receives a text line through a socket.
Definition: stream.c:133
block_t * block_Alloc(size_t size)
Allocates a block.
Definition: block.c:108
static block_t * vlc_chunked_read(struct vlc_http_stream *stream)
Definition: chunked.c:89
ssize_t vlc_tls_Write(vlc_tls_t *session, const void *buf, size_t len)
Sends data through a socket.
Definition: stream.c:94
uintmax_t chunk_length
Definition: chunked.c:70
HTTP stream.
Definition: message.h:366
void *const vlc_http_error
Error pointer value.
Definition: message.c:57
#define VLC_FORMAT(x, y)
String format function annotation.
Definition: vlc_common.h:141
#define container_of(ptr, type, member)
Definition: vlc_common.h:1140
ssize_t vlc_https_chunked_write(struct vlc_tls *tls, const void *base, size_t len, bool eos)
Definition: chunked.c:39
static void vlc_http_conn_release(struct vlc_http_conn *conn)
Definition: conn.h:54
struct vlc_http_stream * parent
Definition: chunked.c:68
struct vlc_tls * tls
Definition: conn.h:44
struct vlc_http_stream *(* stream_open)(struct vlc_http_conn *, const struct vlc_http_msg *, bool has_data)
Definition: conn.h:35
uint8_t * p_buffer
Payload start.
Definition: vlc_block.h:121
void vlc_http_err(void *, const char *msg,...) VLC_FORMAT(2
void block_Release(block_t *block)
Releases a block.
Definition: block.c:135
Definition: vlc_block.h:117
static struct vlc_http_msg * vlc_chunked_wait(struct vlc_http_stream *stream)
Definition: chunked.c:81
static void vlc_http_stream_close(struct vlc_http_stream *s, bool abort)
Closes an HTTP stream.
Definition: message.h:428