#ifndef PROTOCOL_H
#define PROTOCOL_H
#include "../public/nsapi.h"
#include "../util/io.h"
#include <sys/uio.h>
#include "../util/strbuf.h"
#include <cx/buffer.h>
#ifdef __cplusplus
extern "C" {
#endif
void protocol_status(Session *sn, Request *rq,
int n,
const char *m);
const char* protocol_status_message(
int code);
void add_http_status_line(CxBuffer *out,
pool_handle_t *pool, Request *rq);
void add_http_response_header(CxBuffer *out, Request *rq);
int http_start_response(Session *sn, Request *rq);
int http_send_continue(Session *sn);
int request_header(
char *name,
char **value, Session *sn, Request *rq);
void http_get_scheme_host_port(
Session *sn,
Request *rq,
char **scheme,
char **host,
uint16_t *port);
#define sbuf_write(out, buf, len) sbuf_append(out, cx_strn(buf, len))
#ifdef __cplusplus
}
#endif
#endif