youtubeUnblock/config.h

76 lines
1.6 KiB
C
Raw Normal View History

2024-08-07 10:32:01 +00:00
struct config_t {
unsigned int queue_start_num;
int rawsocket;
int threads;
int use_gso;
int fragmentation_strategy;
unsigned char fake_sni_ttl;
int fake_sni_strategy;
int verbose;
unsigned int seg2_delay;
2024-08-08 12:29:04 +00:00
const char *domains_str;
unsigned int domains_strlen;
unsigned int all_domains;
2024-08-07 10:32:01 +00:00
};
extern struct config_t config;
2024-08-03 23:20:09 +00:00
#define MAX_THREADS 16
#ifndef THREADS_NUM
#define THREADS_NUM 1
#endif
#if THREADS_NUM > MAX_THREADS
#error "Too much threads"
#endif
#ifndef NOUSE_GSO
#define USE_GSO
#endif
#define FRAG_STRAT_TCP 0
#define FRAG_STRAT_IP 1
#define FRAG_STRAT_NONE 2
2024-08-05 20:37:45 +00:00
#ifndef FRAGMENTATION_STRATEGY
2024-08-03 23:20:09 +00:00
#define FRAGMENTATION_STRATEGY FRAG_STRAT_TCP
2024-08-05 20:37:45 +00:00
#endif
2024-08-03 23:20:09 +00:00
#define RAWSOCKET_MARK (1 << 15)
#ifdef USE_SEG2_DELAY
#define SEG2_DELAY 100
#endif
#define FAKE_SNI_TTL 8
2024-08-07 00:31:10 +00:00
// No fake SNI
#define FKSN_STRAT_NONE 0
// Will invalidate fake client hello by out-of-ack_seq out-of-seq request
2024-08-07 00:31:10 +00:00
#define FKSN_STRAT_ACK_SEQ 1
// Will assume that GGC server is located further than FAKE_SNI_TTL
// Thus, Fake Client Hello will be eliminated automatically.
2024-08-07 00:31:10 +00:00
#define FKSN_STRAT_TTL 2
2024-08-07 01:00:48 +00:00
#ifdef NO_FAKE_SNI
2024-08-07 00:31:10 +00:00
#define FAKE_SNI_STRATEGY FKSN_STRAT_NONE
#endif
2024-08-05 20:37:45 +00:00
#ifndef FAKE_SNI_STRATEGY
#define FAKE_SNI_STRATEGY FKSN_STRAT_ACK_SEQ
2024-08-05 20:37:45 +00:00
#endif
#if !defined(SILENT) && !defined(KERNEL_SPACE)
2024-08-03 23:20:09 +00:00
#define DEBUG
#endif
2024-08-06 21:22:52 +00:00
// The Maximum Transmission Unit size for rawsocket
// Larger packets will be fragmented. Applicable for Chrome's kyber.
#define AVAILABLE_MTU 1384
2024-08-08 12:29:04 +00:00
#define DEFAULT_QUEUE_NUM 537
static const char defaul_snistr[] = "googlevideo.com,ggpht.com,ytimg.com,youtube.com,play.google.com,youtu.be,googleapis.com,googleusercontent.com,gstatic.com,l.google.com";