#pragma once #include "darkmagic.h" #include "nfqws.h" #include #include #include #include #include #include #define DPI_DESYNC_FWMARK_DEFAULT 0x40000000 #define DPI_DESYNC_MAX_FAKE_LEN 1500 enum dpi_desync_mode { DESYNC_NONE=0, DESYNC_FAKE, DESYNC_RST, DESYNC_RSTACK, DESYNC_DISORDER, DESYNC_DISORDER2, DESYNC_SPLIT, DESYNC_SPLIT2 }; void desync_init(); packet_process_result dpi_desync_packet(uint8_t *data_pkt, size_t len_pkt, struct iphdr *iphdr, struct ip6_hdr *ip6hdr, struct tcphdr *tcphdr, size_t len_tcp, uint8_t *data_payload, size_t len_payload);