40 lines
997 B
C
40 lines
997 B
C
/**
|
|
* sesimos - secure, simple, modern web server
|
|
* @brief Reverse proxy (header file)
|
|
* @file src/lib/rev_proxy.h
|
|
* @author Lorenz Stechauner
|
|
* @date 2021-01-07
|
|
*/
|
|
|
|
#ifndef SESIMOS_REV_PROXY_H
|
|
#define SESIMOS_REV_PROXY_H
|
|
|
|
#define REV_PROXY_CHUNKED 1
|
|
#define REV_PROXY_COMPRESS_GZ 2
|
|
#define REV_PROXY_COMPRESS_BR 4
|
|
#define REV_PROXY_COMPRESS 6
|
|
|
|
#ifndef SERVER_NAME
|
|
# define SERVER_NAME "revproxy"
|
|
#endif
|
|
|
|
#include "http.h"
|
|
#include "config.h"
|
|
#include "../client.h"
|
|
|
|
extern sock rev_proxy;
|
|
|
|
int rev_proxy_preload(void);
|
|
|
|
int rev_proxy_request_header(http_req *req, int enc, client_ctx_t *ctx);
|
|
|
|
int rev_proxy_response_header(http_req *req, http_res *res, host_config *conf);
|
|
|
|
int rev_proxy_init(http_req *req, http_res *res, http_status_ctx *ctx, host_config *conf, sock *client, client_ctx_t *cctx, http_status *custom_status, char *err_msg);
|
|
|
|
int rev_proxy_send(sock *client, unsigned long len_to_send, int flags);
|
|
|
|
int rev_proxy_dump(char *buf, long len);
|
|
|
|
#endif //SESIMOS_REV_PROXY_H
|