#include enum mode { MODE_PROXY_H, MODE_PROXY_S, MODE_TRANSPARENT }; enum demode { DESYNC_NONE, DESYNC_SPLIT, DESYNC_DISORDER, DESYNC_FAKE }; struct params { int ttl; int split; size_t sfdelay; enum demode attack; char split_host; int def_ttl; int mod_http; enum mode mode; char ipv6; char resolve; char de_known; int max_open; int debug; size_t bfsize; size_t nack_max; int send_bfsz; }; extern struct params params; struct packet { size_t size; char *data; }; extern struct packet fake_tls; extern struct packet fake_http; #define LOG_S 1 #define LOG_L 2 #define LOG(s, str, ...) \ if (params.debug >= s) printf(str, ##__VA_ARGS__)