summaryrefslogtreecommitdiff
path: root/proxy.h
blob: e580d804e69681aa4128243b1e57dbddf330ea87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef fooproxyhfoo
#define fooproxyhfoo

struct server_proxy {
	struct sockaddr_in46 client;
	char clientstr[ADDRSTRLEN];
	char clientbuf[4096];
	size_t clientlen;
	struct uring_task clienttask;
	int cfd;

	struct sockaddr_in46 server;
	char serverstr[ADDRSTRLEN];
	char serverbuf[4096];
	size_t serverlen;
	struct uring_task servertask;
	int sfd;
	
	unsigned next_remote;
	struct server *scfg;
	struct list_head list;
};

void proxy_refdump(struct server_proxy *proxy);

struct server_proxy *proxy_new(struct cfg *cfg, struct server *scfg, struct sockaddr_in46 *client, int fd);

#endif